@samva/markup 0.2.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/catalog-Ck1tAGwO.d.ts +356 -0
- package/dist/compiler.d.ts +7 -5
- package/dist/compiler.js +7 -6
- package/dist/{corpus-Dz5irJ9x.d.ts → corpus-U2EeALvS.d.ts} +76 -3
- package/dist/{stylesheets-oDRAnYA3.d.ts → css-ar2lU3NC.d.ts} +2 -12
- package/dist/email/components.d.ts +8 -2
- package/dist/email/components.js +8 -5
- package/dist/email/render.d.ts +8 -1
- package/dist/email/render.js +2 -2
- package/dist/email/stylesheets.d.ts +15 -2
- package/dist/email/stylesheets.js +3 -1
- package/dist/email/text.js +9 -1
- package/dist/presets/category-mapping.d.ts +1 -1
- package/dist/presets/corpus.d.ts +2 -2
- package/dist/presets/corpus.js +55 -4
- package/dist/presets/public-gallery.d.ts +123 -129
- package/dist/presets/public-gallery.js +260 -215
- package/dist/presets/public-handoff.d.ts +31 -7
- package/dist/presets/public-handoff.js +107 -35
- package/dist/presets/public-preview-artifacts.d.ts +1 -1
- package/dist/presets/public-preview-artifacts.js +6 -6
- package/dist/presets/public-preview.d.ts +11 -6
- package/dist/presets/public-preview.js +48 -359
- package/dist/presets/showcase.d.ts +2 -0
- package/dist/presets/showcase.js +627 -0
- package/dist/presets/sources.d.ts +21 -3
- package/dist/presets/sources.js +6008 -1148
- package/dist/presets.d.ts +2 -350
- package/dist/presets.js +395 -765
- package/dist/{render-Cddsy_XF.js → render-ykQhtMs_.js} +13 -6
- package/dist/showcase-C_xgl6hz.d.ts +456 -0
- package/package.json +5 -1
package/dist/email/render.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { n as
|
|
1
|
+
import { i as renderEmail, n as bindStylesheets, r as compileEmail, t as EMAIL_DOCTYPE } from "../render-ykQhtMs_.js";
|
|
2
2
|
import "./html.js";
|
|
3
3
|
import "./diagnostics.js";
|
|
4
4
|
import "./stylesheets.js";
|
|
5
5
|
import "./text.js";
|
|
6
|
-
export { EMAIL_DOCTYPE, compileEmail, renderEmail };
|
|
6
|
+
export { EMAIL_DOCTYPE, bindStylesheets, compileEmail, renderEmail };
|
|
@@ -1,2 +1,15 @@
|
|
|
1
|
-
import { i as
|
|
2
|
-
|
|
1
|
+
import { i as Stylesheet } from "../css-ar2lU3NC.js";
|
|
2
|
+
//#region src/email/stylesheets.d.ts
|
|
3
|
+
/** Called by a compiler-generated stylesheet module at import time. */
|
|
4
|
+
declare const registerStylesheet: (sheet: Stylesheet) => void;
|
|
5
|
+
/** Drop every registration. The render entry calls this before a render. */
|
|
6
|
+
declare const resetStylesheets: () => void;
|
|
7
|
+
/** Every registered sheet flattened into one, with order preserved across sheets. */
|
|
8
|
+
declare const collectStylesheets: () => Stylesheet;
|
|
9
|
+
/** True when a template registered no styles at all, so the render can skip the pass. */
|
|
10
|
+
declare const hasStylesheets: () => boolean;
|
|
11
|
+
/** The registry as it stands, or `undefined` when no sheet registered. */
|
|
12
|
+
declare const snapshotStylesheets: () => Stylesheet | undefined;
|
|
13
|
+
//#endregion
|
|
14
|
+
export { collectStylesheets, hasStylesheets, registerStylesheet, resetStylesheets, snapshotStylesheets };
|
|
15
|
+
//# sourceMappingURL=stylesheets.d.ts.map
|
|
@@ -37,7 +37,9 @@ const collectStylesheets = () => {
|
|
|
37
37
|
};
|
|
38
38
|
/** True when a template registered no styles at all, so the render can skip the pass. */
|
|
39
39
|
const hasStylesheets = () => registry.length > 0;
|
|
40
|
+
/** The registry as it stands, or `undefined` when no sheet registered. */
|
|
41
|
+
const snapshotStylesheets = () => hasStylesheets() ? collectStylesheets() : void 0;
|
|
40
42
|
//#endregion
|
|
41
|
-
export { collectStylesheets, hasStylesheets, registerStylesheet, resetStylesheets };
|
|
43
|
+
export { collectStylesheets, hasStylesheets, registerStylesheet, resetStylesheets, snapshotStylesheets };
|
|
42
44
|
|
|
43
45
|
//# sourceMappingURL=stylesheets.js.map
|
package/dist/email/text.js
CHANGED
|
@@ -4,6 +4,14 @@ const PARAGRAPH = "\n\n";
|
|
|
4
4
|
const LINE = "\n";
|
|
5
5
|
const INVISIBLE = /\u200b|\u200c|\u200d|\u200e|\u200f|\u2060|\ufeff/g;
|
|
6
6
|
const isLayoutTable = (props) => props.role === "presentation" || props.role === "none";
|
|
7
|
+
/**
|
|
8
|
+
* A data-table cell that reads as nothing and holds only imagery with empty alt text carries no
|
|
9
|
+
* column of its own; an empty cell without such an image is a positional placeholder.
|
|
10
|
+
*/
|
|
11
|
+
const isDecorativeCell = (cell, context) => {
|
|
12
|
+
const images = collect(cell.children, (tag) => tag === "img", () => true);
|
|
13
|
+
return images.length > 0 && images.every((image) => image.props.alt === "") && childText(cell, context).trim() === "";
|
|
14
|
+
};
|
|
7
15
|
/** Wrap a block's content in separators; empty blocks contribute nothing. */
|
|
8
16
|
const block = (inner, separator) => {
|
|
9
17
|
const trimmed = inner.replace(/^\s+/, "").replace(/\s+$/, "");
|
|
@@ -64,7 +72,7 @@ const derive = (node, context) => {
|
|
|
64
72
|
}
|
|
65
73
|
case "table": {
|
|
66
74
|
if (isLayoutTable(node.props)) return childText(node, context);
|
|
67
|
-
const rows = collect(node.children, (tag) => tag === "tr", (tag) => TABLE_SECTIONS.has(tag)).map((row) => collect(row.children, (tag) => tag === "td" || tag === "th", () => false).map((cell) => childText(cell, context).replace(/\s+/g, " ").trim()).join(" | "));
|
|
75
|
+
const rows = collect(node.children, (tag) => tag === "tr", (tag) => TABLE_SECTIONS.has(tag)).map((row) => collect(row.children, (tag) => tag === "td" || tag === "th", () => false).filter((cell) => !isDecorativeCell(cell, context)).map((cell) => childText(cell, context).replace(/\s+/g, " ").trim()).join(" | "));
|
|
68
76
|
return block(rows.join(LINE), PARAGRAPH);
|
|
69
77
|
}
|
|
70
78
|
case "row": return block(collect(node.children, (tag) => tag === "td" || tag === "th", () => false).map((cell) => childText(cell, context).replace(/^\s+|\s+$/g, "")).filter((cell) => cell !== "").join(LINE), LINE);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PresetCategory } from "../
|
|
1
|
+
import { r as PresetCategory } from "../catalog-Ck1tAGwO.js";
|
|
2
2
|
import { TemplateCollectionId } from "./public-gallery.js";
|
|
3
3
|
//#region presets/category-mapping.d.ts
|
|
4
4
|
declare const LAB_DIMENSIONS: readonly ["newsletter", "receipt", "security", "product-update", "onboarding", "promotion", "shipping", "social-notification"];
|
package/dist/presets/corpus.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as
|
|
2
|
-
export { InspirationReference, OwnedEditablePreset, PublicCorpusRegistration, PublicCorpusRegistrationIssue, TemplateCorpusKind, TemplateCorpusRecord, TemplateFacetQuery, TemplateFacetSet, matchesTemplateFacets, registerPublicCorpusEntry, templateFacetOptions };
|
|
1
|
+
import { a as PublicCorpusRegistrationIssue, c as TemplateFacetQuery, d as matchesTemplateFacets, f as ownedPresetSourcePath, h as templateFacetOptions, i as PublicCorpusRegistration, l as TemplateFacetSet, m as registerPublicCorpusEntry, n as InspirationReference, o as TemplateCorpusKind, p as ownedShowcasePresetSources, r as OwnedEditablePreset, s as TemplateCorpusRecord, t as BrandRecreationPreset, u as brandRecreationProvenance } from "../corpus-U2EeALvS.js";
|
|
2
|
+
export { BrandRecreationPreset, InspirationReference, OwnedEditablePreset, PublicCorpusRegistration, PublicCorpusRegistrationIssue, TemplateCorpusKind, TemplateCorpusRecord, TemplateFacetQuery, TemplateFacetSet, brandRecreationProvenance, matchesTemplateFacets, ownedPresetSourcePath, ownedShowcasePresetSources, registerPublicCorpusEntry, templateFacetOptions };
|
package/dist/presets/corpus.js
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
import { presetCatalog } from "../presets.js";
|
|
2
|
+
import { showcaseProject, showcaseProjects, showcaseSourcePath } from "./showcase.js";
|
|
2
3
|
import { Result, Schema } from "effect";
|
|
3
4
|
//#region presets/corpus.ts
|
|
4
|
-
const TemplateCorpusKind = Schema.Literals([
|
|
5
|
+
const TemplateCorpusKind = Schema.Literals([
|
|
6
|
+
"owned-editable-sml",
|
|
7
|
+
"brand-recreation-sml",
|
|
8
|
+
"inspiration-reference"
|
|
9
|
+
]);
|
|
5
10
|
const templateFacetOptions = {
|
|
6
11
|
jobType: [
|
|
7
12
|
"account-access",
|
|
@@ -93,6 +98,41 @@ const OwnedEditablePreset = Schema.TaggedStruct("OwnedEditablePreset", {
|
|
|
93
98
|
retention: CorpusRetention,
|
|
94
99
|
takedown: CorpusTakedown
|
|
95
100
|
});
|
|
101
|
+
const BrandRecreationPreset = Schema.TaggedStruct("BrandRecreationPreset", {
|
|
102
|
+
corpusKind: Schema.Literal("brand-recreation-sml"),
|
|
103
|
+
provenance: Schema.Struct({
|
|
104
|
+
owner: Schema.Literal("Samva"),
|
|
105
|
+
sourcePath: Schema.String,
|
|
106
|
+
recordedAt: Schema.String,
|
|
107
|
+
/** The brand whose own email is recreated, named on every public surface. */
|
|
108
|
+
brand: Schema.String,
|
|
109
|
+
/** What that brand's email does, in the customer's words. */
|
|
110
|
+
subject: Schema.String,
|
|
111
|
+
reviewedNote: Schema.String
|
|
112
|
+
}),
|
|
113
|
+
review: CorpusReview,
|
|
114
|
+
display: CorpusDisplay,
|
|
115
|
+
retention: CorpusRetention,
|
|
116
|
+
takedown: CorpusTakedown
|
|
117
|
+
});
|
|
118
|
+
/** Clean-room recreations of a named brand's own email, authored as editable Samva projects. */
|
|
119
|
+
const brandRecreationProvenance = Object.fromEntries(showcaseProjects.flatMap((project) => project.provenance.kind === "brand-recreation" ? [[project.id, {
|
|
120
|
+
owner: "Samva",
|
|
121
|
+
sourcePath: showcaseSourcePath(project),
|
|
122
|
+
recordedAt: project.recordedAt,
|
|
123
|
+
brand: project.provenance.brand,
|
|
124
|
+
subject: project.provenance.subject,
|
|
125
|
+
reviewedNote: project.provenance.reviewedNote
|
|
126
|
+
}]] : []));
|
|
127
|
+
/**
|
|
128
|
+
* Owned presets authored as complete showcase projects with their own stylesheet and assets.
|
|
129
|
+
* Every other owned preset is the single module `packages/markup/presets/<id>.tsx`.
|
|
130
|
+
*/
|
|
131
|
+
const ownedShowcasePresetSources = Object.fromEntries(showcaseProjects.flatMap((project) => project.provenance.kind === "owned" ? [[project.id, showcaseSourcePath(project)]] : []));
|
|
132
|
+
const ownedPresetSourcePath = (id) => {
|
|
133
|
+
const project = showcaseProject(id);
|
|
134
|
+
return project === void 0 || project.provenance.kind !== "owned" ? `packages/markup/presets/${id}.tsx` : showcaseSourcePath(project);
|
|
135
|
+
};
|
|
96
136
|
const InspirationReference = Schema.TaggedStruct("InspirationReference", {
|
|
97
137
|
corpusKind: Schema.Literal("inspiration-reference"),
|
|
98
138
|
provenance: Schema.Struct({
|
|
@@ -106,7 +146,11 @@ const InspirationReference = Schema.TaggedStruct("InspirationReference", {
|
|
|
106
146
|
retention: CorpusRetention,
|
|
107
147
|
takedown: CorpusTakedown
|
|
108
148
|
});
|
|
109
|
-
const TemplateCorpusRecord = Schema.Union([
|
|
149
|
+
const TemplateCorpusRecord = Schema.Union([
|
|
150
|
+
OwnedEditablePreset,
|
|
151
|
+
BrandRecreationPreset,
|
|
152
|
+
InspirationReference
|
|
153
|
+
]);
|
|
110
154
|
const ISO_TIMESTAMP = /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d{3})?Z$/;
|
|
111
155
|
const nonEmpty = (value) => value.trim().length > 0;
|
|
112
156
|
const isHttpsUrl = (value) => {
|
|
@@ -122,7 +166,7 @@ const requiredFacetDimensions = [
|
|
|
122
166
|
"design",
|
|
123
167
|
"brandProvenance"
|
|
124
168
|
];
|
|
125
|
-
const canonicalOwnedPresetSources = new Map(presetCatalog.filter((preset) => preset.channel === "email").map((preset) => [preset.id,
|
|
169
|
+
const canonicalOwnedPresetSources = new Map(presetCatalog.filter((preset) => preset.channel === "email" && !Object.hasOwn(brandRecreationProvenance, preset.id)).map((preset) => [preset.id, ownedPresetSourcePath(preset.id)]));
|
|
126
170
|
/** Decode and gate a record before it can enter any public projection. */
|
|
127
171
|
const registerPublicCorpusEntry = (input) => {
|
|
128
172
|
const decoded = Schema.decodeUnknownResult(Schema.Struct({
|
|
@@ -148,6 +192,13 @@ const registerPublicCorpusEntry = (input) => {
|
|
|
148
192
|
id,
|
|
149
193
|
message: "owned presets require a canonical editable TSX source"
|
|
150
194
|
});
|
|
195
|
+
if (corpus._tag === "BrandRecreationPreset") {
|
|
196
|
+
const canonical = Object.entries(brandRecreationProvenance).find(([presetId]) => presetId === id)?.[1];
|
|
197
|
+
if (canonical === void 0 || Object.entries(canonical).some(([key, value]) => corpus.provenance[key] !== value) || !nonEmpty(corpus.provenance.brand) || !nonEmpty(corpus.provenance.subject) || corpus.retention.policy !== "retain-until-withdrawn" || facets.brandProvenance.some((value) => value !== "third-party-reference")) return Result.fail({
|
|
198
|
+
id,
|
|
199
|
+
message: "brand recreations require a canonical source, a referenced brand and subject, and third-party provenance"
|
|
200
|
+
});
|
|
201
|
+
}
|
|
151
202
|
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
203
|
id,
|
|
153
204
|
message: "inspiration references require an HTTPS source and third-party provenance facet"
|
|
@@ -181,6 +232,6 @@ const matchesTemplateFacets = (facets, query) => requiredFacetDimensions.every((
|
|
|
181
232
|
return selected === void 0 || selected.every((value) => available.has(value));
|
|
182
233
|
});
|
|
183
234
|
//#endregion
|
|
184
|
-
export { InspirationReference, OwnedEditablePreset, TemplateCorpusKind, TemplateCorpusRecord, TemplateFacetQuery, TemplateFacetSet, matchesTemplateFacets, registerPublicCorpusEntry, templateFacetOptions };
|
|
235
|
+
export { BrandRecreationPreset, InspirationReference, OwnedEditablePreset, TemplateCorpusKind, TemplateCorpusRecord, TemplateFacetQuery, TemplateFacetSet, brandRecreationProvenance, matchesTemplateFacets, ownedPresetSourcePath, ownedShowcasePresetSources, registerPublicCorpusEntry, templateFacetOptions };
|
|
185
236
|
|
|
186
237
|
//# sourceMappingURL=corpus.js.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { EmailPresetId } from "../
|
|
2
|
-
import { c as TemplateFacetSet,
|
|
1
|
+
import { t as EmailPresetId } from "../catalog-Ck1tAGwO.js";
|
|
2
|
+
import { c as TemplateFacetQuery, l as TemplateFacetSet, r as OwnedEditablePreset, t as BrandRecreationPreset } from "../corpus-U2EeALvS.js";
|
|
3
3
|
//#region presets/public-gallery.d.ts
|
|
4
4
|
declare const templateUseCases: readonly ["account-access", "commerce", "product-communication", "lifecycle", "publishing-campaigns"];
|
|
5
5
|
declare const templateCollectionFamilies: readonly ["category", "industry", "stage", "style"];
|
|
@@ -12,8 +12,8 @@ interface PublicTemplate {
|
|
|
12
12
|
readonly useCase: TemplateUseCase;
|
|
13
13
|
readonly collections: ReadonlyArray<TemplateCollectionId>;
|
|
14
14
|
readonly relatedTemplates: ReadonlyArray<EmailPresetId>;
|
|
15
|
-
/**
|
|
16
|
-
readonly corpus: OwnedEditablePreset;
|
|
15
|
+
/** Editable SML authored by Samva, either an original or a named-brand recreation. */
|
|
16
|
+
readonly corpus: OwnedEditablePreset | BrandRecreationPreset;
|
|
17
17
|
readonly facets: TemplateFacetSet;
|
|
18
18
|
}
|
|
19
19
|
declare const isMadeWithSamvaTemplate: (template: Pick<PublicTemplate, "corpus">) => boolean;
|
|
@@ -29,242 +29,236 @@ type TemplateCollectionId = "category:transactional" | "category:lifecycle" | "c
|
|
|
29
29
|
/** Explicit evidence for every owned preset reviewed in the 2026-08-31 catalog pass. */
|
|
30
30
|
declare const ownedPresetReviewManifest: {
|
|
31
31
|
readonly welcome: {
|
|
32
|
-
readonly sourcePath: "
|
|
32
|
+
readonly sourcePath: "examples/email-showcase/emails/welcome.tsx";
|
|
33
33
|
readonly reviewedBy: "Samva catalog review";
|
|
34
|
-
readonly reviewedAt: "2026-
|
|
35
|
-
readonly notes: "Reviewed welcome editable
|
|
34
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
35
|
+
readonly notes: "Reviewed welcome editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
36
36
|
};
|
|
37
37
|
readonly "email-verification": {
|
|
38
|
-
readonly sourcePath: "
|
|
38
|
+
readonly sourcePath: "examples/email-showcase/emails/email-verification.tsx";
|
|
39
39
|
readonly reviewedBy: "Samva catalog review";
|
|
40
|
-
readonly reviewedAt: "2026-
|
|
41
|
-
readonly notes: "Reviewed email-verification editable
|
|
40
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
41
|
+
readonly notes: "Reviewed email-verification editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
42
42
|
};
|
|
43
43
|
readonly otp: {
|
|
44
|
-
readonly sourcePath: "
|
|
44
|
+
readonly sourcePath: "examples/email-showcase/emails/otp.tsx";
|
|
45
45
|
readonly reviewedBy: "Samva catalog review";
|
|
46
|
-
readonly reviewedAt: "2026-
|
|
47
|
-
readonly notes: "Reviewed otp editable
|
|
46
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
47
|
+
readonly notes: "Reviewed otp editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
48
48
|
};
|
|
49
49
|
readonly "password-reset": {
|
|
50
|
-
readonly sourcePath: "
|
|
50
|
+
readonly sourcePath: "examples/email-showcase/emails/password-reset.tsx";
|
|
51
51
|
readonly reviewedBy: "Samva catalog review";
|
|
52
|
-
readonly reviewedAt: "2026-
|
|
53
|
-
readonly notes: "Reviewed password-reset editable
|
|
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.";
|
|
52
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
53
|
+
readonly notes: "Reviewed password-reset editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
60
54
|
};
|
|
61
55
|
readonly "payment-failed": {
|
|
62
|
-
readonly sourcePath: "
|
|
56
|
+
readonly sourcePath: "examples/email-showcase/emails/payment-failed.tsx";
|
|
63
57
|
readonly reviewedBy: "Samva catalog review";
|
|
64
|
-
readonly reviewedAt: "2026-
|
|
65
|
-
readonly notes: "Reviewed payment-failed editable
|
|
58
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
59
|
+
readonly notes: "Reviewed payment-failed editable project with stylesheet and original Fernhollow assets, public preview data, and gallery identity.";
|
|
66
60
|
};
|
|
67
61
|
readonly "shipping-update": {
|
|
68
|
-
readonly sourcePath: "
|
|
62
|
+
readonly sourcePath: "examples/email-showcase/emails/shipping-update.tsx";
|
|
69
63
|
readonly reviewedBy: "Samva catalog review";
|
|
70
|
-
readonly reviewedAt: "2026-
|
|
71
|
-
readonly notes: "Reviewed shipping-update editable
|
|
64
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
65
|
+
readonly notes: "Reviewed shipping-update editable project with stylesheet and original Fernhollow assets, public preview data, and gallery identity.";
|
|
72
66
|
};
|
|
73
67
|
readonly notification: {
|
|
74
|
-
readonly sourcePath: "
|
|
68
|
+
readonly sourcePath: "examples/email-showcase/emails/notification.tsx";
|
|
75
69
|
readonly reviewedBy: "Samva catalog review";
|
|
76
|
-
readonly reviewedAt: "2026-
|
|
77
|
-
readonly notes: "Reviewed notification editable
|
|
70
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
71
|
+
readonly notes: "Reviewed notification editable project with stylesheet and original Meridian assets, public preview data, and gallery identity.";
|
|
78
72
|
};
|
|
79
73
|
readonly "team-invite": {
|
|
80
|
-
readonly sourcePath: "
|
|
74
|
+
readonly sourcePath: "examples/email-showcase/emails/team-invite.tsx";
|
|
81
75
|
readonly reviewedBy: "Samva catalog review";
|
|
82
|
-
readonly reviewedAt: "2026-
|
|
83
|
-
readonly notes: "Reviewed team-invite editable
|
|
76
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
77
|
+
readonly notes: "Reviewed team-invite editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
84
78
|
};
|
|
85
|
-
readonly "product-
|
|
86
|
-
readonly sourcePath: "
|
|
79
|
+
readonly "product-newsletter": {
|
|
80
|
+
readonly sourcePath: "examples/email-showcase/emails/product-newsletter.tsx";
|
|
87
81
|
readonly reviewedBy: "Samva catalog review";
|
|
88
|
-
readonly reviewedAt: "2026-
|
|
89
|
-
readonly notes: "Reviewed product-
|
|
82
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
83
|
+
readonly notes: "Reviewed product-newsletter editable SML project, authored assets, public preview data, and gallery identity.";
|
|
90
84
|
};
|
|
91
|
-
readonly
|
|
92
|
-
readonly sourcePath: "
|
|
85
|
+
readonly "product-digest": {
|
|
86
|
+
readonly sourcePath: "examples/email-showcase/emails/product-digest.tsx";
|
|
93
87
|
readonly reviewedBy: "Samva catalog review";
|
|
94
|
-
readonly reviewedAt: "2026-
|
|
95
|
-
readonly notes: "Reviewed
|
|
88
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
89
|
+
readonly notes: "Reviewed product-digest editable SML project, authored assets, public preview data, and gallery identity.";
|
|
96
90
|
};
|
|
97
91
|
readonly announcement: {
|
|
98
|
-
readonly sourcePath: "
|
|
92
|
+
readonly sourcePath: "examples/email-showcase/emails/announcement.tsx";
|
|
99
93
|
readonly reviewedBy: "Samva catalog review";
|
|
100
|
-
readonly reviewedAt: "2026-
|
|
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.";
|
|
94
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
95
|
+
readonly notes: "Reviewed announcement editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
108
96
|
};
|
|
109
97
|
readonly "event-invite": {
|
|
110
|
-
readonly sourcePath: "
|
|
98
|
+
readonly sourcePath: "examples/email-showcase/emails/event-invite.tsx";
|
|
111
99
|
readonly reviewedBy: "Samva catalog review";
|
|
112
|
-
readonly reviewedAt: "2026-
|
|
113
|
-
readonly notes: "Reviewed event-invite editable SML, public preview data, and gallery identity.";
|
|
100
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
101
|
+
readonly notes: "Reviewed event-invite editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
114
102
|
};
|
|
115
103
|
readonly "membership-promo": {
|
|
116
|
-
readonly sourcePath: "
|
|
104
|
+
readonly sourcePath: "examples/email-showcase/emails/membership-promo.tsx";
|
|
117
105
|
readonly reviewedBy: "Samva catalog review";
|
|
118
|
-
readonly reviewedAt: "2026-
|
|
119
|
-
readonly notes: "Reviewed membership-promo editable SML, public preview data, and gallery identity.";
|
|
106
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
107
|
+
readonly notes: "Reviewed membership-promo editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
120
108
|
};
|
|
121
109
|
readonly "onboarding-step": {
|
|
122
|
-
readonly sourcePath: "
|
|
110
|
+
readonly sourcePath: "examples/email-showcase/emails/onboarding-step.tsx";
|
|
123
111
|
readonly reviewedBy: "Samva catalog review";
|
|
124
|
-
readonly reviewedAt: "2026-
|
|
125
|
-
readonly notes: "Reviewed onboarding-step editable
|
|
112
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
113
|
+
readonly notes: "Reviewed onboarding-step editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
126
114
|
};
|
|
127
115
|
readonly "trial-ending": {
|
|
128
|
-
readonly sourcePath: "
|
|
116
|
+
readonly sourcePath: "examples/email-showcase/emails/trial-ending.tsx";
|
|
129
117
|
readonly reviewedBy: "Samva catalog review";
|
|
130
|
-
readonly reviewedAt: "2026-
|
|
131
|
-
readonly notes: "Reviewed trial-ending editable
|
|
118
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
119
|
+
readonly notes: "Reviewed trial-ending editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
132
120
|
};
|
|
133
121
|
readonly "win-back": {
|
|
134
|
-
readonly sourcePath: "
|
|
122
|
+
readonly sourcePath: "examples/email-showcase/emails/win-back.tsx";
|
|
135
123
|
readonly reviewedBy: "Samva catalog review";
|
|
136
|
-
readonly reviewedAt: "2026-
|
|
137
|
-
readonly notes: "Reviewed win-back editable
|
|
124
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
125
|
+
readonly notes: "Reviewed win-back editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
138
126
|
};
|
|
139
127
|
readonly "feedback-request": {
|
|
140
|
-
readonly sourcePath: "
|
|
128
|
+
readonly sourcePath: "examples/email-showcase/emails/feedback-request.tsx";
|
|
141
129
|
readonly reviewedBy: "Samva catalog review";
|
|
142
|
-
readonly reviewedAt: "2026-
|
|
143
|
-
readonly notes: "Reviewed feedback-request editable
|
|
130
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
131
|
+
readonly notes: "Reviewed feedback-request editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
144
132
|
};
|
|
145
133
|
readonly "editorial-newsletter": {
|
|
146
|
-
readonly sourcePath: "
|
|
134
|
+
readonly sourcePath: "examples/email-showcase/emails/editorial-newsletter.tsx";
|
|
147
135
|
readonly reviewedBy: "Samva catalog review";
|
|
148
|
-
readonly reviewedAt: "2026-
|
|
149
|
-
readonly notes: "Reviewed editorial-newsletter editable SML, public preview data, and gallery identity.";
|
|
136
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
137
|
+
readonly notes: "Reviewed editorial-newsletter editable SML project, authored assets, public preview data, and gallery identity.";
|
|
150
138
|
};
|
|
151
139
|
readonly "member-referral-offer": {
|
|
152
|
-
readonly sourcePath: "
|
|
140
|
+
readonly sourcePath: "examples/email-showcase/emails/member-referral-offer.tsx";
|
|
153
141
|
readonly reviewedBy: "Samva catalog review";
|
|
154
|
-
readonly reviewedAt: "2026-
|
|
155
|
-
readonly notes: "Reviewed member-referral-offer editable SML, public preview data, and gallery identity.";
|
|
142
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
143
|
+
readonly notes: "Reviewed member-referral-offer editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
156
144
|
};
|
|
157
145
|
readonly "catalog-sale-newsletter": {
|
|
158
|
-
readonly sourcePath: "
|
|
146
|
+
readonly sourcePath: "examples/email-showcase/emails/catalog-sale-newsletter.tsx";
|
|
159
147
|
readonly reviewedBy: "Samva catalog review";
|
|
160
|
-
readonly reviewedAt: "2026-
|
|
161
|
-
readonly notes: "Reviewed catalog-sale-newsletter editable SML, public preview data, and gallery identity.";
|
|
148
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
149
|
+
readonly notes: "Reviewed catalog-sale-newsletter editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
162
150
|
};
|
|
163
151
|
readonly "limited-time-savings": {
|
|
164
|
-
readonly sourcePath: "
|
|
152
|
+
readonly sourcePath: "examples/email-showcase/emails/limited-time-savings.tsx";
|
|
165
153
|
readonly reviewedBy: "Samva catalog review";
|
|
166
|
-
readonly reviewedAt: "2026-
|
|
167
|
-
readonly notes: "Reviewed limited-time-savings editable SML, public preview data, and gallery identity.";
|
|
154
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
155
|
+
readonly notes: "Reviewed limited-time-savings editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
168
156
|
};
|
|
169
157
|
readonly "rewards-milestone": {
|
|
170
|
-
readonly sourcePath: "
|
|
158
|
+
readonly sourcePath: "examples/email-showcase/emails/rewards-milestone.tsx";
|
|
171
159
|
readonly reviewedBy: "Samva catalog review";
|
|
172
|
-
readonly reviewedAt: "2026-
|
|
173
|
-
readonly notes: "Reviewed rewards-milestone editable SML, public preview data, and gallery identity.";
|
|
160
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
161
|
+
readonly notes: "Reviewed rewards-milestone editable SML project, original Northwick assets, public preview data, and gallery identity.";
|
|
174
162
|
};
|
|
175
|
-
readonly "order-
|
|
176
|
-
readonly sourcePath: "
|
|
163
|
+
readonly "order-receipt": {
|
|
164
|
+
readonly sourcePath: "examples/email-showcase/emails/order-receipt.tsx";
|
|
177
165
|
readonly reviewedBy: "Samva catalog review";
|
|
178
|
-
readonly reviewedAt: "2026-
|
|
179
|
-
readonly notes: "Reviewed order-
|
|
166
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
167
|
+
readonly notes: "Reviewed order-receipt editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
180
168
|
};
|
|
181
169
|
readonly "travel-rewards-promo": {
|
|
182
|
-
readonly sourcePath: "
|
|
170
|
+
readonly sourcePath: "examples/email-showcase/emails/travel-rewards-promo.tsx";
|
|
183
171
|
readonly reviewedBy: "Samva catalog review";
|
|
184
|
-
readonly reviewedAt: "2026-
|
|
185
|
-
readonly notes: "Reviewed travel-rewards-promo editable
|
|
172
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
173
|
+
readonly notes: "Reviewed travel-rewards-promo editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity.";
|
|
186
174
|
};
|
|
187
175
|
readonly "events-roundup": {
|
|
188
|
-
readonly sourcePath: "
|
|
176
|
+
readonly sourcePath: "examples/email-showcase/emails/events-roundup.tsx";
|
|
189
177
|
readonly reviewedBy: "Samva catalog review";
|
|
190
|
-
readonly reviewedAt: "2026-
|
|
191
|
-
readonly notes: "Reviewed events-roundup editable SML, public preview data, and gallery identity.";
|
|
178
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
179
|
+
readonly notes: "Reviewed events-roundup editable SML project, authored assets, public preview data, and gallery identity.";
|
|
192
180
|
};
|
|
193
181
|
readonly "product-onboarding-tour": {
|
|
194
|
-
readonly sourcePath: "
|
|
182
|
+
readonly sourcePath: "examples/email-showcase/emails/product-onboarding-tour.tsx";
|
|
195
183
|
readonly reviewedBy: "Samva catalog review";
|
|
196
|
-
readonly reviewedAt: "2026-
|
|
197
|
-
readonly notes: "Reviewed product-onboarding-tour editable
|
|
184
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
185
|
+
readonly notes: "Reviewed product-onboarding-tour editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
198
186
|
};
|
|
199
187
|
readonly "product-updates-roundup": {
|
|
200
|
-
readonly sourcePath: "
|
|
188
|
+
readonly sourcePath: "examples/email-showcase/emails/product-updates-roundup.tsx";
|
|
201
189
|
readonly reviewedBy: "Samva catalog review";
|
|
202
|
-
readonly reviewedAt: "2026-
|
|
203
|
-
readonly notes: "Reviewed product-updates-roundup editable
|
|
190
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
191
|
+
readonly notes: "Reviewed product-updates-roundup editable project with stylesheet and original Basalt assets, public preview data, and gallery identity.";
|
|
204
192
|
};
|
|
205
193
|
readonly "flash-getaway-offer": {
|
|
206
|
-
readonly sourcePath: "
|
|
194
|
+
readonly sourcePath: "examples/email-showcase/emails/flash-getaway-offer.tsx";
|
|
207
195
|
readonly reviewedBy: "Samva catalog review";
|
|
208
|
-
readonly reviewedAt: "2026-
|
|
209
|
-
readonly notes: "Reviewed flash-getaway-offer editable
|
|
196
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
197
|
+
readonly notes: "Reviewed flash-getaway-offer editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity.";
|
|
210
198
|
};
|
|
211
199
|
readonly "membership-benefits-promo": {
|
|
212
|
-
readonly sourcePath: "
|
|
200
|
+
readonly sourcePath: "examples/email-showcase/emails/membership-benefits-promo.tsx";
|
|
213
201
|
readonly reviewedBy: "Samva catalog review";
|
|
214
|
-
readonly reviewedAt: "2026-
|
|
215
|
-
readonly notes: "Reviewed membership-benefits-promo editable
|
|
202
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
203
|
+
readonly notes: "Reviewed membership-benefits-promo editable project with stylesheet and original Wayfare assets, public preview data, and gallery identity.";
|
|
216
204
|
};
|
|
217
205
|
readonly "industry-news-digest": {
|
|
218
|
-
readonly sourcePath: "
|
|
206
|
+
readonly sourcePath: "examples/email-showcase/emails/industry-news-digest.tsx";
|
|
219
207
|
readonly reviewedBy: "Samva catalog review";
|
|
220
|
-
readonly reviewedAt: "2026-
|
|
221
|
-
readonly notes: "Reviewed industry-news-digest editable SML, public preview data, and gallery identity.";
|
|
208
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
209
|
+
readonly notes: "Reviewed industry-news-digest editable SML project, authored assets, public preview data, and gallery identity.";
|
|
222
210
|
};
|
|
223
211
|
readonly "weekly-deals-circular": {
|
|
224
|
-
readonly sourcePath: "
|
|
212
|
+
readonly sourcePath: "examples/email-showcase/emails/weekly-deals-circular.tsx";
|
|
225
213
|
readonly reviewedBy: "Samva catalog review";
|
|
226
|
-
readonly reviewedAt: "2026-
|
|
227
|
-
readonly notes: "Reviewed weekly-deals-circular editable
|
|
214
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
215
|
+
readonly notes: "Reviewed weekly-deals-circular editable project with stylesheet and original Oakline assets, public preview data, and gallery identity.";
|
|
228
216
|
};
|
|
229
217
|
readonly "data-sharing-review": {
|
|
230
|
-
readonly sourcePath: "
|
|
218
|
+
readonly sourcePath: "examples/email-showcase/emails/data-sharing-review.tsx";
|
|
231
219
|
readonly reviewedBy: "Samva catalog review";
|
|
232
|
-
readonly reviewedAt: "2026-
|
|
233
|
-
readonly notes: "Reviewed data-sharing-review editable
|
|
220
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
221
|
+
readonly notes: "Reviewed data-sharing-review editable project with stylesheet and original Northloop assets, public preview data, and gallery identity.";
|
|
234
222
|
};
|
|
235
223
|
readonly "seasonal-sale-flyer": {
|
|
236
|
-
readonly sourcePath: "
|
|
224
|
+
readonly sourcePath: "examples/email-showcase/emails/seasonal-sale-flyer.tsx";
|
|
237
225
|
readonly reviewedBy: "Samva catalog review";
|
|
238
|
-
readonly reviewedAt: "2026-
|
|
239
|
-
readonly notes: "Reviewed seasonal-sale-flyer editable
|
|
226
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
227
|
+
readonly notes: "Reviewed seasonal-sale-flyer editable project with stylesheet and original Oakline assets, public preview data, and gallery identity.";
|
|
240
228
|
};
|
|
241
229
|
readonly "setup-checklist": {
|
|
242
|
-
readonly sourcePath: "
|
|
230
|
+
readonly sourcePath: "examples/email-showcase/emails/setup-checklist.tsx";
|
|
243
231
|
readonly reviewedBy: "Samva catalog review";
|
|
244
|
-
readonly reviewedAt: "2026-
|
|
245
|
-
readonly notes: "Reviewed setup-checklist editable
|
|
232
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
233
|
+
readonly notes: "Reviewed setup-checklist editable project with stylesheet and original assets, public preview data, and gallery identity.";
|
|
246
234
|
};
|
|
247
235
|
readonly "feature-release-roundup": {
|
|
248
|
-
readonly sourcePath: "
|
|
236
|
+
readonly sourcePath: "examples/email-showcase/emails/feature-release-roundup.tsx";
|
|
249
237
|
readonly reviewedBy: "Samva catalog review";
|
|
250
|
-
readonly reviewedAt: "2026-
|
|
251
|
-
readonly notes: "Reviewed feature-release-roundup editable
|
|
238
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
239
|
+
readonly notes: "Reviewed feature-release-roundup editable project with stylesheet and original Basalt assets, public preview data, and gallery identity.";
|
|
252
240
|
};
|
|
253
241
|
readonly "season-clearance-promo": {
|
|
254
|
-
readonly sourcePath: "
|
|
242
|
+
readonly sourcePath: "examples/email-showcase/emails/season-clearance-promo.tsx";
|
|
243
|
+
readonly reviewedBy: "Samva catalog review";
|
|
244
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
245
|
+
readonly notes: "Reviewed season-clearance-promo editable project with stylesheet and original Oakline assets, public preview data, and gallery identity.";
|
|
246
|
+
};
|
|
247
|
+
readonly "product-launch-promo": {
|
|
248
|
+
readonly sourcePath: "examples/email-showcase/emails/product-launch-promo.tsx";
|
|
255
249
|
readonly reviewedBy: "Samva catalog review";
|
|
256
|
-
readonly reviewedAt: "2026-
|
|
257
|
-
readonly notes: "Reviewed
|
|
250
|
+
readonly reviewedAt: "2026-09-08T00:00:00.000Z";
|
|
251
|
+
readonly notes: "Reviewed product-launch-promo editable project, original Oakline assets, public preview data, and gallery identity.";
|
|
258
252
|
};
|
|
259
253
|
};
|
|
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];
|
|
254
|
+
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, PublicTemplate];
|
|
261
255
|
/** Deterministic strict-intersection search over the canonical public corpus order. */
|
|
262
256
|
declare const filterPublicTemplatesByFacets: (query: TemplateFacetQuery) => ReadonlyArray<PublicTemplate>;
|
|
263
257
|
declare const templateCollections: readonly [TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection];
|
|
264
258
|
declare const publicTemplateGallery: {
|
|
265
259
|
readonly hubPath: "/templates";
|
|
266
260
|
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];
|
|
261
|
+
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, PublicTemplate];
|
|
268
262
|
readonly collections: readonly [TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection, TemplateCollection];
|
|
269
263
|
};
|
|
270
264
|
//#endregion
|