UNPKG

composa

Version:

Compose beautiful multilingual emails with XHTML templates and Nodemailer

45 lines (38 loc) 1.11 kB
import { EmailClient, defaultSubjects } from "composa"; const mockMailer = new EmailClient({ defaultLang: "en", subjects: defaultSubjects, defaults: { APP_NAME: "TestApp", APP_URL: "https://test.com" }, transporter: { sendMail: async (mailOptions) => { console.log(`Mock envoyé à: ${mailOptions.to}`); console.log(`Sujet: ${mailOptions.subject}`); return { messageId: `mock-${Date.now()}`, response: "Mock OK" }; }, verify: async () => true, }, }); async function run() { const recipients = [ { email: "alice@example.com", name: "Alice", lang: "en" }, { email: "bob@example.com", name: "Bob", lang: "en" }, ]; const results = []; for (const user of recipients) { const { html, subject } = mockMailer.compileMail( "newsletter-promotion", { lang: user.lang, variables: { USER_NAME: user.name }, }, ); const res = await mockMailer.sendMail({ to: user.email, html, subject, }); results.push({ user: user.email, success: true, result: res }); } console.log("Bulk sending results:", results); } run();