@samva/markup 0.1.2 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/AGENTS.md +25 -5
  2. package/README.md +92 -26
  3. package/dist/{ast-DAhnAvQN.d.ts → ast-63I-VLQx.d.ts} +15 -2
  4. package/dist/ast.d.ts +2 -2
  5. package/dist/ast.js +14 -1
  6. package/dist/{checks-D-zFQt5R.js → checks-DXuERO4B.js} +36 -2
  7. package/dist/checks.d.ts +8 -1
  8. package/dist/checks.js +2 -2
  9. package/dist/compile-sms.d.ts +2 -2
  10. package/dist/compile-whatsapp.d.ts +2 -2
  11. package/dist/compile.d.ts +9 -84
  12. package/dist/compile.js +11 -920
  13. package/dist/compiler.d.ts +301 -0
  14. package/dist/compiler.js +1389 -0
  15. package/dist/components.d.ts +3 -3
  16. package/dist/corpus-Dz5irJ9x.d.ts +161 -0
  17. package/dist/diagnostics-Djd9ckLg.d.ts +90 -0
  18. package/dist/diagnostics.js +4 -1
  19. package/dist/elements-DtwKlFVH.d.ts +820 -0
  20. package/dist/email/components.d.ts +119 -0
  21. package/dist/email/components.js +207 -0
  22. package/dist/email/diagnostics.d.ts +2 -0
  23. package/dist/email/diagnostics.js +56 -0
  24. package/dist/email/elements.d.ts +2 -0
  25. package/dist/email/elements.js +299 -0
  26. package/dist/email/html.d.ts +42 -0
  27. package/dist/email/html.js +266 -0
  28. package/dist/email/jsx-dev-runtime.d.ts +26 -0
  29. package/dist/email/jsx-dev-runtime.js +12 -0
  30. package/dist/email/jsx-runtime.d.ts +2 -0
  31. package/dist/email/jsx-runtime.js +60 -0
  32. package/dist/email/render.d.ts +36 -0
  33. package/dist/email/render.js +6 -0
  34. package/dist/email/selection.d.ts +102 -0
  35. package/dist/email/selection.js +143 -0
  36. package/dist/email/source-edit.d.ts +67 -0
  37. package/dist/email/source-edit.js +185 -0
  38. package/dist/email/stylesheets.d.ts +2 -0
  39. package/dist/email/stylesheets.js +43 -0
  40. package/dist/email/text.d.ts +7 -0
  41. package/dist/email/text.js +92 -0
  42. package/dist/emit.d.ts +13 -12
  43. package/dist/emit.js +63 -63
  44. package/dist/input-schema-BIfzI63B.d.ts +23 -0
  45. package/dist/input-schema.d.ts +2 -0
  46. package/dist/input-schema.js +170 -0
  47. package/dist/jsx-dev-runtime.d.ts +4 -3
  48. package/dist/jsx-dev-runtime.js +9 -1
  49. package/dist/{jsx-runtime-eNIMY87F.d.ts → jsx-runtime-C5k_Zq0A.d.ts} +3 -3
  50. package/dist/jsx-runtime.d.ts +1 -1
  51. package/dist/jsx-runtime.js +20 -1
  52. package/dist/model.d.ts +1 -1
  53. package/dist/ops.d.ts +1 -1
  54. package/dist/ops.js +1 -1
  55. package/dist/{parser-DkQKIjDa.d.ts → parser-CGBS73Gz.d.ts} +2 -2
  56. package/dist/parser.d.ts +1 -1
  57. package/dist/presets/category-mapping.d.ts +1 -1
  58. package/dist/presets/corpus.d.ts +2 -0
  59. package/dist/presets/corpus.js +186 -0
  60. package/dist/presets/public-gallery.d.ts +272 -2
  61. package/dist/presets/public-gallery.js +305 -6
  62. package/dist/presets/public-handoff.d.ts +140 -2
  63. package/dist/presets/public-handoff.js +130 -33
  64. package/dist/presets/public-preview-artifacts.d.ts +2 -2
  65. package/dist/presets/public-preview-artifacts.js +20 -26
  66. package/dist/presets/public-preview.d.ts +56 -2
  67. package/dist/presets/public-preview.js +388 -1152
  68. package/dist/presets/sources.d.ts +17 -4
  69. package/dist/presets/sources.js +1212 -43
  70. package/dist/presets.d.ts +2 -2
  71. package/dist/printer.d.ts +1 -1
  72. package/dist/render-Cddsy_XF.js +585 -0
  73. package/dist/render-template.d.ts +5 -2
  74. package/dist/render-template.js +3 -1
  75. package/dist/source-locations-BCJQnIfU.d.ts +89 -0
  76. package/dist/source-locations.d.ts +2 -0
  77. package/dist/source-locations.js +125 -0
  78. package/dist/stylesheets-oDRAnYA3.d.ts +94 -0
  79. package/dist/template-Dy5yOPyp.d.ts +60 -0
  80. package/dist/template.d.ts +2 -0
  81. package/dist/template.js +37 -0
  82. package/dist/tsx-source-instrumentation.d.ts +23 -0
  83. package/dist/tsx-source-instrumentation.js +97 -0
  84. package/dist/tsx-tracer.d.ts +116 -0
  85. package/dist/tsx-tracer.js +985 -0
  86. package/generated/sml-agent-contract.json +574 -782
  87. package/generated/sml-email-agent-contract.json +502 -677
  88. package/generated/sml-email-language-reference.md +94 -160
  89. package/generated/sml-language-reference.md +195 -220
  90. package/package.json +111 -9
  91. package/dist/public-gallery-D0Zv0pZE.d.ts +0 -611
  92. package/dist/public-preview-u1Z9aaGq.d.ts +0 -1168
