@tracked/emails 0.1.5 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/emails/client-onboarded.d.ts +35 -0
- package/dist/emails/client-onboarded.d.ts.map +1 -0
- package/dist/emails/client-onboarded.js +152 -0
- package/dist/emails/client-onboarded.js.map +1 -0
- package/dist/emails/index.d.ts +1 -0
- package/dist/emails/index.d.ts.map +1 -1
- package/dist/emails/index.js +1 -0
- package/dist/emails/index.js.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -2
- package/dist/index.js.map +1 -1
- package/package.json +20 -20
- package/src/components/content.tsx +351 -0
- package/src/components/index.ts +44 -0
- package/src/components/interactive.tsx +260 -0
- package/src/components/layout.tsx +217 -0
- package/src/components/tokens.ts +74 -0
- package/src/components/typography.tsx +148 -0
- package/src/emails/anniversary.tsx +133 -0
- package/src/emails/app-review-request.tsx +100 -0
- package/src/emails/bodyweight-goal-reached.tsx +202 -350
- package/src/emails/client-inactive-alert.tsx +130 -0
- package/src/emails/client-onboarded.tsx +272 -0
- package/src/emails/coach-invite.tsx +67 -250
- package/src/emails/coach-removed-client.tsx +36 -197
- package/src/emails/direct-message.tsx +69 -227
- package/src/emails/feature-discovery.tsx +82 -266
- package/src/emails/first-workout-assigned.tsx +52 -238
- package/src/emails/first-workout-completed.tsx +88 -294
- package/src/emails/inactive-reengagement.tsx +81 -0
- package/src/emails/index.tsx +1 -0
- package/src/emails/monthly-report.tsx +198 -520
- package/src/emails/new-follower.tsx +60 -238
- package/src/emails/nps-survey.tsx +149 -0
- package/src/emails/subscription-canceled.tsx +88 -294
- package/src/emails/support-email.tsx +33 -67
- package/src/emails/team-invite.tsx +47 -240
- package/src/emails/team-member-removed-email.tsx +23 -218
- package/src/emails/tracked-magic-link-activate.tsx +29 -237
- package/src/emails/tracked-magic-link.tsx +31 -251
- package/src/emails/week-one-checkin.tsx +108 -329
- package/src/emails/weekly-progress-digest.tsx +248 -0
- package/src/emails/welcome.tsx +58 -326
- package/src/index.ts +19 -2
- package/dist/emails/client-accepted-invitation.d.ts +0 -10
- package/dist/emails/client-accepted-invitation.d.ts.map +0 -1
- package/dist/emails/client-accepted-invitation.js +0 -99
- package/dist/emails/client-accepted-invitation.js.map +0 -1
- package/src/emails/client-accepted-invitation.tsx +0 -258
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
interface ClientOnboardedEmailProps {
|
|
2
|
+
coachName: string;
|
|
3
|
+
clientName: string;
|
|
4
|
+
clientEmail: string;
|
|
5
|
+
clientProfileUrl: string;
|
|
6
|
+
websiteUrl?: string;
|
|
7
|
+
dateOfBirth?: string;
|
|
8
|
+
height?: string;
|
|
9
|
+
weight?: string;
|
|
10
|
+
timezone?: string;
|
|
11
|
+
unitPreference?: "metric" | "imperial";
|
|
12
|
+
currentGoal?: string;
|
|
13
|
+
currentWorkouts?: string[];
|
|
14
|
+
currentTrainingSplit?: string;
|
|
15
|
+
exerciseSelection?: string[];
|
|
16
|
+
equipmentListGym?: string[];
|
|
17
|
+
injuries?: string[];
|
|
18
|
+
avgCardioPerWeek?: string;
|
|
19
|
+
avgStepsPerDay?: string;
|
|
20
|
+
foodPreferences?: string[];
|
|
21
|
+
allergies?: string[];
|
|
22
|
+
dailyCalories?: string;
|
|
23
|
+
dailyMacros?: {
|
|
24
|
+
protein: string;
|
|
25
|
+
carbs: string;
|
|
26
|
+
fat: string;
|
|
27
|
+
};
|
|
28
|
+
avgNumberMealsPerDay?: string;
|
|
29
|
+
mealsYouUsuallyEat?: string[];
|
|
30
|
+
numMealsBeforeGym?: string;
|
|
31
|
+
hasProgressPhotos?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export declare const ClientOnboardedEmail: ({ coachName, clientName, clientEmail, clientProfileUrl, websiteUrl, dateOfBirth, height, weight, timezone, unitPreference, currentGoal, currentWorkouts, currentTrainingSplit, exerciseSelection, equipmentListGym, injuries, avgCardioPerWeek, avgStepsPerDay, foodPreferences, allergies, dailyCalories, dailyMacros, avgNumberMealsPerDay, mealsYouUsuallyEat, numMealsBeforeGym, hasProgressPhotos, }: ClientOnboardedEmailProps) => import("react/jsx-runtime").JSX.Element;
|
|
34
|
+
export default ClientOnboardedEmail;
|
|
35
|
+
//# sourceMappingURL=client-onboarded.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-onboarded.d.ts","sourceRoot":"","sources":["../../src/emails/client-onboarded.tsx"],"names":[],"mappings":"AAgBA,UAAU,yBAAyB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAEvC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE;QACZ,OAAO,EAAE,MAAM,CAAC;QAChB,KAAK,EAAE,MAAM,CAAC;QACd,GAAG,EAAE,MAAM,CAAC;KACb,CAAC;IACF,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAE3B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA8BD,eAAO,MAAM,oBAAoB,GAAI,2YA2BlC,yBAAyB,4CAgQ3B,CAAC;AA8FF,eAAe,oBAAoB,CAAC"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { Body, Column, Container, Head, Hr, Html, Img, Link, Preview, Row, Section, Text, } from "@react-email/components";
|
|
3
|
+
const baseUrl = "https://tracked.gg/android-chrome-192x192.png";
|
|
4
|
+
const formatArray = (arr) => {
|
|
5
|
+
if (!arr || arr.length === 0)
|
|
6
|
+
return "";
|
|
7
|
+
return arr.join(", ");
|
|
8
|
+
};
|
|
9
|
+
const DataRow = ({ label, value, }) => {
|
|
10
|
+
if (!value)
|
|
11
|
+
return null;
|
|
12
|
+
return (_jsxs(Row, { style: { marginBottom: "8px" }, children: [_jsx(Column, { style: { width: "140px", verticalAlign: "top" }, children: _jsx(Text, { style: dataLabel, children: label }) }), _jsx(Column, { style: { verticalAlign: "top" }, children: _jsx(Text, { style: dataValue, children: value }) })] }));
|
|
13
|
+
};
|
|
14
|
+
export const ClientOnboardedEmail = ({ coachName, clientName, clientEmail, clientProfileUrl, websiteUrl = "https://tracked.gg", dateOfBirth, height, weight, timezone, unitPreference, currentGoal, currentWorkouts, currentTrainingSplit, exerciseSelection, equipmentListGym, injuries, avgCardioPerWeek, avgStepsPerDay, foodPreferences, allergies, dailyCalories, dailyMacros, avgNumberMealsPerDay, mealsYouUsuallyEat, numMealsBeforeGym, hasProgressPhotos, }) => {
|
|
15
|
+
const displayName = clientName || clientEmail;
|
|
16
|
+
const hasPersonalData = dateOfBirth || height || weight || timezone;
|
|
17
|
+
const hasTrainingData = currentGoal ||
|
|
18
|
+
(currentWorkouts && currentWorkouts.length > 0) ||
|
|
19
|
+
currentTrainingSplit ||
|
|
20
|
+
(exerciseSelection && exerciseSelection.length > 0) ||
|
|
21
|
+
(equipmentListGym && equipmentListGym.length > 0) ||
|
|
22
|
+
(injuries && injuries.length > 0) ||
|
|
23
|
+
avgCardioPerWeek ||
|
|
24
|
+
avgStepsPerDay;
|
|
25
|
+
const hasNutritionData = (foodPreferences && foodPreferences.length > 0) ||
|
|
26
|
+
(allergies && allergies.length > 0) ||
|
|
27
|
+
dailyCalories ||
|
|
28
|
+
dailyMacros ||
|
|
29
|
+
avgNumberMealsPerDay ||
|
|
30
|
+
(mealsYouUsuallyEat && mealsYouUsuallyEat.length > 0) ||
|
|
31
|
+
numMealsBeforeGym;
|
|
32
|
+
return (_jsxs(Html, { children: [_jsxs(Head, { children: [_jsx("meta", { name: "color-scheme", content: "light only" }), _jsx("meta", { name: "supported-color-schemes", content: "light only" })] }), _jsxs(Preview, { children: [displayName, " has completed onboarding and is ready to start training"] }), _jsx(Body, { style: main, children: _jsx(Container, { style: container, children: _jsxs(Section, { style: box, children: [_jsxs(Row, { style: { marginBottom: "8px" }, children: [_jsx(Column, { style: { width: "auto", verticalAlign: "middle" }, children: _jsx(Img, { src: `${baseUrl}`, width: "28", height: "28", alt: "Tracked" }) }), _jsx(Column, { style: {
|
|
33
|
+
width: "auto",
|
|
34
|
+
verticalAlign: "middle",
|
|
35
|
+
paddingLeft: "4px",
|
|
36
|
+
}, children: _jsx(Text, { style: {
|
|
37
|
+
fontSize: "28px",
|
|
38
|
+
fontWeight: "900",
|
|
39
|
+
fontFamily: "Raleway, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
|
|
40
|
+
color: "#020617",
|
|
41
|
+
margin: "0",
|
|
42
|
+
lineHeight: "32px",
|
|
43
|
+
letterSpacing: "0.5px",
|
|
44
|
+
}, children: "TRACKED" }) })] }), _jsx(Hr, { style: hr }), _jsx(Text, { style: heading, children: "New Client Onboarded!" }), _jsxs(Text, { style: paragraph, children: ["Hi ", coachName, ", ", displayName, " has completed their onboarding questionnaire and is ready to start their training journey with you."] }), _jsxs(Section, { style: infoBox, children: [_jsx(Text, { style: sectionHeading, children: "Client Details" }), _jsx(DataRow, { label: "Name", value: displayName }), _jsx(DataRow, { label: "Email", value: clientEmail }), hasPersonalData && (_jsxs(_Fragment, { children: [_jsx(DataRow, { label: "Date of Birth", value: dateOfBirth }), _jsx(DataRow, { label: "Height", value: height }), _jsx(DataRow, { label: "Weight", value: weight }), _jsx(DataRow, { label: "Timezone", value: timezone }), _jsx(DataRow, { label: "Units", value: unitPreference === "metric"
|
|
45
|
+
? "Metric (kg/cm)"
|
|
46
|
+
: unitPreference === "imperial"
|
|
47
|
+
? "Imperial (lbs/ft)"
|
|
48
|
+
: undefined })] }))] }), hasTrainingData && (_jsxs(Section, { style: infoBox, children: [_jsx(Text, { style: sectionHeading, children: "Training Information" }), _jsx(DataRow, { label: "Current Goal", value: currentGoal }), _jsx(DataRow, { label: "Current Workouts", value: formatArray(currentWorkouts) }), _jsx(DataRow, { label: "Training Split", value: currentTrainingSplit }), _jsx(DataRow, { label: "Exercise Preferences", value: formatArray(exerciseSelection) }), _jsx(DataRow, { label: "Available Equipment", value: formatArray(equipmentListGym) }), _jsx(DataRow, { label: "Injuries/Limitations", value: formatArray(injuries) }), _jsx(DataRow, { label: "Cardio per Week", value: avgCardioPerWeek }), _jsx(DataRow, { label: "Daily Steps", value: avgStepsPerDay })] })), hasNutritionData && (_jsxs(Section, { style: infoBox, children: [_jsx(Text, { style: sectionHeading, children: "Nutrition Information" }), _jsx(DataRow, { label: "Food Preferences", value: formatArray(foodPreferences) }), _jsx(DataRow, { label: "Allergies", value: formatArray(allergies) }), _jsx(DataRow, { label: "Daily Calories", value: dailyCalories }), dailyMacros && (_jsx(DataRow, { label: "Daily Macros", value: `P: ${dailyMacros.protein}g | C: ${dailyMacros.carbs}g | F: ${dailyMacros.fat}g` })), _jsx(DataRow, { label: "Meals per Day", value: avgNumberMealsPerDay }), _jsx(DataRow, { label: "Usual Meals", value: formatArray(mealsYouUsuallyEat) }), _jsx(DataRow, { label: "Pre-workout Meals", value: numMealsBeforeGym })] })), hasProgressPhotos && (_jsx(Section, { style: highlightBox, children: _jsx(Text, { style: highlightText, children: "This client has uploaded progress photos. View them in their profile." }) })), _jsx(Text, { style: paragraph, children: "Review their profile and start building their personalized training program." }), _jsx("div", { style: {
|
|
49
|
+
marginTop: "24px",
|
|
50
|
+
marginBottom: "24px",
|
|
51
|
+
textAlign: "left",
|
|
52
|
+
}, children: _jsx("a", { href: clientProfileUrl, style: {
|
|
53
|
+
backgroundColor: "#0f172a",
|
|
54
|
+
borderRadius: "8px",
|
|
55
|
+
fontSize: "16px",
|
|
56
|
+
fontWeight: "bold",
|
|
57
|
+
textDecoration: "none",
|
|
58
|
+
padding: "12px 32px",
|
|
59
|
+
display: "inline-block",
|
|
60
|
+
}, children: _jsx("span", { style: { color: "#ffffff", textDecoration: "none" }, children: "View Client Profile" }) }) }), _jsx(Text, { style: { ...paragraph }, children: "Assign their first workout or check in to welcome them to your coaching roster." }), _jsx("div", { style: {
|
|
61
|
+
textAlign: "left",
|
|
62
|
+
margin: "24px 0",
|
|
63
|
+
}, children: _jsx("a", { href: "https://www.discord.gg/trackedgg", style: {
|
|
64
|
+
backgroundColor: "#5865F2",
|
|
65
|
+
borderRadius: "8px",
|
|
66
|
+
fontSize: "16px",
|
|
67
|
+
fontWeight: "bold",
|
|
68
|
+
textDecoration: "none",
|
|
69
|
+
padding: "12px 32px",
|
|
70
|
+
display: "inline-block",
|
|
71
|
+
}, children: _jsx("span", { style: { color: "#ffffff", textDecoration: "none" }, children: "Join our Discord Community" }) }) }), _jsx(Hr, { style: hr }), _jsxs(Text, { style: footer, children: ["Copyright \u00A9 Tracked Training Platform Inc. ", _jsx("br", {}), " 9101 Horne Street, Vancouver, BC"] }), _jsxs(Container, { children: [_jsx(Link, { href: `${websiteUrl}/terms`, style: { ...footer, paddingRight: 10 }, children: "Terms" }), _jsx(Link, { style: { ...footer, paddingRight: 10 }, children: " | " }), _jsx(Link, { href: `${websiteUrl}/privacy`, style: { ...footer, paddingRight: 10 }, children: "Privacy" }), _jsx(Link, { style: { ...footer, paddingRight: 10 }, children: " | " }), _jsx(Link, { href: `${websiteUrl}/support`, style: { ...footer, paddingRight: 10 }, children: "Support" })] }), _jsx(Text, { style: footer, children: "This is a service notification by the Tracked Training Platform." })] }) }) })] }));
|
|
72
|
+
};
|
|
73
|
+
const main = {
|
|
74
|
+
backgroundColor: "#020617",
|
|
75
|
+
fontFamily: '-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Ubuntu,sans-serif',
|
|
76
|
+
};
|
|
77
|
+
const container = {
|
|
78
|
+
backgroundColor: "#020617",
|
|
79
|
+
margin: "0 auto",
|
|
80
|
+
padding: "20px 0 48px",
|
|
81
|
+
marginBottom: "64px",
|
|
82
|
+
borderRadius: "8px",
|
|
83
|
+
};
|
|
84
|
+
const box = {
|
|
85
|
+
padding: "0 24px",
|
|
86
|
+
};
|
|
87
|
+
const hr = {
|
|
88
|
+
borderColor: "#4ade80",
|
|
89
|
+
margin: "24px 0",
|
|
90
|
+
borderWidth: "1px",
|
|
91
|
+
};
|
|
92
|
+
const paragraph = {
|
|
93
|
+
color: "#ffffff",
|
|
94
|
+
fontSize: "16px",
|
|
95
|
+
lineHeight: "24px",
|
|
96
|
+
textAlign: "left",
|
|
97
|
+
};
|
|
98
|
+
const heading = {
|
|
99
|
+
color: "#ffffff",
|
|
100
|
+
fontSize: "24px",
|
|
101
|
+
lineHeight: "32px",
|
|
102
|
+
fontWeight: "bold",
|
|
103
|
+
marginBottom: "16px",
|
|
104
|
+
};
|
|
105
|
+
const sectionHeading = {
|
|
106
|
+
color: "#4ade80",
|
|
107
|
+
fontSize: "14px",
|
|
108
|
+
fontWeight: "bold",
|
|
109
|
+
textTransform: "uppercase",
|
|
110
|
+
letterSpacing: "0.5px",
|
|
111
|
+
marginBottom: "16px",
|
|
112
|
+
marginTop: "0",
|
|
113
|
+
};
|
|
114
|
+
const infoBox = {
|
|
115
|
+
backgroundColor: "#1e293b",
|
|
116
|
+
padding: "20px 24px",
|
|
117
|
+
borderRadius: "8px",
|
|
118
|
+
margin: "24px 0",
|
|
119
|
+
};
|
|
120
|
+
const highlightBox = {
|
|
121
|
+
backgroundColor: "#4ade8020",
|
|
122
|
+
borderLeft: "4px solid #4ade80",
|
|
123
|
+
padding: "12px 16px",
|
|
124
|
+
borderRadius: "4px",
|
|
125
|
+
margin: "24px 0",
|
|
126
|
+
};
|
|
127
|
+
const highlightText = {
|
|
128
|
+
color: "#4ade80",
|
|
129
|
+
fontSize: "14px",
|
|
130
|
+
lineHeight: "20px",
|
|
131
|
+
margin: "0",
|
|
132
|
+
};
|
|
133
|
+
const dataLabel = {
|
|
134
|
+
color: "#94a3b8",
|
|
135
|
+
fontSize: "13px",
|
|
136
|
+
lineHeight: "20px",
|
|
137
|
+
margin: "0",
|
|
138
|
+
fontWeight: "500",
|
|
139
|
+
};
|
|
140
|
+
const dataValue = {
|
|
141
|
+
color: "#e2e8f0",
|
|
142
|
+
fontSize: "14px",
|
|
143
|
+
lineHeight: "20px",
|
|
144
|
+
margin: "0",
|
|
145
|
+
};
|
|
146
|
+
const footer = {
|
|
147
|
+
color: "#94a3b8",
|
|
148
|
+
fontSize: "12px",
|
|
149
|
+
lineHeight: "16px",
|
|
150
|
+
};
|
|
151
|
+
export default ClientOnboardedEmail;
|
|
152
|
+
//# sourceMappingURL=client-onboarded.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client-onboarded.js","sourceRoot":"","sources":["../../src/emails/client-onboarded.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,IAAI,EACJ,MAAM,EACN,SAAS,EACT,IAAI,EACJ,EAAE,EACF,IAAI,EACJ,GAAG,EACH,IAAI,EACJ,OAAO,EACP,GAAG,EACH,OAAO,EACP,IAAI,GACL,MAAM,yBAAyB,CAAC;AAuCjC,MAAM,OAAO,GAAG,+CAA+C,CAAC;AAEhE,MAAM,WAAW,GAAG,CAAC,GAAc,EAAU,EAAE;IAC7C,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACxC,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,OAAO,GAAG,CAAC,EACf,KAAK,EACL,KAAK,GAIN,EAAE,EAAE;IACH,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAExB,OAAO,CACL,MAAC,GAAG,IAAC,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,aACjC,KAAC,MAAM,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,YACrD,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,KAAK,GAAQ,GAC/B,EACT,KAAC,MAAM,IAAC,KAAK,EAAE,EAAE,aAAa,EAAE,KAAK,EAAE,YACrC,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,YAAG,KAAK,GAAQ,GAC/B,IACL,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,EACnC,SAAS,EACT,UAAU,EACV,WAAW,EACX,gBAAgB,EAChB,UAAU,GAAG,oBAAoB,EACjC,WAAW,EACX,MAAM,EACN,MAAM,EACN,QAAQ,EACR,cAAc,EACd,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,SAAS,EACT,aAAa,EACb,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,GACS,EAAE,EAAE;IAC9B,MAAM,WAAW,GAAG,UAAU,IAAI,WAAW,CAAC;IAE9C,MAAM,eAAe,GAAG,WAAW,IAAI,MAAM,IAAI,MAAM,IAAI,QAAQ,CAAC;IACpE,MAAM,eAAe,GACnB,WAAW;QACX,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,oBAAoB;QACpB,CAAC,iBAAiB,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;QACnD,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,CAAC;QACjD,CAAC,QAAQ,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;QACjC,gBAAgB;QAChB,cAAc,CAAC;IACjB,MAAM,gBAAgB,GACpB,CAAC,eAAe,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,CAAC;QAC/C,CAAC,SAAS,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC;QACnC,aAAa;QACb,WAAW;QACX,oBAAoB;QACpB,CAAC,kBAAkB,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,CAAC;QACrD,iBAAiB,CAAC;IAEpB,OAAO,CACL,MAAC,IAAI,eACH,MAAC,IAAI,eACH,eAAM,IAAI,EAAC,cAAc,EAAC,OAAO,EAAC,YAAY,GAAG,EACjD,eAAM,IAAI,EAAC,yBAAyB,EAAC,OAAO,EAAC,YAAY,GAAG,IACvD,EACP,MAAC,OAAO,eACL,WAAW,gEACJ,EACV,KAAC,IAAI,IAAC,KAAK,EAAE,IAAI,YACf,KAAC,SAAS,IAAC,KAAK,EAAE,SAAS,YACzB,MAAC,OAAO,IAAC,KAAK,EAAE,GAAG,aACjB,MAAC,GAAG,IAAC,KAAK,EAAE,EAAE,YAAY,EAAE,KAAK,EAAE,aACjC,KAAC,MAAM,IAAC,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,YACvD,KAAC,GAAG,IAAC,GAAG,EAAE,GAAG,OAAO,EAAE,EAAE,KAAK,EAAC,IAAI,EAAC,MAAM,EAAC,IAAI,EAAC,GAAG,EAAC,SAAS,GAAG,GACxD,EACT,KAAC,MAAM,IACL,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM;4CACb,aAAa,EAAE,QAAQ;4CACvB,WAAW,EAAE,KAAK;yCACnB,YAED,KAAC,IAAI,IACH,KAAK,EAAE;gDACL,QAAQ,EAAE,MAAM;gDAChB,UAAU,EAAE,KAAK;gDACjB,UAAU,EACR,oEAAoE;gDACtE,KAAK,EAAE,SAAS;gDAChB,MAAM,EAAE,GAAG;gDACX,UAAU,EAAE,MAAM;gDAClB,aAAa,EAAE,OAAO;6CACvB,wBAGI,GACA,IACL,EACN,KAAC,EAAE,IAAC,KAAK,EAAE,EAAE,GAAI,EAEjB,KAAC,IAAI,IAAC,KAAK,EAAE,OAAO,sCAA8B,EAClD,MAAC,IAAI,IAAC,KAAK,EAAE,SAAS,oBAChB,SAAS,QAAI,WAAW,4GAGvB,EAGP,MAAC,OAAO,IAAC,KAAK,EAAE,OAAO,aACrB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,+BAAuB,EAClD,KAAC,OAAO,IAAC,KAAK,EAAC,MAAM,EAAC,KAAK,EAAE,WAAW,GAAI,EAC5C,KAAC,OAAO,IAAC,KAAK,EAAC,OAAO,EAAC,KAAK,EAAE,WAAW,GAAI,EAC5C,eAAe,IAAI,CAClB,8BACE,KAAC,OAAO,IAAC,KAAK,EAAC,eAAe,EAAC,KAAK,EAAE,WAAW,GAAI,EACrD,KAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,MAAM,GAAI,EACzC,KAAC,OAAO,IAAC,KAAK,EAAC,QAAQ,EAAC,KAAK,EAAE,MAAM,GAAI,EACzC,KAAC,OAAO,IAAC,KAAK,EAAC,UAAU,EAAC,KAAK,EAAE,QAAQ,GAAI,EAC7C,KAAC,OAAO,IACN,KAAK,EAAC,OAAO,EACb,KAAK,EACH,cAAc,KAAK,QAAQ;oDACzB,CAAC,CAAC,gBAAgB;oDAClB,CAAC,CAAC,cAAc,KAAK,UAAU;wDAC7B,CAAC,CAAC,mBAAmB;wDACrB,CAAC,CAAC,SAAS,GAEjB,IACD,CACJ,IACO,EAGT,eAAe,IAAI,CAClB,MAAC,OAAO,IAAC,KAAK,EAAE,OAAO,aACrB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,qCAA6B,EACxD,KAAC,OAAO,IAAC,KAAK,EAAC,cAAc,EAAC,KAAK,EAAE,WAAW,GAAI,EACpD,KAAC,OAAO,IACN,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,GACnC,EACF,KAAC,OAAO,IAAC,KAAK,EAAC,gBAAgB,EAAC,KAAK,EAAE,oBAAoB,GAAI,EAC/D,KAAC,OAAO,IACN,KAAK,EAAC,sBAAsB,EAC5B,KAAK,EAAE,WAAW,CAAC,iBAAiB,CAAC,GACrC,EACF,KAAC,OAAO,IACN,KAAK,EAAC,qBAAqB,EAC3B,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,GACpC,EACF,KAAC,OAAO,IACN,KAAK,EAAC,sBAAsB,EAC5B,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC,GAC5B,EACF,KAAC,OAAO,IAAC,KAAK,EAAC,iBAAiB,EAAC,KAAK,EAAE,gBAAgB,GAAI,EAC5D,KAAC,OAAO,IAAC,KAAK,EAAC,aAAa,EAAC,KAAK,EAAE,cAAc,GAAI,IAC9C,CACX,EAGA,gBAAgB,IAAI,CACnB,MAAC,OAAO,IAAC,KAAK,EAAE,OAAO,aACrB,KAAC,IAAI,IAAC,KAAK,EAAE,cAAc,sCAA8B,EACzD,KAAC,OAAO,IACN,KAAK,EAAC,kBAAkB,EACxB,KAAK,EAAE,WAAW,CAAC,eAAe,CAAC,GACnC,EACF,KAAC,OAAO,IAAC,KAAK,EAAC,WAAW,EAAC,KAAK,EAAE,WAAW,CAAC,SAAS,CAAC,GAAI,EAC5D,KAAC,OAAO,IAAC,KAAK,EAAC,gBAAgB,EAAC,KAAK,EAAE,aAAa,GAAI,EACvD,WAAW,IAAI,CACd,KAAC,OAAO,IACN,KAAK,EAAC,cAAc,EACpB,KAAK,EAAE,MAAM,WAAW,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,UAAU,WAAW,CAAC,GAAG,GAAG,GACvF,CACH,EACD,KAAC,OAAO,IAAC,KAAK,EAAC,eAAe,EAAC,KAAK,EAAE,oBAAoB,GAAI,EAC9D,KAAC,OAAO,IACN,KAAK,EAAC,aAAa,EACnB,KAAK,EAAE,WAAW,CAAC,kBAAkB,CAAC,GACtC,EACF,KAAC,OAAO,IACN,KAAK,EAAC,mBAAmB,EACzB,KAAK,EAAE,iBAAiB,GACxB,IACM,CACX,EAGA,iBAAiB,IAAI,CACpB,KAAC,OAAO,IAAC,KAAK,EAAE,YAAY,YAC1B,KAAC,IAAI,IAAC,KAAK,EAAE,aAAa,sFAGnB,GACC,CACX,EAED,KAAC,IAAI,IAAC,KAAK,EAAE,SAAS,6FAGf,EAEP,cACE,KAAK,EAAE;oCACL,SAAS,EAAE,MAAM;oCACjB,YAAY,EAAE,MAAM;oCACpB,SAAS,EAAE,MAAe;iCAC3B,YAED,YACE,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE;wCACL,eAAe,EAAE,SAAS;wCAC1B,YAAY,EAAE,KAAK;wCACnB,QAAQ,EAAE,MAAM;wCAChB,UAAU,EAAE,MAAM;wCAClB,cAAc,EAAE,MAAM;wCACtB,OAAO,EAAE,WAAW;wCACpB,OAAO,EAAE,cAAc;qCACxB,YAED,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,oCAElD,GACL,GACA,EAEN,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,GAAG,SAAS,EAAE,gGAGtB,EAEP,cACE,KAAK,EAAE;oCACL,SAAS,EAAE,MAAe;oCAC1B,MAAM,EAAE,QAAQ;iCACjB,YAED,YACE,IAAI,EAAC,kCAAkC,EACvC,KAAK,EAAE;wCACL,eAAe,EAAE,SAAS;wCAC1B,YAAY,EAAE,KAAK;wCACnB,QAAQ,EAAE,MAAM;wCAChB,UAAU,EAAE,MAAM;wCAClB,cAAc,EAAE,MAAM;wCACtB,OAAO,EAAE,WAAW;wCACpB,OAAO,EAAE,cAAc;qCACxB,YAED,eAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,2CAElD,GACL,GACA,EAEN,KAAC,EAAE,IAAC,KAAK,EAAE,EAAE,GAAI,EACjB,MAAC,IAAI,IAAC,KAAK,EAAE,MAAM,iEAC0B,cAAM,yCAE5C,EAEP,MAAC,SAAS,eACR,KAAC,IAAI,IACH,IAAI,EAAE,GAAG,UAAU,QAAQ,EAC3B,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,sBAGjC,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,oBAAY,EACxD,KAAC,IAAI,IACH,IAAI,EAAE,GAAG,UAAU,UAAU,EAC7B,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,wBAGjC,EACP,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,oBAAY,EACxD,KAAC,IAAI,IACH,IAAI,EAAE,GAAG,UAAU,UAAU,EAC7B,KAAK,EAAE,EAAE,GAAG,MAAM,EAAE,YAAY,EAAE,EAAE,EAAE,wBAGjC,IACG,EAEZ,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,iFAEZ,IACC,GACA,GACP,IACF,CACR,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,IAAI,GAAG;IACX,eAAe,EAAE,SAAS;IAC1B,UAAU,EACR,uFAAuF;CAC1F,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,eAAe,EAAE,SAAS;IAC1B,MAAM,EAAE,QAAQ;IAChB,OAAO,EAAE,aAAa;IACtB,YAAY,EAAE,MAAM;IACpB,YAAY,EAAE,KAAK;CACpB,CAAC;AAEF,MAAM,GAAG,GAAG;IACV,OAAO,EAAE,QAAQ;CAClB,CAAC;AAEF,MAAM,EAAE,GAAG;IACT,WAAW,EAAE,SAAS;IACtB,MAAM,EAAE,QAAQ;IAChB,WAAW,EAAE,KAAK;CACnB,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,SAAS,EAAE,MAAe;CAC3B,CAAC;AAEF,MAAM,OAAO,GAAG;IACd,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,UAAU,EAAE,MAAM;IAClB,YAAY,EAAE,MAAM;CACrB,CAAC;AAEF,MAAM,cAAc,GAAG;IACrB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,aAAa,EAAE,WAAoB;IACnC,aAAa,EAAE,OAAO;IACtB,YAAY,EAAE,MAAM;IACpB,SAAS,EAAE,GAAG;CACf,CAAC;AAEF,MAAM,OAAO,GAAG;IACd,eAAe,EAAE,SAAS;IAC1B,OAAO,EAAE,WAAW;IACpB,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,YAAY,GAAG;IACnB,eAAe,EAAE,WAAW;IAC5B,UAAU,EAAE,mBAAmB;IAC/B,OAAO,EAAE,WAAW;IACpB,YAAY,EAAE,KAAK;IACnB,MAAM,EAAE,QAAQ;CACjB,CAAC;AAEF,MAAM,aAAa,GAAG;IACpB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,GAAG;IACX,UAAU,EAAE,KAAK;CAClB,CAAC;AAEF,MAAM,SAAS,GAAG;IAChB,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,GAAG;CACZ,CAAC;AAEF,MAAM,MAAM,GAAG;IACb,KAAK,EAAE,SAAS;IAChB,QAAQ,EAAE,MAAM;IAChB,UAAU,EAAE,MAAM;CACnB,CAAC;AAEF,eAAe,oBAAoB,CAAC"}
|
package/dist/emails/index.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC"}
|
package/dist/emails/index.js
CHANGED
package/dist/emails/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAC;AACnC,cAAc,iBAAiB,CAAC;AAChC,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,kBAAkB,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BodyweightGoalReachedEmail } from "./emails/bodyweight-goal-reached.js";
|
|
2
|
-
import {
|
|
2
|
+
import { ClientOnboardedEmail } from "./emails/client-onboarded.js";
|
|
3
3
|
import { CoachInviteEmail } from "./emails/coach-invite.js";
|
|
4
4
|
import { CoachRemovedClientEmail } from "./emails/coach-removed-client.js";
|
|
5
5
|
import { DirectMessageEmail } from "./emails/direct-message.js";
|
|
@@ -18,6 +18,6 @@ import { WeekOneCheckinEmail } from "./emails/week-one-checkin.js";
|
|
|
18
18
|
import { WelcomeEmail } from "./emails/welcome.js";
|
|
19
19
|
import { isPrivateRelayEmail, isValidEmailFormat, shouldSendEmailTo } from "./utils/email-validation.js";
|
|
20
20
|
import { isAnonymousUsername, getSafeDisplayName } from "./utils/username-validation.js";
|
|
21
|
-
export { BodyweightGoalReachedEmail,
|
|
21
|
+
export { BodyweightGoalReachedEmail, ClientOnboardedEmail, CoachInviteEmail, CoachRemovedClientEmail, DirectMessageEmail, FeatureDiscoveryEmail, FirstWorkoutAssignedEmail, FirstWorkoutCompletedEmail, MonthlyReportEmail, NewFollowerEmail, SubscriptionCanceledEmail, SupportEmail, TeamInviteEmail, TeamMemberRemovedEmail, TrackedMagicLink, TrackedMagicLinkActivate, WeekOneCheckinEmail, WelcomeEmail, };
|
|
22
22
|
export { isPrivateRelayEmail, isValidEmailFormat, shouldSendEmailTo, isAnonymousUsername, getSafeDisplayName, };
|
|
23
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAGnD,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,YAAY,GACb,CAAC;AAGF,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,GACnB,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BodyweightGoalReachedEmail } from "./emails/bodyweight-goal-reached.js";
|
|
2
|
-
import {
|
|
2
|
+
import { ClientOnboardedEmail } from "./emails/client-onboarded.js";
|
|
3
3
|
import { CoachInviteEmail } from "./emails/coach-invite.js";
|
|
4
4
|
import { CoachRemovedClientEmail } from "./emails/coach-removed-client.js";
|
|
5
5
|
import { DirectMessageEmail } from "./emails/direct-message.js";
|
|
@@ -19,7 +19,7 @@ import { WelcomeEmail } from "./emails/welcome.js";
|
|
|
19
19
|
// Import validation utilities
|
|
20
20
|
import { isPrivateRelayEmail, isValidEmailFormat, shouldSendEmailTo, } from "./utils/email-validation.js";
|
|
21
21
|
import { isAnonymousUsername, getSafeDisplayName, } from "./utils/username-validation.js";
|
|
22
|
-
export { BodyweightGoalReachedEmail,
|
|
22
|
+
export { BodyweightGoalReachedEmail, ClientOnboardedEmail, CoachInviteEmail, CoachRemovedClientEmail, DirectMessageEmail, FeatureDiscoveryEmail, FirstWorkoutAssignedEmail, FirstWorkoutCompletedEmail, MonthlyReportEmail, NewFollowerEmail, SubscriptionCanceledEmail, SupportEmail, TeamInviteEmail, TeamMemberRemovedEmail, TrackedMagicLink, TrackedMagicLinkActivate, WeekOneCheckinEmail, WelcomeEmail, };
|
|
23
23
|
// Export validation utilities
|
|
24
24
|
export { isPrivateRelayEmail, isValidEmailFormat, shouldSendEmailTo, isAnonymousUsername, getSafeDisplayName, };
|
|
25
25
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AACjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AACnF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAEnD,8BAA8B;AAC9B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,GAClB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EACL,0BAA0B,EAC1B,oBAAoB,EACpB,gBAAgB,EAChB,uBAAuB,EACvB,kBAAkB,EAClB,qBAAqB,EACrB,yBAAyB,EACzB,0BAA0B,EAC1B,kBAAkB,EAClB,gBAAgB,EAChB,yBAAyB,EACzB,YAAY,EACZ,eAAe,EACf,sBAAsB,EACtB,gBAAgB,EAChB,wBAAwB,EACxB,mBAAmB,EACnB,YAAY,GACb,CAAC;AAEF,8BAA8B;AAC9B,OAAO,EACL,mBAAmB,EACnB,kBAAkB,EAClB,iBAAiB,EACjB,mBAAmB,EACnB,kBAAkB,GACnB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tracked/emails",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Email templates for Tracked Training Platform",
|
|
5
5
|
"author": "Tracked Training Platform Inc.",
|
|
6
6
|
"license": "MIT",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
],
|
|
25
25
|
"scripts": {
|
|
26
26
|
"build": "rm -rf ./dist && tsc",
|
|
27
|
-
"dev:email": "email dev",
|
|
27
|
+
"dev:email": "email dev --dir src/emails",
|
|
28
28
|
"export": "email export",
|
|
29
29
|
"typecheck": "tsc --noEmit",
|
|
30
30
|
"test": "vitest run",
|
|
@@ -37,26 +37,26 @@
|
|
|
37
37
|
"clean": "rm -rf dist node_modules .turbo"
|
|
38
38
|
},
|
|
39
39
|
"dependencies": {
|
|
40
|
-
"@react-email/components": "^0.
|
|
41
|
-
"react": "19.
|
|
42
|
-
"react-dom": "19.
|
|
43
|
-
"react-email": "^
|
|
40
|
+
"@react-email/components": "^1.0.2",
|
|
41
|
+
"react": "^19.2.3",
|
|
42
|
+
"react-dom": "^19.2.3",
|
|
43
|
+
"react-email": "^5.1.0"
|
|
44
44
|
},
|
|
45
45
|
"devDependencies": {
|
|
46
|
-
"@react-email/preview-server": "
|
|
47
|
-
"@types/node": "^
|
|
48
|
-
"@types/react": "^
|
|
49
|
-
"@types/react-dom": "^
|
|
50
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
51
|
-
"@typescript-eslint/parser": "^8.
|
|
52
|
-
"@vitest/coverage-v8": "^
|
|
53
|
-
"dotenv-cli": "^
|
|
54
|
-
"eslint": "^9.
|
|
55
|
-
"eslint-plugin-react": "^7.37.
|
|
56
|
-
"eslint-plugin-react-hooks": "^
|
|
57
|
-
"prettier": "^3.4
|
|
58
|
-
"typescript": "^5.
|
|
59
|
-
"vitest": "^
|
|
46
|
+
"@react-email/preview-server": "5.1.0",
|
|
47
|
+
"@types/node": "^25.0.3",
|
|
48
|
+
"@types/react": "^19.2.7",
|
|
49
|
+
"@types/react-dom": "^19.2.3",
|
|
50
|
+
"@typescript-eslint/eslint-plugin": "^8.50.0",
|
|
51
|
+
"@typescript-eslint/parser": "^8.50.0",
|
|
52
|
+
"@vitest/coverage-v8": "^4.0.16",
|
|
53
|
+
"dotenv-cli": "^11.0.0",
|
|
54
|
+
"eslint": "^9.39.2",
|
|
55
|
+
"eslint-plugin-react": "^7.37.5",
|
|
56
|
+
"eslint-plugin-react-hooks": "^7.0.1",
|
|
57
|
+
"prettier": "^3.7.4",
|
|
58
|
+
"typescript": "^5.9.3",
|
|
59
|
+
"vitest": "^4.0.16"
|
|
60
60
|
},
|
|
61
61
|
"keywords": [
|
|
62
62
|
"email",
|