Files
classroomio/packages/email/src/emails/invite-teacher.ts
T

30 lines
850 B
TypeScript
Raw Normal View History

import * as z from 'zod';
import { defineEmail } from '../send';
import { getDefaultTemplate } from '../templates';
export const inviteTeacherEmail = defineEmail({
id: 'inviteTeacher',
subject: 'Join us on ClassroomIO 😃',
schema: z.object({
email: z.string().email(),
orgName: z.string().min(1),
orgSiteName: z.string().min(1),
2026-03-09 11:18:22 +01:00
roleName: z.string().min(1),
expiresAt: z.string().min(1),
inviteLink: z.url()
}),
render: (fields) => {
const content = `
<p>Hey there,</p>
2026-03-09 11:18:22 +01:00
<p>You have been invited to join ${fields.orgName} on ClassroomIO as ${fields.roleName} 🎉🎉🎉.</p>
<p>This invite expires on ${fields.expiresAt} (UTC).</p>
<div>
<a class="button" href="${fields.inviteLink}">Accept Invitation</a>
</div>
`;
return getDefaultTemplate(content);
}
});