{"version":3,"sources":["jsdelivr-header.js","/npm/nodemailer-promisify@1.0.2/Nodemailer.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,MAAM,WAAa,QAAQ,cAQ3B,MAAM,WAeF,WAAA,CAAY,GACR,KAAK,aAAe,WAAW,gBAAgB,EACnD,CAmBA,UAAM,CAAK,GACP,MAAM,EAAQ,WACS,KAAK,UAC5B,OAAO,IAAI,SAAQ,CAAC,EAAS,KACzB,EAAM,aAAa,SAAS,GAAa,CAAC,EAAK,KACvC,EACA,EAAO,GAEP,EAAQ,EACZ,GACF,GAEV,CAOA,OAAA,GACI,MAAM,EAAQ,KACd,OAAO,IAAI,SAAQ,CAAC,EAAS,KACzB,EAAM,aAAa,QAAO,CAAC,EAAK,KACxB,EACA,EAAO,GAEP,EAAQ,KAAK,GACnB,GAEV,CASA,wBAAO,GACH,OAAO,IAAI,SAAQ,CAAC,EAAS,KACzB,WAAW,mBAAkB,CAAC,EAAK,KAC5B,EACC,EAAO,GAEP,EAAQ,EAAQ,GACtB,GAEV,CAQA,wBAAO,CAAkB,GACrB,OAAO,WAAW,kBAAkB,EACxC,EAGJ,OAAO,QAAU,CACb","file":"/npm/nodemailer-promisify@1.0.2/Nodemailer.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/nodemailer-promisify@1.0.2/Nodemailer.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","const nodemailer = require('nodemailer');\r\n\r\n/**\r\n * Nodemailer abstract class\r\n * https://nodemailer.com\r\n * @property {Transporter} _Transporter - an object that is able to send mail\r\n *\r\n */\r\nclass Nodemailer {\r\n    /**\r\n     * Create transporter\r\n     * @param {Object} options - nodemailer options\r\n     * @example\r\n     * {\r\n     *      host: 'smtp.gmail.com',\r\n     *      port: 587,\r\n     *      secure: false,\r\n     *      auth: {\r\n     *          user: 'xxxx@xxx.xx',\r\n     *          pass: 'xxxxxxxxxx',\r\n     *      }\r\n     * }\r\n     */\r\n    constructor(options) {\r\n        this._Transporter = nodemailer.createTransport(options);\r\n    }\r\n\r\n    /**\r\n     * Send mail\r\n     * @param {Object} mailOptions - nodemailer mailOptions\r\n     * @example\r\n     * {\r\n     *      from: '\"Fred Foo\" <foo@example.com>', // sender address\r\n     *      to: 'bar@example.com, baz@example.com', // list of receivers\r\n     *      bcc: 'bar@example.com, baz@example.com',\r\n     *      subject: 'Hello', // Subject line\r\n     *      text: 'Hello world?', // plain text body\r\n     *      html: '<b>Hello world?</b>' // html body\r\n     * }\r\n     *\r\n     * @return {Promise<Object|Error>} resolve info object of nodemailer if success\r\n     * @throw {Error} if the transporter is not verified\r\n     *\r\n     */\r\n    async Send(mailOptions) {\r\n        const _this = this;\r\n        const verified = await this._Verify();\r\n        return new Promise((resolve, reject) => {\r\n            _this._Transporter.sendMail(mailOptions, (err, info) => {\r\n                if (err)\r\n                    reject(err);\r\n                else {\r\n                    resolve(info);\r\n                }\r\n            });\r\n        });\r\n    }\r\n\r\n    /**\r\n     * Verify connection configuration\r\n     * @return {Promise<True|Error>} resolve Null if the server is ready to accept messages\r\n     *\r\n     */\r\n    _Verify() {\r\n        const _this = this;\r\n        return new Promise((resolve, reject) => {\r\n            _this._Transporter.verify((err, success) => {\r\n                if (err)\r\n                    reject(err);\r\n                else\r\n                    resolve(null);\r\n            });\r\n        });\r\n    }\r\n\r\n    /**\r\n     * Create a ethereal acc for testing\r\n     * @return {Promise<Object|Error>} account - resolve ethereal acc\r\n     * @return {String} account.user\r\n     * @return {String} account.pass - password\r\n     *\r\n     */\r\n    static CreateTestAccount() {\r\n        return new Promise((resolve, reject) => {\r\n            nodemailer.createTestAccount((err, account) => {\r\n                if(err)\r\n                    reject(err);\r\n                else\r\n                    resolve(account);\r\n            });\r\n        });\r\n    }\r\n\r\n    /**\r\n     * Get test email preview url(for CreateTestAccount only)\r\n     * @param {Object} info - info returned by Send method\r\n     * @return {String} url\r\n     *\r\n     */\r\n    static GetTestMessageUrl(info) {\r\n        return nodemailer.getTestMessageUrl(info);\r\n    }\r\n}\r\n\r\nmodule.exports = {\r\n    Nodemailer,\r\n}"]}