@tmlmobilidade/emails
Version:
53 lines (52 loc) • 1.91 kB
JavaScript
/* * */
import { emailProvider } from './src/email.provider.js';
import { RenderFailedBackupEmail, RenderPlanApprovalRequestEmail, RenderResetPasswordEmail, RenderSucessfulGtfsValidationEmail, RenderUnsuccessfulGtfsValidationEmail, RenderWelcomeEmail } from './src/renderer.js';
export * from './src/renderer.js';
export async function sendFailedBackupEmail(props) {
const emailHtml = await RenderFailedBackupEmail(props.props);
await emailProvider.send({
html: emailHtml,
subject: 'Falha na execução do backup',
to: props.to,
});
}
;
export async function sendResetPasswordEmail(props) {
const emailHtml = await RenderResetPasswordEmail(props.props);
await emailProvider.send({
html: emailHtml,
subject: 'Redefinição da sua palavra-passe',
to: props.to,
});
}
;
export async function sendWelcomeEmail(props) {
const emailHtml = await RenderWelcomeEmail(props.props);
await emailProvider.send({
html: emailHtml,
subject: 'Bem-vindo ao GO!',
to: props.to,
});
}
;
export async function sendGtfsValidationEmail(props) {
if (!props.props.validation.summary)
throw new Error('Validation summary is required');
const success = props.props.validation.summary.total_errors === 0;
const emailHtml = success ? await RenderSucessfulGtfsValidationEmail(props.props) : await RenderUnsuccessfulGtfsValidationEmail(props.props);
await emailProvider.send({
html: emailHtml,
subject: success ? 'Validação GTFS realizada com sucesso' : 'Validação GTFS com erros',
to: props.to,
});
}
;
export async function sendPlanApprovalRequestEmail(props) {
const emailHtml = await RenderPlanApprovalRequestEmail(props.props);
await emailProvider.send({
html: emailHtml,
subject: 'Pedido de aprovação de plano',
to: props.to,
});
}
;