@samva/markup 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. package/AGENTS.md +94 -47
  2. package/README.md +1 -1
  3. package/dist/brand-DcoVkh_S.d.ts +88 -0
  4. package/dist/{catalog-60eaYC7b.d.ts → catalog-CKuOooB8.d.ts} +13 -15
  5. package/dist/{checks-DBweSIPN.js → checks-D73Xizbw.js} +414 -2
  6. package/dist/checks.js +1 -1
  7. package/dist/classes.d.ts +2 -3
  8. package/dist/compile-sms.d.ts +1 -1
  9. package/dist/compile-whatsapp.d.ts +1 -1
  10. package/dist/compiler.d.ts +62 -45
  11. package/dist/compiler.js +206 -863
  12. package/dist/components.d.ts +2 -2
  13. package/dist/{corpus-BjYMqOoY.d.ts → corpus-CPPfgAHN.d.ts} +14 -14
  14. package/dist/{css-COcFOT1y.d.ts → css-CS2jLID6.d.ts} +28 -2
  15. package/dist/email/assets.d.ts +40 -0
  16. package/dist/email/assets.js +63 -0
  17. package/dist/email/brand-footer.d.ts +34 -0
  18. package/dist/email/brand-footer.js +62 -0
  19. package/dist/email/brand.d.ts +2 -0
  20. package/dist/email/brand.js +148 -0
  21. package/dist/email/html.d.ts +2 -42
  22. package/dist/email/html.js +11 -0
  23. package/dist/email/render.d.ts +12 -5
  24. package/dist/email/render.js +2 -5
  25. package/dist/email/selection.d.ts +2 -91
  26. package/dist/email/stylesheets.d.ts +1 -1
  27. package/dist/email/stylesheets.js +3 -0
  28. package/dist/emit.js +2 -2
  29. package/dist/html-Bl9BAdqc.d.ts +42 -0
  30. package/dist/{ops-2aiiYO7m.js → ops-BvwqHl7V.js} +2 -2
  31. package/dist/ops.js +1 -1
  32. package/dist/{parser-CQcASEyy.d.ts → parser-t29cHLVL.d.ts} +2 -2
  33. package/dist/parser.d.ts +1 -1
  34. package/dist/parser.js +1 -2
  35. package/dist/registry-Dcp6QEK_.d.ts +73 -0
  36. package/dist/registry.d.ts +2 -42
  37. package/dist/{render-aaJBnsXK.js → render-vAv_4r9v.js} +174 -17
  38. package/dist/selection-CCArx9lU.d.ts +91 -0
  39. package/dist/{showcase-DGZAWn4Z.d.ts → showcase-egkusQBf.d.ts} +15 -56
  40. package/dist/{presets → starters}/category-mapping.d.ts +5 -5
  41. package/dist/{presets → starters}/category-mapping.js +5 -5
  42. package/dist/starters/corpus.d.ts +2 -0
  43. package/dist/{presets → starters}/corpus.js +15 -15
  44. package/dist/starters/library.d.ts +18 -0
  45. package/dist/starters/library.js +692 -0
  46. package/dist/{presets → starters}/public-gallery.d.ts +47 -47
  47. package/dist/{presets → starters}/public-gallery.js +92 -92
  48. package/dist/{presets → starters}/public-handoff.d.ts +14 -14
  49. package/dist/{presets → starters}/public-handoff.js +40 -40
  50. package/dist/{presets → starters}/public-preview-artifacts.d.ts +4 -4
  51. package/dist/{presets → starters}/public-preview-artifacts.js +15 -15
  52. package/dist/{presets → starters}/public-preview.d.ts +1 -1
  53. package/dist/{presets → starters}/public-preview.js +3 -3
  54. package/dist/starters/showcase.d.ts +2 -0
  55. package/dist/starters/showcase.js +335 -0
  56. package/dist/starters/sources.d.ts +45 -0
  57. package/dist/{presets → starters}/sources.js +1951 -272
  58. package/dist/starters/theme.d.ts +45 -0
  59. package/dist/starters/theme.js +77 -0
  60. package/dist/starters.d.ts +2 -0
  61. package/dist/{presets.js → starters.js} +4 -11
  62. package/dist/tailwind-BYq7Lo6u.js +727 -0
  63. package/dist/theme-css-hFqcPSar.js +587 -0
  64. package/dist/theme-css.d.ts +56 -15
  65. package/dist/theme-css.js +2 -509
  66. package/dist/tsx-source-instrumentation.d.ts +9 -0
  67. package/dist/tsx-source-instrumentation.js +20 -2
  68. package/dist/tsx-tracer.js +3 -3
  69. package/dist/unsubscribe-link-CoesnQDU.js +26 -0
  70. package/package.json +56 -44
  71. package/samva-brand.d.ts +14 -0
  72. package/dist/footer.d.ts +0 -66
  73. package/dist/footer.js +0 -93
  74. package/dist/presets/corpus.d.ts +0 -2
  75. package/dist/presets/showcase.d.ts +0 -2
  76. package/dist/presets/showcase.js +0 -627
  77. package/dist/presets/sources.d.ts +0 -38
  78. package/dist/presets.d.ts +0 -2
  79. package/dist/theme-6ApjjiBo.d.ts +0 -116
  80. package/dist/theme.d.ts +0 -2
  81. package/dist/theme.js +0 -118
  82. package/dist/tokens.d.ts +0 -6
  83. package/dist/tokens.js +0 -417
