diff --git a/src/models/MailModel.ts b/src/models/MailModel.ts new file mode 100644 index 0000000..54222cf --- /dev/null +++ b/src/models/MailModel.ts @@ -0,0 +1,39 @@ +import {getConfig} from "../helper/config"; +import nodemailer from "nodemailer"; + +const config = getConfig(); + +/** + * Get the instance of the transporter + * @returns A transporter instance for sending out emails + */ +function getTransporter() : nodemailer.Transporter { + + // Generate the transporter + const transporter = nodemailer.createTransport({ + host: config?.smtp.host, + auth: { + user: config?.smtp.username, + pass: config?.smtp.password, + } + }); + + // Return the transporter + return transporter; +} + +export async function sendMail(mailContent: string, toAddress: string, ccAddresses?: Array) { + + // Get the transporter + const transporter = getTransporter(); + + await new Promise((_r, _e) => { + transporter.sendMail({ + + }, (err, info) => { + + }) + }) + + transporter.close(); +} \ No newline at end of file diff --git a/src/models/mail_model.ts b/src/models/mail_model.ts deleted file mode 100644 index 1a47273..0000000 --- a/src/models/mail_model.ts +++ /dev/null @@ -1,9 +0,0 @@ -import nodemailer from "nodemailer"; - -function getTransporter() { - -} - -export function sendMail(mailContent: string, toAddress: string, ccAddresses?: Array) { - -} \ No newline at end of file