@tracked/emails 0.2.0 → 0.2.2

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.
Files changed (128) hide show
  1. package/dist/components/content.d.ts +58 -0
  2. package/dist/components/content.d.ts.map +1 -0
  3. package/dist/components/content.js +166 -0
  4. package/dist/components/content.js.map +1 -0
  5. package/dist/components/index.d.ts +6 -0
  6. package/dist/components/index.d.ts.map +1 -0
  7. package/dist/components/index.js +11 -0
  8. package/dist/components/index.js.map +1 -0
  9. package/dist/components/interactive.d.ts +23 -0
  10. package/dist/components/interactive.d.ts.map +1 -0
  11. package/dist/components/interactive.js +66 -0
  12. package/dist/components/interactive.js.map +1 -0
  13. package/dist/components/layout.d.ts +27 -0
  14. package/dist/components/layout.d.ts.map +1 -0
  15. package/dist/components/layout.js +83 -0
  16. package/dist/components/layout.js.map +1 -0
  17. package/dist/components/tokens.d.ts +58 -0
  18. package/dist/components/tokens.d.ts.map +1 -0
  19. package/dist/components/tokens.js +64 -0
  20. package/dist/components/tokens.js.map +1 -0
  21. package/dist/components/typography.d.ts +31 -0
  22. package/dist/components/typography.d.ts.map +1 -0
  23. package/dist/components/typography.js +72 -0
  24. package/dist/components/typography.js.map +1 -0
  25. package/dist/emails/anniversary.d.ts +12 -0
  26. package/dist/emails/anniversary.d.ts.map +1 -0
  27. package/dist/emails/anniversary.js +41 -0
  28. package/dist/emails/anniversary.js.map +1 -0
  29. package/dist/emails/app-review-request.d.ts +11 -0
  30. package/dist/emails/app-review-request.d.ts.map +1 -0
  31. package/dist/emails/app-review-request.js +24 -0
  32. package/dist/emails/app-review-request.js.map +1 -0
  33. package/dist/emails/bodyweight-goal-reached.d.ts +1 -1
  34. package/dist/emails/bodyweight-goal-reached.d.ts.map +1 -1
  35. package/dist/emails/bodyweight-goal-reached.js +86 -159
  36. package/dist/emails/bodyweight-goal-reached.js.map +1 -1
  37. package/dist/emails/client-inactive-alert.d.ts +14 -0
  38. package/dist/emails/client-inactive-alert.d.ts.map +1 -0
  39. package/dist/emails/client-inactive-alert.js +34 -0
  40. package/dist/emails/client-inactive-alert.js.map +1 -0
  41. package/dist/emails/client-onboarded.d.ts.map +1 -1
  42. package/dist/emails/client-onboarded.js +37 -123
  43. package/dist/emails/client-onboarded.js.map +1 -1
  44. package/dist/emails/coach-invite.d.ts +1 -1
  45. package/dist/emails/coach-invite.d.ts.map +1 -1
  46. package/dist/emails/coach-invite.js +13 -121
  47. package/dist/emails/coach-invite.js.map +1 -1
  48. package/dist/emails/coach-removed-client.d.ts +1 -1
  49. package/dist/emails/coach-removed-client.d.ts.map +1 -1
  50. package/dist/emails/coach-removed-client.js +3 -76
  51. package/dist/emails/coach-removed-client.js.map +1 -1
  52. package/dist/emails/direct-message.d.ts +1 -1
  53. package/dist/emails/direct-message.d.ts.map +1 -1
  54. package/dist/emails/direct-message.js +22 -96
  55. package/dist/emails/direct-message.js.map +1 -1
  56. package/dist/emails/feature-discovery.d.ts +2 -1
  57. package/dist/emails/feature-discovery.d.ts.map +1 -1
  58. package/dist/emails/feature-discovery.js +20 -117
  59. package/dist/emails/feature-discovery.js.map +1 -1
  60. package/dist/emails/first-workout-assigned.d.ts +1 -1
  61. package/dist/emails/first-workout-assigned.d.ts.map +1 -1
  62. package/dist/emails/first-workout-assigned.js +3 -94
  63. package/dist/emails/first-workout-assigned.js.map +1 -1
  64. package/dist/emails/first-workout-completed.d.ts +1 -1
  65. package/dist/emails/first-workout-completed.d.ts.map +1 -1
  66. package/dist/emails/first-workout-completed.js +14 -125
  67. package/dist/emails/first-workout-completed.js.map +1 -1
  68. package/dist/emails/inactive-reengagement.d.ts +10 -0
  69. package/dist/emails/inactive-reengagement.d.ts.map +1 -0
  70. package/dist/emails/inactive-reengagement.js +31 -0
  71. package/dist/emails/inactive-reengagement.js.map +1 -0
  72. package/dist/emails/index.d.ts +20 -4
  73. package/dist/emails/index.d.ts.map +1 -1
  74. package/dist/emails/index.js +20 -4
  75. package/dist/emails/index.js.map +1 -1
  76. package/dist/emails/monthly-report.d.ts +2 -1
  77. package/dist/emails/monthly-report.d.ts.map +1 -1
  78. package/dist/emails/monthly-report.js +14 -166
  79. package/dist/emails/monthly-report.js.map +1 -1
  80. package/dist/emails/new-follower.d.ts +1 -1
  81. package/dist/emails/new-follower.d.ts.map +1 -1
  82. package/dist/emails/new-follower.js +7 -91
  83. package/dist/emails/new-follower.js.map +1 -1
  84. package/dist/emails/nps-survey.d.ts +9 -0
  85. package/dist/emails/nps-survey.d.ts.map +1 -0
  86. package/dist/emails/nps-survey.js +51 -0
  87. package/dist/emails/nps-survey.js.map +1 -0
  88. package/dist/emails/subscription-canceled.d.ts +1 -1
  89. package/dist/emails/subscription-canceled.d.ts.map +1 -1
  90. package/dist/emails/subscription-canceled.js +20 -127
  91. package/dist/emails/subscription-canceled.js.map +1 -1
  92. package/dist/emails/support-email.d.ts +1 -1
  93. package/dist/emails/support-email.d.ts.map +1 -1
  94. package/dist/emails/support-email.js +3 -38
  95. package/dist/emails/support-email.js.map +1 -1
  96. package/dist/emails/team-invite.d.ts.map +1 -1
  97. package/dist/emails/team-invite.js +7 -96
  98. package/dist/emails/team-invite.js.map +1 -1
  99. package/dist/emails/team-member-removed-email.d.ts +1 -1
  100. package/dist/emails/team-member-removed-email.d.ts.map +1 -1
  101. package/dist/emails/team-member-removed-email.js +3 -93
  102. package/dist/emails/team-member-removed-email.js.map +1 -1
  103. package/dist/emails/tracked-magic-link-activate.d.ts +2 -2
  104. package/dist/emails/tracked-magic-link-activate.d.ts.map +1 -1
  105. package/dist/emails/tracked-magic-link-activate.js +3 -91
  106. package/dist/emails/tracked-magic-link-activate.js.map +1 -1
  107. package/dist/emails/tracked-magic-link.d.ts +3 -3
  108. package/dist/emails/tracked-magic-link.d.ts.map +1 -1
  109. package/dist/emails/tracked-magic-link.js +3 -99
  110. package/dist/emails/tracked-magic-link.js.map +1 -1
  111. package/dist/emails/week-one-checkin.d.ts +3 -2
  112. package/dist/emails/week-one-checkin.d.ts.map +1 -1
  113. package/dist/emails/week-one-checkin.js +22 -136
  114. package/dist/emails/week-one-checkin.js.map +1 -1
  115. package/dist/emails/weekly-progress-digest.d.ts +21 -0
  116. package/dist/emails/weekly-progress-digest.d.ts.map +1 -0
  117. package/dist/emails/weekly-progress-digest.js +78 -0
  118. package/dist/emails/weekly-progress-digest.js.map +1 -0
  119. package/dist/emails/welcome.d.ts +3 -2
  120. package/dist/emails/welcome.d.ts.map +1 -1
  121. package/dist/emails/welcome.js +16 -142
  122. package/dist/emails/welcome.js.map +1 -1
  123. package/dist/index.d.ts +8 -1
  124. package/dist/index.d.ts.map +1 -1
  125. package/dist/index.js +11 -1
  126. package/dist/index.js.map +1 -1
  127. package/package.json +1 -1
  128. package/src/emails/index.tsx +20 -4