@@ -0,0 +1,186 @@
1
+ import { presetCatalog } from "../presets.js";
2
+ import { Result, Schema } from "effect";
3
+ //#region presets/corpus.ts
4
+ const TemplateCorpusKind = Schema.Literals(["owned-editable-sml", "inspiration-reference"]);
5
+ const templateFacetOptions = {
6
+ jobType: [
7
+ "account-access",
8
+ "commerce",
9
+ "product-communication",
10
+ "lifecycle",
11
+ "publishing-campaigns"
12
+ ],
13
+ lifecycle: [
14
+ "acquisition",
15
+ "activation",
16
+ "engagement",
17
+ "transaction",
18
+ "retention",
19
+ "recovery"
20
+ ],
21
+ industry: [
22
+ "saas",
23
+ "ecommerce",
24
+ "developer-tools",
25
+ "newsletters-media"
26
+ ],
27
+ season: ["evergreen", "seasonal"],
28
+ audience: [
29
+ "product-users",
30
+ "customers",
31
+ "members",
32
+ "readers",
33
+ "shoppers",
34
+ "teams"
35
+ ],
36
+ design: [
37
+ "minimal",
38
+ "branded",
39
+ "editorial",
40
+ "data-heavy",
41
+ "single-cta"
42
+ ],
43
+ brandProvenance: ["samva-original", "third-party-reference"]
44
+ };
45
+ const JobTypeFacet = Schema.Literals(templateFacetOptions.jobType);
46
+ const LifecycleFacet = Schema.Literals(templateFacetOptions.lifecycle);
47
+ const IndustryFacet = Schema.Literals(templateFacetOptions.industry);
48
+ const SeasonFacet = Schema.Literals(templateFacetOptions.season);
49
+ const AudienceFacet = Schema.Literals(templateFacetOptions.audience);
50
+ const DesignFacet = Schema.Literals(templateFacetOptions.design);
51
+ const BrandProvenanceFacet = Schema.Literals(templateFacetOptions.brandProvenance);
52
+ const TemplateFacetSet = Schema.Struct({
53
+ jobType: Schema.Array(JobTypeFacet),
54
+ lifecycle: Schema.Array(LifecycleFacet),
55
+ industry: Schema.Array(IndustryFacet),
56
+ season: Schema.Array(SeasonFacet),
57
+ audience: Schema.Array(AudienceFacet),
58
+ design: Schema.Array(DesignFacet),
59
+ brandProvenance: Schema.Array(BrandProvenanceFacet)
60
+ });
61
+ const CorpusReview = Schema.Struct({
62
+ state: Schema.Literals([
63
+ "draft",
64
+ "approved",
65
+ "rejected"
66
+ ]),
67
+ reviewedBy: Schema.String,
68
+ reviewedAt: Schema.String,
69
+ notes: Schema.String
70
+ });
71
+ const CorpusDisplay = Schema.Struct({
72
+ state: Schema.Literals(["hidden", "public"]),
73
+ attributionLabel: Schema.String
74
+ });
75
+ const CorpusRetention = Schema.Struct({
76
+ policy: Schema.Literals(["retain-until-withdrawn", "retain-while-linked"]),
77
+ reviewedAt: Schema.String
78
+ });
79
+ const CorpusTakedown = Schema.Struct({
80
+ state: Schema.Literals(["active", "removed"]),
81
+ contact: Schema.String,
82
+ procedureUrl: Schema.String
83
+ });
84
+ const OwnedEditablePreset = Schema.TaggedStruct("OwnedEditablePreset", {
85
+ corpusKind: Schema.Literal("owned-editable-sml"),
86
+ provenance: Schema.Struct({
87
+ owner: Schema.Literal("Samva"),
88
+ sourcePath: Schema.String,
89
+ recordedAt: Schema.String
90
+ }),
91
+ review: CorpusReview,
92
+ display: CorpusDisplay,
93
+ retention: CorpusRetention,
94
+ takedown: CorpusTakedown
95
+ });
96
+ const InspirationReference = Schema.TaggedStruct("InspirationReference", {
97
+ corpusKind: Schema.Literal("inspiration-reference"),
98
+ provenance: Schema.Struct({
99
+ publisher: Schema.String,
100
+ sourceUrl: Schema.String,
101
+ capturedAt: Schema.String,
102
+ rightsBasis: Schema.Literals(["display-link-and-commentary", "permission"])
103
+ }),
104
+ review: CorpusReview,
105
+ display: CorpusDisplay,
106
+ retention: CorpusRetention,
107
+ takedown: CorpusTakedown
108
+ });
109
+ const TemplateCorpusRecord = Schema.Union([OwnedEditablePreset, InspirationReference]);
110
+ const ISO_TIMESTAMP = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{3})?Z$/;
111
+ const nonEmpty = (value) => value.trim().length > 0;
112
+ const isHttpsUrl = (value) => {
113
+ const url = URL.parse(value);
114
+ return url?.protocol === "https:" && url.hostname.length > 0 && url.username.length === 0 && url.password.length === 0;
115
+ };
116
+ const requiredFacetDimensions = [
117
+ "jobType",
118
+ "lifecycle",
119
+ "industry",
120
+ "season",
121
+ "audience",
122
+ "design",
123
+ "brandProvenance"
124
+ ];
125
+ const canonicalOwnedPresetSources = new Map(presetCatalog.filter((preset) => preset.channel === "email").map((preset) => [preset.id, `packages/markup/presets/${preset.id}.tsx`]));
126
+ /** Decode and gate a record before it can enter any public projection. */
127
+ const registerPublicCorpusEntry = (input) => {
128
+ const decoded = Schema.decodeUnknownResult(Schema.Struct({
129
+ id: Schema.String,
130
+ corpus: TemplateCorpusRecord,
131
+ facets: TemplateFacetSet
132
+ }), { onExcessProperty: "error" })(input);
133
+ if (Result.isFailure(decoded)) return Result.fail({
134
+ id: "unknown",
135
+ message: "record does not match a corpus schema"
136
+ });
137
+ const { id, corpus, facets } = decoded.success;
138
+ const timestamps = [
139
+ corpus.review.reviewedAt,
140
+ corpus.retention.reviewedAt,
141
+ corpus._tag === "InspirationReference" ? corpus.provenance.capturedAt : corpus.provenance.recordedAt
142
+ ];
143
+ if (!nonEmpty(id) || corpus.review.state !== "approved" || !nonEmpty(corpus.review.reviewedBy) || !nonEmpty(corpus.review.notes) || corpus.display.state !== "public" || !nonEmpty(corpus.display.attributionLabel) || corpus.takedown.state !== "active" || !nonEmpty(corpus.takedown.contact) || !isHttpsUrl(corpus.takedown.procedureUrl) || timestamps.some((timestamp) => !ISO_TIMESTAMP.test(timestamp))) return Result.fail({
144
+ id,
145
+ message: "public corpus records require approved review, display, retention, and takedown metadata"
146
+ });
147
+ if (corpus._tag === "OwnedEditablePreset" && (canonicalOwnedPresetSources.get(id) !== corpus.provenance.sourcePath || corpus.retention.policy !== "retain-until-withdrawn" || facets.brandProvenance.some((value) => value !== "samva-original"))) return Result.fail({
148
+ id,
149
+ message: "owned presets require a canonical editable TSX source"
150
+ });
151
+ if (corpus._tag === "InspirationReference" && (!isHttpsUrl(corpus.provenance.sourceUrl) || corpus.retention.policy !== "retain-while-linked" || facets.brandProvenance.some((value) => value !== "third-party-reference"))) return Result.fail({
152
+ id,
153
+ message: "inspiration references require an HTTPS source and third-party provenance facet"
154
+ });
155
+ for (const dimension of requiredFacetDimensions) {
156
+ const values = facets[dimension];
157
+ if (values.length === 0 || new Set(values).size !== values.length) return Result.fail({
158
+ id,
159
+ message: `facet ${dimension} must be populated without duplicates`
160
+ });
161
+ }
162
+ return Result.succeed({
163
+ id,
164
+ corpus,
165
+ facets
166
+ });
167
+ };
168
+ const TemplateFacetQuery = Schema.Struct({
169
+ jobType: Schema.optionalKey(Schema.Array(JobTypeFacet)),
170
+ lifecycle: Schema.optionalKey(Schema.Array(LifecycleFacet)),
171
+ industry: Schema.optionalKey(Schema.Array(IndustryFacet)),
172
+ season: Schema.optionalKey(Schema.Array(SeasonFacet)),
173
+ audience: Schema.optionalKey(Schema.Array(AudienceFacet)),
174
+ design: Schema.optionalKey(Schema.Array(DesignFacet)),
175
+ brandProvenance: Schema.optionalKey(Schema.Array(BrandProvenanceFacet))
176
+ });
177
+ /** Strict intersection: every selected value in every selected dimension must match. */
178
+ const matchesTemplateFacets = (facets, query) => requiredFacetDimensions.every((dimension) => {
179
+ const selected = query[dimension];
180
+ const available = new Set(facets[dimension]);
181
+ return selected === void 0 || selected.every((value) => available.has(value));
182
+ });
183
+ //#endregion
184
+ export { InspirationReference, OwnedEditablePreset, TemplateCorpusKind, TemplateCorpusRecord, TemplateFacetQuery, TemplateFacetSet, matchesTemplateFacets, registerPublicCorpusEntry, templateFacetOptions };
185
+
186
+ //# sourceMappingURL=corpus.js.map
@@ -1,2 +1,272 @@
1
- import { a as TemplateUseCase, c as publicTemplates, d as templateUseCases, i as TemplateCollectionId, l as templateCollectionFamilies, n as TemplateCollection, o as isMadeWithSamvaTemplate, r as TemplateCollectionFamily, s as publicTemplateGallery, t as PublicTemplate, u as templateCollections } from "../public-gallery-D0Zv0pZE.js";
2
- export { PublicTemplate, TemplateCollection, TemplateCollectionFamily, TemplateCollectionId, TemplateUseCase, isMadeWithSamvaTemplate, publicTemplateGallery, publicTemplates, templateCollectionFamilies, templateCollections, templateUseCases };
1
+ import { EmailPresetId } from "../presets.js";
2
+ import { c as TemplateFacetSet, n as OwnedEditablePreset, s as TemplateFacetQuery } from "../corpus-Dz5irJ9x.js";
3
+ //#region presets/public-gallery.d.ts
4
+ declare const templateUseCases: readonly ["account-access", "commerce", "product-communication", "lifecycle", "publishing-campaigns"];
5
+ declare const templateCollectionFamilies: readonly ["category", "industry", "stage", "style"];
6
+ type TemplateUseCase = (typeof templateUseCases)[number];
7
+ type TemplateCollectionFamily = (typeof templateCollectionFamilies)[number];
8
+ interface PublicTemplate {
9
+ readonly presetId: EmailPresetId;
10
+ readonly slug: string;
11
+ readonly path: `/templates/${string}`;
12
+ readonly useCase: TemplateUseCase;
13
+ readonly collections: ReadonlyArray<TemplateCollectionId>;
14
+ readonly relatedTemplates: ReadonlyArray<EmailPresetId>;
15
+ /** This public record is editable Samva-owned SML, never a third-party reference. */
16
+ readonly corpus: OwnedEditablePreset;
17
+ readonly facets: TemplateFacetSet;
18
+ }
19
+ declare const isMadeWithSamvaTemplate: (template: Pick<PublicTemplate, "corpus">) => boolean;
20
+ interface TemplateCollection {
21
+ readonly id: TemplateCollectionId;
22
+ readonly family: TemplateCollectionFamily;
23
+ readonly slug: string;
24
+ readonly path: `/templates/${TemplateCollectionFamily}/${string}`;
25
+ readonly templates: ReadonlyArray<EmailPresetId>;
26
+ readonly relatedCollections: ReadonlyArray<TemplateCollectionId>;
27
+ }
28
+ type TemplateCollectionId = "category:transactional" | "category:lifecycle" | "category:marketing" | "category:digest-editorial" | "industry:saas" | "industry:ecommerce" | "industry:developer-tools" | "industry:newsletters-media" | "stage:acquisition" | "stage:activation" | "stage:engagement" | "stage:transaction" | "stage:retention" | "stage:recovery" | "style:minimal" | "style:branded" | "style:editorial" | "style:data-heavy" | "style:single-cta";
29
+ /** Explicit evidence for every owned preset reviewed in the 2026-08-31 catalog pass. */
30
+ declare const ownedPresetReviewManifest: {
31
+ readonly welcome: {
32
+ readonly sourcePath: "packages/markup/presets/welcome.tsx";
33
+ readonly reviewedBy: "Samva catalog review";
34
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
35
+ readonly notes: "Reviewed welcome editable SML, public preview data, and gallery identity.";
36
+ };
37
+ readonly "email-verification": {
38
+ readonly sourcePath: "packages/markup/presets/email-verification.tsx";
39
+ readonly reviewedBy: "Samva catalog review";
40
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
41
+ readonly notes: "Reviewed email-verification editable SML, public preview data, and gallery identity.";
42
+ };
43
+ readonly otp: {
44
+ readonly sourcePath: "packages/markup/presets/otp.tsx";
45
+ readonly reviewedBy: "Samva catalog review";
46
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
47
+ readonly notes: "Reviewed otp editable SML, public preview data, and gallery identity.";
48
+ };
49
+ readonly "password-reset": {
50
+ readonly sourcePath: "packages/markup/presets/password-reset.tsx";
51
+ readonly reviewedBy: "Samva catalog review";
52
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
53
+ readonly notes: "Reviewed password-reset editable SML, public preview data, and gallery identity.";
54
+ };
55
+ readonly receipt: {
56
+ readonly sourcePath: "packages/markup/presets/receipt.tsx";
57
+ readonly reviewedBy: "Samva catalog review";
58
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
59
+ readonly notes: "Reviewed receipt editable SML, public preview data, and gallery identity.";
60
+ };
61
+ readonly "payment-failed": {
62
+ readonly sourcePath: "packages/markup/presets/payment-failed.tsx";
63
+ readonly reviewedBy: "Samva catalog review";
64
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
65
+ readonly notes: "Reviewed payment-failed editable SML, public preview data, and gallery identity.";
66
+ };
67
+ readonly "shipping-update": {
68
+ readonly sourcePath: "packages/markup/presets/shipping-update.tsx";
69
+ readonly reviewedBy: "Samva catalog review";
70
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
71
+ readonly notes: "Reviewed shipping-update editable SML, public preview data, and gallery identity.";
72
+ };
73
+ readonly notification: {
74
+ readonly sourcePath: "packages/markup/presets/notification.tsx";
75
+ readonly reviewedBy: "Samva catalog review";
76
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
77
+ readonly notes: "Reviewed notification editable SML, public preview data, and gallery identity.";
78
+ };
79
+ readonly "team-invite": {
80
+ readonly sourcePath: "packages/markup/presets/team-invite.tsx";
81
+ readonly reviewedBy: "Samva catalog review";
82
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
83
+ readonly notes: "Reviewed team-invite editable SML, public preview data, and gallery identity.";
84
+ };
85
+ readonly "product-digest": {
86
+ readonly sourcePath: "packages/markup/presets/product-digest.tsx";
87
+ readonly reviewedBy: "Samva catalog review";
88
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
89
+ readonly notes: "Reviewed product-digest editable SML, public preview data, and gallery identity.";
90
+ };
91
+ readonly newsletter: {
92
+ readonly sourcePath: "packages/markup/presets/newsletter.tsx";
93
+ readonly reviewedBy: "Samva catalog review";
94
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
95
+ readonly notes: "Reviewed newsletter editable SML, public preview data, and gallery identity.";
96
+ };
97
+ readonly announcement: {
98
+ readonly sourcePath: "packages/markup/presets/announcement.tsx";
99
+ readonly reviewedBy: "Samva catalog review";
100
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
101
+ readonly notes: "Reviewed announcement editable SML, public preview data, and gallery identity.";
102
+ };
103
+ readonly promo: {
104
+ readonly sourcePath: "packages/markup/presets/promo.tsx";
105
+ readonly reviewedBy: "Samva catalog review";
106
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
107
+ readonly notes: "Reviewed promo editable SML, public preview data, and gallery identity.";
108
+ };
109
+ readonly "event-invite": {
110
+ readonly sourcePath: "packages/markup/presets/event-invite.tsx";
111
+ readonly reviewedBy: "Samva catalog review";
112
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
113
+ readonly notes: "Reviewed event-invite editable SML, public preview data, and gallery identity.";
114
+ };
115
+ readonly "membership-promo": {
116
+ readonly sourcePath: "packages/markup/presets/membership-promo.tsx";
117
+ readonly reviewedBy: "Samva catalog review";
118
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
119
+ readonly notes: "Reviewed membership-promo editable SML, public preview data, and gallery identity.";
120
+ };
121
+ readonly "onboarding-step": {
122
+ readonly sourcePath: "packages/markup/presets/onboarding-step.tsx";
123
+ readonly reviewedBy: "Samva catalog review";
124
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
125
+ readonly notes: "Reviewed onboarding-step editable SML, public preview data, and gallery identity.";
126
+ };
127
+ readonly "trial-ending": {
128
+ readonly sourcePath: "packages/markup/presets/trial-ending.tsx";
129
+ readonly reviewedBy: "Samva catalog review";
130
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
131
+ readonly notes: "Reviewed trial-ending editable SML, public preview data, and gallery identity.";
132
+ };
133
+ readonly "win-back": {
134
+ readonly sourcePath: "packages/markup/presets/win-back.tsx";
135
+ readonly reviewedBy: "Samva catalog review";
136
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
137
+ readonly notes: "Reviewed win-back editable SML, public preview data, and gallery identity.";
138
+ };
139
+ readonly "feedback-request": {
140
+ readonly sourcePath: "packages/markup/presets/feedback-request.tsx";
141
+ readonly reviewedBy: "Samva catalog review";
142
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
143
+ readonly notes: "Reviewed feedback-request editable SML, public preview data, and gallery identity.";
144
+ };
145
+ readonly "editorial-newsletter": {
146
+ readonly sourcePath: "packages/markup/presets/editorial-newsletter.tsx";
147
+ readonly reviewedBy: "Samva catalog review";
148
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
149
+ readonly notes: "Reviewed editorial-newsletter editable SML, public preview data, and gallery identity.";
150
+ };
151
+ readonly "member-referral-offer": {
152
+ readonly sourcePath: "packages/markup/presets/member-referral-offer.tsx";
153
+ readonly reviewedBy: "Samva catalog review";
154
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
155
+ readonly notes: "Reviewed member-referral-offer editable SML, public preview data, and gallery identity.";
156
+ };
157
+ readonly "catalog-sale-newsletter": {
158
+ readonly sourcePath: "packages/markup/presets/catalog-sale-newsletter.tsx";
159
+ readonly reviewedBy: "Samva catalog review";
160
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
161
+ readonly notes: "Reviewed catalog-sale-newsletter editable SML, public preview data, and gallery identity.";
162
+ };
163
+ readonly "limited-time-savings": {
164
+ readonly sourcePath: "packages/markup/presets/limited-time-savings.tsx";
165
+ readonly reviewedBy: "Samva catalog review";
166
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
167
+ readonly notes: "Reviewed limited-time-savings editable SML, public preview data, and gallery identity.";
168
+ };
169
+ readonly "rewards-milestone": {
170
+ readonly sourcePath: "packages/markup/presets/rewards-milestone.tsx";
171
+ readonly reviewedBy: "Samva catalog review";
172
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
173
+ readonly notes: "Reviewed rewards-milestone editable SML, public preview data, and gallery identity.";
174
+ };
175
+ readonly "order-delivered": {
176
+ readonly sourcePath: "packages/markup/presets/order-delivered.tsx";
177
+ readonly reviewedBy: "Samva catalog review";
178
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
179
+ readonly notes: "Reviewed order-delivered editable SML, public preview data, and gallery identity.";
180
+ };
181
+ readonly "travel-rewards-promo": {
182
+ readonly sourcePath: "packages/markup/presets/travel-rewards-promo.tsx";
183
+ readonly reviewedBy: "Samva catalog review";
184
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
185
+ readonly notes: "Reviewed travel-rewards-promo editable SML, public preview data, and gallery identity.";
186
+ };
187
+ readonly "events-roundup": {
188
+ readonly sourcePath: "packages/markup/presets/events-roundup.tsx";
189
+ readonly reviewedBy: "Samva catalog review";
190
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
191
+ readonly notes: "Reviewed events-roundup editable SML, public preview data, and gallery identity.";
192
+ };
193
+ readonly "product-onboarding-tour": {
194
+ readonly sourcePath: "packages/markup/presets/product-onboarding-tour.tsx";
195
+ readonly reviewedBy: "Samva catalog review";
196
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
197
+ readonly notes: "Reviewed product-onboarding-tour editable SML, public preview data, and gallery identity.";
198
+ };
199
+ readonly "product-updates-roundup": {
200
+ readonly sourcePath: "packages/markup/presets/product-updates-roundup.tsx";
201
+ readonly reviewedBy: "Samva catalog review";
202
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
203
+ readonly notes: "Reviewed product-updates-roundup editable SML, public preview data, and gallery identity.";
204
+ };
205
+ readonly "flash-getaway-offer": {
206
+ readonly sourcePath: "packages/markup/presets/flash-getaway-offer.tsx";
207
+ readonly reviewedBy: "Samva catalog review";
208
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
209
+ readonly notes: "Reviewed flash-getaway-offer editable SML, public preview data, and gallery identity.";
210
+ };
211
+ readonly "membership-benefits-promo": {
212
+ readonly sourcePath: "packages/markup/presets/membership-benefits-promo.tsx";
213
+ readonly reviewedBy: "Samva catalog review";
214
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
215
+ readonly notes: "Reviewed membership-benefits-promo editable SML, public preview data, and gallery identity.";
216
+ };
217
+ readonly "industry-news-digest": {
218
+ readonly sourcePath: "packages/markup/presets/industry-news-digest.tsx";
219
+ readonly reviewedBy: "Samva catalog review";
220
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
221
+ readonly notes: "Reviewed industry-news-digest editable SML, public preview data, and gallery identity.";
222
+ };
223
+ readonly "weekly-deals-circular": {
224
+ readonly sourcePath: "packages/markup/presets/weekly-deals-circular.tsx";
225
+ readonly reviewedBy: "Samva catalog review";
226
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
227
+ readonly notes: "Reviewed weekly-deals-circular editable SML, public preview data, and gallery identity.";
228
+ };
229
+ readonly "data-sharing-review": {
230
+ readonly sourcePath: "packages/markup/presets/data-sharing-review.tsx";
231
+ readonly reviewedBy: "Samva catalog review";
232
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
233
+ readonly notes: "Reviewed data-sharing-review editable SML, public preview data, and gallery identity.";
234
+ };
235
+ readonly "seasonal-sale-flyer": {
236
+ readonly sourcePath: "packages/markup/presets/seasonal-sale-flyer.tsx";
237
+ readonly reviewedBy: "Samva catalog review";
238
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
239
+ readonly notes: "Reviewed seasonal-sale-flyer editable SML, public preview data, and gallery identity.";
240
+ };
241
+ readonly "setup-checklist": {
242
+ readonly sourcePath: "packages/markup/presets/setup-checklist.tsx";
243
+ readonly reviewedBy: "Samva catalog review";
244
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
245
+ readonly notes: "Reviewed setup-checklist editable SML, public preview data, and gallery identity.";
246
+ };
247
+ readonly "feature-release-roundup": {
248
+ readonly sourcePath: "packages/markup/presets/feature-release-roundup.tsx";
249
+ readonly reviewedBy: "Samva catalog review";
250
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
251
+ readonly notes: "Reviewed feature-release-roundup editable SML, public preview data, and gallery identity.";
252
+ };
253
+ readonly "season-clearance-promo": {
254
+ readonly sourcePath: "packages/markup/presets/season-clearance-promo.tsx";
255
+ readonly reviewedBy: "Samva catalog review";
256
+ readonly reviewedAt: "2026-08-31T00:00:00.000Z";
257
+ readonly notes: "Reviewed season-clearance-promo editable SML, public preview data, and gallery identity.";
258
+ };
259
+ };
260
+ declare const publicTemplates: readonly [PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate];
261
+ /** Deterministic strict-intersection search over the canonical public corpus order. */
262
+ declare const filterPublicTemplatesByFacets: (query: TemplateFacetQuery) => ReadonlyArray<PublicTemplate>;
263
+ declare const templateCollections: readonly [TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection];
264
+ declare const publicTemplateGallery: {
265
+ readonly hubPath: "/templates";
266
+ readonly useCases: readonly ["account-access", "commerce", "product-communication", "lifecycle", "publishing-campaigns"];
267
+ readonly templates: readonly [PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate, PublicTemplate];
268
+ readonly collections: readonly [TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection];
269
+ };
270
+ //#endregion
271
+ export { PublicTemplate, TemplateCollection, TemplateCollectionFamily, TemplateCollectionId, TemplateUseCase, filterPublicTemplatesByFacets, isMadeWithSamvaTemplate, ownedPresetReviewManifest, publicTemplateGallery, publicTemplates, templateCollectionFamilies, templateCollections, templateUseCases };
272
+ //# sourceMappingURL=public-gallery.d.ts.map