UNPKG

ee-ts-util

Version:

typescript utilities and functions

42 lines 1.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const nodemailer = require("nodemailer"); const log4js = require("log4js"); exports.buildEmailAdapter = (smtpConfig) => (email) => { // TODO : Think if we want to create a createTransporter everytime // Or like mongo connection we should create only once const log = log4js.getLogger(); const transporter = createTransporter(smtpConfig); const mailOptions = buildMailOptions(email); return transporter.sendMail(mailOptions).then((sentMessageInfo) => { log.info("Email sent status " + JSON.stringify(sentMessageInfo)); return (sentMessageInfo.accepted.length >= 1 ? Promise.resolve(true) : Promise.resolve(false)); }); }; const buildMailOptions = (email) => { const mailOptions = { from: email.from, to: email.to, subject: email.subject, text: email.body, }; if (email.attachmentName) { mailOptions.attachments = [ { filename: email.attachmentName, content: email.attachmentContent, }, ]; } return mailOptions; }; const createTransporter = (smtpConfig) => (nodemailer.createTransport({ host: smtpConfig.server, port: smtpConfig.port, debug: true, auth: { user: smtpConfig.userName, pass: smtpConfig.password, }, })); //# sourceMappingURL=emailAdapter.js.map