@tracked/emails 0.2.0 → 0.2.1

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 (123) 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/monthly-report.d.ts +2 -1
  73. package/dist/emails/monthly-report.d.ts.map +1 -1
  74. package/dist/emails/monthly-report.js +14 -166
  75. package/dist/emails/monthly-report.js.map +1 -1
  76. package/dist/emails/new-follower.d.ts +1 -1
  77. package/dist/emails/new-follower.d.ts.map +1 -1
  78. package/dist/emails/new-follower.js +7 -91
  79. package/dist/emails/new-follower.js.map +1 -1
  80. package/dist/emails/nps-survey.d.ts +9 -0
  81. package/dist/emails/nps-survey.d.ts.map +1 -0
  82. package/dist/emails/nps-survey.js +51 -0
  83. package/dist/emails/nps-survey.js.map +1 -0
  84. package/dist/emails/subscription-canceled.d.ts +1 -1
  85. package/dist/emails/subscription-canceled.d.ts.map +1 -1
  86. package/dist/emails/subscription-canceled.js +20 -127
  87. package/dist/emails/subscription-canceled.js.map +1 -1
  88. package/dist/emails/support-email.d.ts +1 -1
  89. package/dist/emails/support-email.d.ts.map +1 -1
  90. package/dist/emails/support-email.js +3 -38
  91. package/dist/emails/support-email.js.map +1 -1
  92. package/dist/emails/team-invite.d.ts.map +1 -1
  93. package/dist/emails/team-invite.js +7 -96
  94. package/dist/emails/team-invite.js.map +1 -1
  95. package/dist/emails/team-member-removed-email.d.ts +1 -1
  96. package/dist/emails/team-member-removed-email.d.ts.map +1 -1
  97. package/dist/emails/team-member-removed-email.js +3 -93
  98. package/dist/emails/team-member-removed-email.js.map +1 -1
  99. package/dist/emails/tracked-magic-link-activate.d.ts +2 -2
  100. package/dist/emails/tracked-magic-link-activate.d.ts.map +1 -1
  101. package/dist/emails/tracked-magic-link-activate.js +3 -91
  102. package/dist/emails/tracked-magic-link-activate.js.map +1 -1
  103. package/dist/emails/tracked-magic-link.d.ts +3 -3
  104. package/dist/emails/tracked-magic-link.d.ts.map +1 -1
  105. package/dist/emails/tracked-magic-link.js +3 -99
  106. package/dist/emails/tracked-magic-link.js.map +1 -1
  107. package/dist/emails/week-one-checkin.d.ts +3 -2
  108. package/dist/emails/week-one-checkin.d.ts.map +1 -1
  109. package/dist/emails/week-one-checkin.js +22 -136
  110. package/dist/emails/week-one-checkin.js.map +1 -1
  111. package/dist/emails/weekly-progress-digest.d.ts +21 -0
  112. package/dist/emails/weekly-progress-digest.d.ts.map +1 -0
  113. package/dist/emails/weekly-progress-digest.js +78 -0
  114. package/dist/emails/weekly-progress-digest.js.map +1 -0
  115. package/dist/emails/welcome.d.ts +3 -2
  116. package/dist/emails/welcome.d.ts.map +1 -1
  117. package/dist/emails/welcome.js +16 -142
  118. package/dist/emails/welcome.js.map +1 -1
  119. package/dist/index.d.ts +8 -1
  120. package/dist/index.d.ts.map +1 -1
  121. package/dist/index.js +11 -1
  122. package/dist/index.js.map +1 -1
  123. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/components/tokens.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,cAAc;IACd,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS,EAAE,WAAW;IAC/B,UAAU,EAAE,SAAS,EAAE,YAAY;IAEnC,OAAO;IACP,WAAW,EAAE,SAAS,EAAE,YAAY;IACpC,aAAa,EAAE,SAAS,EAAE,YAAY;IACtC,SAAS,EAAE,SAAS,EAAE,YAAY;IAElC,QAAQ;IACR,OAAO,EAAE,SAAS,EAAE,wBAAwB;IAC5C,MAAM,EAAE,SAAS,EAAE,6BAA6B;IAChD,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,SAAS;IACjB,SAAS,EAAE,SAAS;IAEpB,UAAU;IACV,MAAM,EAAE,SAAS,EAAE,YAAY;IAC/B,YAAY,EAAE,SAAS,EAAE,YAAY;IACrC,YAAY,EAAE,SAAS,EAAE,cAAc;IAEvC,SAAS;IACT,OAAO,EAAE,SAAS,EAAE,cAAc;IAClC,KAAK,EAAE,SAAS,EAAE,UAAU;IAC5B,OAAO,EAAE,SAAS,EAAE,YAAY;CACjC,CAAC;AAEF,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,UAAU,EACR,4FAA4F;IAC9F,SAAS,EACP,oEAAoE;CACvE,CAAC;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,EAAE,EAAE,MAAM;IACV,GAAG,EAAE,MAAM;CACZ,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,KAAK;IACT,EAAE,EAAE,MAAM;IACV,IAAI,EAAE,QAAQ;CACf,CAAC;AAEF,qCAAqC;AACrC,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,IAAI,EAAE;QACJ,eAAe,EAAE,MAAM,CAAC,UAAU;QAClC,UAAU,EAAE,UAAU,CAAC,UAAU;KAClC;IACD,SAAS,EAAE;QACT,eAAe,EAAE,MAAM,CAAC,UAAU;QAClC,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,aAAa;QACtB,QAAQ,EAAE,OAAO;KAClB;IACD,GAAG,EAAE;QACH,OAAO,EAAE,QAAQ;KAClB;CACF,CAAC"}
