@prenta/core 0.120.1 → 0.121.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/CHANGELOG.md +77 -0
- package/dist/sections/embed.d.ts +32 -0
- package/dist/sections/embed.d.ts.map +1 -1
- package/dist/sections/embed.js +42 -0
- package/dist/sections/embed.js.map +1 -1
- package/dist/sections/fields.d.ts +15 -0
- package/dist/sections/fields.d.ts.map +1 -1
- package/dist/sections/fields.js +23 -0
- package/dist/sections/fields.js.map +1 -1
- package/dist/sections/helpers.d.ts.map +1 -1
- package/dist/sections/helpers.js +3 -1
- package/dist/sections/helpers.js.map +1 -1
- package/dist/sections/index.d.ts +4 -4
- package/dist/sections/index.d.ts.map +1 -1
- package/dist/sections/index.js +3 -3
- package/dist/sections/index.js.map +1 -1
- package/dist/sections/registry.d.ts.map +1 -1
- package/dist/sections/registry.js +87 -26
- package/dist/sections/registry.js.map +1 -1
- package/dist/sections/types.d.ts +27 -1
- package/dist/sections/types.d.ts.map +1 -1
- package/dist/sections/validate.d.ts.map +1 -1
- package/dist/sections/validate.js +42 -14
- package/dist/sections/validate.js.map +1 -1
- package/dist/sections/widget-embed.d.ts +67 -3
- package/dist/sections/widget-embed.d.ts.map +1 -1
- package/dist/sections/widget-embed.js +190 -9
- package/dist/sections/widget-embed.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/sections/registry.ts"],"names":[],"mappings":"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"}
|
package/dist/sections/types.d.ts
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
* posts, image gallery). Which types appear in a given editor is governed
|
|
26
26
|
* by {@link SectionTypeDef.scope}.
|
|
27
27
|
*/
|
|
28
|
-
export type SectionTypeId = 'hero' | 'text' | 'feature' | 'stats' | 'badges' | 'faq' | 'cta' | 'form' | 'article-body' | 'quote' | 'author-bio' | 'related-posts' | 'gallery' | 'embed' | 'widget-embed';
|
|
28
|
+
export type SectionTypeId = 'hero' | 'text' | 'feature' | 'stats' | 'badges' | 'faq' | 'cta' | 'form' | 'article-body' | 'quote' | 'author-bio' | 'related-posts' | 'gallery' | 'embed' | 'widget-embed' | 'divider';
|
|
29
29
|
/** Where a section type may be used. Drives the Add Section gallery filter. */
|
|
30
30
|
export type SectionScope = 'page' | 'post';
|
|
31
31
|
/** Field kinds the inspector + validator understand. */
|
|
@@ -58,6 +58,21 @@ export interface SectionFieldDef {
|
|
|
58
58
|
minRows?: number;
|
|
59
59
|
/** Maximum rows a repeater allows (the editor disables "Add" at the cap). */
|
|
60
60
|
maxRows?: number;
|
|
61
|
+
/**
|
|
62
|
+
* Show this field only when another field in the same section holds one of
|
|
63
|
+
* `equals`. Used where a type offers alternative inputs for the same job —
|
|
64
|
+
* a video is either a provider link, an uploaded file, or a pasted snippet,
|
|
65
|
+
* and showing all three at once puts the editor back to guessing which box
|
|
66
|
+
* is the live one.
|
|
67
|
+
*
|
|
68
|
+
* Read through {@link isFieldVisible} rather than inspected directly, so the
|
|
69
|
+
* editor and the validator cannot disagree about which fields are in play —
|
|
70
|
+
* a hidden `required` field must never block publish.
|
|
71
|
+
*/
|
|
72
|
+
showWhen?: {
|
|
73
|
+
field: string;
|
|
74
|
+
equals: string[];
|
|
75
|
+
};
|
|
61
76
|
}
|
|
62
77
|
export interface SectionSettings {
|
|
63
78
|
backgroundType?: 'none' | 'solid' | 'gradient';
|
|
@@ -82,6 +97,17 @@ export interface SectionTypeDef {
|
|
|
82
97
|
defaultSettings: SectionSettings;
|
|
83
98
|
/** content fields shown in the inspector, in order */
|
|
84
99
|
fields: SectionFieldDef[];
|
|
100
|
+
/**
|
|
101
|
+
* Optional forward-migration for content saved under an earlier field shape,
|
|
102
|
+
* applied by `coerceSections` on every read.
|
|
103
|
+
*
|
|
104
|
+
* Needed whenever a type's input changes but its stored content must keep
|
|
105
|
+
* working: without it the renderer can still fall back to the old keys, but
|
|
106
|
+
* the editor shows an empty new field for a widget that is plainly on the
|
|
107
|
+
* page. Must be pure and idempotent — it runs on every read, including reads
|
|
108
|
+
* of content it has already migrated.
|
|
109
|
+
*/
|
|
110
|
+
migrateContent?: (content: Record<string, unknown>) => Record<string, unknown>;
|
|
85
111
|
}
|
|
86
112
|
/**
|
|
87
113
|
* A single section on a page. Persisted in `data.sections[]`.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sections/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;;GAOG;AACH,MAAM,MAAM,aAAa,GACrB,MAAM,GACN,MAAM,GACN,SAAS,GACT,OAAO,GACP,QAAQ,GACR,KAAK,GACL,KAAK,GACL,MAAM,GACN,cAAc,GACd,OAAO,GACP,YAAY,GACZ,eAAe,GACf,SAAS,GACT,OAAO,GACP,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/sections/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAQ1E,wFAAwF;AACxF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAShE;AASD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,SAAS,CAAC,EAAE,eAAe,GAC1B,uBAAuB,
|
|
1
|
+
{"version":3,"file":"validate.d.ts","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAA;AAQ1E,wFAAwF;AACxF,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAShE;AASD;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAChC,SAAS,CAAC,EAAE,eAAe,GAC1B,uBAAuB,CAgIzB"}
|
|
@@ -13,9 +13,9 @@
|
|
|
13
13
|
* ...`) without double-labelling.
|
|
14
14
|
*/
|
|
15
15
|
import { getSectionType } from './registry.js';
|
|
16
|
-
import { resolveRepeaterField } from './fields.js';
|
|
17
|
-
import { parseEmbed } from './embed.js';
|
|
18
|
-
import { parseWidgetEmbed } from './widget-embed.js';
|
|
16
|
+
import { resolveRepeaterField, visibleFields } from './fields.js';
|
|
17
|
+
import { parseEmbed, parseEmbedIframe } from './embed.js';
|
|
18
|
+
import { parseWidgetEmbed, foreignScriptHosts } from './widget-embed.js';
|
|
19
19
|
const URL_OK = /^(https?:\/\/|\/|#|mailto:|tel:)/i;
|
|
20
20
|
function isBlank(v) {
|
|
21
21
|
return v === undefined || v === null || (typeof v === 'string' && v.trim() === '');
|
|
@@ -61,7 +61,10 @@ export function validateSectionContent(sectionType, content, _settings) {
|
|
|
61
61
|
return { valid: false, errors, warnings };
|
|
62
62
|
}
|
|
63
63
|
const data = content ?? {};
|
|
64
|
-
|
|
64
|
+
// `visibleFields` and not `def.fields`: a field the editor hides (see
|
|
65
|
+
// `showWhen`) must not be required, or publish fails against a box that is
|
|
66
|
+
// not on screen.
|
|
67
|
+
for (const field of visibleFields(def.fields, data)) {
|
|
65
68
|
const repeater = resolveRepeaterField(field);
|
|
66
69
|
if (repeater) {
|
|
67
70
|
validateRepeater(sectionType, field.key, repeater, data[field.key], errors, warnings);
|
|
@@ -101,22 +104,47 @@ export function validateSectionContent(sectionType, content, _settings) {
|
|
|
101
104
|
message: 'Image URL does not appear to be from the media library. Upload the asset via Media or upload_media, then reference its URL so alt text, optimization, and usage tracking apply.',
|
|
102
105
|
});
|
|
103
106
|
}
|
|
104
|
-
// Embed/video:
|
|
105
|
-
//
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
107
|
+
// Embed/video: whichever source is chosen must resolve, so an arbitrary URL
|
|
108
|
+
// can never be rendered inside an <iframe>. Each source is reported against
|
|
109
|
+
// its own field — an error on `url` while the editor is on the Embed-code
|
|
110
|
+
// source would point at a box that is not on screen.
|
|
111
|
+
if (sectionType === 'embed') {
|
|
112
|
+
const source = typeof data.source === 'string' && data.source ? data.source : 'provider';
|
|
113
|
+
if (source === 'provider' && !isBlank(data.url) && !parseEmbed(data.url)) {
|
|
114
|
+
errors.push({
|
|
115
|
+
sectionType,
|
|
116
|
+
field: 'url',
|
|
117
|
+
message: 'must be a YouTube, Vimeo, or Loom video URL.',
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
if (source === 'embed' && !isBlank(data.embedCode) && !parseEmbedIframe(data.embedCode)) {
|
|
121
|
+
errors.push({
|
|
122
|
+
sectionType,
|
|
123
|
+
field: 'embedCode',
|
|
124
|
+
message: 'must be an <iframe> embed from YouTube, Vimeo or Loom. Only the frame’s src is read, and other providers are not allowed.',
|
|
125
|
+
});
|
|
126
|
+
}
|
|
112
127
|
}
|
|
113
128
|
if (sectionType === 'widget-embed' && !parseWidgetEmbed(data)) {
|
|
114
129
|
errors.push({
|
|
115
130
|
sectionType,
|
|
116
|
-
field: '
|
|
117
|
-
message: '
|
|
131
|
+
field: 'embedCode',
|
|
132
|
+
message: 'needs embed code from Elfsight, Trustpilot or Calendly. Paste the snippet the provider gave you — if it is already pasted, it is missing the id we read out of it (Elfsight: the elfsight-app-… class; Trustpilot: data-template-id and data-businessunit-id; Calendly: a https://calendly.com/… data-url).',
|
|
118
133
|
});
|
|
119
134
|
}
|
|
135
|
+
// A pasted `<script>` never runs — say so, rather than leaving the editor to
|
|
136
|
+
// assume it does. Only foreign hosts are reported: the vendor's own loader is
|
|
137
|
+
// in every snippet and flagging it would be noise on a correct paste.
|
|
138
|
+
if (sectionType === 'widget-embed') {
|
|
139
|
+
const foreign = foreignScriptHosts(data.embedCode);
|
|
140
|
+
if (foreign.length > 0) {
|
|
141
|
+
warnings.push({
|
|
142
|
+
sectionType,
|
|
143
|
+
field: 'embedCode',
|
|
144
|
+
message: `Scripts in the embed code are not run — ${foreign.join(', ')} will be ignored. Only the widget id is read; the provider's own loader is added by the site.`,
|
|
145
|
+
});
|
|
146
|
+
}
|
|
147
|
+
}
|
|
120
148
|
if (sectionType === 'widget-embed') {
|
|
121
149
|
const hasRating = data.schemaRatingValue !== undefined &&
|
|
122
150
|
data.schemaRatingValue !== null &&
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAC9C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"validate.js","sourceRoot":"","sources":["../../src/sections/validate.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Third-party widget allowlist + parsing for the `widget-embed` section.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* ## The input is the vendor's own embed snippet
|
|
5
|
+
*
|
|
6
|
+
* Editors paste what Elfsight/Trustpilot/Calendly hand them, verbatim. They
|
|
7
|
+
* should not have to know that Elfsight's app id lives inside a class name, or
|
|
8
|
+
* that Trustpilot needs both a template id and a business-unit id, or which of
|
|
9
|
+
* three boxes each value belongs in. Asking them to take the snippet apart was
|
|
10
|
+
* a translation job the CMS invented for itself.
|
|
11
|
+
*
|
|
12
|
+
* ## The pasted code is PARSED, never injected
|
|
13
|
+
*
|
|
14
|
+
* This is the load-bearing property. Nothing from the paste reaches the page as
|
|
15
|
+
* markup or script. Exactly three values are read out of it — which provider it
|
|
16
|
+
* is, and that provider's ids — and each is validated. The public renderer then
|
|
17
|
+
* builds the mount point itself and loads the provider's script from a URL
|
|
18
|
+
* hardcoded in the renderer. A paste containing `<script>alert(1)</script>` or
|
|
19
|
+
* an `onerror` attribute carries those to no effect: they are never echoed
|
|
20
|
+
* anywhere.
|
|
21
|
+
*
|
|
22
|
+
* The provider is identified from the **container element** (`elfsight-app-…`,
|
|
23
|
+
* `trustpilot-widget`, `calendly-inline-widget`), not from the script tag.
|
|
24
|
+
* Vendors routinely hand out the div alone when their loader is installed
|
|
25
|
+
* site-wide, and a snippet with only a loader carries no id to mount anyway.
|
|
26
|
+
*
|
|
27
|
+
* Any `<script>` in the paste is therefore ignored — which is worth SAYING
|
|
28
|
+
* rather than doing silently, because an editor who pasted one reasonably
|
|
29
|
+
* expects it to run. {@link foreignScriptHosts} lists the ones that are not
|
|
30
|
+
* ours so validation can report them.
|
|
31
|
+
*
|
|
32
|
+
* Legacy content (`provider` + `widgetId` + `embedUrl`) still parses, and
|
|
33
|
+
* {@link migrateWidgetEmbedContent} regenerates the equivalent snippet so the
|
|
34
|
+
* editor shows the real embed code rather than an empty box.
|
|
7
35
|
*/
|
|
8
36
|
export type WidgetProvider = 'elfsight' | 'trustpilot' | 'calendly';
|
|
9
37
|
/** Providers whose widgets typically display on-page star ratings. */
|
|
@@ -27,8 +55,44 @@ export declare const WIDGET_MIN_HEIGHT_OPTIONS: readonly ["120", "200", "280", "
|
|
|
27
55
|
/** Safe widget token — alphanumeric, dash, underscore only. */
|
|
28
56
|
export declare function safeWidgetToken(raw: unknown): string | null;
|
|
29
57
|
export declare function parseMinHeightPx(raw: unknown): number;
|
|
58
|
+
/**
|
|
59
|
+
* Hosts of `<script src>` tags in the paste that are not the vendor's own
|
|
60
|
+
* loader, de-duplicated and in document order.
|
|
61
|
+
*
|
|
62
|
+
* Every script in a paste is ignored — this reports the ones an editor is
|
|
63
|
+
* least likely to expect to be ignored. Protocol-relative srcs
|
|
64
|
+
* (`//widget.trustpilot.com/…`, which is what Trustpilot actually ships) are
|
|
65
|
+
* normalised before the host is read; an unparseable src is skipped rather
|
|
66
|
+
* than reported as a host.
|
|
67
|
+
*/
|
|
68
|
+
export declare function foreignScriptHosts(raw: unknown): string[];
|
|
69
|
+
/**
|
|
70
|
+
* Parse a pasted vendor snippet into a provider + its ids.
|
|
71
|
+
*
|
|
72
|
+
* Returns null when the snippet names no recognised provider or is missing the
|
|
73
|
+
* ids that provider needs — the caller renders nothing rather than guessing.
|
|
74
|
+
*/
|
|
75
|
+
export declare function parseEmbedCode(raw: unknown): Omit<ParsedWidgetEmbed, 'minHeightPx'> | null;
|
|
76
|
+
/**
|
|
77
|
+
* Rebuild the vendor snippet for a legacy (structured-field) widget, so the
|
|
78
|
+
* editor's embed-code box shows the real embed rather than an empty field.
|
|
79
|
+
* Returns '' when the legacy fields do not describe a valid widget.
|
|
80
|
+
*/
|
|
81
|
+
export declare function widgetEmbedCodeFrom(content: Record<string, unknown>): string;
|
|
82
|
+
/**
|
|
83
|
+
* Fill in `embedCode` for content saved before the section took pasted
|
|
84
|
+
* snippets. Applied by `coerceSections` via the registry's `migrateContent`
|
|
85
|
+
* hook, so a page authored months ago opens with its embed code in the box.
|
|
86
|
+
*
|
|
87
|
+
* The legacy keys are deliberately left in place: they cost nothing, and
|
|
88
|
+
* removing them would make a rollback lose the widget.
|
|
89
|
+
*/
|
|
90
|
+
export declare function migrateWidgetEmbedContent(content: Record<string, unknown>): Record<string, unknown>;
|
|
30
91
|
/**
|
|
31
92
|
* Resolve widget section content to a parsed embed, or `null` when invalid.
|
|
93
|
+
*
|
|
94
|
+
* Pasted `embedCode` wins; the legacy structured fields are the fallback so
|
|
95
|
+
* content saved before the change keeps rendering untouched.
|
|
32
96
|
*/
|
|
33
97
|
export declare function parseWidgetEmbed(content: Record<string, unknown>): ParsedWidgetEmbed | null;
|
|
34
98
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget-embed.d.ts","sourceRoot":"","sources":["../../src/sections/widget-embed.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"widget-embed.d.ts","sourceRoot":"","sources":["../../src/sections/widget-embed.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,YAAY,GAAG,UAAU,CAAA;AAEnE,sEAAsE;AACtE,eAAO,MAAM,wBAAwB,qBAAsD,CAAA;AAE3F,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,iBAAiB,CAAA;IAC1B,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,cAAc,CAAA;IACxB,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAA;IAChB,gFAAgF;IAChF,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,WAAW,EAAE,MAAM,CAAA;CACpB;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,cAAc,EAAE,MAAM,CAIhE,CAAA;AAED,eAAO,MAAM,yBAAyB,8CAA+C,CAAA;AAmBrF,+DAA+D;AAC/D,wBAAgB,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAK3D;AAED,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAMrD;AAoBD;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,EAAE,CAkBzD;AAwBD;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG,IAAI,CA4B1F;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAuB5E;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAMzB;AAgCD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,iBAAiB,GAAG,IAAI,CAI3F;AAcD;;;;GAIG;AACH,wBAAgB,0BAA0B,CACxC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC/B,qBAAqB,GAAG,IAAI,CAc9B;AAED;;;GAGG;AACH,wBAAgB,kCAAkC,CAChD,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,qBAAqB,GAAG,IAAI,CAe9B"}
|
|
@@ -1,9 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Third-party widget allowlist + parsing for the `widget-embed` section.
|
|
3
3
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* ## The input is the vendor's own embed snippet
|
|
5
|
+
*
|
|
6
|
+
* Editors paste what Elfsight/Trustpilot/Calendly hand them, verbatim. They
|
|
7
|
+
* should not have to know that Elfsight's app id lives inside a class name, or
|
|
8
|
+
* that Trustpilot needs both a template id and a business-unit id, or which of
|
|
9
|
+
* three boxes each value belongs in. Asking them to take the snippet apart was
|
|
10
|
+
* a translation job the CMS invented for itself.
|
|
11
|
+
*
|
|
12
|
+
* ## The pasted code is PARSED, never injected
|
|
13
|
+
*
|
|
14
|
+
* This is the load-bearing property. Nothing from the paste reaches the page as
|
|
15
|
+
* markup or script. Exactly three values are read out of it — which provider it
|
|
16
|
+
* is, and that provider's ids — and each is validated. The public renderer then
|
|
17
|
+
* builds the mount point itself and loads the provider's script from a URL
|
|
18
|
+
* hardcoded in the renderer. A paste containing `<script>alert(1)</script>` or
|
|
19
|
+
* an `onerror` attribute carries those to no effect: they are never echoed
|
|
20
|
+
* anywhere.
|
|
21
|
+
*
|
|
22
|
+
* The provider is identified from the **container element** (`elfsight-app-…`,
|
|
23
|
+
* `trustpilot-widget`, `calendly-inline-widget`), not from the script tag.
|
|
24
|
+
* Vendors routinely hand out the div alone when their loader is installed
|
|
25
|
+
* site-wide, and a snippet with only a loader carries no id to mount anyway.
|
|
26
|
+
*
|
|
27
|
+
* Any `<script>` in the paste is therefore ignored — which is worth SAYING
|
|
28
|
+
* rather than doing silently, because an editor who pasted one reasonably
|
|
29
|
+
* expects it to run. {@link foreignScriptHosts} lists the ones that are not
|
|
30
|
+
* ours so validation can report them.
|
|
31
|
+
*
|
|
32
|
+
* Legacy content (`provider` + `widgetId` + `embedUrl`) still parses, and
|
|
33
|
+
* {@link migrateWidgetEmbedContent} regenerates the equivalent snippet so the
|
|
34
|
+
* editor shows the real embed code rather than an empty box.
|
|
7
35
|
*/
|
|
8
36
|
/** Providers whose widgets typically display on-page star ratings. */
|
|
9
37
|
export const REVIEWS_WIDGET_PROVIDERS = new Set(['elfsight', 'trustpilot']);
|
|
@@ -14,6 +42,20 @@ export const WIDGET_PROVIDER_LABEL = {
|
|
|
14
42
|
};
|
|
15
43
|
export const WIDGET_MIN_HEIGHT_OPTIONS = ['120', '200', '280', '360', '480'];
|
|
16
44
|
const DEFAULT_MIN_HEIGHT_PX = 280;
|
|
45
|
+
/**
|
|
46
|
+
* The loader hosts each provider's own snippet carries.
|
|
47
|
+
*
|
|
48
|
+
* These are not used to identify the provider (the container element does
|
|
49
|
+
* that) and never to build a script URL — the renderer hardcodes those. They
|
|
50
|
+
* exist so {@link foreignScriptHosts} can name the scripts in a paste that
|
|
51
|
+
* are NOT the vendor's own, and validation can tell the editor they will be
|
|
52
|
+
* ignored rather than leaving them to assume otherwise.
|
|
53
|
+
*/
|
|
54
|
+
const PROVIDER_SCRIPT_HOSTS = new Set([
|
|
55
|
+
'static.elfsight.com',
|
|
56
|
+
'widget.trustpilot.com',
|
|
57
|
+
'assets.calendly.com',
|
|
58
|
+
]);
|
|
17
59
|
/** Safe widget token — alphanumeric, dash, underscore only. */
|
|
18
60
|
export function safeWidgetToken(raw) {
|
|
19
61
|
if (typeof raw !== 'string')
|
|
@@ -44,33 +86,172 @@ function isCalendlyUrl(raw) {
|
|
|
44
86
|
return false;
|
|
45
87
|
}
|
|
46
88
|
}
|
|
89
|
+
// ─── Pasted embed code ───────────────────────────────────────────────
|
|
90
|
+
/** Read an attribute value off a snippet, tolerating single or double quotes. */
|
|
91
|
+
function attr(code, name) {
|
|
92
|
+
const m = new RegExp(`\\b${name}\\s*=\\s*["']([^"']*)["']`, 'i').exec(code);
|
|
93
|
+
return m?.[1]?.trim() || null;
|
|
94
|
+
}
|
|
47
95
|
/**
|
|
48
|
-
*
|
|
96
|
+
* Hosts of `<script src>` tags in the paste that are not the vendor's own
|
|
97
|
+
* loader, de-duplicated and in document order.
|
|
98
|
+
*
|
|
99
|
+
* Every script in a paste is ignored — this reports the ones an editor is
|
|
100
|
+
* least likely to expect to be ignored. Protocol-relative srcs
|
|
101
|
+
* (`//widget.trustpilot.com/…`, which is what Trustpilot actually ships) are
|
|
102
|
+
* normalised before the host is read; an unparseable src is skipped rather
|
|
103
|
+
* than reported as a host.
|
|
49
104
|
*/
|
|
50
|
-
export function
|
|
105
|
+
export function foreignScriptHosts(raw) {
|
|
106
|
+
if (typeof raw !== 'string')
|
|
107
|
+
return [];
|
|
108
|
+
const hosts = [];
|
|
109
|
+
const re = /<script\b[^>]*\bsrc\s*=\s*["']([^"']+)["']/gi;
|
|
110
|
+
let match;
|
|
111
|
+
while ((match = re.exec(raw)) !== null) {
|
|
112
|
+
const src = match[1].trim();
|
|
113
|
+
try {
|
|
114
|
+
const host = new URL(src.startsWith('//') ? `https:${src}` : src).hostname.replace(/^www\./, '');
|
|
115
|
+
if (!PROVIDER_SCRIPT_HOSTS.has(host) && !hosts.includes(host))
|
|
116
|
+
hosts.push(host);
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
// Not a parseable URL — nothing meaningful to name.
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
return hosts;
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Identify the provider from the container element.
|
|
126
|
+
*
|
|
127
|
+
* The container, not the script tag: vendors hand out the div alone whenever
|
|
128
|
+
* their loader is installed site-wide, and a paste carrying only a loader has
|
|
129
|
+
* no id to mount regardless. Recognising the container is safe because the ids
|
|
130
|
+
* are still token-validated and the renderer still supplies its own script URL.
|
|
131
|
+
*/
|
|
132
|
+
function providerFromContainer(code) {
|
|
133
|
+
if (/\belfsight-app-[\w-]+/i.test(code))
|
|
134
|
+
return 'elfsight';
|
|
135
|
+
if (/\btrustpilot-widget\b/i.test(code) || /\bdata-businessunit-id\b/i.test(code)) {
|
|
136
|
+
return 'trustpilot';
|
|
137
|
+
}
|
|
138
|
+
if (/\bcalendly-inline-widget\b/i.test(code) ||
|
|
139
|
+
/\bdata-url\s*=\s*["']https:\/\/(?:www\.)?calendly\.com/i.test(code)) {
|
|
140
|
+
return 'calendly';
|
|
141
|
+
}
|
|
142
|
+
return null;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Parse a pasted vendor snippet into a provider + its ids.
|
|
146
|
+
*
|
|
147
|
+
* Returns null when the snippet names no recognised provider or is missing the
|
|
148
|
+
* ids that provider needs — the caller renders nothing rather than guessing.
|
|
149
|
+
*/
|
|
150
|
+
export function parseEmbedCode(raw) {
|
|
151
|
+
if (typeof raw !== 'string')
|
|
152
|
+
return null;
|
|
153
|
+
const code = raw.trim();
|
|
154
|
+
if (!code)
|
|
155
|
+
return null;
|
|
156
|
+
// A bare Calendly link is a natural thing to paste and unambiguous.
|
|
157
|
+
if (isCalendlyUrl(code))
|
|
158
|
+
return { provider: 'calendly', widgetId: '', embedUrl: code };
|
|
159
|
+
const provider = providerFromContainer(code);
|
|
160
|
+
if (!provider)
|
|
161
|
+
return null;
|
|
162
|
+
if (provider === 'elfsight') {
|
|
163
|
+
// The app id is the class suffix: `class="elfsight-app-<id>"`.
|
|
164
|
+
const widgetId = safeWidgetToken(/\belfsight-app-([\w-]+)/i.exec(code)?.[1]);
|
|
165
|
+
if (!widgetId)
|
|
166
|
+
return null;
|
|
167
|
+
return { provider, widgetId, embedUrl: null };
|
|
168
|
+
}
|
|
169
|
+
if (provider === 'trustpilot') {
|
|
170
|
+
const widgetId = safeWidgetToken(attr(code, 'data-template-id'));
|
|
171
|
+
const embedUrl = safeWidgetToken(attr(code, 'data-businessunit-id'));
|
|
172
|
+
if (!widgetId || !embedUrl)
|
|
173
|
+
return null;
|
|
174
|
+
return { provider, widgetId, embedUrl };
|
|
175
|
+
}
|
|
176
|
+
const url = attr(code, 'data-url');
|
|
177
|
+
if (!isCalendlyUrl(url))
|
|
178
|
+
return null;
|
|
179
|
+
return { provider, widgetId: '', embedUrl: url.trim() };
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Rebuild the vendor snippet for a legacy (structured-field) widget, so the
|
|
183
|
+
* editor's embed-code box shows the real embed rather than an empty field.
|
|
184
|
+
* Returns '' when the legacy fields do not describe a valid widget.
|
|
185
|
+
*/
|
|
186
|
+
export function widgetEmbedCodeFrom(content) {
|
|
187
|
+
const parsed = parseLegacyWidgetFields(content);
|
|
188
|
+
if (!parsed)
|
|
189
|
+
return '';
|
|
190
|
+
if (parsed.provider === 'elfsight') {
|
|
191
|
+
return (`<script src="https://static.elfsight.com/platform/platform.js" async></script>\n` +
|
|
192
|
+
`<div class="elfsight-app-${parsed.widgetId}" data-elfsight-app-lazy></div>`);
|
|
193
|
+
}
|
|
194
|
+
if (parsed.provider === 'trustpilot') {
|
|
195
|
+
return (`<script src="https://widget.trustpilot.com/bootstrap/v5/tp.widget.bootstrap.min.js" async></script>\n` +
|
|
196
|
+
`<div class="trustpilot-widget" data-locale="en-US" ` +
|
|
197
|
+
`data-template-id="${parsed.widgetId}" data-businessunit-id="${parsed.embedUrl ?? ''}"></div>`);
|
|
198
|
+
}
|
|
199
|
+
return (`<div class="calendly-inline-widget" data-url="${parsed.embedUrl ?? ''}"></div>\n` +
|
|
200
|
+
`<script src="https://assets.calendly.com/assets/external/widget.js" async></script>`);
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Fill in `embedCode` for content saved before the section took pasted
|
|
204
|
+
* snippets. Applied by `coerceSections` via the registry's `migrateContent`
|
|
205
|
+
* hook, so a page authored months ago opens with its embed code in the box.
|
|
206
|
+
*
|
|
207
|
+
* The legacy keys are deliberately left in place: they cost nothing, and
|
|
208
|
+
* removing them would make a rollback lose the widget.
|
|
209
|
+
*/
|
|
210
|
+
export function migrateWidgetEmbedContent(content) {
|
|
211
|
+
const existing = content.embedCode;
|
|
212
|
+
if (typeof existing === 'string' && existing.trim())
|
|
213
|
+
return content;
|
|
214
|
+
const code = widgetEmbedCodeFrom(content);
|
|
215
|
+
if (!code)
|
|
216
|
+
return content;
|
|
217
|
+
return { ...content, embedCode: code };
|
|
218
|
+
}
|
|
219
|
+
// ─── Resolution ──────────────────────────────────────────────────────
|
|
220
|
+
/** The pre-`embedCode` shape: `provider` + `widgetId` + `embedUrl`. */
|
|
221
|
+
function parseLegacyWidgetFields(content) {
|
|
51
222
|
const provider = content.provider;
|
|
52
|
-
const minHeightPx = parseMinHeightPx(content.minHeight);
|
|
53
223
|
if (provider === 'elfsight') {
|
|
54
224
|
const widgetId = safeWidgetToken(content.widgetId);
|
|
55
225
|
if (!widgetId)
|
|
56
226
|
return null;
|
|
57
|
-
return { provider, widgetId, embedUrl: null
|
|
227
|
+
return { provider, widgetId, embedUrl: null };
|
|
58
228
|
}
|
|
59
229
|
if (provider === 'trustpilot') {
|
|
60
230
|
const widgetId = safeWidgetToken(content.widgetId);
|
|
61
231
|
const embedUrl = safeWidgetToken(content.embedUrl);
|
|
62
232
|
if (!widgetId || !embedUrl)
|
|
63
233
|
return null;
|
|
64
|
-
return { provider, widgetId, embedUrl
|
|
234
|
+
return { provider, widgetId, embedUrl };
|
|
65
235
|
}
|
|
66
236
|
if (provider === 'calendly') {
|
|
67
237
|
const embedUrl = isCalendlyUrl(content.embedUrl) ? content.embedUrl.trim() : null;
|
|
68
238
|
if (!embedUrl)
|
|
69
239
|
return null;
|
|
70
|
-
return { provider, widgetId: '', embedUrl
|
|
240
|
+
return { provider, widgetId: '', embedUrl };
|
|
71
241
|
}
|
|
72
242
|
return null;
|
|
73
243
|
}
|
|
244
|
+
/**
|
|
245
|
+
* Resolve widget section content to a parsed embed, or `null` when invalid.
|
|
246
|
+
*
|
|
247
|
+
* Pasted `embedCode` wins; the legacy structured fields are the fallback so
|
|
248
|
+
* content saved before the change keeps rendering untouched.
|
|
249
|
+
*/
|
|
250
|
+
export function parseWidgetEmbed(content) {
|
|
251
|
+
const minHeightPx = parseMinHeightPx(content.minHeight);
|
|
252
|
+
const parsed = parseEmbedCode(content.embedCode) ?? parseLegacyWidgetFields(content);
|
|
253
|
+
return parsed ? { ...parsed, minHeightPx } : null;
|
|
254
|
+
}
|
|
74
255
|
function parseSchemaRatingValue(raw) {
|
|
75
256
|
const n = typeof raw === 'string' ? Number.parseFloat(raw) : Number(raw);
|
|
76
257
|
if (!Number.isFinite(n) || n < 1 || n > 5)
|