diff --git a/packages/email/src/sendEmail.tsx b/packages/email/src/sendEmail.tsx index 815a8ff3..4baff474 100644 --- a/packages/email/src/sendEmail.tsx +++ b/packages/email/src/sendEmail.tsx @@ -29,22 +29,34 @@ export const sendEmail = async ( template: Templates, data: Record, ) => { - const EmailTemplate = emailTemplates[template]; + try { + const EmailTemplate = emailTemplates[template]; - const html = await render(, { pretty: true }); + const html = await render(, { pretty: true }); - const options = { - from: process.env.EMAIL_FROM, - to, - subject, - html, - }; + const options = { + from: process.env.EMAIL_FROM, + to, + subject, + html, + }; - const response = await transporter.sendMail(options); + const response = await transporter.sendMail(options); - if (!response.accepted.length) { - throw new Error(`Failed to send email: ${response.response}`); + if (!response.accepted.length) { + throw new Error(`Failed to send email: ${response.response}`); + } + + return response; + } catch (error) { + console.error("Email sending failed:", { + to, + from: process.env.EMAIL_FROM, + subject, + template, + error: error instanceof Error ? error.message : String(error), + stack: error instanceof Error ? error.stack : undefined, + }); + throw error; } - - return response; };