remove password
This commit is contained in:
parent
ea0bfd5a54
commit
5f2cbd82b6
@ -5,8 +5,8 @@ const saveMessage = require('./storeMessage').saveMessage;
|
|||||||
|
|
||||||
|
|
||||||
const imap = new Imap({
|
const imap = new Imap({
|
||||||
user: '***REMOVED***',
|
user: '',
|
||||||
password: '***REMOVED***',
|
password: '',
|
||||||
tlsOptions: {servername: "imap.gmail.com"},
|
tlsOptions: {servername: "imap.gmail.com"},
|
||||||
host: 'imap.gmail.com',
|
host: 'imap.gmail.com',
|
||||||
port: 993,
|
port: 993,
|
||||||
|
105
back/sql/database.dart
Normal file
105
back/sql/database.dart
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
Table "addresses" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"name" text
|
||||||
|
"localpart" text [not null]
|
||||||
|
"domain" text [not null]
|
||||||
|
"email" text [not null]
|
||||||
|
|
||||||
|
Indexes {
|
||||||
|
email [unique]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Table "mailboxes" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"name" text [not null]
|
||||||
|
"uidnext" int [not null, default: 1]
|
||||||
|
"nextmodseq" bigint [not null, default: 1]
|
||||||
|
"first_recent" int [not null, default: 1]
|
||||||
|
"uidvalidity" int [not null, default: 1]
|
||||||
|
|
||||||
|
Indexes {
|
||||||
|
name [unique]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Table "messages" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"idate" timestamp [not null]
|
||||||
|
"rfc822size" int
|
||||||
|
}
|
||||||
|
|
||||||
|
Table "mailbox_messages" {
|
||||||
|
"mailbox" int [not null]
|
||||||
|
"uid" int [pk, not null]
|
||||||
|
"message" int [pk, not null]
|
||||||
|
"modseq" bigint [not null]
|
||||||
|
"seen" boolean [not null, default: false]
|
||||||
|
"deleted" boolean [not null, default: false]
|
||||||
|
}
|
||||||
|
|
||||||
|
Ref: mailbox_messages.mailbox > mailboxes.id
|
||||||
|
Ref: mailbox_messages.message - messages.id
|
||||||
|
|
||||||
|
Table "bodyparts" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"bytes" int [not null]
|
||||||
|
"hash" text [not null]
|
||||||
|
"text" text
|
||||||
|
"data" binary
|
||||||
|
}
|
||||||
|
|
||||||
|
Table "part_numbers" {
|
||||||
|
"message" int [pk, not null]
|
||||||
|
"part" text [not null]
|
||||||
|
"bodypart" int [not null]
|
||||||
|
"bytes" int
|
||||||
|
"nb_lines" int
|
||||||
|
}
|
||||||
|
|
||||||
|
// todo on delete cascade
|
||||||
|
Ref: part_numbers.message > messages.id
|
||||||
|
Ref: part_numbers.bodypart - bodyparts.id
|
||||||
|
|
||||||
|
Table "field_names" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"name" text [not null]
|
||||||
|
|
||||||
|
Indexes {
|
||||||
|
name [unique]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Table "header_fields" {
|
||||||
|
"id" int [pk, not null, increment]
|
||||||
|
"message" int [pk, not null]
|
||||||
|
"part" text [not null]
|
||||||
|
"position" int [not null]
|
||||||
|
"field" int [not null]
|
||||||
|
"value" text
|
||||||
|
|
||||||
|
Indexes {
|
||||||
|
message [unique]
|
||||||
|
part [unique]
|
||||||
|
position [unique]
|
||||||
|
field [unique]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Ref: header_fields.message > messages.id
|
||||||
|
Ref: header_fields.part > part_numbers.part
|
||||||
|
Ref: header_fields.field > field_names.id
|
||||||
|
|
||||||
|
Table "address_fields" {
|
||||||
|
"message" int [not null]
|
||||||
|
"part" text [not null]
|
||||||
|
"position" int [not null]
|
||||||
|
"field" int [not null]
|
||||||
|
"number" int
|
||||||
|
"address" int [not null]
|
||||||
|
}
|
||||||
|
|
||||||
|
Ref: address_fields.message > messages.id
|
||||||
|
Ref: address_fields.part > part_numbers.part
|
||||||
|
Ref: address_fields.field > field_names.id
|
||||||
|
Ref: address_fields.address > addresses.id
|
BIN
back/sql/database.png
Normal file
BIN
back/sql/database.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 94 KiB |
108
back/sql/database.sql
Normal file
108
back/sql/database.sql
Normal file
@ -0,0 +1,108 @@
|
|||||||
|
CREATE TABLE `addresses` (
|
||||||
|
`id` int PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
`name` text,
|
||||||
|
`localpart` text NOT NULL,
|
||||||
|
`domain` text NOT NULL,
|
||||||
|
`email` text NOT NULL
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `mailboxes` (
|
||||||
|
`id` int PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
`name` text NOT NULL,
|
||||||
|
`uidnext` int NOT NULL DEFAULT 1,
|
||||||
|
`nextmodseq` bigint NOT NULL DEFAULT 1,
|
||||||
|
`first_recent` int NOT NULL DEFAULT 1,
|
||||||
|
`uidvalidity` int NOT NULL DEFAULT 1
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `messages` (
|
||||||
|
`id` int PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
`idate` timestamp NOT NULL,
|
||||||
|
`rfc822size` int
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `mailbox_messages` (
|
||||||
|
`mailbox` int NOT NULL,
|
||||||
|
`uid` int NOT NULL,
|
||||||
|
`message` int NOT NULL,
|
||||||
|
`modseq` bigint NOT NULL,
|
||||||
|
`seen` boolean NOT NULL DEFAULT false,
|
||||||
|
`deleted` boolean NOT NULL DEFAULT false,
|
||||||
|
PRIMARY KEY (`uid`, `message`)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `bodyparts` (
|
||||||
|
`id` int PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
`bytes` int NOT NULL,
|
||||||
|
`hash` text NOT NULL,
|
||||||
|
`text` text,
|
||||||
|
`data` binary
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `part_numbers` (
|
||||||
|
`message` int PRIMARY KEY NOT NULL,
|
||||||
|
`part` text NOT NULL,
|
||||||
|
`bodypart` int NOT NULL,
|
||||||
|
`bytes` int,
|
||||||
|
`nb_lines` int
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `field_names` (
|
||||||
|
`id` int PRIMARY KEY NOT NULL AUTO_INCREMENT,
|
||||||
|
`name` text NOT NULL
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `header_fields` (
|
||||||
|
`id` int NOT NULL AUTO_INCREMENT,
|
||||||
|
`message` int NOT NULL,
|
||||||
|
`part` text NOT NULL,
|
||||||
|
`position` int NOT NULL,
|
||||||
|
`field` int NOT NULL,
|
||||||
|
`value` text,
|
||||||
|
PRIMARY KEY (`id`, `message`)
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE TABLE `address_fields` (
|
||||||
|
`message` int NOT NULL,
|
||||||
|
`part` text NOT NULL,
|
||||||
|
`position` int NOT NULL,
|
||||||
|
`field` int NOT NULL,
|
||||||
|
`number` int,
|
||||||
|
`address` int NOT NULL
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `addresses_index_0` ON `addresses` (`email`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `mailboxes_index_1` ON `mailboxes` (`name`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `field_names_index_2` ON `field_names` (`name`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `header_fields_index_3` ON `header_fields` (`message`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `header_fields_index_4` ON `header_fields` (`part`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `header_fields_index_5` ON `header_fields` (`position`);
|
||||||
|
|
||||||
|
CREATE UNIQUE INDEX `header_fields_index_6` ON `header_fields` (`field`);
|
||||||
|
|
||||||
|
ALTER TABLE `mailbox_messages` ADD FOREIGN KEY (`mailbox`) REFERENCES `mailboxes` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `messages` ADD FOREIGN KEY (`id`) REFERENCES `mailbox_messages` (`message`);
|
||||||
|
|
||||||
|
ALTER TABLE `part_numbers` ADD FOREIGN KEY (`message`) REFERENCES `messages` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `bodyparts` ADD FOREIGN KEY (`id`) REFERENCES `part_numbers` (`bodypart`);
|
||||||
|
|
||||||
|
ALTER TABLE `header_fields` ADD FOREIGN KEY (`message`) REFERENCES `messages` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `header_fields` ADD FOREIGN KEY (`part`) REFERENCES `part_numbers` (`part`);
|
||||||
|
|
||||||
|
ALTER TABLE `header_fields` ADD FOREIGN KEY (`field`) REFERENCES `field_names` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `address_fields` ADD FOREIGN KEY (`message`) REFERENCES `messages` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `address_fields` ADD FOREIGN KEY (`part`) REFERENCES `part_numbers` (`part`);
|
||||||
|
|
||||||
|
ALTER TABLE `address_fields` ADD FOREIGN KEY (`field`) REFERENCES `field_names` (`id`);
|
||||||
|
|
||||||
|
ALTER TABLE `address_fields` ADD FOREIGN KEY (`address`) REFERENCES `addresses` (`id`);
|
Loading…
Reference in New Issue
Block a user