UNPKG

@node-notifications/transport-mailer

Version:
34 lines (33 loc) 1.13 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.SmtpTransport = void 0; const core_1 = require("@node-notifications/core"); const nodemailer_1 = __importDefault(require("nodemailer")); class SmtpTransport extends core_1.AbstractTransport { constructor(dataProvider, config) { super(dataProvider); this.dataProvider = dataProvider; this.transporter = nodemailer_1.default.createTransport(config.options, config.defaults); this.transporter.verify().then(); } async send(data) { let status; let response; try { response = await this.transporter.sendMail(data); status = core_1.NotificationStatusEnum.SENT; } catch (e) { response = e; status = core_1.NotificationStatusEnum.ERROR; } return Promise.resolve({ status, response, }); } } exports.SmtpTransport = SmtpTransport;