@samva/markup 0.3.0 → 0.5.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/AGENTS.md +17 -0
- package/dist/{ast-63I-VLQx.d.ts → ast-BLybiDxp.d.ts} +34 -60
- package/dist/ast.d.ts +2 -2
- package/dist/ast.js +4 -52
- package/dist/catalog-Db0UcCTg.d.ts +356 -0
- package/dist/{checks-DXuERO4B.js → checks-CmmITP6j.js} +14 -14
- package/dist/checks.d.ts +1 -1
- package/dist/checks.js +1 -1
- package/dist/classes.d.ts +1 -1
- package/dist/compile-sms.d.ts +3 -3
- package/dist/compile-whatsapp.d.ts +5 -5
- package/dist/compile-whatsapp.js +3 -3
- package/dist/compile.d.ts +5 -5
- package/dist/compile.js +5 -5
- package/dist/compiler.d.ts +4 -4
- package/dist/compiler.js +6 -6
- package/dist/components.d.ts +4 -4
- package/dist/conditionals.js +3 -3
- package/dist/corpus-CM7rKX41.d.ts +106 -0
- package/dist/{css-ar2lU3NC.d.ts → css-DoNc7CiC.d.ts} +4 -5
- package/dist/diagnostics-CqepLcpI.d.ts +47 -0
- package/dist/diagnostics-eFM9A_TU.d.ts +46 -0
- package/dist/diagnostics.d.ts +2 -2
- package/dist/diagnostics.js +15 -29
- package/dist/{elements-DtwKlFVH.d.ts → elements-ChJULZlh.d.ts} +40 -161
- package/dist/email/components.d.ts +1 -1
- package/dist/email/diagnostics.d.ts +1 -1
- package/dist/email/diagnostics.js +8 -43
- package/dist/email/elements.d.ts +1 -1
- package/dist/email/html.d.ts +2 -2
- package/dist/email/html.js +9 -9
- package/dist/email/jsx-dev-runtime.d.ts +3 -21
- package/dist/email/jsx-runtime.d.ts +1 -1
- package/dist/email/jsx-runtime.js +29 -3
- package/dist/email/render.d.ts +4 -4
- package/dist/email/render.js +1 -1
- package/dist/email/selection.d.ts +20 -31
- package/dist/email/selection.js +1 -53
- package/dist/email/source-edit.d.ts +1 -1
- package/dist/email/source-edit.js +2 -2
- package/dist/email/stylesheets.d.ts +1 -1
- package/dist/email/text.d.ts +1 -1
- package/dist/email/text.js +3 -3
- package/dist/emit.d.ts +2 -2
- package/dist/emit.js +5 -5
- package/dist/guards-eV1qLbf2.js +9 -0
- package/dist/{input-schema-BIfzI63B.d.ts → input-schema-7dPFVvNE.d.ts} +2 -2
- package/dist/input-schema-zjkgrXn2.js +455 -0
- package/dist/input-schema.d.ts +1 -1
- package/dist/input-schema.js +1 -169
- package/dist/interpolate.d.ts +9 -12
- package/dist/interpolate.js +1 -19
- package/dist/jsx-dev-runtime.d.ts +2 -2
- package/dist/{jsx-runtime-C5k_Zq0A.d.ts → jsx-runtime-BI4gI19E.d.ts} +3 -3
- package/dist/jsx-runtime.d.ts +1 -1
- package/dist/jsx-runtime.js +3 -3
- package/dist/model.d.ts +18 -33
- package/dist/model.js +4 -17
- package/dist/ops.d.ts +78 -172
- package/dist/ops.js +51 -117
- package/dist/{parser-CGBS73Gz.d.ts → parser-b_Kp5MT6.d.ts} +5 -5
- package/dist/parser.d.ts +1 -1
- package/dist/parser.js +8 -8
- package/dist/{predicate-G2SeSvoN.d.ts → predicate-Bmvgw7Ao.d.ts} +4 -4
- package/dist/{predicate-CvkzT-a2.js → predicate-DwXzmqIY.js} +11 -11
- package/dist/predicate.d.ts +1 -1
- package/dist/predicate.js +1 -1
- package/dist/presets/category-mapping.d.ts +1 -1
- package/dist/presets/corpus.d.ts +1 -1
- package/dist/presets/corpus.js +87 -140
- package/dist/presets/public-gallery.d.ts +106 -130
- package/dist/presets/public-gallery.js +131 -209
- package/dist/presets/public-handoff.d.ts +4 -4
- package/dist/presets/public-handoff.js +13 -11
- package/dist/presets/public-preview-artifacts.d.ts +5 -5
- package/dist/presets/public-preview-artifacts.js +9 -9
- package/dist/presets/public-preview.d.ts +0 -4
- package/dist/presets/public-preview.js +37 -362
- package/dist/presets/showcase.d.ts +2 -0
- package/dist/presets/showcase.js +627 -0
- package/dist/presets/sources.d.ts +1 -1
- package/dist/presets/sources.js +5767 -2023
- package/dist/presets.d.ts +2 -384
- package/dist/presets.js +299 -765
- package/dist/printer.d.ts +1 -1
- package/dist/{render-ykQhtMs_.js → render-T6IFPnP4.js} +12 -12
- package/dist/render-template.d.ts +7 -7
- package/dist/render-template.js +6 -6
- package/dist/showcase-dvJMn-Lo.d.ts +456 -0
- package/dist/{source-locations-BCJQnIfU.d.ts → source-locations-D6Te6Gy1.d.ts} +4 -26
- package/dist/source-locations.d.ts +2 -2
- package/dist/source-locations.js +3 -26
- package/dist/{template-Dy5yOPyp.d.ts → template-G-QPcfmn.d.ts} +4 -4
- package/dist/template.d.ts +1 -1
- package/dist/template.js +3 -3
- package/dist/theme-css.d.ts +3 -3
- package/dist/theme-css.js +3 -3
- package/dist/tsx-source-instrumentation.d.ts +1 -3
- package/dist/tsx-source-instrumentation.js +6 -6
- package/dist/tsx-tracer.d.ts +7 -11
- package/dist/tsx-tracer.js +164 -164
- package/dist/{variables-if1VrV34.d.ts → variables-BnKs1iqb.d.ts} +2 -2
- package/dist/variables.d.ts +1 -1
- package/dist/variables.js +4 -4
- package/package.json +8 -3
- package/dist/corpus-qrUD5O6r.d.ts +0 -254
- package/dist/diagnostics-Djd9ckLg.d.ts +0 -90
- package/dist/diagnostics-oveE-laV.d.ts +0 -79
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { PresetCategory } from "../
|
|
1
|
+
import { l as Channel } from "../ast-BLybiDxp.js";
|
|
2
|
+
import { r as PresetCategory } from "../catalog-Db0UcCTg.js";
|
|
3
3
|
import { TemplateCollectionId, TemplateUseCase } from "./public-gallery.js";
|
|
4
4
|
import { PublicTemplatePreview } from "./public-preview.js";
|
|
5
5
|
import { PresetProject } from "./sources.js";
|
|
6
|
-
import { Result } from "
|
|
6
|
+
import { Result } from "better-result";
|
|
7
7
|
//#region presets/public-handoff.d.ts
|
|
8
8
|
/** The brand a clean-room recreation names, and what its email does. */
|
|
9
9
|
interface TemplateBrandRecreation {
|
|
@@ -158,7 +158,7 @@ declare const emitTemplateReferencePacket: (packet: TemplateReferencePacket) =>
|
|
|
158
158
|
* the existing preset, public-gallery, preview, and editorial contracts; this
|
|
159
159
|
* function never registers or publishes it.
|
|
160
160
|
*/
|
|
161
|
-
declare const validatePublicTemplateHandoff: (artifacts: ReadonlyArray<ApprovedPublicTemplateArtifact>) => Result
|
|
161
|
+
declare const validatePublicTemplateHandoff: (artifacts: ReadonlyArray<ApprovedPublicTemplateArtifact>) => Result<ReadonlyArray<ValidatedPublicTemplateArtifact>, ReadonlyArray<PublicHandoffIssue>>;
|
|
162
162
|
//#endregion
|
|
163
163
|
export { ApprovedPublicTemplateArtifact, PUBLIC_TEMPLATE_PROJECT_FILE_MAX_BYTES, PUBLIC_TEMPLATE_PROJECT_MAX_BYTES, PUBLIC_TEMPLATE_PROJECT_MAX_FILES, PUBLIC_TEMPLATE_SOURCE_MAX_CHARACTERS, PublicHandoffIssue, PublicHandoffIssueCode, PublicTemplateAuthoredStructure, TemplateBrandRecreation, TemplateReferencePacket, TemplateReferenceProjection, TemplateReferenceProvenance, ValidatedPublicTemplateArtifact, emitTemplateReferencePacket, isSafePublicTemplateAsset, isSafePublicTemplateProject, isSafePublicTemplateProjectPath, isValidTemplateBrandRecreation, publicTemplateAuthoredStructure, publicTemplateProjectDigest, toTemplateReferencePacket, unsupportedPublicTemplateFontTokens, validatePublicTemplateHandoff };
|
|
164
164
|
//# sourceMappingURL=public-handoff.d.ts.map
|
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { n as isObject } from "../guards-eV1qLbf2.js";
|
|
1
2
|
import { EMAIL_ELEMENTS } from "../email/elements.js";
|
|
2
3
|
import { presetCatalog } from "../presets.js";
|
|
3
4
|
import { publicTemplates, templateCollections } from "./public-gallery.js";
|
|
4
|
-
import {
|
|
5
|
+
import { Result } from "better-result";
|
|
5
6
|
import { parse } from "@babel/parser";
|
|
6
7
|
//#region presets/public-handoff.ts
|
|
7
8
|
const SLUG = /^[a-z0-9]+(?:-[a-z0-9]+)*$/;
|
|
@@ -15,7 +16,7 @@ const BLOCKED_PUBLIC_ASSET = /(?:unsplash|placehold|assets\.example)/i;
|
|
|
15
16
|
const nonEmptySample = (value) => {
|
|
16
17
|
if (typeof value === "string") return nonEmpty(value);
|
|
17
18
|
if (Array.isArray(value)) return value.length > 0 && value.every(nonEmptySample);
|
|
18
|
-
if (
|
|
19
|
+
if (isObject(value)) {
|
|
19
20
|
const values = Object.values(value);
|
|
20
21
|
return values.length > 0 && values.every(nonEmptySample);
|
|
21
22
|
}
|
|
@@ -120,13 +121,13 @@ const publicTemplateAuthoredStructure = (source) => {
|
|
|
120
121
|
for (const item of value) walk(item, depth);
|
|
121
122
|
return;
|
|
122
123
|
}
|
|
123
|
-
if (!
|
|
124
|
+
if (!isObject(value)) return;
|
|
124
125
|
let childDepth = depth;
|
|
125
126
|
if (value.type === "JSXElement") {
|
|
126
127
|
const opening = value.openingElement;
|
|
127
|
-
if (!
|
|
128
|
+
if (!isObject(opening)) return;
|
|
128
129
|
const name = opening.name;
|
|
129
|
-
const tag =
|
|
130
|
+
const tag = isObject(name) && typeof name.name === "string" && PUBLIC_COMPONENT_TAGS.has(name.name) ? name.name : "Component";
|
|
130
131
|
const childIndex = siblings.get(depth) ?? 0;
|
|
131
132
|
siblings.set(depth, childIndex + 1);
|
|
132
133
|
siblings.set(depth + 1, 0);
|
|
@@ -137,9 +138,9 @@ const publicTemplateAuthoredStructure = (source) => {
|
|
|
137
138
|
});
|
|
138
139
|
counts.set(tag, (counts.get(tag) ?? 0) + 1);
|
|
139
140
|
if (Array.isArray(opening.attributes)) for (const attribute of opening.attributes) {
|
|
140
|
-
if (!
|
|
141
|
+
if (!isObject(attribute) || !isObject(attribute.name) || attribute.name.name !== "className") continue;
|
|
141
142
|
const literal = attribute.value;
|
|
142
|
-
if (!
|
|
143
|
+
if (!isObject(literal) || literal.type !== "StringLiteral" || typeof literal.value !== "string") continue;
|
|
143
144
|
for (const match of literal.value.matchAll(/#([a-f0-9]{8}|[a-f0-9]{6}|[a-f0-9]{3})(?=[^a-f0-9]|$)/gi)) if (palette.size < 24) palette.add(`#${match[1].toLowerCase()}`);
|
|
144
145
|
}
|
|
145
146
|
childDepth += 1;
|
|
@@ -298,8 +299,9 @@ const validatePublicTemplateHandoff = (artifacts) => {
|
|
|
298
299
|
if (new Set(artifact.preset.variables).size !== artifact.preset.variables.length || artifact.preset.variables.some((value) => !nonEmpty(value))) issues.push(issue(id, "variables", "declared input fields must be non-empty and unique"));
|
|
299
300
|
const unsupportedFontTokens = unsupportedPublicTemplateFontTokens(artifact.preset.source);
|
|
300
301
|
if (unsupportedFontTokens.length > 0) issues.push(issue(id, "font-token", `unsupported public font token: ${unsupportedFontTokens.join(", ")}`));
|
|
301
|
-
const
|
|
302
|
-
|
|
302
|
+
const declaredVariables = new Set(artifact.preset.variables);
|
|
303
|
+
const undeclaredSample = Object.keys(artifact.preview.sampleData).filter((variable) => !declaredVariables.has(variable));
|
|
304
|
+
if (undeclaredSample.length > 0) issues.push(issue(id, "sample-data", `sample data supplies undeclared variables: ${sortedUnique(undeclaredSample).join(", ")}`));
|
|
303
305
|
if (Object.values(artifact.preview.sampleData).some((value) => !nonEmptySample(value))) issues.push(issue(id, "sample-data", "sample data values must be non-empty"));
|
|
304
306
|
const assetVariables = artifact.preview.assets.map((asset) => asset.variable);
|
|
305
307
|
if (new Set(assetVariables).size !== assetVariables.length) issues.push(issue(id, "assets", "asset variable references must be unique"));
|
|
@@ -328,8 +330,8 @@ const validatePublicTemplateHandoff = (artifacts) => {
|
|
|
328
330
|
if (new Set(artifact.gallery.relatedTemplates).size !== artifact.gallery.relatedTemplates.length) issues.push(issue(id, "reference", "related template references must be unique"));
|
|
329
331
|
for (const relatedId of artifact.gallery.relatedTemplates) if (relatedId === id || !allKnownIds.has(relatedId)) issues.push(issue(id, "reference", `related template "${relatedId}" is invalid`));
|
|
330
332
|
}
|
|
331
|
-
if (issues.length > 0) return Result.
|
|
332
|
-
return Result.
|
|
333
|
+
if (issues.length > 0) return Result.err(issues);
|
|
334
|
+
return Result.ok(artifacts.map((artifact) => {
|
|
333
335
|
const reference = toTemplateReferencePacket(artifact);
|
|
334
336
|
return {
|
|
335
337
|
approval: {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { EmailPresetId } from "../
|
|
1
|
+
import { t as EmailPresetId } from "../catalog-Db0UcCTg.js";
|
|
2
2
|
import { PublicTemplate } from "./public-gallery.js";
|
|
3
3
|
import { PreviewQuality } from "./public-preview.js";
|
|
4
|
-
import { Result } from "
|
|
4
|
+
import { Result } from "better-result";
|
|
5
5
|
//#region presets/public-preview-artifacts.d.ts
|
|
6
6
|
type PreviewSurface = "card" | "detail" | "og";
|
|
7
7
|
type PreviewViewport = "desktop" | "mobile";
|
|
@@ -31,11 +31,11 @@ interface PreviewArtifactBuildIssue {
|
|
|
31
31
|
readonly message: string;
|
|
32
32
|
}
|
|
33
33
|
/** Build one static preview artifact without loading the editor runtime or performing I/O. */
|
|
34
|
-
declare const buildPublicTemplatePreviewArtifact: (template: PublicTemplate) => Result
|
|
34
|
+
declare const buildPublicTemplatePreviewArtifact: (template: PublicTemplate) => Result<PublicTemplatePreviewArtifact, PreviewArtifactBuildIssue>;
|
|
35
35
|
/** Build only the requested canonical subset, preserving manifest order and aggregated failures. */
|
|
36
|
-
declare const buildPublicTemplatePreviewArtifactsFor: (templates: ReadonlyArray<PublicTemplate>) => Result
|
|
36
|
+
declare const buildPublicTemplatePreviewArtifactsFor: (templates: ReadonlyArray<PublicTemplate>) => Result<ReadonlyArray<PublicTemplatePreviewArtifact>, ReadonlyArray<PreviewArtifactBuildIssue>>;
|
|
37
37
|
/** Build the complete canonical public gallery. */
|
|
38
|
-
declare const buildPublicTemplatePreviewArtifacts: () => Result
|
|
38
|
+
declare const buildPublicTemplatePreviewArtifacts: () => Result<readonly PublicTemplatePreviewArtifact[], readonly PreviewArtifactBuildIssue[]>;
|
|
39
39
|
//#endregion
|
|
40
40
|
export { PreviewArtifactBuildIssue, PreviewColorScheme, PreviewSurface, PreviewViewport, PublicTemplatePreviewArtifact, PublicTemplateRenderInput, buildPublicTemplatePreviewArtifact, buildPublicTemplatePreviewArtifacts, buildPublicTemplatePreviewArtifactsFor };
|
|
41
41
|
//# sourceMappingURL=public-preview-artifacts.d.ts.map
|
|
@@ -3,7 +3,7 @@ import { registerPublicCorpusEntry } from "./corpus.js";
|
|
|
3
3
|
import { publicTemplates } from "./public-gallery.js";
|
|
4
4
|
import { presetEmailAssets, presetEmailFixtures, presetModuleSource } from "./sources.js";
|
|
5
5
|
import { publicTemplatePreviews } from "./public-preview.js";
|
|
6
|
-
import { Result } from "
|
|
6
|
+
import { Result } from "better-result";
|
|
7
7
|
//#region presets/public-preview-artifacts.ts
|
|
8
8
|
const renderFrames = [
|
|
9
9
|
{
|
|
@@ -50,15 +50,15 @@ const buildPublicTemplatePreviewArtifact = (template) => {
|
|
|
50
50
|
corpus: template.corpus,
|
|
51
51
|
facets: template.facets
|
|
52
52
|
});
|
|
53
|
-
if (Result.
|
|
53
|
+
if (Result.isError(registration)) return Result.err({
|
|
54
54
|
presetId: template.presetId,
|
|
55
|
-
message: `public corpus registration failed: ${registration.
|
|
55
|
+
message: `public corpus registration failed: ${registration.error.message}`
|
|
56
56
|
});
|
|
57
57
|
const source = presetModuleSource(template.presetId);
|
|
58
58
|
const fixture = presetEmailFixtures[template.presetId]?.default;
|
|
59
59
|
const preset = presetCatalog.find((entry) => entry.id === template.presetId);
|
|
60
60
|
const preview = publicTemplatePreviews[template.presetId];
|
|
61
|
-
if (source === void 0 || preset === void 0 || fixture === void 0) return Result.
|
|
61
|
+
if (source === void 0 || preset === void 0 || fixture === void 0) return Result.err({
|
|
62
62
|
presetId: template.presetId,
|
|
63
63
|
message: "canonical preset source is missing"
|
|
64
64
|
});
|
|
@@ -66,13 +66,13 @@ const buildPublicTemplatePreviewArtifact = (template) => {
|
|
|
66
66
|
const assets = new Set(presetEmailAssets[template.presetId]);
|
|
67
67
|
for (const asset of preview.assets) {
|
|
68
68
|
const value = sampleData[asset.variable];
|
|
69
|
-
if (typeof value !== "string") return Result.
|
|
69
|
+
if (typeof value !== "string") return Result.err({
|
|
70
70
|
presetId: template.presetId,
|
|
71
71
|
message: `sample data is missing a string asset: ${asset.variable}`
|
|
72
72
|
});
|
|
73
73
|
assets.add(value);
|
|
74
74
|
}
|
|
75
|
-
return Result.
|
|
75
|
+
return Result.ok({
|
|
76
76
|
presetId: template.presetId,
|
|
77
77
|
slug: template.slug,
|
|
78
78
|
subject: fixture.subject,
|
|
@@ -90,10 +90,10 @@ const buildPublicTemplatePreviewArtifactsFor = (templates) => {
|
|
|
90
90
|
const issues = [];
|
|
91
91
|
for (const template of templates) {
|
|
92
92
|
const artifact = buildPublicTemplatePreviewArtifact(template);
|
|
93
|
-
if (Result.
|
|
94
|
-
else issues.push(artifact.
|
|
93
|
+
if (Result.isOk(artifact)) artifacts.push(artifact.value);
|
|
94
|
+
else issues.push(artifact.error);
|
|
95
95
|
}
|
|
96
|
-
return issues.length > 0 ? Result.
|
|
96
|
+
return issues.length > 0 ? Result.err(issues) : Result.ok(artifacts);
|
|
97
97
|
};
|
|
98
98
|
/** Build the complete canonical public gallery. */
|
|
99
99
|
const buildPublicTemplatePreviewArtifacts = () => buildPublicTemplatePreviewArtifactsFor(publicTemplates);
|
|
@@ -25,15 +25,12 @@ declare const publicTemplatePreviews: {
|
|
|
25
25
|
readonly "email-verification": PublicTemplatePreview;
|
|
26
26
|
readonly otp: PublicTemplatePreview;
|
|
27
27
|
readonly "password-reset": PublicTemplatePreview;
|
|
28
|
-
readonly receipt: PublicTemplatePreview;
|
|
29
28
|
readonly "payment-failed": PublicTemplatePreview;
|
|
30
29
|
readonly "shipping-update": PublicTemplatePreview;
|
|
31
30
|
readonly notification: PublicTemplatePreview;
|
|
32
31
|
readonly "team-invite": PublicTemplatePreview;
|
|
33
32
|
readonly "product-digest": PublicTemplatePreview;
|
|
34
|
-
readonly newsletter: PublicTemplatePreview;
|
|
35
33
|
readonly announcement: PublicTemplatePreview;
|
|
36
|
-
readonly promo: PublicTemplatePreview;
|
|
37
34
|
readonly "event-invite": PublicTemplatePreview;
|
|
38
35
|
readonly "membership-promo": PublicTemplatePreview;
|
|
39
36
|
readonly "onboarding-step": PublicTemplatePreview;
|
|
@@ -45,7 +42,6 @@ declare const publicTemplatePreviews: {
|
|
|
45
42
|
readonly "catalog-sale-newsletter": PublicTemplatePreview;
|
|
46
43
|
readonly "limited-time-savings": PublicTemplatePreview;
|
|
47
44
|
readonly "rewards-milestone": PublicTemplatePreview;
|
|
48
|
-
readonly "order-delivered": PublicTemplatePreview;
|
|
49
45
|
readonly "travel-rewards-promo": PublicTemplatePreview;
|
|
50
46
|
readonly "events-roundup": PublicTemplatePreview;
|
|
51
47
|
readonly "product-onboarding-tour": PublicTemplatePreview;
|
|
@@ -27,380 +27,55 @@ const publicTemplatePreviews = {
|
|
|
27
27
|
kind: "image"
|
|
28
28
|
}]),
|
|
29
29
|
"product-launch-promo": preview("product-launch-promo", "ready", []),
|
|
30
|
-
welcome: preview("welcome", "ready", [
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
kind: "logo"
|
|
37
|
-
}]),
|
|
38
|
-
otp: preview("otp", "ready", [{
|
|
39
|
-
variable: "logoUrl",
|
|
40
|
-
kind: "logo"
|
|
41
|
-
}]),
|
|
42
|
-
"password-reset": preview("password-reset", "ready", [{
|
|
43
|
-
variable: "logoUrl",
|
|
44
|
-
kind: "logo"
|
|
45
|
-
}]),
|
|
46
|
-
receipt: preview("receipt", "ready", [{
|
|
47
|
-
variable: "logoUrl",
|
|
48
|
-
kind: "logo"
|
|
49
|
-
}]),
|
|
50
|
-
"payment-failed": preview("payment-failed", "ready", [{
|
|
51
|
-
variable: "logoUrl",
|
|
52
|
-
kind: "logo"
|
|
53
|
-
}]),
|
|
54
|
-
"shipping-update": preview("shipping-update", "ready", [{
|
|
55
|
-
variable: "logoUrl",
|
|
56
|
-
kind: "logo"
|
|
57
|
-
}]),
|
|
30
|
+
welcome: preview("welcome", "ready", []),
|
|
31
|
+
"email-verification": preview("email-verification", "ready", []),
|
|
32
|
+
otp: preview("otp", "ready", []),
|
|
33
|
+
"password-reset": preview("password-reset", "ready", []),
|
|
34
|
+
"payment-failed": preview("payment-failed", "ready", []),
|
|
35
|
+
"shipping-update": preview("shipping-update", "ready", []),
|
|
58
36
|
notification: preview("notification", "ready", [{
|
|
59
|
-
variable: "
|
|
60
|
-
kind: "logo"
|
|
61
|
-
}]),
|
|
62
|
-
"team-invite": preview("team-invite", "ready", [{
|
|
63
|
-
variable: "logoUrl",
|
|
64
|
-
kind: "logo"
|
|
65
|
-
}]),
|
|
66
|
-
"product-digest": preview("product-digest", "ready", [{
|
|
67
|
-
variable: "logoUrl",
|
|
68
|
-
kind: "logo"
|
|
69
|
-
}]),
|
|
70
|
-
newsletter: preview("newsletter", "ready", [{
|
|
71
|
-
variable: "heroImage",
|
|
37
|
+
variable: "actorAvatar",
|
|
72
38
|
kind: "image"
|
|
73
39
|
}]),
|
|
74
|
-
|
|
75
|
-
variable: "
|
|
40
|
+
"team-invite": preview("team-invite", "ready", [{
|
|
41
|
+
variable: "inviterAvatarUrl",
|
|
76
42
|
kind: "image"
|
|
77
43
|
}]),
|
|
78
|
-
|
|
44
|
+
"product-digest": preview("product-digest", "ready", []),
|
|
45
|
+
announcement: preview("announcement", "ready", []),
|
|
79
46
|
"event-invite": preview("event-invite", "ready", []),
|
|
80
|
-
"membership-promo": preview("membership-promo", "ready", [
|
|
81
|
-
|
|
47
|
+
"membership-promo": preview("membership-promo", "ready", []),
|
|
48
|
+
"onboarding-step": preview("onboarding-step", "ready", []),
|
|
49
|
+
"trial-ending": preview("trial-ending", "ready", []),
|
|
50
|
+
"win-back": preview("win-back", "ready", []),
|
|
51
|
+
"feedback-request": preview("feedback-request", "ready", []),
|
|
52
|
+
"editorial-newsletter": preview("editorial-newsletter", "ready", [{
|
|
53
|
+
variable: "authorAvatar",
|
|
82
54
|
kind: "image"
|
|
83
55
|
}, {
|
|
84
|
-
variable: "
|
|
85
|
-
kind: "image"
|
|
86
|
-
}]),
|
|
87
|
-
"onboarding-step": preview("onboarding-step", "ready", [{
|
|
88
|
-
variable: "logoUrl",
|
|
89
|
-
kind: "logo"
|
|
90
|
-
}]),
|
|
91
|
-
"trial-ending": preview("trial-ending", "ready", [{
|
|
92
|
-
variable: "logoUrl",
|
|
93
|
-
kind: "logo"
|
|
94
|
-
}]),
|
|
95
|
-
"win-back": preview("win-back", "ready", [{
|
|
96
|
-
variable: "logoUrl",
|
|
97
|
-
kind: "logo"
|
|
98
|
-
}]),
|
|
99
|
-
"feedback-request": preview("feedback-request", "ready", [{
|
|
100
|
-
variable: "logoUrl",
|
|
101
|
-
kind: "logo"
|
|
102
|
-
}]),
|
|
103
|
-
"editorial-newsletter": preview("editorial-newsletter", "ready", [
|
|
104
|
-
{
|
|
105
|
-
variable: "authorAvatarUrl",
|
|
106
|
-
kind: "image"
|
|
107
|
-
},
|
|
108
|
-
{
|
|
109
|
-
variable: "heroImageUrl",
|
|
110
|
-
kind: "image"
|
|
111
|
-
},
|
|
112
|
-
{
|
|
113
|
-
variable: "platformCtaImageUrl",
|
|
114
|
-
kind: "image"
|
|
115
|
-
},
|
|
116
|
-
{
|
|
117
|
-
variable: "podcastImageUrl",
|
|
118
|
-
kind: "image"
|
|
119
|
-
},
|
|
120
|
-
{
|
|
121
|
-
variable: "sponsorImageUrl",
|
|
122
|
-
kind: "image"
|
|
123
|
-
}
|
|
124
|
-
]),
|
|
125
|
-
"member-referral-offer": preview("member-referral-offer", "ready", [
|
|
126
|
-
{
|
|
127
|
-
variable: "circleFeatureImageUrl",
|
|
128
|
-
kind: "image"
|
|
129
|
-
},
|
|
130
|
-
{
|
|
131
|
-
variable: "heroImageUrl",
|
|
132
|
-
kind: "image"
|
|
133
|
-
},
|
|
134
|
-
{
|
|
135
|
-
variable: "rewardsFeatureImageUrl",
|
|
136
|
-
kind: "image"
|
|
137
|
-
}
|
|
138
|
-
]),
|
|
139
|
-
"catalog-sale-newsletter": preview("catalog-sale-newsletter", "asset-free", []),
|
|
140
|
-
"limited-time-savings": preview("limited-time-savings", "asset-free", []),
|
|
141
|
-
"rewards-milestone": preview("rewards-milestone", "ready", [{
|
|
142
|
-
variable: "heroBannerImageUrl",
|
|
143
|
-
kind: "image"
|
|
144
|
-
}, {
|
|
145
|
-
variable: "rewardsCardImageUrl",
|
|
146
|
-
kind: "image"
|
|
147
|
-
}]),
|
|
148
|
-
"order-delivered": preview("order-delivered", "ready", [
|
|
149
|
-
{
|
|
150
|
-
variable: "productOneImageUrl",
|
|
151
|
-
kind: "image"
|
|
152
|
-
},
|
|
153
|
-
{
|
|
154
|
-
variable: "productThreeImageUrl",
|
|
155
|
-
kind: "image"
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
variable: "productTwoImageUrl",
|
|
159
|
-
kind: "image"
|
|
160
|
-
}
|
|
161
|
-
]),
|
|
162
|
-
"travel-rewards-promo": preview("travel-rewards-promo", "ready", [{
|
|
163
|
-
variable: "accountPromptImageUrl",
|
|
164
|
-
kind: "image"
|
|
165
|
-
}, {
|
|
166
|
-
variable: "heroImageUrl",
|
|
56
|
+
variable: "heroImage",
|
|
167
57
|
kind: "image"
|
|
168
58
|
}]),
|
|
169
|
-
"
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
variable: "event2ImageUrl",
|
|
184
|
-
kind: "image"
|
|
185
|
-
},
|
|
186
|
-
{
|
|
187
|
-
variable: "event3ImageUrl",
|
|
188
|
-
kind: "image"
|
|
189
|
-
},
|
|
190
|
-
{
|
|
191
|
-
variable: "event4ImageUrl",
|
|
192
|
-
kind: "image"
|
|
193
|
-
},
|
|
194
|
-
{
|
|
195
|
-
variable: "event5ImageUrl",
|
|
196
|
-
kind: "image"
|
|
197
|
-
},
|
|
198
|
-
{
|
|
199
|
-
variable: "event6ImageUrl",
|
|
200
|
-
kind: "image"
|
|
201
|
-
},
|
|
202
|
-
{
|
|
203
|
-
variable: "event7ImageUrl",
|
|
204
|
-
kind: "image"
|
|
205
|
-
},
|
|
206
|
-
{
|
|
207
|
-
variable: "event8ImageUrl",
|
|
208
|
-
kind: "image"
|
|
209
|
-
},
|
|
210
|
-
{
|
|
211
|
-
variable: "event9ImageUrl",
|
|
212
|
-
kind: "image"
|
|
213
|
-
}
|
|
214
|
-
]),
|
|
215
|
-
"product-onboarding-tour": preview("product-onboarding-tour", "ready", [
|
|
216
|
-
{
|
|
217
|
-
variable: "emailGuideImageUrl",
|
|
218
|
-
kind: "image"
|
|
219
|
-
},
|
|
220
|
-
{
|
|
221
|
-
variable: "incomeDashboardImageUrl",
|
|
222
|
-
kind: "image"
|
|
223
|
-
},
|
|
224
|
-
{
|
|
225
|
-
variable: "incomeGuideImageUrl",
|
|
226
|
-
kind: "image"
|
|
227
|
-
},
|
|
228
|
-
{
|
|
229
|
-
variable: "mediaKitImageUrl",
|
|
230
|
-
kind: "image"
|
|
231
|
-
},
|
|
232
|
-
{
|
|
233
|
-
variable: "welcomeEmailImageUrl",
|
|
234
|
-
kind: "image"
|
|
235
|
-
}
|
|
236
|
-
]),
|
|
237
|
-
"product-updates-roundup": preview("product-updates-roundup", "asset-free", []),
|
|
238
|
-
"flash-getaway-offer": preview("flash-getaway-offer", "ready", [{
|
|
239
|
-
variable: "destinationOneImageUrl",
|
|
240
|
-
kind: "image"
|
|
241
|
-
}, {
|
|
242
|
-
variable: "destinationTwoImageUrl",
|
|
59
|
+
"member-referral-offer": preview("member-referral-offer", "ready", []),
|
|
60
|
+
"catalog-sale-newsletter": preview("catalog-sale-newsletter", "ready", []),
|
|
61
|
+
"limited-time-savings": preview("limited-time-savings", "ready", []),
|
|
62
|
+
"rewards-milestone": preview("rewards-milestone", "ready", []),
|
|
63
|
+
"travel-rewards-promo": preview("travel-rewards-promo", "ready", []),
|
|
64
|
+
"events-roundup": preview("events-roundup", "ready", []),
|
|
65
|
+
"product-onboarding-tour": preview("product-onboarding-tour", "ready", []),
|
|
66
|
+
"product-updates-roundup": preview("product-updates-roundup", "ready", []),
|
|
67
|
+
"flash-getaway-offer": preview("flash-getaway-offer", "ready", []),
|
|
68
|
+
"membership-benefits-promo": preview("membership-benefits-promo", "ready", []),
|
|
69
|
+
"industry-news-digest": preview("industry-news-digest", "ready", []),
|
|
70
|
+
"weekly-deals-circular": preview("weekly-deals-circular", "ready", []),
|
|
71
|
+
"data-sharing-review": preview("data-sharing-review", "ready", [{
|
|
72
|
+
variable: "connectedServiceIconUrl",
|
|
243
73
|
kind: "image"
|
|
244
74
|
}]),
|
|
245
|
-
"
|
|
246
|
-
"
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
kind: "image"
|
|
250
|
-
},
|
|
251
|
-
{
|
|
252
|
-
variable: "latentPrivilegeImageUrl",
|
|
253
|
-
kind: "image"
|
|
254
|
-
},
|
|
255
|
-
{
|
|
256
|
-
variable: "playbookTutorialImageUrl",
|
|
257
|
-
kind: "image"
|
|
258
|
-
},
|
|
259
|
-
{
|
|
260
|
-
variable: "pulsebandDealImageUrl",
|
|
261
|
-
kind: "image"
|
|
262
|
-
},
|
|
263
|
-
{
|
|
264
|
-
variable: "ridgelockSponsorImageUrl",
|
|
265
|
-
kind: "image"
|
|
266
|
-
},
|
|
267
|
-
{
|
|
268
|
-
variable: "sealpathSponsorImageUrl",
|
|
269
|
-
kind: "image"
|
|
270
|
-
},
|
|
271
|
-
{
|
|
272
|
-
variable: "workshopImageUrl",
|
|
273
|
-
kind: "image"
|
|
274
|
-
}
|
|
275
|
-
]),
|
|
276
|
-
"weekly-deals-circular": preview("weekly-deals-circular", "ready", [
|
|
277
|
-
{
|
|
278
|
-
variable: "couponFourImageUrl",
|
|
279
|
-
kind: "image"
|
|
280
|
-
},
|
|
281
|
-
{
|
|
282
|
-
variable: "couponOneImageUrl",
|
|
283
|
-
kind: "image"
|
|
284
|
-
},
|
|
285
|
-
{
|
|
286
|
-
variable: "couponThreeImageUrl",
|
|
287
|
-
kind: "image"
|
|
288
|
-
},
|
|
289
|
-
{
|
|
290
|
-
variable: "couponTwoImageUrl",
|
|
291
|
-
kind: "image"
|
|
292
|
-
}
|
|
293
|
-
]),
|
|
294
|
-
"data-sharing-review": preview("data-sharing-review", "asset-free", []),
|
|
295
|
-
"seasonal-sale-flyer": preview("seasonal-sale-flyer", "ready", [
|
|
296
|
-
{
|
|
297
|
-
variable: "alternatorsImageUrl",
|
|
298
|
-
kind: "image"
|
|
299
|
-
},
|
|
300
|
-
{
|
|
301
|
-
variable: "antifreezeImageUrl",
|
|
302
|
-
kind: "image"
|
|
303
|
-
},
|
|
304
|
-
{
|
|
305
|
-
variable: "batteriesImageUrl",
|
|
306
|
-
kind: "image"
|
|
307
|
-
},
|
|
308
|
-
{
|
|
309
|
-
variable: "brakePadsImageUrl",
|
|
310
|
-
kind: "image"
|
|
311
|
-
},
|
|
312
|
-
{
|
|
313
|
-
variable: "fogOfferImageUrl",
|
|
314
|
-
kind: "image"
|
|
315
|
-
},
|
|
316
|
-
{
|
|
317
|
-
variable: "headlightHeroImageUrl",
|
|
318
|
-
kind: "image"
|
|
319
|
-
},
|
|
320
|
-
{
|
|
321
|
-
variable: "howtoBannerImageUrl",
|
|
322
|
-
kind: "image"
|
|
323
|
-
},
|
|
324
|
-
{
|
|
325
|
-
variable: "lightingBrandStripImageUrl",
|
|
326
|
-
kind: "image"
|
|
327
|
-
},
|
|
328
|
-
{
|
|
329
|
-
variable: "lightingImageUrl",
|
|
330
|
-
kind: "image"
|
|
331
|
-
},
|
|
332
|
-
{
|
|
333
|
-
variable: "oilBundlesImageUrl",
|
|
334
|
-
kind: "image"
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
variable: "productThumbFourImageUrl",
|
|
338
|
-
kind: "image"
|
|
339
|
-
},
|
|
340
|
-
{
|
|
341
|
-
variable: "productThumbOneImageUrl",
|
|
342
|
-
kind: "image"
|
|
343
|
-
},
|
|
344
|
-
{
|
|
345
|
-
variable: "productThumbThreeImageUrl",
|
|
346
|
-
kind: "image"
|
|
347
|
-
},
|
|
348
|
-
{
|
|
349
|
-
variable: "productThumbTwoImageUrl",
|
|
350
|
-
kind: "image"
|
|
351
|
-
},
|
|
352
|
-
{
|
|
353
|
-
variable: "sparkPlugsImageUrl",
|
|
354
|
-
kind: "image"
|
|
355
|
-
},
|
|
356
|
-
{
|
|
357
|
-
variable: "wiperOfferImageUrl",
|
|
358
|
-
kind: "image"
|
|
359
|
-
},
|
|
360
|
-
{
|
|
361
|
-
variable: "wipersImageUrl",
|
|
362
|
-
kind: "image"
|
|
363
|
-
}
|
|
364
|
-
]),
|
|
365
|
-
"setup-checklist": preview("setup-checklist", "ready", [
|
|
366
|
-
{
|
|
367
|
-
variable: "addAppsImageUrl",
|
|
368
|
-
kind: "image"
|
|
369
|
-
},
|
|
370
|
-
{
|
|
371
|
-
variable: "pricingImageUrl",
|
|
372
|
-
kind: "image"
|
|
373
|
-
},
|
|
374
|
-
{
|
|
375
|
-
variable: "storePageImageUrl",
|
|
376
|
-
kind: "image"
|
|
377
|
-
}
|
|
378
|
-
]),
|
|
379
|
-
"feature-release-roundup": preview("feature-release-roundup", "ready", [
|
|
380
|
-
{
|
|
381
|
-
variable: "activityFeedImageUrl",
|
|
382
|
-
kind: "image"
|
|
383
|
-
},
|
|
384
|
-
{
|
|
385
|
-
variable: "apiGaImageUrl",
|
|
386
|
-
kind: "image"
|
|
387
|
-
},
|
|
388
|
-
{
|
|
389
|
-
variable: "brandedShortenersImageUrl",
|
|
390
|
-
kind: "image"
|
|
391
|
-
},
|
|
392
|
-
{
|
|
393
|
-
variable: "linksWorkspaceImageUrl",
|
|
394
|
-
kind: "image"
|
|
395
|
-
}
|
|
396
|
-
]),
|
|
397
|
-
"season-clearance-promo": preview("season-clearance-promo", "ready", [{
|
|
398
|
-
variable: "heroImageUrl",
|
|
399
|
-
kind: "image"
|
|
400
|
-
}, {
|
|
401
|
-
variable: "secondaryBannerImageUrl",
|
|
402
|
-
kind: "image"
|
|
403
|
-
}])
|
|
75
|
+
"seasonal-sale-flyer": preview("seasonal-sale-flyer", "ready", []),
|
|
76
|
+
"setup-checklist": preview("setup-checklist", "ready", []),
|
|
77
|
+
"feature-release-roundup": preview("feature-release-roundup", "ready", []),
|
|
78
|
+
"season-clearance-promo": preview("season-clearance-promo", "ready", [])
|
|
404
79
|
};
|
|
405
80
|
//#endregion
|
|
406
81
|
export { publicTemplatePreviews };
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import { a as ShowcaseProjectId, c as showcaseProject, d as showcaseSourcePath, i as ShowcaseProject, l as showcaseProjectPaths, n as OwnedShowcaseId, o as ShowcaseProvenance, r as SHOWCASE_ROOT, s as isShowcaseProjectId, t as BrandRecreationShowcaseId, u as showcaseProjects } from "../showcase-dvJMn-Lo.js";
|
|
2
|
+
export { BrandRecreationShowcaseId, OwnedShowcaseId, SHOWCASE_ROOT, ShowcaseProject, ShowcaseProjectId, ShowcaseProvenance, isShowcaseProjectId, showcaseProject, showcaseProjectPaths, showcaseProjects, showcaseSourcePath };
|