@@ -0,0 +1,31 @@
1
+ import * as React from "react";
2
+ interface HeadingProps {
3
+ children: React.ReactNode;
4
+ as?: "h1" | "h2" | "h3";
5
+ style?: React.CSSProperties;
6
+ }
7
+ export declare const Heading: ({ children, as, style }: HeadingProps) => import("react/jsx-runtime").JSX.Element;
8
+ interface ParagraphProps {
9
+ children: React.ReactNode;
10
+ muted?: boolean;
11
+ style?: React.CSSProperties;
12
+ }
13
+ export declare const Paragraph: ({ children, muted, style }: ParagraphProps) => import("react/jsx-runtime").JSX.Element;
14
+ interface LabelProps {
15
+ children: React.ReactNode;
16
+ style?: React.CSSProperties;
17
+ }
18
+ export declare const Label: ({ children, style }: LabelProps) => import("react/jsx-runtime").JSX.Element;
19
+ interface HighlightTextProps {
20
+ children: React.ReactNode;
21
+ style?: React.CSSProperties;
22
+ }
23
+ export declare const HighlightText: ({ children, style }: HighlightTextProps) => import("react/jsx-runtime").JSX.Element;
24
+ interface SmallTextProps {
25
+ children: React.ReactNode;
26
+ muted?: boolean;
27
+ style?: React.CSSProperties;
28
+ }
29
+ export declare const SmallText: ({ children, muted, style }: SmallTextProps) => import("react/jsx-runtime").JSX.Element;
30
+ export {};
31
+ //# sourceMappingURL=typography.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.d.ts","sourceRoot":"","sources":["../../src/components/typography.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAO/B,UAAU,YAAY;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,EAAE,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,OAAO,GAAI,yBAAgC,YAAY,4CAOnE,CAAC;AAgCF,UAAU,cAAc;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,SAAS,GAAI,4BAAoC,cAAc,4CAe3E,CAAC;AAKF,UAAU,UAAU;IAClB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,KAAK,GAAI,qBAAqB,UAAU,4CAcpD,CAAC;AAKF,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,aAAa,GAAI,qBAAqB,kBAAkB,4CAepE,CAAC;AAKF,UAAU,cAAc;IACtB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;CAC7B;AAED,eAAO,MAAM,SAAS,GAAI,4BAAoC,cAAc,4CAc3E,CAAC"}
@@ -0,0 +1,72 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { Text, Heading as EmailHeading } from "@react-email/components";
3
+ import { colors, spacing } from "./tokens";
4
+ export const Heading = ({ children, as = "h1", style }) => {
5
+ const baseStyle = headingStyles[as];
6
+ return (_jsx(EmailHeading, { as: as, style: { ...baseStyle, ...style }, children: children }));
7
+ };
8
+ const headingStyles = {
9
+ h1: {
10
+ color: colors.textPrimary,
11
+ fontSize: "24px",
12
+ lineHeight: "32px",
13
+ fontWeight: "bold",
14
+ marginBottom: spacing.md,
15
+ marginTop: "0",
16
+ },
17
+ h2: {
18
+ color: colors.textPrimary,
19
+ fontSize: "20px",
20
+ lineHeight: "28px",
21
+ fontWeight: "600",
22
+ marginBottom: spacing.sm,
23
+ marginTop: "0",
24
+ },
25
+ h3: {
26
+ color: colors.textPrimary,
27
+ fontSize: "16px",
28
+ lineHeight: "24px",
29
+ fontWeight: "600",
30
+ marginBottom: spacing.sm,
31
+ marginTop: "0",
32
+ },
33
+ };
34
+ export const Paragraph = ({ children, muted = false, style }) => {
35
+ return (_jsx(Text, { style: {
36
+ color: muted ? colors.textSecondary : colors.textPrimary,
37
+ fontSize: "16px",
38
+ lineHeight: "24px",
39
+ textAlign: "left",
40
+ margin: `0 0 ${spacing.md} 0`,
41
+ ...style,
42
+ }, children: children }));
43
+ };
44
+ export const Label = ({ children, style }) => {
45
+ return (_jsx(Text, { style: {
46
+ color: colors.textMuted,
47
+ fontSize: "14px",
48
+ lineHeight: "20px",
49
+ margin: "0",
50
+ ...style,
51
+ }, children: children }));
52
+ };
53
+ export const HighlightText = ({ children, style }) => {
54
+ return (_jsx(Text, { style: {
55
+ color: colors.accent,
56
+ fontSize: "16px",
57
+ fontWeight: "600",
58
+ lineHeight: "24px",
59
+ margin: "0",
60
+ ...style,
61
+ }, children: children }));
62
+ };
63
+ export const SmallText = ({ children, muted = false, style }) => {
64
+ return (_jsx(Text, { style: {
65
+ color: muted ? colors.textMuted : colors.textSecondary,
66
+ fontSize: "14px",
67
+ lineHeight: "20px",
68
+ margin: "0",
69
+ ...style,
70
+ }, children: children }));
71
+ };
72
+ //# sourceMappingURL=typography.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"typography.js","sourceRoot":"","sources":["../../src/components/typography.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ interface AnniversaryEmailProps {
2
+ userName: string;
3
+ yearsOnPlatform: number;
4
+ totalWorkouts?: number;
5
+ totalVolume?: string;
6
+ appUrl: string;
7
+ websiteUrl?: string;
8
+ unsubscribeUrl?: string;
9
+ }
10
+ export declare const AnniversaryEmail: ({ userName, yearsOnPlatform, totalWorkouts, totalVolume, appUrl, websiteUrl, unsubscribeUrl, }: AnniversaryEmailProps) => import("react/jsx-runtime").JSX.Element;
11
+ export default AnniversaryEmail;
12
+ //# sourceMappingURL=anniversary.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anniversary.d.ts","sourceRoot":"","sources":["../../src/emails/anniversary.tsx"],"names":[],"mappings":"AAcA,UAAU,qBAAqB;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,gBAAgB,GAAI,gGAQ9B,qBAAqB,4CAkGvB,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,41 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { Section, Text } from "@react-email/components";
3
+ import { EmailLayout, EmailHeader, EmailFooter, Heading, Paragraph, PrimaryButton, DiscordButton, colors, spacing, } from "../components";
4
+ export const AnniversaryEmail = ({ userName = "Alex", yearsOnPlatform = 1, totalWorkouts = 156, totalVolume = "1,250,000 lbs", appUrl = "tracked://bodyweight", websiteUrl = "https://tracked.gg", unsubscribeUrl = "https://tracked.gg/unsubscribe", }) => {
5
+ const yearText = yearsOnPlatform === 1 ? "1 Year" : `${yearsOnPlatform} Years`;
6
+ return (_jsxs(EmailLayout, { preview: `Happy ${yearText} Anniversary on Tracked!`, children: [_jsx(EmailHeader, {}), _jsxs(Heading, { children: ["Happy ", yearText, " Anniversary!"] }), _jsxs(Paragraph, { children: ["Congratulations ", userName, "! Today marks ", yearsOnPlatform, " ", yearsOnPlatform === 1 ? "year" : "years", " since you joined Tracked. Thank you for being part of our community!"] }), (totalWorkouts || totalVolume) && (_jsxs(Section, { style: {
7
+ backgroundColor: colors.surface,
8
+ padding: spacing.lg,
9
+ borderRadius: "8px",
10
+ margin: `${spacing.lg} 0`,
11
+ border: `1px solid ${colors.border}`,
12
+ textAlign: "center",
13
+ }, children: [_jsx(Text, { style: {
14
+ color: colors.accent,
15
+ fontSize: "14px",
16
+ fontWeight: "bold",
17
+ textTransform: "uppercase",
18
+ letterSpacing: "0.5px",
19
+ margin: "0 0 16px 0",
20
+ }, children: "Your Journey So Far" }), totalWorkouts && (_jsx(Text, { style: {
21
+ color: colors.textPrimary,
22
+ fontSize: "32px",
23
+ fontWeight: "bold",
24
+ margin: "0 0 4px 0",
25
+ }, children: totalWorkouts.toLocaleString() })), totalWorkouts && (_jsx(Text, { style: {
26
+ color: colors.textSecondary,
27
+ fontSize: "14px",
28
+ margin: "0 0 16px 0",
29
+ }, children: "workouts logged" })), totalVolume && (_jsxs(_Fragment, { children: [_jsx(Text, { style: {
30
+ color: colors.textPrimary,
31
+ fontSize: "32px",
32
+ fontWeight: "bold",
33
+ margin: "0 0 4px 0",
34
+ }, children: totalVolume }), _jsx(Text, { style: {
35
+ color: colors.textSecondary,
36
+ fontSize: "14px",
37
+ margin: "0",
38
+ }, children: "total volume lifted" })] }))] })), _jsx(Paragraph, { children: "Here's to another year of crushing goals and getting stronger. Keep up the amazing work!" }), _jsx(PrimaryButton, { href: appUrl, children: "View Your Progress" }), _jsx(DiscordButton, {}), _jsx(EmailFooter, { websiteUrl: websiteUrl, marketing: true, unsubscribeUrl: unsubscribeUrl })] }));
39
+ };
40
+ export default AnniversaryEmail;
41
+ //# sourceMappingURL=anniversary.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anniversary.js","sourceRoot":"","sources":["../../src/emails/anniversary.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,aAAa,EACb,aAAa,EACb,MAAM,EACN,OAAO,GACR,MAAM,eAAe,CAAC;AAYvB,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAC/B,QAAQ,GAAG,MAAM,EACjB,eAAe,GAAG,CAAC,EACnB,aAAa,GAAG,GAAG,EACnB,WAAW,GAAG,eAAe,EAC7B,MAAM,GAAG,sBAAsB,EAC/B,UAAU,GAAG,oBAAoB,EACjC,cAAc,GAAG,gCAAgC,GAC3B,EAAE,EAAE;IAC1B,MAAM,QAAQ,GAAG,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,eAAe,QAAQ,CAAC;IAE/E,OAAO,CACL,MAAC,WAAW,IAAC,OAAO,EAAE,SAAS,QAAQ,0BAA0B,aAC/D,KAAC,WAAW,KAAG,EAEf,MAAC,OAAO,yBAAQ,QAAQ,qBAAwB,EAChD,MAAC,SAAS,mCACS,QAAQ,oBAAgB,eAAe,EAAE,GAAG,EAC5D,eAAe,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,6EAE/B,EAEX,CAAC,aAAa,IAAI,WAAW,CAAC,IAAI,CACjC,MAAC,OAAO,IACN,KAAK,EAAE;oBACL,eAAe,EAAE,MAAM,CAAC,OAAO;oBAC/B,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,YAAY,EAAE,KAAK;oBACnB,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI;oBACzB,MAAM,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;oBACpC,SAAS,EAAE,QAAiB;iBAC7B,aAED,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,MAAM;4BACpB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAM;4BAClB,aAAa,EAAE,WAAoB;4BACnC,aAAa,EAAE,OAAO;4BACtB,MAAM,EAAE,YAAY;yBACrB,oCAGI,EACN,aAAa,IAAI,CAChB,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,WAAW;4BACzB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAM;4BAClB,MAAM,EAAE,WAAW;yBACpB,YAEA,aAAa,CAAC,cAAc,EAAE,GAC1B,CACR,EACA,aAAa,IAAI,CAChB,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,aAAa;4BAC3B,QAAQ,EAAE,MAAM;4BAChB,MAAM,EAAE,YAAY;yBACrB,gCAGI,CACR,EACA,WAAW,IAAI,CACd,8BACE,KAAC,IAAI,IACH,KAAK,EAAE;oCACL,KAAK,EAAE,MAAM,CAAC,WAAW;oCACzB,QAAQ,EAAE,MAAM;oCAChB,UAAU,EAAE,MAAM;oCAClB,MAAM,EAAE,WAAW;iCACpB,YAEA,WAAW,GACP,EACP,KAAC,IAAI,IACH,KAAK,EAAE;oCACL,KAAK,EAAE,MAAM,CAAC,aAAa;oCAC3B,QAAQ,EAAE,MAAM;oCAChB,MAAM,EAAE,GAAG;iCACZ,oCAGI,IACN,CACJ,IACO,CACX,EAED,KAAC,SAAS,2GAGE,EAEZ,KAAC,aAAa,IAAC,IAAI,EAAE,MAAM,mCAAoC,EAE/D,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,gBAAgB,CAAC"}
@@ -0,0 +1,11 @@
1
+ interface AppReviewRequestEmailProps {
2
+ userName: string;
3
+ workoutsCompleted: number;
4
+ appStoreUrl?: string;
5
+ playStoreUrl?: string;
6
+ websiteUrl?: string;
7
+ unsubscribeUrl?: string;
8
+ }
9
+ export declare const AppReviewRequestEmail: ({ userName, workoutsCompleted, appStoreUrl, playStoreUrl, websiteUrl, unsubscribeUrl, }: AppReviewRequestEmailProps) => import("react/jsx-runtime").JSX.Element;
10
+ export default AppReviewRequestEmail;
11
+ //# sourceMappingURL=app-review-request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-review-request.d.ts","sourceRoot":"","sources":["../../src/emails/app-review-request.tsx"],"names":[],"mappings":"AAgBA,UAAU,0BAA0B;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,qBAAqB,GAAI,yFAOnC,0BAA0B,4CAiE5B,CAAC;AAEF,eAAe,qBAAqB,CAAC"}
@@ -0,0 +1,24 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { Section, Text } from "@react-email/components";
3
+ import { EmailLayout, EmailHeader, EmailFooter, Heading, Paragraph, PrimaryButton, SecondaryButton, DiscordButton, colors, spacing, borderRadius, } from "../components";
4
+ export const AppReviewRequestEmail = ({ userName = "Alex", workoutsCompleted = 50, appStoreUrl = "https://apps.apple.com/app/tracked-training/id6450913418", playStoreUrl = "https://play.google.com/store/apps/details?id=com.tracked.mobile", websiteUrl = "https://tracked.gg", unsubscribeUrl = "https://tracked.gg/unsubscribe", }) => {
5
+ return (_jsxs(EmailLayout, { preview: `You've completed ${workoutsCompleted} workouts! Share your experience`, children: [_jsx(EmailHeader, {}), _jsx(Heading, { children: "You're Crushing It!" }), _jsxs(Paragraph, { children: ["Hi ", userName, ", you've completed ", _jsxs("strong", { children: [workoutsCompleted, " workouts"] }), " on Tracked. That's an amazing achievement!"] }), _jsxs(Section, { style: {
6
+ backgroundColor: colors.surface,
7
+ padding: spacing.lg,
8
+ borderRadius: borderRadius.md,
9
+ margin: `${spacing.lg} 0`,
10
+ border: `1px solid ${colors.border}`,
11
+ textAlign: "center",
12
+ }, children: [_jsx(Text, { style: {
13
+ color: colors.textPrimary,
14
+ fontSize: "48px",
15
+ fontWeight: "bold",
16
+ margin: "0",
17
+ }, children: workoutsCompleted }), _jsx(Text, { style: {
18
+ color: colors.textSecondary,
19
+ fontSize: "14px",
20
+ margin: "8px 0 0 0",
21
+ }, children: "workouts and counting" })] }), _jsx(Paragraph, { children: "We'd love to hear what you think! A quick review helps other athletes discover Tracked and helps us continue improving the app." }), _jsx(Paragraph, { style: { fontWeight: "600" }, children: "Would you take 30 seconds to leave a review?" }), _jsx(PrimaryButton, { href: appStoreUrl, children: "Review on App Store" }), _jsx(SecondaryButton, { href: playStoreUrl, children: "Review on Google Play" }), _jsx(Paragraph, { muted: true, style: { textAlign: "center" }, children: "Thank you for being part of the Tracked community. Your support means everything to us!" }), _jsx(DiscordButton, {}), _jsx(EmailFooter, { websiteUrl: websiteUrl, marketing: true, unsubscribeUrl: unsubscribeUrl })] }));
22
+ };
23
+ export default AppReviewRequestEmail;
24
+ //# sourceMappingURL=app-review-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-review-request.js","sourceRoot":"","sources":["../../src/emails/app-review-request.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,aAAa,EACb,eAAe,EACf,aAAa,EACb,MAAM,EACN,OAAO,EACP,YAAY,GACb,MAAM,eAAe,CAAC;AAWvB,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EACpC,QAAQ,GAAG,MAAM,EACjB,iBAAiB,GAAG,EAAE,EACtB,WAAW,GAAG,0DAA0D,EACxE,YAAY,GAAG,kEAAkE,EACjF,UAAU,GAAG,oBAAoB,EACjC,cAAc,GAAG,gCAAgC,GACtB,EAAE,EAAE;IAC/B,OAAO,CACL,MAAC,WAAW,IAAC,OAAO,EAAE,oBAAoB,iBAAiB,kCAAkC,aAC3F,KAAC,WAAW,KAAG,EAEf,KAAC,OAAO,sCAA8B,EACtC,MAAC,SAAS,sBACJ,QAAQ,yBAAoB,6BAAS,iBAAiB,iBAAmB,mDAEnE,EAEZ,MAAC,OAAO,IACN,KAAK,EAAE;oBACL,eAAe,EAAE,MAAM,CAAC,OAAO;oBAC/B,OAAO,EAAE,OAAO,CAAC,EAAE;oBACnB,YAAY,EAAE,YAAY,CAAC,EAAE;oBAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,IAAI;oBACzB,MAAM,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;oBACpC,SAAS,EAAE,QAAiB;iBAC7B,aAED,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,WAAW;4BACzB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAM;4BAClB,MAAM,EAAE,GAAG;yBACZ,YAEA,iBAAiB,GACb,EACP,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,aAAa;4BAC3B,QAAQ,EAAE,MAAM;4BAChB,MAAM,EAAE,WAAW;yBACpB,sCAGI,IACC,EAEV,KAAC,SAAS,kJAGE,EAEZ,KAAC,SAAS,IAAC,KAAK,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,6DAE3B,EAEZ,KAAC,aAAa,IAAC,IAAI,EAAE,WAAW,oCAAqC,EAErE,KAAC,eAAe,IAAC,IAAI,EAAE,YAAY,sCAAyC,EAE5E,KAAC,SAAS,IAAC,KAAK,QAAC,KAAK,EAAE,EAAE,SAAS,EAAE,QAAiB,EAAE,wGAG5C,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,qBAAqB,CAAC"}
@@ -7,7 +7,7 @@ interface BodyweightGoalReachedEmailProps {
7
7
  weightUnit: "kg" | "lbs";
8
8
  timeToGoal?: string;
9
9
  progressUrl: string;
10
- websiteUrl: string;
10
+ websiteUrl?: string;
11
11
  }
