25 lines
706 B
TypeScript
Executable File
25 lines
706 B
TypeScript
Executable File
import nodemailer from 'nodemailer';
|
|
|
|
const transporter = nodemailer.createTransport({
|
|
host: process.env.SMTP_HOST || 'smtp.gmail.com',
|
|
port: parseInt(process.env.SMTP_PORT || '465', 10),
|
|
secure: process.env.SMTP_SECURE !== 'false',
|
|
auth: {
|
|
user: process.env.SMTP_USER,
|
|
pass: process.env.SMTP_PASSWORD
|
|
}
|
|
});
|
|
|
|
export async function sendMail(to: string, subject: string, html: string): Promise<void> {
|
|
if (!process.env.SMTP_USER || !process.env.SMTP_PASSWORD) {
|
|
console.warn(`SMTP not configured — skipping email to ${to}: "${subject}"`);
|
|
return;
|
|
}
|
|
await transporter.sendMail({
|
|
from: process.env.SMTP_FROM || process.env.SMTP_USER,
|
|
to,
|
|
subject,
|
|
html
|
|
});
|
|
}
|