@@ -1,129 +1,18 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } 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
- export const FirstWorkoutCompletedEmail = ({ userName, workoutName, totalSets, totalReps, workoutHistoryUrl, websiteUrl = "https://tracked.gg", }) => {
5
- return (_jsxs(Html, { children: [_jsxs(Head, { children: [_jsx("meta", { name: "color-scheme", content: "light only" }), _jsx("meta", { name: "supported-color-schemes", content: "light only" })] }), _jsx(Preview, { children: "Congratulations on completing your first workout on Tracked!" }), _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: {
6
- width: "auto",
7
- verticalAlign: "middle",
8
- paddingLeft: "4px",
9
- }, children: _jsx(Text, { style: {
10
- fontSize: "28px",
11
- fontWeight: "900",
12
- fontFamily: "Raleway, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
13
- color: "#020617",
14
- margin: "0",
15
- lineHeight: "32px",
16
- letterSpacing: "0.5px",
17
- }, children: "TRACKED" }) })] }), _jsx(Hr, { style: hr }), _jsx(Section, { style: { textAlign: "center", margin: "24px 0" }, children: _jsx(Text, { style: { fontSize: "48px", margin: "0" }, children: "\uD83C\uDF89" }) }), _jsx(Text, { style: heading, children: "First Workout Complete!" }), _jsxs(Text, { style: paragraph, children: ["Congratulations, ", userName, "! You've just completed your first workout on Tracked. This is the beginning of an amazing journey."] }), _jsxs(Section, { style: statsBox, children: [_jsx(Text, { style: statsHeading, children: "Your First Workout:" }), _jsxs(Text, { style: statsText, children: [_jsx("strong", { children: "Workout:" }), " ", workoutName] }), totalSets !== undefined && (_jsxs(Text, { style: statsText, children: [_jsx("strong", { children: "Sets Completed:" }), " ", totalSets] })), totalReps !== undefined && (_jsxs(Text, { style: statsText, children: [_jsx("strong", { children: "Total Reps:" }), " ", totalReps] }))] }), _jsx(Section, { style: motivationBox, children: _jsx(Text, { style: motivationText, children: "\"The secret of getting ahead is getting started.\" - Mark Twain" }) }), _jsx(Text, { style: paragraph, children: "You've taken the first step towards your fitness goals. Keep showing up, stay consistent, and watch yourself grow stronger every day." }), _jsx("div", { style: {
18
- marginTop: "24px",
19
- marginBottom: "24px",
20
- textAlign: "left",
21
- }, children: _jsx("a", { href: workoutHistoryUrl, style: {
22
- backgroundColor: "#0f172a",
23
- borderRadius: "8px",
24
- fontSize: "16px",
25
- fontWeight: "bold",
26
- textDecoration: "none",
27
- padding: "12px 32px",
28
- display: "inline-block",
29
- }, children: _jsx("span", { style: { color: "#ffffff", textDecoration: "none" }, children: "View Your Progress" }) }) }), _jsxs(Section, { style: tipBox, children: [_jsx(Text, { style: tipHeading, children: "Pro Tip:" }), _jsx(Text, { style: tipText, children: "Track every workout to see your progress over time. The data you collect now will help you understand how far you've come in the weeks and months ahead." })] }), _jsx("div", { style: {
30
- textAlign: "left",
31
- margin: "24px 0",
32
- }, children: _jsx("a", { href: "https://www.discord.gg/trackedgg", style: {
33
- backgroundColor: "#5865F2",
34
- borderRadius: "8px",
35
- fontSize: "16px",
36
- fontWeight: "bold",
37
- textDecoration: "none",
38
- padding: "12px 32px",
39
- display: "inline-block",
40
- }, 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." })] }) }) })] }));
41
- };
42
- const main = {
43
- backgroundColor: "#020617", // slate-950
44
- fontFamily: '-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Ubuntu,sans-serif',
45
- };
46
- const container = {
47
- backgroundColor: "#020617", // slate-950
48
- margin: "0 auto",
49
- padding: "20px 0 48px",
50
- marginBottom: "64px",
51
- borderRadius: "8px",
52
- };
53
- const box = {
54
- padding: "0 24px",
55
- };
56
- const hr = {
57
- borderColor: "#4ade80", // green-400
58
- margin: "24px 0",
59
- borderWidth: "1px",
60
- };
61
- const paragraph = {
62
- color: "#ffffff", // white
63
- fontSize: "16px",
64
- lineHeight: "24px",
65
- textAlign: "left",
66
- };
67
- const heading = {
68
- color: "#ffffff", // white
69
- fontSize: "24px",
70
- lineHeight: "32px",
71
- fontWeight: "bold",
72
- marginBottom: "16px",
73
- textAlign: "center",
74
- };
75
- const statsBox = {
76
- backgroundColor: "#1e293b",
77
- padding: "16px 24px",
78
- borderRadius: "8px",
79
- margin: "24px 0",
80
- };
81
- const statsHeading = {
82
- color: "#4ade80",
83
- fontSize: "16px",
84
- fontWeight: "bold",
85
- marginBottom: "12px",
86
- };
87
- const statsText = {
88
- color: "#e2e8f0",
89
- fontSize: "14px",
90
- lineHeight: "24px",
91
- marginBottom: "4px",
92
- };
93
- const motivationBox = {
94
- backgroundColor: "transparent",
95
- padding: "16px 0",
96
- margin: "24px 0",
97
- borderLeft: "4px solid #4ade80",
98
- paddingLeft: "20px",
99
- };
100
- const motivationText = {
101
- color: "#94a3b8",
102
- fontSize: "15px",
103
- lineHeight: "22px",
104
- fontStyle: "italic",
105
- };
106
- const tipBox = {
107
- backgroundColor: "#1e293b",
108
- padding: "16px 24px",
109
- borderRadius: "8px",
110
- margin: "24px 0",
111
- };
112
- const tipHeading = {
113
- color: "#4ade80",
114
- fontSize: "14px",
115
- fontWeight: "bold",
116
- marginBottom: "8px",
117
- };
118
- const tipText = {
119
- color: "#e2e8f0",
120
- fontSize: "14px",
121
- lineHeight: "20px",
122
- };
123
- const footer = {
124
- color: "#94a3b8", // slate-400 for subtle footer text
125
- fontSize: "12px",
126
- lineHeight: "16px",
2
+ import { Section, Text } from "@react-email/components";
3
+ import { EmailLayout, EmailHeader, EmailFooter, Heading, Paragraph, FeatureBox, TipBox, SmallText, PrimaryButton, DiscordButton, colors, } from "../components";
4
+ export const FirstWorkoutCompletedEmail = ({ userName = "Alex", workoutName = "Push Day A", totalSets = 18, totalReps = 156, workoutHistoryUrl = "tracked://history", websiteUrl = "https://tracked.gg", }) => {
5
+ return (_jsxs(EmailLayout, { preview: "Congratulations on completing your first workout on Tracked!", children: [_jsx(EmailHeader, {}), _jsx(Section, { style: { textAlign: "center", margin: "24px 0" }, children: _jsx(Text, { style: { fontSize: "48px", margin: "0" }, children: "\uD83C\uDF89" }) }), _jsx(Heading, { style: { textAlign: "center" }, children: "First Workout Complete!" }), _jsxs(Paragraph, { children: ["Congratulations, ", userName, "! You've just completed your first workout on Tracked. This is the beginning of an amazing journey."] }), _jsxs(FeatureBox, { title: "Your First Workout:", children: [_jsxs(SmallText, { children: [_jsx("strong", { children: "Workout:" }), " ", workoutName] }), totalSets !== undefined && (_jsxs(SmallText, { style: { marginTop: "4px" }, children: [_jsx("strong", { children: "Sets Completed:" }), " ", totalSets] })), totalReps !== undefined && (_jsxs(SmallText, { style: { marginTop: "4px" }, children: [_jsx("strong", { children: "Total Reps:" }), " ", totalReps] }))] }), _jsx(Section, { style: {
6
+ padding: "16px 0 16px 20px",
7
+ margin: "24px 0",
8
+ borderLeft: `4px solid ${colors.accent}`,
9
+ }, children: _jsx(Text, { style: {
10
+ color: colors.textMuted,
11
+ fontSize: "15px",
12
+ lineHeight: "22px",
13
+ fontStyle: "italic",
14
+ margin: "0",
15
+ }, children: "\"The secret of getting ahead is getting started.\" - Mark Twain" }) }), _jsx(Paragraph, { children: "You've taken the first step towards your fitness goals. Keep showing up, stay consistent, and watch yourself grow stronger every day." }), _jsx(PrimaryButton, { href: workoutHistoryUrl, children: "View Your Progress" }), _jsx(TipBox, { title: "Pro Tip", children: "Track every workout to see your progress over time. The data you collect now will help you understand how far you've come in the weeks and months ahead." }), _jsx(DiscordButton, {}), _jsx(EmailFooter, { websiteUrl: websiteUrl })] }));
127
16
  };
128
17
  export default FirstWorkoutCompletedEmail;
129
18
  //# sourceMappingURL=first-workout-completed.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"first-workout-completed.js","sourceRoot":"","sources":["../../src/emails/first-workout-completed.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"first-workout-completed.js","sourceRoot":"","sources":["../../src/emails/first-workout-completed.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;AACxD,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,EACT,UAAU,EACV,MAAM,EACN,SAAS,EACT,aAAa,EACb,aAAa,EACb,MAAM,GACP,MAAM,eAAe,CAAC;AAWvB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EACzC,QAAQ,GAAG,MAAM,EACjB,WAAW,GAAG,YAAY,EAC1B,SAAS,GAAG,EAAE,EACd,SAAS,GAAG,GAAG,EACf,iBAAiB,GAAG,mBAAmB,EACvC,UAAU,GAAG,oBAAoB,GACD,EAAE,EAAE;IACpC,OAAO,CACL,MAAC,WAAW,IAAC,OAAO,EAAC,8DAA8D,aACjF,KAAC,WAAW,KAAG,EAEf,KAAC,OAAO,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,QAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,YAChE,KAAC,IAAI,IAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,6BAAW,GACjD,EAEV,KAAC,OAAO,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,QAAiB,EAAE,wCAEtC,EACV,MAAC,SAAS,oCACU,QAAQ,2GAEhB,EAEZ,MAAC,UAAU,IAAC,KAAK,EAAC,qBAAqB,aACrC,MAAC,SAAS,eACR,wCAAyB,OAAE,WAAW,IAC5B,EACX,SAAS,KAAK,SAAS,IAAI,CAC1B,MAAC,SAAS,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,aACpC,+CAAgC,OAAE,SAAS,IACjC,CACb,EACA,SAAS,KAAK,SAAS,IAAI,CAC1B,MAAC,SAAS,IAAC,KAAK,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,aACpC,2CAA4B,OAAE,SAAS,IAC7B,CACb,IACU,EAEb,KAAC,OAAO,IACN,KAAK,EAAE;oBACL,OAAO,EAAE,kBAAkB;oBAC3B,MAAM,EAAE,QAAQ;oBAChB,UAAU,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;iBACzC,YAED,KAAC,IAAI,IACH,KAAK,EAAE;wBACL,KAAK,EAAE,MAAM,CAAC,SAAS;wBACvB,QAAQ,EAAE,MAAM;wBAChB,UAAU,EAAE,MAAM;wBAClB,SAAS,EAAE,QAAiB;wBAC5B,MAAM,EAAE,GAAG;qBACZ,iFAGI,GACC,EAEV,KAAC,SAAS,wJAGE,EAEZ,KAAC,aAAa,IAAC,IAAI,EAAE,iBAAiB,mCAAoC,EAE1E,KAAC,MAAM,IAAC,KAAK,EAAC,SAAS,yKAId,EAET,KAAC,aAAa,KAAG,EAEjB,KAAC,WAAW,IAAC,UAAU,EAAE,UAAU,GAAI,IAC3B,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,10 @@
1
+ interface InactiveReengagementEmailProps {
2
+ userName: string;
3
+ daysInactive: number;
4
+ appUrl: string;
5
+ websiteUrl?: string;
6
+ unsubscribeUrl?: string;
7
+ }
8
+ export declare const InactiveReengagementEmail: ({ userName, daysInactive, appUrl, websiteUrl, unsubscribeUrl, }: InactiveReengagementEmailProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default InactiveReengagementEmail;
10
+ //# sourceMappingURL=inactive-reengagement.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inactive-reengagement.d.ts","sourceRoot":"","sources":["../../src/emails/inactive-reengagement.tsx"],"names":[],"mappings":"AAaA,UAAU,8BAA8B;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,yBAAyB,GAAI,iEAMvC,8BAA8B,4CAmDhC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,31 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { EmailLayout, EmailHeader, EmailFooter, Heading, Paragraph, FeatureBox, FeatureList, PrimaryButton, DiscordButton, } from "../components";
3
+ export const InactiveReengagementEmail = ({ userName = "Alex", daysInactive = 21, appUrl = "tracked://app", websiteUrl = "https://tracked.gg", unsubscribeUrl = "https://tracked.gg/unsubscribe", }) => {
4
+ const getMessage = () => {
5
+ if (daysInactive >= 30) {
6
+ return "It's been a while! Your fitness journey is waiting for you.";
7
+ }
8
+ else if (daysInactive >= 14) {
9
+ return "We noticed you've been away. Ready to get back on track?";
10
+ }
11
+ else {
12
+ return "Hey, we miss you! Your workout streak is waiting to be continued.";
13
+ }
14
+ };
15
+ return (_jsxs(EmailLayout, { preview: `We miss you, ${userName}! Come back to Tracked`, children: [_jsx(EmailHeader, {}), _jsx(Heading, { children: "We Miss You!" }), _jsxs(Paragraph, { children: ["Hi ", userName, ", it's been ", daysInactive, " days since your last workout.", " ", getMessage()] }), _jsx(FeatureBox, { title: "Pick up where you left off:", children: _jsx(FeatureList, { items: [
16
+ {
17
+ title: "Your data is safe",
18
+ description: "All your workout history and progress is still here",
19
+ },
20
+ {
21
+ title: "Start fresh",
22
+ description: "Every day is a new opportunity to build consistency",
23
+ },
24
+ {
25
+ title: "Stay accountable",
26
+ description: "Track even quick workouts to maintain momentum",
27
+ },
28
+ ] }) }), _jsx(PrimaryButton, { href: appUrl, children: "Log a Workout" }), _jsx(Paragraph, { muted: true, children: "Remember: consistency beats perfection. Even a 10-minute session counts!" }), _jsx(DiscordButton, {}), _jsx(EmailFooter, { websiteUrl: websiteUrl, marketing: true, unsubscribeUrl: unsubscribeUrl })] }));
29
+ };
30
+ export default InactiveReengagementEmail;
31
+ //# sourceMappingURL=inactive-reengagement.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inactive-reengagement.js","sourceRoot":"","sources":["../../src/emails/inactive-reengagement.tsx"],"names":[],"mappings":";AACA,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,aAAa,GACd,MAAM,eAAe,CAAC;AAUvB,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,EACxC,QAAQ,GAAG,MAAM,EACjB,YAAY,GAAG,EAAE,EACjB,MAAM,GAAG,eAAe,EACxB,UAAU,GAAG,oBAAoB,EACjC,cAAc,GAAG,gCAAgC,GAClB,EAAE,EAAE;IACnC,MAAM,UAAU,GAAG,GAAG,EAAE;QACtB,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC;YACvB,OAAO,6DAA6D,CAAC;QACvE,CAAC;aAAM,IAAI,YAAY,IAAI,EAAE,EAAE,CAAC;YAC9B,OAAO,0DAA0D,CAAC;QACpE,CAAC;aAAM,CAAC;YACN,OAAO,mEAAmE,CAAC;QAC7E,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,WAAW,IAAC,OAAO,EAAE,gBAAgB,QAAQ,wBAAwB,aACpE,KAAC,WAAW,KAAG,EAEf,KAAC,OAAO,+BAAuB,EAC/B,MAAC,SAAS,sBACJ,QAAQ,kBAAc,YAAY,oCAAgC,GAAG,EACxE,UAAU,EAAE,IACH,EAEZ,KAAC,UAAU,IAAC,KAAK,EAAC,6BAA6B,YAC7C,KAAC,WAAW,IACV,KAAK,EAAE;wBACL;4BACE,KAAK,EAAE,mBAAmB;4BAC1B,WAAW,EAAE,qDAAqD;yBACnE;wBACD;4BACE,KAAK,EAAE,aAAa;4BACpB,WAAW,EAAE,qDAAqD;yBACnE;wBACD;4BACE,KAAK,EAAE,kBAAkB;4BACzB,WAAW,EAAE,gDAAgD;yBAC9D;qBACF,GACD,GACS,EAEb,KAAC,aAAa,IAAC,IAAI,EAAE,MAAM,8BAA+B,EAE1D,KAAC,SAAS,IAAC,KAAK,+FAEJ,EAEZ,KAAC,aAAa,KAAG,EAEjB,KAAC,WAAW,IAAC,UAAU,EAAE,UAAU,EAAE,SAAS,QAAC,cAAc,EAAE,cAAc,GAAI,IACrE,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,yBAAyB,CAAC"}
@@ -1,9 +1,25 @@
1
+ export * from "./anniversary";
2
+ export * from "./app-review-request";
3
+ export * from "./bodyweight-goal-reached";
4
+ export * from "./client-inactive-alert";
1
5
  export * from "./client-onboarded";
6
+ export * from "./coach-invite";
7
+ export * from "./coach-removed-client";
8
+ export * from "./direct-message";
9
+ export * from "./feature-discovery";
10
+ export * from "./first-workout-assigned";
11
+ export * from "./first-workout-completed";
12
+ export * from "./inactive-reengagement";
13
+ export * from "./monthly-report";
14
+ export * from "./new-follower";
15
+ export * from "./nps-survey";
16
+ export * from "./subscription-canceled";
2
17
  export * from "./support-email";
3
- export * from "./tracked-magic-link";
4
- export * from "./tracked-magic-link-activate";
5
18
  export * from "./team-invite";
6
- export * from "./coach-invite";
7
19
  export * from "./team-member-removed-email";
8
- export * from "./monthly-report";
20
+ export * from "./tracked-magic-link";
21
+ export * from "./tracked-magic-link-activate";
22
+ export * from "./week-one-checkin";
23
+ export * from "./weekly-progress-digest";
24
+ export * from "./welcome";
9
25
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC"}
@@ -1,9 +1,25 @@
1
+ export * from "./anniversary";
2
+ export * from "./app-review-request";
3
+ export * from "./bodyweight-goal-reached";
4
+ export * from "./client-inactive-alert";
1
5
  export * from "./client-onboarded";
6
+ export * from "./coach-invite";
7
+ export * from "./coach-removed-client";
8
+ export * from "./direct-message";
9
+ export * from "./feature-discovery";
10
+ export * from "./first-workout-assigned";
11
+ export * from "./first-workout-completed";
12
+ export * from "./inactive-reengagement";
13
+ export * from "./monthly-report";
14
+ export * from "./new-follower";
15
+ export * from "./nps-survey";
16
+ export * from "./subscription-canceled";
2
17
  export * from "./support-email";
3
- export * from "./tracked-magic-link";
4
- export * from "./tracked-magic-link-activate";
5
18
  export * from "./team-invite";
6
- export * from "./coach-invite";
7
19
  export * from "./team-member-removed-email";
8
- export * from "./monthly-report";
20
+ export * from "./tracked-magic-link";
21
+ export * from "./tracked-magic-link-activate";
22
+ export * from "./week-one-checkin";
23
+ export * from "./weekly-progress-digest";
24
+ export * from "./welcome";
9
25
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/emails/index.tsx"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,oBAAoB,CAAC;AACnC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,wBAAwB,CAAC;AACvC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,cAAc,CAAC;AAC7B,cAAc,yBAAyB,CAAC;AACxC,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,6BAA6B,CAAC;AAC5C,cAAc,sBAAsB,CAAC;AACrC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,WAAW,CAAC"}
@@ -36,7 +36,8 @@ interface MonthlyReportEmailProps {
36
36
  metrics?: MonthlyMetrics;
37
37
  previousMetrics?: PreviousMetrics | null;
38
38
  websiteUrl?: string;
39
+ unsubscribeUrl?: string;
39
40
  }
40
- export declare const MonthlyReportEmail: ({ metrics, previousMetrics, websiteUrl, }: MonthlyReportEmailProps) => import("react/jsx-runtime").JSX.Element;
41
+ export declare const MonthlyReportEmail: ({ metrics, previousMetrics, websiteUrl, unsubscribeUrl, }: MonthlyReportEmailProps) => import("react/jsx-runtime").JSX.Element;
41
42
  export default MonthlyReportEmail;
42
43
  //# sourceMappingURL=monthly-report.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"monthly-report.d.ts","sourceRoot":"","sources":["../../src/emails/monthly-report.tsx"],"names":[],"mappings":"AAgBA,UAAU,WAAW;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IAGpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAG3C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,UAAU,eAAe;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,UAAU,uBAAuB;IAC/B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAwDD,eAAO,MAAM,kBAAkB,GAAI,2CAIhC,uBAAuB,4CA0VzB,CAAC;AAyKF,eAAe,kBAAkB,CAAC"}
1
+ {"version":3,"file":"monthly-report.d.ts","sourceRoot":"","sources":["../../src/emails/monthly-report.tsx"],"names":[],"mappings":"AAgBA,UAAU,WAAW;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,cAAc;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,eAAe,EAAE,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IAC3C,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,UAAU,eAAe;IACvB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAED,UAAU,uBAAuB;IAC/B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,eAAe,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAsDD,eAAO,MAAM,kBAAkB,GAAI,2DAKhC,uBAAuB,4CAmMzB,CAAC;AAEF,eAAe,kBAAkB,CAAC"}
@@ -1,6 +1,6 @@
1
- import { jsxs as _jsxs, jsx as _jsx, 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";
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Section, Text, Row, Column, Hr } from "@react-email/components";
3
+ import { EmailLayout, EmailHeader, EmailFooter, MetricCard, ChangeIndicator, ListBox, DataRow, SectionHeading, HighlightBanner, SmallText, colors, } from "../components";
4
4
  function formatNumber(num) {
5
5
  if (num === null)
6
6
  return "N/A";
@@ -50,175 +50,23 @@ const defaultPreviousMetrics = {
50
50
  totalSetsTracked: 389,
51
51
  totalSessionsTracked: 16,
52
52
  };
53
- export const MonthlyReportEmail = ({ metrics = defaultMetrics, previousMetrics = defaultPreviousMetrics, websiteUrl = "https://tracked.gg", }) => {
53
+ export const MonthlyReportEmail = ({ metrics = defaultMetrics, previousMetrics = defaultPreviousMetrics, websiteUrl = "https://tracked.gg", unsubscribeUrl, }) => {
54
54
  const monthName = getMonthName(metrics.reportMonth);
55
- const getChangeIndicator = (current, previous) => {
56
- if (current === null || previous === null || !previousMetrics)
57
- return null;
58
- const diff = current - previous;
59
- if (diff > 0) {
60
- return (_jsxs(Text, { style: changeIndicatorPositive, children: ["\u25B2 ", formatDecimal(Math.abs(diff))] }));
61
- }
62
- if (diff < 0) {
63
- return (_jsxs(Text, { style: changeIndicatorNegative, children: ["\u25BC ", formatDecimal(Math.abs(diff))] }));
64
- }
65
- return _jsx(Text, { style: changeIndicatorNeutral, children: "\u2014" });
66
- };
67
55
  const hasBodyweightData = metrics.avgBodyweight || metrics.bodyweightChange;
68
56
  const hasSessionInsights = metrics.avgReadinessEnergy ||
69
57
  metrics.avgReadinessMood ||
70
58
  metrics.avgSessionSatisfaction ||
71
59
  metrics.avgSessionProgress;
72
- 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: ["Your ", monthName, " Training Report - Your monthly fitness journey at a glance"] }), _jsx(Body, { style: main, children: _jsx(Container, { style: container, children: _jsxs(Section, { style: box, children: [_jsx("table", { style: { marginBottom: "8px" }, children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle", paddingRight: "8px" }, children: _jsx(Img, { src: `${baseUrl}`, width: "28", height: "28", alt: "Tracked" }) }), _jsx("td", { style: { verticalAlign: "middle" }, children: _jsx(Text, { style: logo, children: "TRACKED" }) })] }) }), _jsx(Section, { style: headerSection, children: _jsxs(Text, { style: headerTitle, children: ["Your ", monthName, " Training Report"] }) }), _jsx(Hr, { style: hr }), _jsxs(Section, { style: sectionContainer, children: [_jsx(Text, { style: sectionHeading, children: "Activity Overview" }), _jsxs(Section, { style: metricBox, children: [_jsx(Text, { style: metricLabel, children: "Average Daily Steps" }), _jsx("table", { children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle" }, children: _jsx(Text, { style: metricValue, children: formatNumber(metrics.avgStepCount) }) }), _jsx("td", { style: { verticalAlign: "middle", paddingLeft: "8px" }, children: getChangeIndicator(metrics.avgStepCount, previousMetrics?.avgStepCount || null) })] }) })] })] }), hasBodyweightData && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: hr }), _jsxs(Section, { style: sectionContainer, children: [_jsx(Text, { style: sectionHeading, children: "Bodyweight Trends" }), _jsxs(Row, { children: [_jsx(Column, { style: { width: "48%" }, children: _jsxs(Section, { style: metricBox, children: [_jsx(Text, { style: metricLabel, children: "Average Bodyweight" }), _jsx("table", { children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle" }, children: _jsxs(Text, { style: metricValueSmall, children: [formatDecimal(metrics.avgBodyweight, 1), " lbs"] }) }), _jsx("td", { style: { verticalAlign: "middle", paddingLeft: "8px" }, children: getChangeIndicator(metrics.avgBodyweight, previousMetrics?.avgBodyweight || null) })] }) })] }) }), _jsx(Column, { style: { width: "4%" } }), _jsx(Column, { style: { width: "48%" }, children: _jsxs(Section, { style: metricBox, children: [_jsx(Text, { style: metricLabel, children: "Monthly Change" }), _jsx(Text, { style: metricValueSmall, children: metrics.bodyweightChange !== null
73
- ? (metrics.bodyweightChange >= 0 ? "+" : "") +
74
- formatDecimal(metrics.bodyweightChange, 1) +
75
- " lbs"
76
- : "N/A" })] }) })] })] })] })), _jsx(Hr, { style: hr }), _jsxs(Section, { style: sectionContainer, children: [_jsx(Text, { style: sectionHeading, children: "Training Summary" }), _jsxs(Row, { children: [_jsx(Column, { style: { width: "48%" }, children: _jsxs(Section, { style: metricBox, children: [_jsx(Text, { style: metricLabel, children: "Sessions Per Week" }), _jsx("table", { children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle" }, children: _jsx(Text, { style: metricValueSmall, children: formatDecimal(metrics.avgSessionsPerWeek, 1) }) }), _jsx("td", { style: { verticalAlign: "middle", paddingLeft: "8px" }, children: getChangeIndicator(metrics.avgSessionsPerWeek, previousMetrics?.avgSessionsPerWeek || null) })] }) })] }) }), _jsx(Column, { style: { width: "4%" } }), _jsx(Column, { style: { width: "48%" }, children: _jsxs(Section, { style: metricBox, children: [_jsx(Text, { style: metricLabel, children: "Total Sessions" }), _jsx("table", { children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle" }, children: _jsx(Text, { style: metricValueSmall, children: formatNumber(metrics.totalSessionsTracked) }) }), _jsx("td", { style: { verticalAlign: "middle", paddingLeft: "8px" }, children: getChangeIndicator(metrics.totalSessionsTracked, previousMetrics?.totalSessionsTracked || null) })] }) })] }) })] }), _jsxs(Section, { style: { ...metricBox, marginTop: "10px" }, children: [_jsx(Text, { style: metricLabel, children: "Total Sets Tracked" }), _jsx("table", { children: _jsxs("tr", { children: [_jsx("td", { style: { verticalAlign: "middle" }, children: _jsx(Text, { style: metricValue, children: formatNumber(metrics.totalSetsTracked) }) }), _jsx("td", { style: { verticalAlign: "middle", paddingLeft: "8px" }, children: getChangeIndicator(metrics.totalSetsTracked, previousMetrics?.totalSetsTracked || null) })] }) })] })] }), metrics.topMuscleGroups && metrics.topMuscleGroups.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: hr }), _jsxs(Section, { style: sectionContainer, children: [_jsx(Text, { style: sectionHeading, children: "Top 5 Prioritized Muscle Groups" }), _jsx(Section, { style: listBox, children: metrics.topMuscleGroups.map((mg, idx) => (_jsxs(Row, { style: {
77
- ...listItem,
78
- borderBottom: idx < metrics.topMuscleGroups.length - 1
79
- ? "1px solid #0f172a"
80
- : "none",
81
- }, children: [_jsx(Column, { children: _jsxs(Text, { style: listItemName, children: [idx + 1, ". ", mg.name] }) }), _jsx(Column, { style: { textAlign: "right" }, children: _jsxs(Text, { style: listItemValue, children: [formatNumber(mg.sets), " sets"] }) })] }, mg.muscleGroupId))) })] })] })), hasSessionInsights && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: hr }), _jsxs(Section, { style: sectionContainer, children: [_jsx(Text, { style: sectionHeading, children: "Session Insights" }), _jsxs(Section, { style: listBox, children: [metrics.avgReadinessEnergy && (_jsxs(Row, { style: insightRow, children: [_jsx(Column, { children: _jsx(Text, { style: insightLabel, children: "Avg Readiness Energy" }) }), _jsx(Column, { style: { textAlign: "right" }, children: _jsxs(Text, { style: insightValue, children: [formatDecimal(metrics.avgReadinessEnergy), "/10"] }) })] })), metrics.avgReadinessMood && (_jsxs(Row, { style: insightRow, children: [_jsx(Column, { children: _jsx(Text, { style: insightLabel, children: "Avg Readiness Mood" }) }), _jsx(Column, { style: { textAlign: "right" }, children: _jsxs(Text, { style: insightValue, children: [formatDecimal(metrics.avgReadinessMood), "/10"] }) })] })), metrics.avgSessionSatisfaction && (_jsxs(Row, { style: insightRow, children: [_jsx(Column, { children: _jsx(Text, { style: insightLabel, children: "Avg Session Satisfaction" }) }), _jsx(Column, { style: { textAlign: "right" }, children: _jsxs(Text, { style: insightValue, children: [formatDecimal(metrics.avgSessionSatisfaction), "/10"] }) })] })), metrics.avgSessionProgress && (_jsxs(Row, { style: insightRow, children: [_jsx(Column, { children: _jsx(Text, { style: insightLabel, children: "Avg Session Progress" }) }), _jsx(Column, { style: { textAlign: "right" }, children: _jsxs(Text, { style: insightValue, children: [formatDecimal(metrics.avgSessionProgress), "/10"] }) })] }))] })] })] })), _jsx(Hr, { style: hr }), _jsx(Text, { style: footerMessageSmall, children: "You can manage your email preferences in the Tracked app settings." }), _jsx(Hr, { style: hr }), _jsxs(Text, { style: footer, children: ["Copyright \u00A9 ", new Date().getFullYear(), " Tracked Training Platform Inc. ", _jsx("br", {}), " 9101 Horne Street, Vancouver, BC"] }), _jsxs(Section, { style: { textAlign: "center" }, 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, children: "Support" })] }), _jsx(Text, { style: footer, children: "This is a service notification by the Tracked Training Platform." })] }) }) })] }));
82
- };
83
- // Styles
84
- const main = {
85
- backgroundColor: "#020617", // slate-950
86
- fontFamily: "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
87
- };
88
- const container = {
89
- backgroundColor: "#020617", // slate-950
90
- margin: "0 auto",
91
- padding: "20px 0 48px",
92
- marginBottom: "64px",
93
- borderRadius: "8px",
94
- };
95
- const box = {
96
- padding: "0 12px 24px 12px",
97
- };
98
- const logo = {
99
- fontSize: "28px",
100
- fontWeight: "900",
101
- fontFamily: "Raleway, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
102
- color: "#ffffff",
103
- margin: "0",
104
- lineHeight: "32px",
105
- letterSpacing: "0.5px",
106
- };
107
- const headerSection = {
108
- backgroundColor: "#4ade80", // green-400
109
- padding: "10px 20px",
110
- textAlign: "center",
111
- borderRadius: "8px",
112
- margin: "20px 0",
113
- };
114
- const headerTitle = {
115
- color: "#020617", // slate-950
116
- margin: "0",
117
- fontSize: "20px",
118
- fontWeight: "700",
119
- };
120
- const hr = {
121
- borderColor: "#0f172a", // slate-900
122
- margin: "24px 0",
123
- borderWidth: "1px",
124
- };
125
- const sectionContainer = {
126
- marginBottom: "20px",
127
- };
128
- const sectionHeading = {
129
- color: "#ffffff", // white
130
- fontSize: "20px",
131
- margin: "0 0 10px 0",
132
- fontWeight: "600",
133
- textTransform: "uppercase",
134
- letterSpacing: "1px",
135
- };
136
- const metricBox = {
137
- backgroundColor: "rgba(15, 23, 42, 0.5)", // slate-900/50
138
- padding: "5px 15px 15px 15px",
139
- borderRadius: "8px",
140
- border: "1px solid #1e293b", // slate-800
141
- };
142
- const metricLabel = {
143
- color: "#94a3b8", // slate-400
144
- fontSize: "14px",
145
- marginBottom: "2px",
146
- };
147
- const metricValue = {
148
- color: "#ffffff",
149
- fontSize: "24px",
150
- fontWeight: "700",
151
- margin: "0",
152
- };
153
- const metricValueSmall = {
154
- color: "#ffffff",
155
- fontSize: "20px",
156
- fontWeight: "700",
157
- margin: "0",
158
- };
159
- const changeIndicatorPositive = {
160
- color: "#4ade80", // green-400
161
- fontSize: "14px",
162
- margin: "0",
163
- verticalAlign: "middle",
164
- };
165
- const changeIndicatorNegative = {
166
- color: "#f87171", // red-400
167
- fontSize: "14px",
168
- margin: "0",
169
- verticalAlign: "middle",
170
- };
171
- const changeIndicatorNeutral = {
172
- color: "#6b7280",
173
- fontSize: "14px",
174
- margin: "0",
175
- verticalAlign: "middle",
176
- };
177
- const listBox = {
178
- backgroundColor: "rgba(15, 23, 42, 0.5)", // slate-900/50
179
- borderRadius: "8px",
180
- overflow: "hidden",
181
- border: "1px solid #1e293b", // slate-800
182
- };
183
- const listItem = {
184
- padding: "12px",
185
- };
186
- const listItemName = {
187
- color: "#ffffff",
188
- fontSize: "16px",
189
- fontWeight: "600",
190
- margin: "0",
191
- };
192
- const listItemValue = {
193
- color: "#4ade80", // green-400
194
- fontSize: "16px",
195
- fontWeight: "600",
196
- margin: "0",
197
- };
198
- const insightRow = {
199
- padding: "10px",
200
- };
201
- const insightLabel = {
202
- color: "#94a3b8", // slate-400
203
- fontSize: "14px",
204
- margin: "0",
205
- };
206
- const insightValue = {
207
- color: "#4ade80", // green-400
208
- fontSize: "16px",
209
- fontWeight: "600",
210
- margin: "0",
211
- };
212
- const footerMessageSmall = {
213
- color: "#94a3b8", // slate-400
214
- fontSize: "12px",
215
- margin: "15px 0 0 0",
216
- };
217
- const footer = {
218
- color: "#94a3b8", // slate-400
219
- fontSize: "12px",
220
- lineHeight: "16px",
221
- textAlign: "center",
60
+ return (_jsxs(EmailLayout, { preview: `Your ${monthName} Training Report - Your monthly fitness journey at a glance`, children: [_jsx(EmailHeader, {}), _jsx(HighlightBanner, { children: _jsxs(Text, { style: {
61
+ color: "#ffffff",
62
+ margin: "0",
63
+ fontSize: "20px",
64
+ fontWeight: "700",
65
+ }, children: ["Your ", monthName, " Training Report"] }) }), _jsxs(Section, { style: { marginBottom: "24px" }, children: [_jsx(SectionHeading, { children: "Activity Overview" }), _jsx(MetricCard, { label: "Average Daily Steps", value: formatNumber(metrics.avgStepCount), change: _jsx(ChangeIndicator, { value: metrics.avgStepCount, previousValue: previousMetrics?.avgStepCount || null }) })] }), hasBodyweightData && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: { borderColor: colors.border, margin: "24px 0" } }), _jsxs(Section, { style: { marginBottom: "24px" }, children: [_jsx(SectionHeading, { children: "Bodyweight Trends" }), _jsxs(Row, { children: [_jsx(Column, { style: { width: "48%" }, children: _jsx(MetricCard, { label: "Average Bodyweight", value: `${formatDecimal(metrics.avgBodyweight, 1)} lbs`, size: "small", change: _jsx(ChangeIndicator, { value: metrics.avgBodyweight, previousValue: previousMetrics?.avgBodyweight || null }) }) }), _jsx(Column, { style: { width: "4%" } }), _jsx(Column, { style: { width: "48%" }, children: _jsx(MetricCard, { label: "Monthly Change", value: metrics.bodyweightChange !== null
66
+ ? (metrics.bodyweightChange >= 0 ? "+" : "") +
67
+ formatDecimal(metrics.bodyweightChange, 1) +
68
+ " lbs"
69
+ : "N/A", size: "small" }) })] })] })] })), _jsx(Hr, { style: { borderColor: colors.border, margin: "24px 0" } }), _jsxs(Section, { style: { marginBottom: "24px" }, children: [_jsx(SectionHeading, { children: "Training Summary" }), _jsxs(Row, { children: [_jsx(Column, { style: { width: "48%" }, children: _jsx(MetricCard, { label: "Sessions Per Week", value: formatDecimal(metrics.avgSessionsPerWeek, 1), size: "small", change: _jsx(ChangeIndicator, { value: metrics.avgSessionsPerWeek, previousValue: previousMetrics?.avgSessionsPerWeek || null }) }) }), _jsx(Column, { style: { width: "4%" } }), _jsx(Column, { style: { width: "48%" }, children: _jsx(MetricCard, { label: "Total Sessions", value: formatNumber(metrics.totalSessionsTracked), size: "small", change: _jsx(ChangeIndicator, { value: metrics.totalSessionsTracked, previousValue: previousMetrics?.totalSessionsTracked || null }) }) })] }), _jsx(Section, { style: { marginTop: "10px" }, children: _jsx(MetricCard, { label: "Total Sets Tracked", value: formatNumber(metrics.totalSetsTracked), change: _jsx(ChangeIndicator, { value: metrics.totalSetsTracked, previousValue: previousMetrics?.totalSetsTracked || null }) }) })] }), metrics.topMuscleGroups && metrics.topMuscleGroups.length > 0 && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: { borderColor: colors.border, margin: "24px 0" } }), _jsxs(Section, { style: { marginBottom: "24px" }, children: [_jsx(SectionHeading, { children: "Top 5 Prioritized Muscle Groups" }), _jsx(ListBox, { children: metrics.topMuscleGroups.map((mg, idx) => (_jsx(DataRow, { label: `${idx + 1}. ${mg.name}`, value: `${formatNumber(mg.sets)} sets`, isLast: idx === metrics.topMuscleGroups.length - 1 }, mg.muscleGroupId))) })] })] })), hasSessionInsights && (_jsxs(_Fragment, { children: [_jsx(Hr, { style: { borderColor: colors.border, margin: "24px 0" } }), _jsxs(Section, { style: { marginBottom: "24px" }, children: [_jsx(SectionHeading, { children: "Session Insights" }), _jsxs(ListBox, { children: [metrics.avgReadinessEnergy && (_jsx(DataRow, { label: "Avg Readiness Energy", value: `${formatDecimal(metrics.avgReadinessEnergy)}/10` })), metrics.avgReadinessMood && (_jsx(DataRow, { label: "Avg Readiness Mood", value: `${formatDecimal(metrics.avgReadinessMood)}/10` })), metrics.avgSessionSatisfaction && (_jsx(DataRow, { label: "Avg Session Satisfaction", value: `${formatDecimal(metrics.avgSessionSatisfaction)}/10` })), metrics.avgSessionProgress && (_jsx(DataRow, { label: "Avg Session Progress", value: `${formatDecimal(metrics.avgSessionProgress)}/10`, isLast: true }))] })] })] })), _jsx(Hr, { style: { borderColor: colors.border, margin: "24px 0" } }), _jsx(SmallText, { muted: true, children: "You can manage your email preferences in the Tracked app settings." }), _jsx(EmailFooter, { websiteUrl: websiteUrl, marketing: true, unsubscribeUrl: unsubscribeUrl })] }));
222
70
  };
