UNPKG

@tmlmobilidade/emails

Version:
41 lines (40 loc) 2.69 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; /* * */ import { DebugCode } from '../components/DebugCode/index.js'; import { Greeting } from '../components/Greeting/index.js'; import { MainButton } from '../components/MainButton/index.js'; import { Paragraph } from '../components/Paragraph/index.js'; import { Span } from '../components/Span/index.js'; import { Wrapper } from '../components/Wrapper/index.js'; import { emailProvider } from '../email.provider.js'; import { Dates } from '@tmlmobilidade/dates'; import { render } from 'react-email'; /* * */ export const planApprovalRequestSubject = 'Pedido de aprovação de plano'; /* * */ export default function PlanApprovalRequestTemplate({ agencyName, endDate, firstName, gtfsValidationId, gtfsValidationUrl, requestedBy, startDate }) { return (_jsxs(Wrapper, { previewMessage: "Pedido de aprova\u00E7\u00E3o de plano", children: [_jsx(Greeting, { text: `${firstName},` }), _jsxs(Paragraph, { children: ["Ap\u00F3s uma valida\u00E7\u00E3o de GTFS com sucesso,", _jsx(Span, { spaceAfter: true, spaceBefore: true, weight: "bold", children: requestedBy }), "pede a respetiva aprova\u00E7\u00E3o para plano."] }), _jsxs(Paragraph, { children: [_jsx(Span, { spaceAfter: true, spaceBefore: true, weight: "bold", children: "Operador: " }), agencyName] }), _jsxs(Paragraph, { children: [_jsx(Span, { spaceAfter: true, spaceBefore: true, weight: "bold", children: "In\u00EDcio: " }), Dates.fromOperationalDate(startDate, 'Europe/Lisbon').toLocaleString(Dates.FORMATS.DATE_FULL_WITH_YEAR, 'pt-PT')] }), _jsxs(Paragraph, { children: [_jsx(Span, { spaceAfter: true, spaceBefore: true, weight: "bold", children: "Fim: " }), Dates.fromOperationalDate(endDate, 'Europe/Lisbon').toLocaleString(Dates.FORMATS.DATE_FULL_WITH_YEAR, 'pt-PT')] }), _jsx(MainButton, { href: gtfsValidationUrl, label: "Ver detalhes da valida\u00E7\u00E3o" }), _jsx(DebugCode, { label: "GTFS Validation ID", value: gtfsValidationId })] })); } ; /* * */ PlanApprovalRequestTemplate.PreviewProps = { agencyName: 'Viação Alvorada', endDate: '20250131', firstName: 'Josué', gtfsValidationId: 'ABC123', gtfsValidationUrl: 'https://www.tmlmobilidade.pt/validations/ABC123', requestedBy: 'Maria Adelaide', startDate: '20250101', }; /* * */ export const renderPlanApprovalRequestTemplate = async (props) => { return await render(_jsx(PlanApprovalRequestTemplate, { ...props })); }; /* * */ export const sendPlanApprovalRequestEmail = async ({ data, to }) => { await emailProvider.send({ html: await renderPlanApprovalRequestTemplate(data), subject: planApprovalRequestSubject, to: to, }); };