Files
MulliganMates/lib/email.ts
T
2026-03-19 08:30:58 +01:00

38 lines
910 B
TypeScript

import nodemailer from 'nodemailer'
function getTransporter() {
return nodemailer.createTransport({
host: process.env.SMTP_HOST ?? 'localhost',
port: parseInt(process.env.SMTP_PORT ?? '1025'),
secure: process.env.SMTP_PORT === '465',
auth:
process.env.SMTP_USER
? { user: process.env.SMTP_USER, pass: process.env.SMTP_PASS }
: undefined,
})
}
export async function sendEmail({
to,
subject,
html,
}: {
to: string
subject: string
html: string
}) {
console.log(`[email] Sending to ${to} via ${process.env.SMTP_HOST}:${process.env.SMTP_PORT}`)
try {
const info = await getTransporter().sendMail({
from: `MulliganMates <${process.env.SMTP_FROM ?? 'noreply@golf.gy.gl'}>`,
to,
subject,
html,
})
console.log('[email] Sent:', info.messageId)
} catch (err) {
console.error('[email] Failed:', err)
throw err
}
}