aboutsummaryrefslogtreecommitdiff
path: root/services/docker/mail-server/aws-sendmail/db.ts
diff options
context:
space:
mode:
Diffstat (limited to 'services/docker/mail-server/aws-sendmail/db.ts')
-rw-r--r--services/docker/mail-server/aws-sendmail/db.ts19
1 files changed, 3 insertions, 16 deletions
diff --git a/services/docker/mail-server/aws-sendmail/db.ts b/services/docker/mail-server/aws-sendmail/db.ts
index ced5c19..6a7b100 100644
--- a/services/docker/mail-server/aws-sendmail/db.ts
+++ b/services/docker/mail-server/aws-sendmail/db.ts
@@ -1,9 +1,7 @@
// spellchecker: words sqlocal kysely insertable updateable
import { SQLocalKysely } from "sqlocal/kysely";
-import { Generated, Kysely, Migration, Migrator } from "kysely";
-
-import { Mail } from "./mail.ts";
+import { Generated, Insertable, Kysely, Migration, Migrator } from "kysely";
const tableNames = {
mail: {
@@ -91,19 +89,8 @@ export class DbService {
await this._migrator.migrateToLatest();
}
- async addMail(mail: Mail): Promise<void> {
- const { raw, messageId, awsMessageId } = mail;
- if (messageId == null) {
- // TODO: Better error.
- throw new Error(
- "Failed to add mail to database. Mail has no message id.",
- );
- }
- await this._db.insertInto(tableNames.mail.table).values({
- raw,
- message_id: messageId,
- aws_message_id: awsMessageId,
- })
+ async addMail(mail: Insertable<MailTable>): Promise<void> {
+ await this._db.insertInto(tableNames.mail.table).values(mail)
.executeTakeFirstOrThrow();
}