12
12
  export declare const BodyweightGoalReachedEmail: ({ userName, goalType, startWeight, currentWeight, goalWeight, weightUnit, timeToGoal, progressUrl, websiteUrl, }: BodyweightGoalReachedEmailProps) => import("react/jsx-runtime").JSX.Element;
13
13
  export default BodyweightGoalReachedEmail;
@@ -1 +1 @@
1
- {"version":3,"file":"bodyweight-goal-reached.d.ts","sourceRoot":"","sources":["../../src/emails/bodyweight-goal-reached.tsx"],"names":[],"mappings":"AAgBA,UAAU,+BAA+B;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,IAAI,GAAG,KAAK,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAID,eAAO,MAAM,0BAA0B,GAAI,kHAUxC,+BAA+B,4CAoNjC,CAAC;AA+IF,eAAe,0BAA0B,CAAC"}
1
+ {"version":3,"file":"bodyweight-goal-reached.d.ts","sourceRoot":"","sources":["../../src/emails/bodyweight-goal-reached.tsx"],"names":[],"mappings":"AAeA,UAAU,+BAA+B;IACvC,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,UAAU,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,IAAI,GAAG,KAAK,CAAC;IACzB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,0BAA0B,GAAI,kHAUxC,+BAA+B,4CAgNjC,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -1,7 +1,7 @@
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 BodyweightGoalReachedEmail = ({ userName, goalType, startWeight, currentWeight, goalWeight, weightUnit, timeToGoal, progressUrl, websiteUrl = "https://tracked.gg", }) => {
2
+ import { Section, Text, Row, Column } from "@react-email/components";
3
+ import { EmailLayout, EmailHeader, EmailFooter, Heading, Paragraph, FeatureBox, FeatureList, PrimaryButton, DiscordButton, colors, } from "../components";
4
+ export const BodyweightGoalReachedEmail = ({ userName = "Alex", goalType = "loss", startWeight = 185, currentWeight = 170, goalWeight = 170, weightUnit = "lbs", timeToGoal = "12 weeks", progressUrl = "tracked://bodyweight", websiteUrl = "https://tracked.gg", }) => {
5
5
  const weightChange = Math.abs(currentWeight - startWeight);
6
6
  const changeDirection = currentWeight > startWeight ? "gained" : "lost";
7
7
  const getGoalMessage = () => {
@@ -16,162 +16,89 @@ export const BodyweightGoalReachedEmail = ({ userName, goalType, startWeight, cu
16
16
  return "You've reached your goal!";
17
17
  }
18
18
  };
19
- 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! You've reached your bodyweight goal 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: {
20
- width: "auto",
21
- verticalAlign: "middle",
22
- paddingLeft: "4px",
23
- }, children: _jsx(Text, { style: {
24
- fontSize: "28px",
25
- fontWeight: "900",
26
- fontFamily: "Raleway, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
27
- color: "#020617",
28
- margin: "0",
29
- lineHeight: "32px",
30
- letterSpacing: "0.5px",
31
- }, children: "TRACKED" }) })] }), _jsx(Hr, { style: hr }), _jsx(Section, { style: { textAlign: "center", margin: "24px 0" }, children: _jsx(Text, { style: { fontSize: "64px", margin: "0" }, children: "\uD83C\uDF89" }) }), _jsx(Text, { style: heading, children: "Goal Achieved!" }), _jsx(Text, { style: celebrationText, children: getGoalMessage() }), _jsxs(Section, { style: statsBox, children: [_jsx(Text, { style: statsHeading, children: "Your Achievement:" }), _jsxs(Row, { children: [_jsxs(Column, { children: [_jsx(Text, { style: statsLabel, children: "Starting Weight" }), _jsxs(Text, { style: statsValue, children: [startWeight, " ", weightUnit] })] }), _jsxs(Column, { children: [_jsx(Text, { style: statsLabel, children: "Current Weight" }), _jsxs(Text, { style: statsValue, children: [currentWeight, " ", weightUnit] })] }), _jsxs(Column, { children: [_jsx(Text, { style: statsLabel, children: "Goal Weight" }), _jsxs(Text, { style: statsValue, children: [goalWeight, " ", weightUnit] })] })] }), _jsx(Section, { style: changeBox, children: _jsxs(Text, { style: changeText, children: ["You've ", changeDirection, " ", weightChange.toFixed(1), " ", weightUnit, timeToGoal && ` in ${timeToGoal}`, "!"] }) })] }), _jsxs(Text, { style: paragraph, children: ["Congratulations, ", userName, "! This is a huge accomplishment that took dedication, consistency, and hard work. You set a goal and achieved it - that's something to be proud of!"] }), _jsx("div", { style: {
32
- marginTop: "24px",
33
- marginBottom: "24px",
34
- textAlign: "left",
35
- }, children: _jsx("a", { href: progressUrl, style: {
36
- backgroundColor: "#0f172a",
37
- borderRadius: "8px",
38
- fontSize: "16px",
39
- fontWeight: "bold",
40
- textDecoration: "none",
41
- padding: "12px 32px",
42
- display: "inline-block",
43
- }, children: _jsx("span", { style: { color: "#ffffff", textDecoration: "none" }, children: "View Your Progress" }) }) }), _jsxs(Section, { style: nextStepsBox, children: [_jsx(Text, { style: nextStepsHeading, children: "What's Next?" }), _jsxs("ul", { style: nextStepsList, children: [_jsx("li", { style: nextStepItem, children: "Maintain your progress with consistent training" }), _jsx("li", { style: nextStepItem, children: "Set a new goal to continue your journey" }), _jsx("li", { style: nextStepItem, children: "Share your success with the Tracked community" }), _jsx("li", { style: nextStepItem, children: "Reflect on what worked and keep building on it" })] })] }), _jsxs(Section, { style: motivationBox, children: [_jsx(Text, { style: motivationText, children: "\"Success is the sum of small efforts repeated day in and day out.\"" }), _jsx(Text, { style: { ...motivationText, marginTop: "8px", fontStyle: "normal" }, children: "You proved it - congratulations! \uD83D\uDCAA" })] }), _jsx("div", { style: {
44
- textAlign: "left",
45
- margin: "24px 0",
46
- }, children: _jsx("a", { href: "https://www.discord.gg/trackedgg", style: {
47
- backgroundColor: "#5865F2",
48
- borderRadius: "8px",
49
- fontSize: "16px",
50
- fontWeight: "bold",
51
- textDecoration: "none",
52
- padding: "12px 32px",
53
- display: "inline-block",
54
- }, 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." })] }) }) })] }));
55
- };
56
- const main = {
57
- backgroundColor: "#020617", // slate-950
58
- fontFamily: '-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Ubuntu,sans-serif',
59
- };
60
- const container = {
61
- backgroundColor: "#020617", // slate-950
62
- margin: "0 auto",
63
- padding: "20px 0 48px",
64
- marginBottom: "64px",
65
- borderRadius: "8px",
66
- };
67
- const box = {
68
- padding: "0 24px",
69
- };
70
- const hr = {
71
- borderColor: "#4ade80", // green-400
72
- margin: "24px 0",
73
- borderWidth: "1px",
74
- };
75
- const paragraph = {
76
- color: "#ffffff", // white
77
- fontSize: "16px",
78
- lineHeight: "24px",
79
- textAlign: "left",
80
- };
81
- const heading = {
82
- color: "#ffffff", // white
83
- fontSize: "32px",
84
- lineHeight: "40px",
85
- fontWeight: "bold",
86
- marginBottom: "8px",
87
- textAlign: "center",
88
- };
89
- const celebrationText = {
90
- color: "#4ade80",
91
- fontSize: "18px",
92
- lineHeight: "26px",
93
- textAlign: "center",
94
- marginBottom: "24px",
95
- };
96
- const statsBox = {
97
- backgroundColor: "#1e293b",
98
- padding: "20px 24px",
99
- borderRadius: "8px",
100
- margin: "24px 0",
101
- borderLeft: "4px solid #4ade80",
102
- };
103
- const statsHeading = {
104
- color: "#4ade80",
105
- fontSize: "16px",
106
- fontWeight: "bold",
107
- marginBottom: "16px",
108
- textAlign: "center",
109
- };
110
- const statsLabel = {
111
- color: "#94a3b8",
112
- fontSize: "12px",
113
- textAlign: "center",
114
- marginBottom: "4px",
115
- textTransform: "uppercase",
116
- };
117
- const statsValue = {
118
- color: "#ffffff",
119
- fontSize: "20px",
120
- fontWeight: "bold",
121
- textAlign: "center",
122
- };
123
- const changeBox = {
124
- backgroundColor: "#0f172a",
125
- padding: "12px 16px",
126
- borderRadius: "6px",
127
- marginTop: "16px",
128
- };
129
- const changeText = {
130
- color: "#4ade80",
131
- fontSize: "16px",
132
- fontWeight: "bold",
133
- textAlign: "center",
134
- margin: "0",
135
- };
136
- const nextStepsBox = {
137
- backgroundColor: "#1e293b",
138
- padding: "16px 24px",
139
- borderRadius: "8px",
140
- margin: "24px 0",
141
- };
142
- const nextStepsHeading = {
143
- color: "#ffffff",
144
- fontSize: "16px",
145
- fontWeight: "bold",
146
- marginBottom: "12px",
147
- };
148
- const nextStepsList = {
149
- margin: "0",
150
- paddingLeft: "20px",
151
- };
152
- const nextStepItem = {
153
- color: "#e2e8f0",
154
- fontSize: "14px",
155
- lineHeight: "24px",
156
- marginBottom: "8px",
157
- };
158
- const motivationBox = {
159
- backgroundColor: "transparent",
160
- padding: "16px 0",
161
- margin: "24px 0",
162
- borderLeft: "4px solid #4ade80",
163
- paddingLeft: "20px",
164
- };
165
- const motivationText = {
166
- color: "#94a3b8",
167
- fontSize: "15px",
168
- lineHeight: "22px",
169
- fontStyle: "italic",
170
- };
171
- const footer = {
172
- color: "#94a3b8", // slate-400 for subtle footer text
173
- fontSize: "12px",
174
- lineHeight: "16px",
19
+ return (_jsxs(EmailLayout, { preview: "Congratulations! You've reached your bodyweight goal on Tracked", children: [_jsx(EmailHeader, {}), _jsx(Section, { style: { textAlign: "center", margin: "24px 0" }, children: _jsx(Text, { style: { fontSize: "64px", margin: "0" }, children: "\uD83C\uDF89" }) }), _jsx(Heading, { style: { textAlign: "center", fontSize: "32px" }, children: "Goal Achieved!" }), _jsx(Text, { style: {
20
+ color: colors.accent,
21
+ fontSize: "18px",
22
+ lineHeight: "26px",
23
+ textAlign: "center",
24
+ marginBottom: "24px",
25
+ }, children: getGoalMessage() }), _jsxs(Section, { style: {
26
+ backgroundColor: colors.surface,
27
+ padding: "20px 24px",
28
+ borderRadius: "8px",
29
+ margin: "24px 0",
30
+ borderLeft: `4px solid ${colors.accent}`,
31
+ }, children: [_jsx(Text, { style: {
32
+ color: colors.accent,
33
+ fontSize: "16px",
34
+ fontWeight: "bold",
35
+ marginBottom: "16px",
36
+ textAlign: "center",
37
+ }, children: "Your Achievement:" }), _jsxs(Row, { children: [_jsxs(Column, { children: [_jsx(Text, { style: {
38
+ color: colors.textMuted,
39
+ fontSize: "12px",
40
+ textAlign: "center",
41
+ marginBottom: "4px",
42
+ textTransform: "uppercase",
43
+ }, children: "Starting Weight" }), _jsxs(Text, { style: {
44
+ color: colors.textPrimary,
45
+ fontSize: "20px",
46
+ fontWeight: "bold",
47
+ textAlign: "center",
48
+ }, children: [startWeight, " ", weightUnit] })] }), _jsxs(Column, { children: [_jsx(Text, { style: {
49
+ color: colors.textMuted,
50
+ fontSize: "12px",
51
+ textAlign: "center",
52
+ marginBottom: "4px",
53
+ textTransform: "uppercase",
54
+ }, children: "Current Weight" }), _jsxs(Text, { style: {
55
+ color: colors.textPrimary,
56
+ fontSize: "20px",
57
+ fontWeight: "bold",
58
+ textAlign: "center",
59
+ }, children: [currentWeight, " ", weightUnit] })] }), _jsxs(Column, { children: [_jsx(Text, { style: {
60
+ color: colors.textMuted,
61
+ fontSize: "12px",
62
+ textAlign: "center",
63
+ marginBottom: "4px",
64
+ textTransform: "uppercase",
65
+ }, children: "Goal Weight" }), _jsxs(Text, { style: {
66
+ color: colors.textPrimary,
67
+ fontSize: "20px",
68
+ fontWeight: "bold",
69
+ textAlign: "center",
70
+ }, children: [goalWeight, " ", weightUnit] })] })] }), _jsx(Section, { style: {
71
+ backgroundColor: colors.surfaceAlt,
72
+ padding: "12px 16px",
73
+ borderRadius: "6px",
74
+ marginTop: "16px",
75
+ }, children: _jsxs(Text, { style: {
76
+ color: colors.accent,
77
+ fontSize: "16px",
78
+ fontWeight: "bold",
79
+ textAlign: "center",
80
+ margin: "0",
81
+ }, children: ["You've ", changeDirection, " ", weightChange.toFixed(1), " ", weightUnit, timeToGoal && ` in ${timeToGoal}`, "!"] }) })] }), _jsxs(Paragraph, { children: ["Congratulations, ", userName, "! This is a huge accomplishment that took dedication, consistency, and hard work. You set a goal and achieved it - that's something to be proud of!"] }), _jsx(PrimaryButton, { href: progressUrl, children: "View Your Progress" }), _jsx(FeatureBox, { title: "What's Next?", children: _jsx(FeatureList, { items: [
82
+ { title: "Maintain your progress with consistent training" },
83
+ { title: "Set a new goal to continue your journey" },
84
+ { title: "Share your success with the Tracked community" },
85
+ { title: "Reflect on what worked and keep building on it" },
86
+ ] }) }), _jsxs(Section, { style: {
87
+ padding: "16px 0 16px 20px",
88
+ margin: "24px 0",
89
+ borderLeft: `4px solid ${colors.accent}`,
90
+ }, children: [_jsx(Text, { style: {
91
+ color: colors.textMuted,
92
+ fontSize: "15px",
93
+ lineHeight: "22px",
94
+ fontStyle: "italic",
95
+ margin: "0",
96
+ }, children: "\"Success is the sum of small efforts repeated day in and day out.\"" }), _jsx(Text, { style: {
97
+ color: colors.textMuted,
98
+ fontSize: "15px",
99
+ lineHeight: "22px",
100
+ marginTop: "8px",
101
+ }, children: "You proved it - congratulations! \uD83D\uDCAA" })] }), _jsx(DiscordButton, {}), _jsx(EmailFooter, { websiteUrl: websiteUrl })] }));
175
102
  };
176
103
  export default BodyweightGoalReachedEmail;
177
104
  //# sourceMappingURL=bodyweight-goal-reached.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bodyweight-goal-reached.js","sourceRoot":"","sources":["../../src/emails/bodyweight-goal-reached.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bodyweight-goal-reached.js","sourceRoot":"","sources":["../../src/emails/bodyweight-goal-reached.tsx"],"names":[],"mappings":";AACA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,EACL,WAAW,EACX,WAAW,EACX,WAAW,EACX,OAAO,EACP,SAAS,EACT,UAAU,EACV,WAAW,EACX,aAAa,EACb,aAAa,EACb,MAAM,GACP,MAAM,eAAe,CAAC;AAcvB,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,EACzC,QAAQ,GAAG,MAAM,EACjB,QAAQ,GAAG,MAAM,EACjB,WAAW,GAAG,GAAG,EACjB,aAAa,GAAG,GAAG,EACnB,UAAU,GAAG,GAAG,EAChB,UAAU,GAAG,KAAK,EAClB,UAAU,GAAG,UAAU,EACvB,WAAW,GAAG,sBAAsB,EACpC,UAAU,GAAG,oBAAoB,GACD,EAAE,EAAE;IACpC,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,GAAG,WAAW,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,aAAa,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC;IAExE,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,MAAM;gBACT,OAAO,uCAAuC,CAAC;YACjD,KAAK,MAAM;gBACT,OAAO,uCAAuC,CAAC;YACjD,KAAK,UAAU;gBACb,OAAO,kDAAkD,CAAC;YAC5D;gBACE,OAAO,2BAA2B,CAAC;QACvC,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,CACL,MAAC,WAAW,IAAC,OAAO,EAAC,iEAAiE,aACpF,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,QAAQ,EAAE,MAAM,EAAE,+BAExD,EACV,KAAC,IAAI,IACH,KAAK,EAAE;oBACL,KAAK,EAAE,MAAM,CAAC,MAAM;oBACpB,QAAQ,EAAE,MAAM;oBAChB,UAAU,EAAE,MAAM;oBAClB,SAAS,EAAE,QAAiB;oBAC5B,YAAY,EAAE,MAAM;iBACrB,YAEA,cAAc,EAAE,GACZ,EAEP,MAAC,OAAO,IACN,KAAK,EAAE;oBACL,eAAe,EAAE,MAAM,CAAC,OAAO;oBAC/B,OAAO,EAAE,WAAW;oBACpB,YAAY,EAAE,KAAK;oBACnB,MAAM,EAAE,QAAQ;oBAChB,UAAU,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;iBACzC,aAED,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,MAAM;4BACpB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAe;4BAC3B,YAAY,EAAE,MAAM;4BACpB,SAAS,EAAE,QAAiB;yBAC7B,kCAGI,EACP,MAAC,GAAG,eACF,MAAC,MAAM,eACL,KAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,SAAS;4CACvB,QAAQ,EAAE,MAAM;4CAChB,SAAS,EAAE,QAAiB;4CAC5B,YAAY,EAAE,KAAK;4CACnB,aAAa,EAAE,WAAoB;yCACpC,gCAGI,EACP,MAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,WAAW;4CACzB,QAAQ,EAAE,MAAM;4CAChB,UAAU,EAAE,MAAe;4CAC3B,SAAS,EAAE,QAAiB;yCAC7B,aAEA,WAAW,OAAG,UAAU,IACpB,IACA,EACT,MAAC,MAAM,eACL,KAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,SAAS;4CACvB,QAAQ,EAAE,MAAM;4CAChB,SAAS,EAAE,QAAiB;4CAC5B,YAAY,EAAE,KAAK;4CACnB,aAAa,EAAE,WAAoB;yCACpC,+BAGI,EACP,MAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,WAAW;4CACzB,QAAQ,EAAE,MAAM;4CAChB,UAAU,EAAE,MAAe;4CAC3B,SAAS,EAAE,QAAiB;yCAC7B,aAEA,aAAa,OAAG,UAAU,IACtB,IACA,EACT,MAAC,MAAM,eACL,KAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,SAAS;4CACvB,QAAQ,EAAE,MAAM;4CAChB,SAAS,EAAE,QAAiB;4CAC5B,YAAY,EAAE,KAAK;4CACnB,aAAa,EAAE,WAAoB;yCACpC,4BAGI,EACP,MAAC,IAAI,IACH,KAAK,EAAE;4CACL,KAAK,EAAE,MAAM,CAAC,WAAW;4CACzB,QAAQ,EAAE,MAAM;4CAChB,UAAU,EAAE,MAAe;4CAC3B,SAAS,EAAE,QAAiB;yCAC7B,aAEA,UAAU,OAAG,UAAU,IACnB,IACA,IACL,EACN,KAAC,OAAO,IACN,KAAK,EAAE;4BACL,eAAe,EAAE,MAAM,CAAC,UAAU;4BAClC,OAAO,EAAE,WAAW;4BACpB,YAAY,EAAE,KAAK;4BACnB,SAAS,EAAE,MAAM;yBAClB,YAED,MAAC,IAAI,IACH,KAAK,EAAE;gCACL,KAAK,EAAE,MAAM,CAAC,MAAM;gCACpB,QAAQ,EAAE,MAAM;gCAChB,UAAU,EAAE,MAAe;gCAC3B,SAAS,EAAE,QAAiB;gCAC5B,MAAM,EAAE,GAAG;6BACZ,wBAEO,eAAe,OAAG,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,OAAG,UAAU,EAC7D,UAAU,IAAI,OAAO,UAAU,EAAE,SAC7B,GACC,IACF,EAEV,MAAC,SAAS,oCACU,QAAQ,2JAGhB,EAEZ,KAAC,aAAa,IAAC,IAAI,EAAE,WAAW,mCAAoC,EAEpE,KAAC,UAAU,IAAC,KAAK,EAAC,cAAc,YAC9B,KAAC,WAAW,IACV,KAAK,EAAE;wBACL,EAAE,KAAK,EAAE,iDAAiD,EAAE;wBAC5D,EAAE,KAAK,EAAE,yCAAyC,EAAE;wBACpD,EAAE,KAAK,EAAE,+CAA+C,EAAE;wBAC1D,EAAE,KAAK,EAAE,gDAAgD,EAAE;qBAC5D,GACD,GACS,EAEb,MAAC,OAAO,IACN,KAAK,EAAE;oBACL,OAAO,EAAE,kBAAkB;oBAC3B,MAAM,EAAE,QAAQ;oBAChB,UAAU,EAAE,aAAa,MAAM,CAAC,MAAM,EAAE;iBACzC,aAED,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,SAAS;4BACvB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAM;4BAClB,SAAS,EAAE,QAAiB;4BAC5B,MAAM,EAAE,GAAG;yBACZ,qFAGI,EACP,KAAC,IAAI,IACH,KAAK,EAAE;4BACL,KAAK,EAAE,MAAM,CAAC,SAAS;4BACvB,QAAQ,EAAE,MAAM;4BAChB,UAAU,EAAE,MAAM;4BAClB,SAAS,EAAE,KAAK;yBACjB,8DAGI,IACC,EAEV,KAAC,aAAa,KAAG,EAEjB,KAAC,WAAW,IAAC,UAAU,EAAE,UAAU,GAAI,IAC3B,CACf,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe,0BAA0B,CAAC"}
@@ -0,0 +1,14 @@
1
+ interface ClientInactiveAlertEmailProps {
2
+ coachName: string;
3
+ clientName: string;
4
+ clientEmail: string;
5
+ clientAvatarUrl?: string;
6
+ daysInactive: number;
7
+ lastWorkoutDate?: string;
8
+ clientProfileUrl: string;
9
+ messageUrl: string;
10
+ websiteUrl?: string;
11
+ }
12
+ export declare const ClientInactiveAlertEmail: ({ coachName, clientName, clientEmail, clientAvatarUrl, daysInactive, lastWorkoutDate, clientProfileUrl, messageUrl, websiteUrl, }: ClientInactiveAlertEmailProps) => import("react/jsx-runtime").JSX.Element;
13
+ export default ClientInactiveAlertEmail;
14
+ //# sourceMappingURL=client-inactive-alert.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client-inactive-alert.d.ts","sourceRoot":"","sources":["../../src/emails/client-inactive-alert.tsx"],"names":[],"mappings":"AAeA,UAAU,6BAA6B;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,wBAAwB,GAAI,mIAUtC,6BAA6B,4CA0F/B,CAAC;AAEF,eAAe,wBAAwB,CAAC"}