223
71
  export default MonthlyReportEmail;
224
72
  //# sourceMappingURL=monthly-report.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"monthly-report.js","sourceRoot":"","sources":["../../src/emails/monthly-report.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"monthly-report.js","sourceRoot":"","sources":["../../src/emails/monthly-report.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@ interface NewFollowerEmailProps {
4
4
  followerUsername?: string;
5
5
  followerAvatarUrl?: string;
6
6
  followerProfileUrl: string;
7
- websiteUrl: string;
7
+ websiteUrl?: string;
8
8
  }
9
9
  export declare const NewFollowerEmail: ({ userName, followerName, followerUsername, followerAvatarUrl, followerProfileUrl, websiteUrl, }: NewFollowerEmailProps) => import("react/jsx-runtime").JSX.Element;
10
10
  export default NewFollowerEmail;
@@ -1 +1 @@
1
- {"version":3,"file":"new-follower.d.ts","sourceRoot":"","sources":["../../src/emails/new-follower.tsx"],"names":[],"mappings":"AAgBA,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,eAAO,MAAM,gBAAgB,GAAI,kGAO9B,qBAAqB,4CAoKvB,CAAC;AA6DF,eAAe,gBAAgB,CAAC"}
1
+ {"version":3,"file":"new-follower.d.ts","sourceRoot":"","sources":["../../src/emails/new-follower.tsx"],"names":[],"mappings":"AAeA,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,gBAAgB,GAAI,kGAO9B,qBAAqB,4CAgDvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}