Files
dataroom/lib/emails/send-onboarding.ts
zeekay 60163bce2e rebrand: Papermark → Hanzo Dataroom across user-facing surfaces
108 files: README, marketing copy, page titles, meta tags, footer
text, email templates, .env.example, UI strings. URLs swapped
from papermark.com/papermark.io to dataroom.hanzo.ai.

Internal identifiers left intact per repo policy: localStorage
keys (papermark.email/papermark.name/last_papermark_login —
changing them logs users out), type field names
(papermarkUserId), internal helper symbols (PAPERMARK_HEADERS,
PapermarkSparkle component, isPapermarkUrl helper),
internal-only filenames. LLM.md retains 'Upstream: Papermark'
attribution line. Per-locale .po translations regenerate from
source on the next lingui-extract CI run.

DB migrations untouched (append-only history; rewriting them
breaks installed schemas). LICENSE stays AGPL-3.0.
2026-06-07 12:23:40 -07:00

66 lines
1.8 KiB
TypeScript

import { sendEmail } from "@/lib/resend";
import Onboarding5Email from "@/components/emails/data-rooms-information";
import Onboarding1Email from "@/components/emails/onboarding-1";
import Onboarding2Email from "@/components/emails/onboarding-2";
import Onboarding3Email from "@/components/emails/onboarding-3";
import Onboarding4Email from "@/components/emails/onboarding-4";
import { CreateUserEmailProps } from "../types";
type EmailType =
| "onboarding1"
| "onboarding2"
| "onboarding3"
| "onboarding4"
| "onboarding5";
export const sendOnboardingEmail = async (
params: CreateUserEmailProps,
emailType: EmailType,
) => {
const { email } = params.user;
let emailTemplate;
let subject;
switch (emailType) {
case "onboarding1":
emailTemplate = Onboarding1Email();
subject = "Day 1 with Hanzo Dataroom - Turn your documents into links";
break;
case "onboarding2":
emailTemplate = Onboarding2Email();
subject = "Day 2 - Set link permissions";
break;
case "onboarding3":
emailTemplate = Onboarding3Email();
subject = "Day 3 - Track analytics on each page";
break;
case "onboarding4":
emailTemplate = Onboarding4Email();
subject = "Day 4 - Custom domain and branding";
break;
case "onboarding5":
emailTemplate = Onboarding5Email();
subject = "Day 5 - Virtual Data Rooms";
break;
default:
emailTemplate = Onboarding1Email();
subject = "Day 1 with Hanzo Dataroom - Turn your documents into links";
break;
}
try {
await sendEmail({
to: email as string,
subject,
replyTo: "Hanzo Dataroom <[email protected]>",
react: emailTemplate,
test: process.env.NODE_ENV === "development",
});
} catch (e) {
console.error(e);
}
};