@@ -1,6 +1,6 @@
1
1
  import { brandRecreationProvenance, matchesTemplateFacets, registerPublicCorpusEntry } from "./corpus.js";
2
2
  import { Result } from "better-result";
3
- //#region presets/public-gallery.ts
3
+ //#region starters/public-gallery.ts
4
4
  const templateUseCases = [
5
5
  "account-access",
6
6
  "commerce",
@@ -14,233 +14,233 @@ const templateCollectionFamilies = [
14
14
  "stage",
15
15
  "style"
16
16
  ];
17
- const isMadeWithSamvaTemplate = (template) => template.corpus.type === "OwnedEditablePreset" || template.corpus.type === "BrandRecreationPreset";
18
- /** Explicit evidence for every owned preset reviewed in the 2026-08-31 catalog pass. */
19
- const ownedPresetReviewManifest = {
17
+ const isMadeWithSamvaTemplate = (template) => template.corpus.type === "OwnedEditableStarter" || template.corpus.type === "BrandRecreationStarter";
18
+ /** Explicit evidence for every owned starter reviewed in the 2026-08-31 catalog pass. */
19
+ const ownedStarterReviewManifest = {
20
20
  welcome: {
21
- sourcePath: "examples/email-showcase/emails/welcome.tsx",
21
+ sourcePath: "examples/email-showcase/starters/welcome/emails/welcome.tsx",
22
22
  reviewedBy: "Samva catalog review",
23
23
  reviewedAt: "2026-09-08T00:00:00.000Z",
24
24
  notes: "Reviewed welcome editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
25
25
  },
26
26
  "email-verification": {
27
- sourcePath: "examples/email-showcase/emails/email-verification.tsx",
27
+ sourcePath: "examples/email-showcase/starters/email-verification/emails/email-verification.tsx",
28
28
  reviewedBy: "Samva catalog review",
29
29
  reviewedAt: "2026-09-08T00:00:00.000Z",
30
30
  notes: "Reviewed email-verification editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
31
31
  },
32
32
  otp: {
33
- sourcePath: "examples/email-showcase/emails/otp.tsx",
33
+ sourcePath: "examples/email-showcase/starters/otp/emails/otp.tsx",
34
34
  reviewedBy: "Samva catalog review",
35
35
  reviewedAt: "2026-09-08T00:00:00.000Z",
36
36
  notes: "Reviewed otp editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
37
37
  },
38
38
  "password-reset": {
39
- sourcePath: "examples/email-showcase/emails/password-reset.tsx",
39
+ sourcePath: "examples/email-showcase/starters/password-reset/emails/password-reset.tsx",
40
40
  reviewedBy: "Samva catalog review",
41
41
  reviewedAt: "2026-09-08T00:00:00.000Z",
42
42
  notes: "Reviewed password-reset editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
43
43
  },
44
44
  "payment-failed": {
45
- sourcePath: "examples/email-showcase/emails/payment-failed.tsx",
45
+ sourcePath: "examples/email-showcase/starters/payment-failed/emails/payment-failed.tsx",
46
46
  reviewedBy: "Samva catalog review",
47
47
  reviewedAt: "2026-09-08T00:00:00.000Z",
48
48
  notes: "Reviewed payment-failed editable project with stylesheet and original Fernhollow assets, public preview data, and gallery identity."
49
49
  },
50
50
  "shipping-update": {
51
- sourcePath: "examples/email-showcase/emails/shipping-update.tsx",
51
+ sourcePath: "examples/email-showcase/starters/shipping-update/emails/shipping-update.tsx",
52
52
  reviewedBy: "Samva catalog review",
53
53
  reviewedAt: "2026-09-08T00:00:00.000Z",
54
54
  notes: "Reviewed shipping-update editable project with stylesheet and original Fernhollow assets, public preview data, and gallery identity."
55
55
  },
56
56
  notification: {
57
- sourcePath: "examples/email-showcase/emails/notification.tsx",
57
+ sourcePath: "examples/email-showcase/starters/notification/emails/notification.tsx",
58
58
  reviewedBy: "Samva catalog review",
59
59
  reviewedAt: "2026-09-08T00:00:00.000Z",
60
60
  notes: "Reviewed notification editable project with stylesheet and original Meridian assets, public preview data, and gallery identity."
61
61
  },
62
62
  "team-invite": {
63
- sourcePath: "examples/email-showcase/emails/team-invite.tsx",
63
+ sourcePath: "examples/email-showcase/starters/team-invite/emails/team-invite.tsx",
64
64
  reviewedBy: "Samva catalog review",
65
65
  reviewedAt: "2026-09-08T00:00:00.000Z",
66
66
  notes: "Reviewed team-invite editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
67
67
  },
68
68
  "product-newsletter": {
69
- sourcePath: "examples/email-showcase/emails/product-newsletter.tsx",
69
+ sourcePath: "examples/email-showcase/starters/product-newsletter/emails/product-newsletter.tsx",
70
70
  reviewedBy: "Samva catalog review",
71
71
  reviewedAt: "2026-09-08T00:00:00.000Z",
72
72
  notes: "Reviewed product-newsletter editable SML project, authored assets, public preview data, and gallery identity."
73
73
  },
74
74
  "product-digest": {
75
- sourcePath: "examples/email-showcase/emails/product-digest.tsx",
75
+ sourcePath: "examples/email-showcase/starters/product-digest/emails/product-digest.tsx",
76
76
  reviewedBy: "Samva catalog review",
77
77
  reviewedAt: "2026-09-08T00:00:00.000Z",
78
78
  notes: "Reviewed product-digest editable SML project, authored assets, public preview data, and gallery identity."
79
79
  },
80
80
  announcement: {
81
- sourcePath: "examples/email-showcase/emails/announcement.tsx",
81
+ sourcePath: "examples/email-showcase/starters/announcement/emails/announcement.tsx",
82
82
  reviewedBy: "Samva catalog review",
83
83
  reviewedAt: "2026-09-08T00:00:00.000Z",
84
84
  notes: "Reviewed announcement editable SML project, original Northwick assets, public preview data, and gallery identity."
85
85
  },
86
86
  "event-invite": {
87
- sourcePath: "examples/email-showcase/emails/event-invite.tsx",
87
+ sourcePath: "examples/email-showcase/starters/event-invite/emails/event-invite.tsx",
88
88
  reviewedBy: "Samva catalog review",
89
89
  reviewedAt: "2026-09-08T00:00:00.000Z",
90
90
  notes: "Reviewed event-invite editable SML project, original Northwick assets, public preview data, and gallery identity."
91
91
  },
92
92
  "membership-promo": {
93
- sourcePath: "examples/email-showcase/emails/membership-promo.tsx",
93
+ sourcePath: "examples/email-showcase/starters/membership-promo/emails/membership-promo.tsx",
94
94
  reviewedBy: "Samva catalog review",
95
95
  reviewedAt: "2026-09-08T00:00:00.000Z",
96
96
  notes: "Reviewed membership-promo editable SML project, original Northwick assets, public preview data, and gallery identity."
97
97
  },
98
98
  "onboarding-step": {
99
- sourcePath: "examples/email-showcase/emails/onboarding-step.tsx",
99
+ sourcePath: "examples/email-showcase/starters/onboarding-step/emails/onboarding-step.tsx",
100
100
  reviewedBy: "Samva catalog review",
101
101
  reviewedAt: "2026-09-08T00:00:00.000Z",
102
102
  notes: "Reviewed onboarding-step editable project with stylesheet and original assets, public preview data, and gallery identity."
103
103
  },
104
104
  "trial-ending": {
105
- sourcePath: "examples/email-showcase/emails/trial-ending.tsx",
105
+ sourcePath: "examples/email-showcase/starters/trial-ending/emails/trial-ending.tsx",
106
106
  reviewedBy: "Samva catalog review",
107
107
  reviewedAt: "2026-09-08T00:00:00.000Z",
108
108
  notes: "Reviewed trial-ending editable project with stylesheet and original assets, public preview data, and gallery identity."
109
109
  },
110
110
  "win-back": {
111
- sourcePath: "examples/email-showcase/emails/win-back.tsx",
111
+ sourcePath: "examples/email-showcase/starters/win-back/emails/win-back.tsx",
112
112
  reviewedBy: "Samva catalog review",
113
113
  reviewedAt: "2026-09-08T00:00:00.000Z",
114
114
  notes: "Reviewed win-back editable project with stylesheet and original assets, public preview data, and gallery identity."
115
115
  },
116
116
  "feedback-request": {
117
- sourcePath: "examples/email-showcase/emails/feedback-request.tsx",
117
+ sourcePath: "examples/email-showcase/starters/feedback-request/emails/feedback-request.tsx",
118
118
  reviewedBy: "Samva catalog review",
119
119
  reviewedAt: "2026-09-08T00:00:00.000Z",
120
120
  notes: "Reviewed feedback-request editable project with stylesheet and original assets, public preview data, and gallery identity."
121
121
  },
122
122
  "editorial-newsletter": {
123
- sourcePath: "examples/email-showcase/emails/editorial-newsletter.tsx",
123
+ sourcePath: "examples/email-showcase/starters/editorial-newsletter/emails/editorial-newsletter.tsx",
124
124
  reviewedBy: "Samva catalog review",
125
125
  reviewedAt: "2026-09-08T00:00:00.000Z",
126
126
  notes: "Reviewed editorial-newsletter editable SML project, authored assets, public preview data, and gallery identity."
127
127
  },
128
128
  "member-referral-offer": {
129
- sourcePath: "examples/email-showcase/emails/member-referral-offer.tsx",
129
+ sourcePath: "examples/email-showcase/starters/member-referral-offer/emails/member-referral-offer.tsx",
130
130
  reviewedBy: "Samva catalog review",
131
131
  reviewedAt: "2026-09-08T00:00:00.000Z",
132
132
  notes: "Reviewed member-referral-offer editable SML project, original Northwick assets, public preview data, and gallery identity."
133
133
  },
134
134
  "catalog-sale-newsletter": {
135
- sourcePath: "examples/email-showcase/emails/catalog-sale-newsletter.tsx",
135
+ sourcePath: "examples/email-showcase/starters/catalog-sale-newsletter/emails/catalog-sale-newsletter.tsx",
136
136
  reviewedBy: "Samva catalog review",
137
137
  reviewedAt: "2026-09-08T00:00:00.000Z",
138
138
  notes: "Reviewed catalog-sale-newsletter editable SML project, original Northwick assets, public preview data, and gallery identity."
139
139
  },
140
140
  "limited-time-savings": {
141
- sourcePath: "examples/email-showcase/emails/limited-time-savings.tsx",
141
+ sourcePath: "examples/email-showcase/starters/limited-time-savings/emails/limited-time-savings.tsx",
142
142
  reviewedBy: "Samva catalog review",
143
143
  reviewedAt: "2026-09-08T00:00:00.000Z",
144
144
  notes: "Reviewed limited-time-savings editable SML project, original Northwick assets, public preview data, and gallery identity."
145
145
  },
146
146
  "rewards-milestone": {
147
- sourcePath: "examples/email-showcase/emails/rewards-milestone.tsx",
147
+ sourcePath: "examples/email-showcase/starters/rewards-milestone/emails/rewards-milestone.tsx",
148
148
  reviewedBy: "Samva catalog review",
149
149
  reviewedAt: "2026-09-08T00:00:00.000Z",
150
150
  notes: "Reviewed rewards-milestone editable SML project, original Northwick assets, public preview data, and gallery identity."
151
151
  },
152
152
  "order-receipt": {
153
- sourcePath: "examples/email-showcase/emails/order-receipt.tsx",
153
+ sourcePath: "examples/email-showcase/starters/order-receipt/emails/order-receipt.tsx",
154
154
  reviewedBy: "Samva catalog review",
155
155
  reviewedAt: "2026-09-08T00:00:00.000Z",
156
156
  notes: "Reviewed order-receipt editable project with stylesheet and original assets, public preview data, and gallery identity."
157
157
  },
158
158
  "travel-rewards-promo": {
159
- sourcePath: "examples/email-showcase/emails/travel-rewards-promo.tsx",
159
+ sourcePath: "examples/email-showcase/starters/travel-rewards-promo/emails/travel-rewards-promo.tsx",
160
160
  reviewedBy: "Samva catalog review",
161
161
  reviewedAt: "2026-09-08T00:00:00.000Z",
162
162
  notes: "Reviewed travel-rewards-promo editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity."
163
163
  },
164
164
  "events-roundup": {
165
- sourcePath: "examples/email-showcase/emails/events-roundup.tsx",
165
+ sourcePath: "examples/email-showcase/starters/events-roundup/emails/events-roundup.tsx",
166
166
  reviewedBy: "Samva catalog review",
167
167
  reviewedAt: "2026-09-08T00:00:00.000Z",
168
168
  notes: "Reviewed events-roundup editable SML project, authored assets, public preview data, and gallery identity."
169
169
  },
170
170
  "product-onboarding-tour": {
171
- sourcePath: "examples/email-showcase/emails/product-onboarding-tour.tsx",
171
+ sourcePath: "examples/email-showcase/starters/product-onboarding-tour/emails/product-onboarding-tour.tsx",
172
172
  reviewedBy: "Samva catalog review",
173
173
  reviewedAt: "2026-09-08T00:00:00.000Z",
174
174
  notes: "Reviewed product-onboarding-tour editable project with stylesheet and original assets, public preview data, and gallery identity."
175
175
  },
176
176
  "product-updates-roundup": {
177
- sourcePath: "examples/email-showcase/emails/product-updates-roundup.tsx",
177
+ sourcePath: "examples/email-showcase/starters/product-updates-roundup/emails/product-updates-roundup.tsx",
178
178
  reviewedBy: "Samva catalog review",
179
179
  reviewedAt: "2026-09-08T00:00:00.000Z",
180
180
  notes: "Reviewed product-updates-roundup editable project with stylesheet and original Basalt assets, public preview data, and gallery identity."
181
181
  },
182
182
  "flash-getaway-offer": {
183
- sourcePath: "examples/email-showcase/emails/flash-getaway-offer.tsx",
183
+ sourcePath: "examples/email-showcase/starters/flash-getaway-offer/emails/flash-getaway-offer.tsx",
184
184
  reviewedBy: "Samva catalog review",
185
185
  reviewedAt: "2026-09-08T00:00:00.000Z",
186
186
  notes: "Reviewed flash-getaway-offer editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity."
187
187
  },
188
188
  "membership-benefits-promo": {
189
- sourcePath: "examples/email-showcase/emails/membership-benefits-promo.tsx",
189
+ sourcePath: "examples/email-showcase/starters/membership-benefits-promo/emails/membership-benefits-promo.tsx",
190
190
  reviewedBy: "Samva catalog review",
191
191
  reviewedAt: "2026-09-08T00:00:00.000Z",
192
192
  notes: "Reviewed membership-benefits-promo editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity."
193
193
  },
194
194
  "industry-news-digest": {
195
- sourcePath: "examples/email-showcase/emails/industry-news-digest.tsx",
195
+ sourcePath: "examples/email-showcase/starters/industry-news-digest/emails/industry-news-digest.tsx",
196
196
  reviewedBy: "Samva catalog review",
197
197
  reviewedAt: "2026-09-08T00:00:00.000Z",
198
198
  notes: "Reviewed industry-news-digest editable SML project, authored assets, public preview data, and gallery identity."
199
199
  },
200
200
  "weekly-deals-circular": {
201
- sourcePath: "examples/email-showcase/emails/weekly-deals-circular.tsx",
201
+ sourcePath: "examples/email-showcase/starters/weekly-deals-circular/emails/weekly-deals-circular.tsx",
202
202
  reviewedBy: "Samva catalog review",
203
203
  reviewedAt: "2026-09-08T00:00:00.000Z",
204
204
  notes: "Reviewed weekly-deals-circular editable project with stylesheet and original Oakline assets, public preview data, and gallery identity."
205
205
  },
206
206
  "data-sharing-review": {
207
- sourcePath: "examples/email-showcase/emails/data-sharing-review.tsx",
207
+ sourcePath: "examples/email-showcase/starters/data-sharing-review/emails/data-sharing-review.tsx",
208
208
  reviewedBy: "Samva catalog review",
209
209
  reviewedAt: "2026-09-08T00:00:00.000Z",
210
210
  notes: "Reviewed data-sharing-review editable project with stylesheet and original Northloop assets, public preview data, and gallery identity."
211
211
  },
212
212
  "seasonal-sale-flyer": {
213
- sourcePath: "examples/email-showcase/emails/seasonal-sale-flyer.tsx",
213
+ sourcePath: "examples/email-showcase/starters/seasonal-sale-flyer/emails/seasonal-sale-flyer.tsx",
214
214
  reviewedBy: "Samva catalog review",
215
215
  reviewedAt: "2026-09-08T00:00:00.000Z",
216
216
  notes: "Reviewed seasonal-sale-flyer editable project with stylesheet and original Oakline assets, public preview data, and gallery identity."
217
217
  },
218
218
  "setup-checklist": {
219
- sourcePath: "examples/email-showcase/emails/setup-checklist.tsx",
219
+ sourcePath: "examples/email-showcase/starters/setup-checklist/emails/setup-checklist.tsx",
220
220
  reviewedBy: "Samva catalog review",
221
221
  reviewedAt: "2026-09-08T00:00:00.000Z",
222
222
  notes: "Reviewed setup-checklist editable project with stylesheet and original assets, public preview data, and gallery identity."
223
223
  },
224
224
  "feature-release-roundup": {
225
- sourcePath: "examples/email-showcase/emails/feature-release-roundup.tsx",
225
+ sourcePath: "examples/email-showcase/starters/feature-release-roundup/emails/feature-release-roundup.tsx",
226
226
  reviewedBy: "Samva catalog review",
227
227
  reviewedAt: "2026-09-08T00:00:00.000Z",
228
228
  notes: "Reviewed feature-release-roundup editable project with stylesheet and original Basalt assets, public preview data, and gallery identity."
229
229
  },
230
230
  "season-clearance-promo": {
231
- sourcePath: "examples/email-showcase/emails/season-clearance-promo.tsx",
231
+ sourcePath: "examples/email-showcase/starters/season-clearance-promo/emails/season-clearance-promo.tsx",
232
232
  reviewedBy: "Samva catalog review",
233
233
  reviewedAt: "2026-09-08T00:00:00.000Z",
234
234
  notes: "Reviewed season-clearance-promo editable project with stylesheet and original Oakline assets, public preview data, and gallery identity."
235
235
  },
236
236
  "product-launch-promo": {
237
- sourcePath: "examples/email-showcase/emails/product-launch-promo.tsx",
237
+ sourcePath: "examples/email-showcase/starters/product-launch-promo/emails/product-launch-promo.tsx",
238
238
  reviewedBy: "Samva catalog review",
239
239
  reviewedAt: "2026-09-08T00:00:00.000Z",
240
240
  notes: "Reviewed product-launch-promo editable project, original Oakline assets, public preview data, and gallery identity."
241
241
  }
242
242
  };
243
- const isBrandRecreationPresetId = (presetId) => Object.hasOwn(brandRecreationProvenance, presetId);
243
+ const isBrandRecreationStarterId = (starterId) => Object.hasOwn(brandRecreationProvenance, starterId);
244
244
  const audienceFor = (useCase) => {
245
245
  switch (useCase) {
246
246
  case "account-access": return ["product-users"];
@@ -257,10 +257,10 @@ const audienceFor = (useCase) => {
257
257
  const facetValues = (collections, prefix) => collections.filter((id) => id.startsWith(`${prefix}:`)).map((id) => id.slice(prefix.length + 1));
258
258
  const template = (value) => {
259
259
  const corpus = (() => {
260
- if (isBrandRecreationPresetId(value.presetId)) {
261
- const provenance = brandRecreationProvenance[value.presetId];
260
+ if (isBrandRecreationStarterId(value.starterId)) {
261
+ const provenance = brandRecreationProvenance[value.starterId];
262
262
  return {
263
- type: "BrandRecreationPreset",
263
+ type: "BrandRecreationStarter",
264
264
  corpusKind: "brand-recreation-sml",
265
265
  provenance,
266
266
  review: {
@@ -284,9 +284,9 @@ const template = (value) => {
284
284
  }
285
285
  };
286
286
  }
287
- const review = ownedPresetReviewManifest[value.presetId];
287
+ const review = ownedStarterReviewManifest[value.starterId];
288
288
  return {
289
- type: "OwnedEditablePreset",
289
+ type: "OwnedEditableStarter",
290
290
  corpusKind: "owned-editable-sml",
291
291
  provenance: {
292
292
  owner: "Samva",
@@ -318,13 +318,13 @@ const template = (value) => {
318
318
  jobType: [value.useCase],
319
319
  lifecycle: facetValues(value.collections, "stage"),
320
320
  industry: facetValues(value.collections, "industry"),
321
- season: value.presetId === "seasonal-sale-flyer" || value.presetId === "season-clearance-promo" ? ["seasonal"] : ["evergreen"],
321
+ season: value.starterId === "seasonal-sale-flyer" || value.starterId === "season-clearance-promo" ? ["seasonal"] : ["evergreen"],
322
322
  audience: audienceFor(value.useCase),
323
323
  design: facetValues(value.collections, "style"),
324
- brandProvenance: [corpus.type === "BrandRecreationPreset" ? "third-party-reference" : "samva-original"]
324
+ brandProvenance: [corpus.type === "BrandRecreationStarter" ? "third-party-reference" : "samva-original"]
325
325
  };
326
326
  const registration = registerPublicCorpusEntry({
327
- id: value.presetId,
327
+ id: value.starterId,
328
328
  corpus,
329
329
  facets
330
330
  });
@@ -338,7 +338,7 @@ const template = (value) => {
338
338
  };
339
339
  const publicTemplates = [
340
340
  template({
341
- presetId: "welcome",
341
+ starterId: "welcome",
342
342
  slug: "welcome-email",
343
343
  useCase: "lifecycle",
344
344
  collections: [
@@ -351,7 +351,7 @@ const publicTemplates = [
351
351
  relatedTemplates: ["email-verification", "onboarding-step"]
352
352
  }),
353
353
  template({
354
- presetId: "email-verification",
354
+ starterId: "email-verification",
355
355
  slug: "email-verification",
356
356
  useCase: "account-access",
357
357
  collections: [
@@ -369,7 +369,7 @@ const publicTemplates = [
369
369
  ]
370
370
  }),
371
371
  template({
372
- presetId: "otp",
372
+ starterId: "otp",
373
373
  slug: "one-time-passcode",
374
374
  useCase: "account-access",
375
375
  collections: [
@@ -386,7 +386,7 @@ const publicTemplates = [
386
386
  ]
387
387
  }),
388
388
  template({
389
- presetId: "password-reset",
389
+ starterId: "password-reset",
390
390
  slug: "password-reset",
391
391
  useCase: "account-access",
392
392
  collections: [
@@ -400,7 +400,7 @@ const publicTemplates = [
400
400
  relatedTemplates: ["otp", "email-verification"]
401
401
  }),
402
402
  template({
403
- presetId: "payment-failed",
403
+ starterId: "payment-failed",
404
404
  slug: "payment-failed",
405
405
  useCase: "commerce",
406
406
  collections: [
@@ -414,7 +414,7 @@ const publicTemplates = [
414
414
  relatedTemplates: ["order-receipt", "trial-ending"]
415
415
  }),
416
416
  template({
417
- presetId: "shipping-update",
417
+ starterId: "shipping-update",
418
418
  slug: "shipping-update",
419
419
  useCase: "commerce",
420
420
  collections: [
@@ -427,7 +427,7 @@ const publicTemplates = [
427
427
  relatedTemplates: ["order-receipt", "notification"]
428
428
  }),
429
429
  template({
430
- presetId: "notification",
430
+ starterId: "notification",
431
431
  slug: "activity-notification",
432
432
  useCase: "product-communication",
433
433
  collections: [
@@ -441,7 +441,7 @@ const publicTemplates = [
441
441
  relatedTemplates: ["team-invite", "product-digest"]
442
442
  }),
443
443
  template({
444
- presetId: "team-invite",
444
+ starterId: "team-invite",
445
445
  slug: "team-invite",
446
446
  useCase: "product-communication",
447
447
  collections: [
@@ -455,7 +455,7 @@ const publicTemplates = [
455
455
  relatedTemplates: ["welcome", "notification"]
456
456
  }),
457
457
  template({
458
- presetId: "product-digest",
458
+ starterId: "product-digest",
459
459
  slug: "product-digest",
460
460
  useCase: "product-communication",
461
461
  collections: [
@@ -469,7 +469,7 @@ const publicTemplates = [
469
469
  relatedTemplates: ["notification", "product-newsletter"]
470
470
  }),
471
471
  template({
472
- presetId: "announcement",
472
+ starterId: "announcement",
473
473
  slug: "feature-announcement",
474
474
  useCase: "publishing-campaigns",
475
475
  collections: [
@@ -483,7 +483,7 @@ const publicTemplates = [
483
483
  relatedTemplates: ["product-newsletter", "event-invite"]
484
484
  }),
485
485
  template({
486
- presetId: "event-invite",
486
+ starterId: "event-invite",
487
487
  slug: "event-invite",
488
488
  useCase: "publishing-campaigns",
489
489
  collections: [
@@ -496,7 +496,7 @@ const publicTemplates = [
496
496
  relatedTemplates: ["announcement", "product-launch-promo"]
497
497
  }),
498
498
  template({
499
- presetId: "membership-promo",
499
+ starterId: "membership-promo",
500
500
  slug: "membership-promotion",
501
501
  useCase: "publishing-campaigns",
502
502
  collections: [
@@ -509,7 +509,7 @@ const publicTemplates = [
509
509
  relatedTemplates: ["product-launch-promo", "announcement"]
510
510
  }),
511
511
  template({
512
- presetId: "onboarding-step",
512
+ starterId: "onboarding-step",
513
513
  slug: "onboarding-step",
514
514
  useCase: "lifecycle",
515
515
  collections: [
@@ -523,7 +523,7 @@ const publicTemplates = [
523
523
  relatedTemplates: ["welcome", "trial-ending"]
524
524
  }),
525
525
  template({
526
- presetId: "trial-ending",
526
+ starterId: "trial-ending",
527
527
  slug: "trial-ending",
528
528
  useCase: "lifecycle",
529
529
  collections: [
@@ -536,7 +536,7 @@ const publicTemplates = [
536
536
  relatedTemplates: ["onboarding-step", "win-back"]
537
537
  }),
538
538
  template({
539
- presetId: "win-back",
539
+ starterId: "win-back",
540
540
  slug: "win-back",
541
541
  useCase: "lifecycle",
542
542
  collections: [
@@ -549,7 +549,7 @@ const publicTemplates = [
549
549
  relatedTemplates: ["trial-ending", "feedback-request"]
550
550
  }),
551
551
  template({
552
- presetId: "feedback-request",
552
+ starterId: "feedback-request",
553
553
  slug: "feedback-request",
554
554
  useCase: "lifecycle",
555
555
  collections: [
@@ -562,7 +562,7 @@ const publicTemplates = [
562
562
  relatedTemplates: ["win-back", "onboarding-step"]
563
563
  }),
564
564
  template({
565
- presetId: "editorial-newsletter",
565
+ starterId: "editorial-newsletter",
566
566
  slug: "editorial-newsletter",
567
567
  useCase: "publishing-campaigns",
568
568
  collections: [
@@ -575,7 +575,7 @@ const publicTemplates = [
575
575
  relatedTemplates: ["product-newsletter", "product-digest"]
576
576
  }),
577
577
  template({
578
- presetId: "member-referral-offer",
578
+ starterId: "member-referral-offer",
579
579
  slug: "member-referral-offer",
580
580
  useCase: "publishing-campaigns",
581
581
  collections: [
@@ -588,7 +588,7 @@ const publicTemplates = [
588
588
  relatedTemplates: ["product-launch-promo", "membership-promo"]
589
589
  }),
590
590
  template({
591
- presetId: "catalog-sale-newsletter",
591
+ starterId: "catalog-sale-newsletter",
592
592
  slug: "catalog-sale-newsletter",
593
593
  useCase: "publishing-campaigns",
594
594
  collections: [
@@ -601,7 +601,7 @@ const publicTemplates = [
601
601
  relatedTemplates: ["announcement", "product-launch-promo"]
602
602
  }),
603
603
  template({
604
- presetId: "limited-time-savings",
604
+ starterId: "limited-time-savings",
605
605
  slug: "limited-time-savings",
606
606
  useCase: "publishing-campaigns",
607
607
  collections: [
@@ -614,7 +614,7 @@ const publicTemplates = [
614
614
  relatedTemplates: ["product-launch-promo", "membership-promo"]
615
615
  }),
616
616
  template({
617
- presetId: "rewards-milestone",
617
+ starterId: "rewards-milestone",
618
618
  slug: "rewards-milestone",
619
619
  useCase: "publishing-campaigns",
620
620
  collections: [
@@ -627,7 +627,7 @@ const publicTemplates = [
627
627
  relatedTemplates: ["membership-promo", "product-launch-promo"]
628
628
  }),
629
629
  template({
630
- presetId: "order-receipt",
630
+ starterId: "order-receipt",
631
631
  slug: "order-receipt",
632
632
  useCase: "commerce",
633
633
  collections: [
@@ -641,7 +641,7 @@ const publicTemplates = [
641
641
  relatedTemplates: ["shipping-update", "payment-failed"]
642
642
  }),
643
643
  template({
644
- presetId: "travel-rewards-promo",
644
+ starterId: "travel-rewards-promo",
645
645
  slug: "travel-rewards-promo",
646
646
  useCase: "publishing-campaigns",
647
647
  collections: [
@@ -654,7 +654,7 @@ const publicTemplates = [
654
654
  relatedTemplates: ["membership-promo", "product-launch-promo"]
655
655
  }),
656
656
  template({
657
- presetId: "events-roundup",
657
+ starterId: "events-roundup",
658
658
  slug: "events-roundup",
659
659
  useCase: "publishing-campaigns",
660
660
  collections: [
@@ -667,7 +667,7 @@ const publicTemplates = [
667
667
  relatedTemplates: ["product-newsletter", "event-invite"]
668
668
  }),
669
669
  template({
670
- presetId: "product-onboarding-tour",
670
+ starterId: "product-onboarding-tour",
671
671
  slug: "product-onboarding-tour",
672
672
  useCase: "lifecycle",
673
673
  collections: [
@@ -680,7 +680,7 @@ const publicTemplates = [
680
680
  relatedTemplates: ["onboarding-step", "welcome"]
681
681
  }),
682
682
  template({
683
- presetId: "product-updates-roundup",
683
+ starterId: "product-updates-roundup",
684
684
  slug: "product-updates-roundup",
685
685
  useCase: "product-communication",
686
686
  collections: [
@@ -693,7 +693,7 @@ const publicTemplates = [
693
693
  relatedTemplates: ["announcement", "product-digest"]
694
694
  }),
695
695
  template({
696
- presetId: "flash-getaway-offer",
696
+ starterId: "flash-getaway-offer",
697
697
  slug: "flash-getaway-offer",
698
698
  useCase: "publishing-campaigns",
699
699
  collections: [
@@ -706,7 +706,7 @@ const publicTemplates = [
706
706
  relatedTemplates: ["product-launch-promo", "membership-promo"]
707
707
  }),
708
708
  template({
709
- presetId: "membership-benefits-promo",
709
+ starterId: "membership-benefits-promo",
710
710
  slug: "membership-benefits-promo",
711
711
  useCase: "publishing-campaigns",
712
712
  collections: [
@@ -719,7 +719,7 @@ const publicTemplates = [
719
719
  relatedTemplates: ["membership-promo", "product-launch-promo"]
720
720
  }),
721
721
  template({
722
- presetId: "industry-news-digest",
722
+ starterId: "industry-news-digest",
723
723
  slug: "industry-news-digest",
724
724
  useCase: "publishing-campaigns",
725
725
  collections: [
@@ -732,7 +732,7 @@ const publicTemplates = [
732
732
  relatedTemplates: ["product-newsletter", "product-digest"]
733
733
  }),
734
734
  template({
735
- presetId: "weekly-deals-circular",
735
+ starterId: "weekly-deals-circular",
736
736
  slug: "weekly-deals-circular",
737
737
  useCase: "publishing-campaigns",
738
738
  collections: [
@@ -745,7 +745,7 @@ const publicTemplates = [
745
745
  relatedTemplates: ["product-launch-promo", "membership-promo"]
746
746
  }),
747
747
  template({
748
- presetId: "data-sharing-review",
748
+ starterId: "data-sharing-review",
749
749
  slug: "data-sharing-review",
750
750
  useCase: "product-communication",
751
751
  collections: [
@@ -758,7 +758,7 @@ const publicTemplates = [
758
758
  relatedTemplates: ["notification", "team-invite"]
759
759
  }),
760
760
  template({
761
- presetId: "seasonal-sale-flyer",
761
+ starterId: "seasonal-sale-flyer",
762
762
  slug: "seasonal-sale-flyer",
763
763
  useCase: "publishing-campaigns",
764
764
  collections: [
@@ -771,7 +771,7 @@ const publicTemplates = [
771
771
  relatedTemplates: ["product-launch-promo", "announcement"]
772
772
  }),
773
773
  template({
774
- presetId: "setup-checklist",
774
+ starterId: "setup-checklist",
775
775
  slug: "setup-checklist",
776
776
  useCase: "lifecycle",
777
777
  collections: [
@@ -784,7 +784,7 @@ const publicTemplates = [
784
784
  relatedTemplates: ["welcome", "onboarding-step"]
785
785
  }),
786
786
  template({
787
- presetId: "feature-release-roundup",
787
+ starterId: "feature-release-roundup",
788
788
  slug: "feature-release-roundup",
789
789
  useCase: "product-communication",
790
790
  collections: [
@@ -797,7 +797,7 @@ const publicTemplates = [
797
797
  relatedTemplates: ["announcement", "product-digest"]
798
798
  }),
799
799
  template({
800
- presetId: "season-clearance-promo",
800
+ starterId: "season-clearance-promo",
801
801
  slug: "season-clearance-promo",
802
802
  useCase: "publishing-campaigns",
803
803
  collections: [
@@ -810,7 +810,7 @@ const publicTemplates = [
810
810
  relatedTemplates: ["product-launch-promo", "announcement"]
811
811
  }),
812
812
  template({
813
- presetId: "linear-login-code",
813
+ starterId: "linear-login-code",
814
814
  slug: "linear-login-code",
815
815
  useCase: "account-access",
816
816
  collections: [
@@ -825,7 +825,7 @@ const publicTemplates = [
825
825
  relatedTemplates: ["otp", "email-verification"]
826
826
  }),
827
827
  template({
828
- presetId: "product-newsletter",
828
+ starterId: "product-newsletter",
829
829
  slug: "product-newsletter",
830
830
  useCase: "publishing-campaigns",
831
831
  collections: [
@@ -839,7 +839,7 @@ const publicTemplates = [
839
839
  relatedTemplates: ["product-digest", "editorial-newsletter"]
840
840
  }),
841
841
  template({
842
- presetId: "product-launch-promo",
842
+ starterId: "product-launch-promo",
843
843
  slug: "product-launch-promotion",
844
844
  useCase: "commerce",
845
845
  collections: [
@@ -852,7 +852,7 @@ const publicTemplates = [
852
852
  relatedTemplates: ["season-clearance-promo", "membership-promo"]
853
853
  }),
854
854
  template({
855
- presetId: "vercel-invitation",
855
+ starterId: "vercel-invitation",
856
856
  slug: "vercel-team-invitation",
857
857
  useCase: "product-communication",
858
858
  collections: [
@@ -867,11 +867,11 @@ const publicTemplates = [
867
867
  relatedTemplates: ["team-invite", "welcome"]
868
868
  })
869
869
  ];
870
- const publicTemplateIds = publicTemplates.map((item) => item.presetId);
870
+ const publicTemplateIds = publicTemplates.map((item) => item.starterId);
871
871
  if (new Set(publicTemplateIds).size !== publicTemplateIds.length) throw new Error("public template registry ids must be unique");
872
872
  /** Deterministic strict-intersection search over the canonical public corpus order. */
873
873
  const filterPublicTemplatesByFacets = (query) => publicTemplates.filter((item) => matchesTemplateFacets(item.facets, query));
874
- const members = (id) => publicTemplates.filter((item) => item.collections.some((collectionId) => collectionId === id)).map((item) => item.presetId);
874
+ const members = (id) => publicTemplates.filter((item) => item.collections.some((collectionId) => collectionId === id)).map((item) => item.starterId);
875
875
  const collection = (id, relatedCollections = []) => {
876
876
  const [family, slug] = id.split(":");
877
877
  return {
@@ -911,6 +911,6 @@ const publicTemplateGallery = {
911
911
  collections: templateCollections
912
912
  };
913
913
  //#endregion
914
- export { filterPublicTemplatesByFacets, isMadeWithSamvaTemplate, ownedPresetReviewManifest, publicTemplateGallery, publicTemplates, templateCollectionFamilies, templateCollections, templateUseCases };
914
+ export { filterPublicTemplatesByFacets, isMadeWithSamvaTemplate, ownedStarterReviewManifest, publicTemplateGallery, publicTemplates, templateCollectionFamilies, templateCollections, templateUseCases };
915
915
 
916
916
  //# sourceMappingURL=public-gallery.js.map