50 lines
2.1 KiB
Markdown
50 lines
2.1 KiB
Markdown
|
|
# #71 Automated email refactor — DEFERRED
|
||
|
|
|
||
|
|
Searched the repo + git history (commits back to the initial `67d7e6e Initial
|
||
|
|
commit: Port Nimara CRM`) for legacy CRM email templates that could be
|
||
|
|
lifted verbatim or used as a tonal reference for the rewrite. **None found.**
|
||
|
|
|
||
|
|
The codebase was built from scratch; there's no archive directory, no
|
||
|
|
import dump, and no commits ever contained "old-system" template HTML.
|
||
|
|
|
||
|
|
## What this task needs
|
||
|
|
|
||
|
|
A full refactor of the four signing-lifecycle emails to a luxury-port
|
||
|
|
brand voice, with per-port branding flow:
|
||
|
|
|
||
|
|
1. **Invitation** (`signingInvitationEmail`) — currently functional but
|
||
|
|
utilitarian copy. Subject format Matt called for:
|
||
|
|
`"{firstName}, your EOI for {portName} is ready to be signed"`.
|
||
|
|
2. **Reminder** (`signingReminderEmail`) — same recipient, follow-up nudge.
|
||
|
|
3. **Completion** (`signingCompletedEmail`) — sent with the signed PDF attached.
|
||
|
|
4. **Cancelled** (`signingCancelledEmail`) — added 2026-05-15 alongside the
|
||
|
|
cancel-with-notify modal.
|
||
|
|
|
||
|
|
Each template should have **per-port** branding parameters:
|
||
|
|
|
||
|
|
- Port name + signature block
|
||
|
|
- Primary brand color (already plumbed via `BrandingShell`)
|
||
|
|
- Optional header/footer HTML overrides (`branding_email_header_html` /
|
||
|
|
`_footer_html` settings)
|
||
|
|
|
||
|
|
## Source-of-truth flow before unblocking
|
||
|
|
|
||
|
|
Matt to paste / share the legacy templates from the prior CRM (likely
|
||
|
|
NocoDB-era or a separate email tool — not committed to this repo). Once
|
||
|
|
shared, lift the copy verbatim where possible; otherwise match
|
||
|
|
**structure + tone + voice** carefully.
|
||
|
|
|
||
|
|
Current files to refactor:
|
||
|
|
|
||
|
|
- `src/lib/email/templates/document-signing.tsx` (4 templates)
|
||
|
|
- `src/lib/email/templates/portal-auth.tsx` (activation + reset)
|
||
|
|
- `src/lib/email/templates/inquiry-client-confirmation.tsx`
|
||
|
|
- `src/lib/email/templates/inquiry-sales-notification.tsx`
|
||
|
|
|
||
|
|
## Status
|
||
|
|
|
||
|
|
DEFERRED until the legacy copy is supplied or Matt approves a from-scratch
|
||
|
|
draft. The structural plumbing (per-port branding, sendEmail with
|
||
|
|
attachments, EMAIL_REDIRECT_TO safety, cancel-with-notify wiring) all
|
||
|
|
landed in earlier tasks — only the copy rewrite remains.
|