From 5f2cbd82b6df68a852012c5cc9fdb3a35511b67a Mon Sep 17 00:00:00 2001 From: grimhilt Date: Wed, 1 Mar 2023 16:57:11 +0100 Subject: [PATCH] remove password --- back/imap/index.js | 4 +- back/sql/database.dart | 105 +++++++++++++++++++++++++++++++++++++++ back/sql/database.png | Bin 0 -> 96512 bytes back/sql/database.sql | 108 +++++++++++++++++++++++++++++++++++++++++ 4 files changed, 215 insertions(+), 2 deletions(-) create mode 100644 back/sql/database.dart create mode 100644 back/sql/database.png create mode 100644 back/sql/database.sql diff --git a/back/imap/index.js b/back/imap/index.js index 49a32bd..66c2977 100644 --- a/back/imap/index.js +++ b/back/imap/index.js @@ -5,8 +5,8 @@ const saveMessage = require('./storeMessage').saveMessage; const imap = new Imap({ - user: '***REMOVED***', - password: '***REMOVED***', + user: '', + password: '', tlsOptions: {servername: "imap.gmail.com"}, host: 'imap.gmail.com', port: 993, diff --git a/back/sql/database.dart b/back/sql/database.dart new file mode 100644 index 0000000..335c16d --- /dev/null +++ b/back/sql/database.dart @@ -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 diff --git a/back/sql/database.png b/back/sql/database.png new file mode 100644 index 0000000000000000000000000000000000000000..97d79fdf1bbaa43920a9a89323f96656fdd2ab45 GIT binary patch literal 96512 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 HmAn56OGI{m literal 0 HcmV?d00001 diff --git a/back/sql/database.sql b/back/sql/database.sql new file mode 100644 index 0000000..a9a2490 --- /dev/null +++ b/back/sql/database.sql @@ -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`);