UNPKG

@adonisjs/mail

Version:

Mail provider for adonis framework and has support for all common mailing services to send emails

50 lines (48 loc) 1.14 kB
import { debug_default } from "./chunk-ZF2M7BIF.js"; import { __name } from "./chunk-XE4OXN2W.js"; // src/messengers/memory_queue.ts import fastq from "fastq"; function sendEmail(task, cb) { this.mailer.sendCompiled(task.mail, task.sendConfig).then((result) => cb(null, result)).catch((error) => cb(error)); } __name(sendEmail, "sendEmail"); var MemoryQueueMessenger = class { static { __name(this, "MemoryQueueMessenger"); } mailer; #emitter; #queue; #jobCompletedCallback; constructor(mailer, emitter) { this.mailer = mailer; this.#queue = fastq(this, sendEmail, 10); this.#jobCompletedCallback = (error) => { if (error) { this.#emitter.emit("queued:mail:error", { error, mailerName: this.mailer.name }); } }; this.#emitter = emitter; } /** * Queues the email within memory */ async queue(mail, sendConfig) { debug_default("pushing email to in-memory queue"); this.#queue.push({ mail, sendConfig }, this.#jobCompletedCallback); } }; export { MemoryQueueMessenger }; //# sourceMappingURL=chunk-TDHID2NL.js.map