@builder.io/sdk-react 2.0.8 → 2.0.9
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/lib/browser/blocks-exports.cjs +16 -16
- package/lib/browser/blocks-exports.mjs +36 -36
- package/lib/browser/index.cjs +1 -1
- package/lib/browser/index.mjs +1 -1
- package/lib/browser/init.cjs +1 -1
- package/lib/browser/init.mjs +1 -1
- package/lib/browser/{server-entry-ba3e0524.cjs → server-entry-16fc27fe.cjs} +2 -2
- package/lib/{node/server-entry-f6ee5d92.js → browser/server-entry-8bf52a55.js} +74 -73
- package/lib/browser/server-entry.cjs +1 -1
- package/lib/browser/server-entry.mjs +1 -1
- package/lib/edge/{accordion-ef5e6161.js → accordion-589b3ac8.js} +1 -1
- package/lib/edge/{accordion-88007399.cjs → accordion-afed3bd3.cjs} +1 -1
- package/lib/edge/{blocks-dc478c97.cjs → blocks-854f4022.cjs} +1 -1
- package/lib/edge/blocks-exports.cjs +1 -1
- package/lib/edge/blocks-exports.mjs +2 -2
- package/lib/edge/{blocks-90fd2fd8.js → blocks-fdb24842.js} +3 -3
- package/lib/edge/{button-8d307faf.js → button-08412b69.js} +2 -2
- package/lib/edge/{button-228f448d.cjs → button-26b76a4a.cjs} +1 -1
- package/lib/edge/{columns-77b7011a.js → columns-bd2a004b.js} +4 -4
- package/lib/edge/{columns-3547be8c.cjs → columns-ccdafcc7.cjs} +1 -1
- package/lib/edge/{content-variants-4f7cad1a.js → content-variants-dd7ea0f9.js} +11 -11
- package/lib/edge/{content-variants-f0edf280.cjs → content-variants-fc207487.cjs} +4 -4
- package/lib/edge/{evaluate-39c2c786.cjs → evaluate-3991fda5.cjs} +1 -1
- package/lib/edge/{evaluate-384a03ed.js → evaluate-e2f692df.js} +1 -1
- package/lib/edge/{form-c6da17f5.cjs → form-5eb85abf.cjs} +1 -1
- package/lib/edge/{form-d40e9eca.js → form-b9148162.js} +4 -4
- package/lib/edge/{get-class-prop-name-767dbeb0.js → get-class-prop-name-0c783f8c.js} +1 -1
- package/lib/edge/{get-class-prop-name-4f8743e9.cjs → get-class-prop-name-2fa91d70.cjs} +1 -1
- package/lib/edge/{img-c50b3839.cjs → img-2f30658b.cjs} +1 -1
- package/lib/edge/{img-d650b796.js → img-602f7d3a.js} +1 -1
- package/lib/edge/index.cjs +1 -1
- package/lib/edge/index.mjs +1 -1
- package/lib/edge/init.cjs +1 -1
- package/lib/edge/init.mjs +1 -1
- package/lib/edge/{input-5646dcb2.js → input-4c791db9.js} +1 -1
- package/lib/edge/{input-aaba7df0.cjs → input-551362f3.cjs} +1 -1
- package/lib/edge/{select-d3905dcd.js → select-d1391d12.js} +1 -1
- package/lib/edge/{select-2e7bf7d0.cjs → select-eb26f837.cjs} +1 -1
- package/lib/edge/server-entry-7b4fa72f.cjs +2 -0
- package/lib/edge/{server-entry-29a170e3.js → server-entry-c537d834.js} +59 -58
- package/lib/edge/server-entry.cjs +1 -1
- package/lib/edge/server-entry.mjs +1 -1
- package/lib/edge/{slot-82c0b340.js → slot-d375d5eb.js} +4 -4
- package/lib/edge/{slot-695259cf.cjs → slot-d723d000.cjs} +1 -1
- package/lib/edge/{symbol-5a6a783f.cjs → symbol-6c18ca90.cjs} +1 -1
- package/lib/edge/{symbol-91897bd4.js → symbol-8b3a6b98.js} +2 -2
- package/lib/edge/{tabs-a191e7b1.js → tabs-1e47cfd4.js} +4 -4
- package/lib/edge/{tabs-4c4a6b19.cjs → tabs-8296bce7.cjs} +1 -1
- package/lib/edge/{text-7a00e2f8.cjs → text-9eac9e4d.cjs} +1 -1
- package/lib/edge/{text-ca974245.js → text-d3c86634.js} +2 -2
- package/lib/node/blocks-exports.cjs +2 -2
- package/lib/node/blocks-exports.mjs +2 -2
- package/lib/node/index.cjs +1 -1
- package/lib/node/index.mjs +2 -2
- package/lib/node/init.cjs +1 -1
- package/lib/node/init.mjs +2 -2
- package/lib/node/{node-runtime-a6fb6ac7.cjs → node-runtime-c7c85f6c.cjs} +1 -1
- package/lib/node/{node-runtime-d8e6d827.js → node-runtime-e41e9eb6.js} +1 -1
- package/lib/node/{server-entry-ba3e0524.cjs → server-entry-16fc27fe.cjs} +2 -2
- package/lib/{browser/server-entry-f6ee5d92.js → node/server-entry-8bf52a55.js} +74 -73
- package/lib/node/server-entry.cjs +1 -1
- package/lib/node/server-entry.mjs +1 -1
- package/package.json +1 -1
- package/types/constants/sdk-version.d.ts +1 -1
- package/types/functions/register-component.d.ts +1 -1
- package/lib/edge/server-entry-b0e7430b.cjs +0 -2
|
@@ -3,7 +3,7 @@ var qe = Object.defineProperty;
|
|
|
3
3
|
var Ke = (e, t, n) => t in e ? qe(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
4
4
|
var ie = (e, t, n) => (Ke(e, typeof t != "symbol" ? t + "" : t, n), n);
|
|
5
5
|
import { jsx as s, Fragment as R, jsxs as V } from "react/jsx-runtime";
|
|
6
|
-
import { TARGET as q, isEditing as
|
|
6
|
+
import { TARGET as q, isEditing as $, isBrowser as M, getUserAttributes as ze, checkIsDefined as G, logger as Z, registerInsertMenu as _e, setupBrowserForEditing as Je, createRegisterComponentMessage as Ye, getDefaultCanTrack as Q, _track as he, isPreviewing as Ge, fetchOneEntry as we, createEditorListener as Qe, fetch as Xe, serializeIncludingFunctions as ge, handleABTestingSync as Ze } from "./server-entry-8bf52a55.js";
|
|
7
7
|
import { createContext as Re, useState as T, useEffect as P, useContext as be, useRef as ee, createElement as Ee } from "react";
|
|
8
8
|
const et = /* @__PURE__ */ new Set(["area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]), tt = (e) => typeof e == "string" && et.has(e.toLowerCase());
|
|
9
9
|
function de(e) {
|
|
@@ -82,7 +82,7 @@ const ot = ({
|
|
|
82
82
|
context: t,
|
|
83
83
|
event: n
|
|
84
84
|
}), at = () => ({
|
|
85
|
-
isEditing:
|
|
85
|
+
isEditing: $(),
|
|
86
86
|
isBrowser: M(),
|
|
87
87
|
isServer: !M(),
|
|
88
88
|
getUserAttributes: () => ze()
|
|
@@ -359,10 +359,10 @@ function ht(e) {
|
|
|
359
359
|
}), r();
|
|
360
360
|
});
|
|
361
361
|
}
|
|
362
|
-
const
|
|
362
|
+
const Fe = (e) => Object.entries(e).map(([n, i]) => {
|
|
363
363
|
if (typeof i == "string")
|
|
364
364
|
return `${te(n)}: ${i};`;
|
|
365
|
-
}).filter(G), gt = (e) =>
|
|
365
|
+
}).filter(G), gt = (e) => Fe(e).join(`
|
|
366
366
|
`), J = ({
|
|
367
367
|
mediaQuery: e,
|
|
368
368
|
className: t,
|
|
@@ -383,18 +383,18 @@ function bt({
|
|
|
383
383
|
const pt = ({
|
|
384
384
|
block: e,
|
|
385
385
|
context: t
|
|
386
|
-
}) =>
|
|
386
|
+
}) => $e(bt({
|
|
387
387
|
style: e.style || {},
|
|
388
388
|
context: t,
|
|
389
389
|
block: e
|
|
390
390
|
}));
|
|
391
|
-
function
|
|
391
|
+
function $e(e) {
|
|
392
392
|
switch (q) {
|
|
393
393
|
case "svelte":
|
|
394
394
|
case "vue":
|
|
395
395
|
case "solid":
|
|
396
396
|
case "angular":
|
|
397
|
-
return
|
|
397
|
+
return Fe(e).join(" ");
|
|
398
398
|
case "qwik":
|
|
399
399
|
case "reactNative":
|
|
400
400
|
case "react":
|
|
@@ -919,7 +919,7 @@ function Wt(e) {
|
|
|
919
919
|
}
|
|
920
920
|
function n() {
|
|
921
921
|
var o, r;
|
|
922
|
-
|
|
922
|
+
$() && !((o = e.blocks) != null && o.length) && ((r = window.parent) == null || r.postMessage(
|
|
923
923
|
{
|
|
924
924
|
type: "builder.clickEmptyBlocks",
|
|
925
925
|
data: {
|
|
@@ -932,7 +932,7 @@ function Wt(e) {
|
|
|
932
932
|
}
|
|
933
933
|
function i() {
|
|
934
934
|
var o, r;
|
|
935
|
-
|
|
935
|
+
$() && !((o = e.blocks) != null && o.length) && ((r = window.parent) == null || r.postMessage(
|
|
936
936
|
{
|
|
937
937
|
type: "builder.hoverEmptyBlocks",
|
|
938
938
|
data: {
|
|
@@ -990,8 +990,8 @@ function D(e) {
|
|
|
990
990
|
}
|
|
991
991
|
);
|
|
992
992
|
}
|
|
993
|
-
const
|
|
994
|
-
function
|
|
993
|
+
const Ft = (e) => `builder-columns ${e}-breakpoints`;
|
|
994
|
+
function $t(e) {
|
|
995
995
|
var A, O;
|
|
996
996
|
const [t, n] = T(
|
|
997
997
|
() => typeof e.space == "number" ? e.space || 0 : 20
|
|
@@ -1101,14 +1101,14 @@ function Ft(e) {
|
|
|
1101
1101
|
href: x.link
|
|
1102
1102
|
} : {},
|
|
1103
1103
|
[z()]: "builder-column",
|
|
1104
|
-
style:
|
|
1104
|
+
style: $e(C(w))
|
|
1105
1105
|
};
|
|
1106
1106
|
}
|
|
1107
1107
|
return /* @__PURE__ */ V(R, { children: [
|
|
1108
1108
|
/* @__PURE__ */ V(
|
|
1109
1109
|
"div",
|
|
1110
1110
|
{
|
|
1111
|
-
className:
|
|
1111
|
+
className: Ft((A = e.builderBlock) == null ? void 0 : A.id) + " div-34f576bb",
|
|
1112
1112
|
style: y(),
|
|
1113
1113
|
children: [
|
|
1114
1114
|
/* @__PURE__ */ s(
|
|
@@ -2635,7 +2635,7 @@ function fn(e) {
|
|
|
2635
2635
|
e.builderContext.rootSetState ? (p = (C = e.builderContext).rootSetState) == null || p.call(C, y) : e.builderContext.rootState = y;
|
|
2636
2636
|
}
|
|
2637
2637
|
function d() {
|
|
2638
|
-
return
|
|
2638
|
+
return $() && e.previewState || n;
|
|
2639
2639
|
}
|
|
2640
2640
|
function f(g) {
|
|
2641
2641
|
var C;
|
|
@@ -2845,7 +2845,7 @@ function gn(e) {
|
|
|
2845
2845
|
"input",
|
|
2846
2846
|
{
|
|
2847
2847
|
...e.attributes,
|
|
2848
|
-
key:
|
|
2848
|
+
key: $() && e.defaultValue ? e.defaultValue : "default-key",
|
|
2849
2849
|
placeholder: e.placeholder,
|
|
2850
2850
|
type: e.type,
|
|
2851
2851
|
name: e.name,
|
|
@@ -2905,7 +2905,7 @@ function pn(e) {
|
|
|
2905
2905
|
{
|
|
2906
2906
|
...e.attributes,
|
|
2907
2907
|
value: e.value,
|
|
2908
|
-
key:
|
|
2908
|
+
key: $() && e.defaultValue ? e.defaultValue : "default-key",
|
|
2909
2909
|
defaultValue: e.defaultValue,
|
|
2910
2910
|
name: e.name,
|
|
2911
2911
|
required: e.required
|
|
@@ -3019,7 +3019,7 @@ function Cn(e) {
|
|
|
3019
3019
|
src: e.imgSrc || e.image,
|
|
3020
3020
|
...e.attributes
|
|
3021
3021
|
},
|
|
3022
|
-
|
|
3022
|
+
$() && e.imgSrc || "default-key"
|
|
3023
3023
|
);
|
|
3024
3024
|
}
|
|
3025
3025
|
const Tn = {
|
|
@@ -3239,7 +3239,7 @@ const wn = () => [{
|
|
|
3239
3239
|
component: nt,
|
|
3240
3240
|
...qt
|
|
3241
3241
|
}, {
|
|
3242
|
-
component:
|
|
3242
|
+
component: $t,
|
|
3243
3243
|
...Kt
|
|
3244
3244
|
}, {
|
|
3245
3245
|
component: Dt,
|
|
@@ -3398,7 +3398,7 @@ const Wn = (e, t, n = !0) => {
|
|
|
3398
3398
|
return i;
|
|
3399
3399
|
} while (i = i.parentElement);
|
|
3400
3400
|
return null;
|
|
3401
|
-
},
|
|
3401
|
+
}, Fn = (e) => Wn(e, (t) => {
|
|
3402
3402
|
const n = t.getAttribute("builder-id") || t.id;
|
|
3403
3403
|
return (n == null ? void 0 : n.indexOf("builder-")) === 0;
|
|
3404
3404
|
}), Te = ({
|
|
@@ -3410,8 +3410,8 @@ const Wn = (e, t, n = !0) => {
|
|
|
3410
3410
|
x: r,
|
|
3411
3411
|
y: a
|
|
3412
3412
|
};
|
|
3413
|
-
},
|
|
3414
|
-
const t = e.target, n = t &&
|
|
3413
|
+
}, $n = (e) => {
|
|
3414
|
+
const t = e.target, n = t && Fn(t), i = (n == null ? void 0 : n.getAttribute("builder-id")) || (n == null ? void 0 : n.id);
|
|
3415
3415
|
return {
|
|
3416
3416
|
targetBuilderElement: i || void 0,
|
|
3417
3417
|
metadata: {
|
|
@@ -3507,8 +3507,8 @@ function Hn(e) {
|
|
|
3507
3507
|
breakpoints: ((I = h == null ? void 0 : h.meta) == null ? void 0 : I.breakpoints) || ((j = (W = e.builderContextSignal.content) == null ? void 0 : W.meta) == null ? void 0 : j.breakpoints)
|
|
3508
3508
|
}
|
|
3509
3509
|
};
|
|
3510
|
-
e.setBuilderContextSignal((
|
|
3511
|
-
|
|
3510
|
+
e.setBuilderContextSignal((F) => ({
|
|
3511
|
+
...F,
|
|
3512
3512
|
content: v
|
|
3513
3513
|
}));
|
|
3514
3514
|
}
|
|
@@ -3570,7 +3570,7 @@ function Hn(e) {
|
|
|
3570
3570
|
contentId: I,
|
|
3571
3571
|
apiKey: e.apiKey,
|
|
3572
3572
|
variationId: k !== I ? k : void 0,
|
|
3573
|
-
|
|
3573
|
+
...$n(h),
|
|
3574
3574
|
unique: !g
|
|
3575
3575
|
});
|
|
3576
3576
|
}
|
|
@@ -3580,12 +3580,12 @@ function Hn(e) {
|
|
|
3580
3580
|
var v, S, k;
|
|
3581
3581
|
const h = (k = (S = (v = e.builderContextSignal.content) == null ? void 0 : v.data) == null ? void 0 : S.httpRequests) != null ? k : {};
|
|
3582
3582
|
Object.entries(h).forEach(([I, W]) => {
|
|
3583
|
-
if (!W || u[I] || d[I] &&
|
|
3583
|
+
if (!W || u[I] || d[I] && !$())
|
|
3584
3584
|
return;
|
|
3585
3585
|
u[I] = !0;
|
|
3586
3586
|
const j = W.replace(
|
|
3587
3587
|
/{{([^}]+)}}/g,
|
|
3588
|
-
(
|
|
3588
|
+
(F, He) => String(
|
|
3589
3589
|
H({
|
|
3590
3590
|
code: He,
|
|
3591
3591
|
context: e.context || {},
|
|
@@ -3596,19 +3596,19 @@ function Hn(e) {
|
|
|
3596
3596
|
})
|
|
3597
3597
|
)
|
|
3598
3598
|
);
|
|
3599
|
-
Xe(j).then((
|
|
3599
|
+
Xe(j).then((F) => F.json()).then((F) => {
|
|
3600
3600
|
n({
|
|
3601
|
-
[I]:
|
|
3601
|
+
[I]: F
|
|
3602
3602
|
}), d[I] = !0;
|
|
3603
|
-
}).catch((
|
|
3604
|
-
console.error("error fetching dynamic data", W,
|
|
3603
|
+
}).catch((F) => {
|
|
3604
|
+
console.error("error fetching dynamic data", W, F);
|
|
3605
3605
|
}).finally(() => {
|
|
3606
3606
|
u[I] = !1;
|
|
3607
3607
|
});
|
|
3608
3608
|
});
|
|
3609
3609
|
}
|
|
3610
3610
|
function B() {
|
|
3611
|
-
|
|
3611
|
+
$() && window.dispatchEvent(
|
|
3612
3612
|
new CustomEvent(
|
|
3613
3613
|
"builder:component:stateChange",
|
|
3614
3614
|
{
|
|
@@ -3625,7 +3625,7 @@ function Hn(e) {
|
|
|
3625
3625
|
return P(() => {
|
|
3626
3626
|
var h, v;
|
|
3627
3627
|
if (M()) {
|
|
3628
|
-
if (
|
|
3628
|
+
if ($() && (window.addEventListener("message", l), _e(), Je({
|
|
3629
3629
|
...e.locale ? {
|
|
3630
3630
|
locale: e.locale
|
|
3631
3631
|
} : {},
|
|
@@ -3654,7 +3654,7 @@ function Hn(e) {
|
|
|
3654
3654
|
variationId: k !== I ? k : void 0
|
|
3655
3655
|
});
|
|
3656
3656
|
}
|
|
3657
|
-
if (Ge() &&
|
|
3657
|
+
if (Ge() && !$()) {
|
|
3658
3658
|
const k = new URL(location.href).searchParams, I = k.get("builder.preview"), W = k.get(
|
|
3659
3659
|
`builder.overrides.${I}`
|
|
3660
3660
|
), j = k.get("apiKey") || k.get("builder.space");
|
|
@@ -3662,8 +3662,8 @@ function Hn(e) {
|
|
|
3662
3662
|
model: e.model,
|
|
3663
3663
|
apiKey: e.apiKey,
|
|
3664
3664
|
apiVersion: e.builderContextSignal.apiVersion
|
|
3665
|
-
}).then((
|
|
3666
|
-
|
|
3665
|
+
}).then((F) => {
|
|
3666
|
+
F && i(F);
|
|
3667
3667
|
});
|
|
3668
3668
|
}
|
|
3669
3669
|
}
|
|
@@ -4077,7 +4077,7 @@ export {
|
|
|
4077
4077
|
D as Blocks,
|
|
4078
4078
|
ue as BuilderContext,
|
|
4079
4079
|
nt as Button,
|
|
4080
|
-
|
|
4080
|
+
$t as Columns,
|
|
4081
4081
|
_n as Content,
|
|
4082
4082
|
Dt as Fragment,
|
|
4083
4083
|
jt as Image,
|
package/lib/browser/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./blocks-exports.cjs"),e=require("./server-entry-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("./blocks-exports.cjs"),e=require("./server-entry-16fc27fe.cjs");require("react/jsx-runtime");require("react");exports.Blocks=t.Blocks;exports.BuilderContext=t.BuilderContext;exports.Button=t.Button;exports.Columns=t.Columns;exports.Content=t.Content;exports.Fragment=t.Fragment;exports.Image=t.Image;exports.Section=t.Section;exports.Symbol=t.Symbol;exports.Text=t.Text;exports.Video=t.Video;exports._processContentResult=e._processContentResult;exports.createRegisterComponentMessage=e.createRegisterComponentMessage;exports.fetchBuilderProps=e.fetchBuilderProps;exports.fetchEntries=e.fetchEntries;exports.fetchOneEntry=e.fetchOneEntry;exports.getBuilderSearchParams=e.getBuilderSearchParams;exports.isEditing=e.isEditing;exports.isPreviewing=e.isPreviewing;exports.register=e.register;exports.setEditorSettings=e.setEditorSettings;exports.subscribeToEditor=e.subscribeToEditor;exports.track=e.track;
|
package/lib/browser/index.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Blocks as i, BuilderContext as s, Button as n, Columns as c, Content as m, Fragment as g, Image as a, Section as d, Symbol as l, Text as p, Video as u } from "./blocks-exports.mjs";
|
|
2
|
-
import { _processContentResult as B, createRegisterComponentMessage as C, fetchBuilderProps as E, fetchEntries as h, fetchOneEntry as x, getBuilderSearchParams as S, isEditing as b, isPreviewing as P, register as k, setEditorSettings as y, subscribeToEditor as R, track as T } from "./server-entry-
|
|
2
|
+
import { _processContentResult as B, createRegisterComponentMessage as C, fetchBuilderProps as E, fetchEntries as h, fetchOneEntry as x, getBuilderSearchParams as S, isEditing as b, isPreviewing as P, register as k, setEditorSettings as y, subscribeToEditor as R, track as T } from "./server-entry-8bf52a55.js";
|
|
3
3
|
import "react/jsx-runtime";
|
|
4
4
|
import "react";
|
|
5
5
|
export {
|
package/lib/browser/init.cjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ivm=require("isolated-vm"),serverEntry=require("./server-entry-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ivm=require("isolated-vm"),serverEntry=require("./server-entry-16fc27fe.cjs"),SDK_NAME_FOR_TARGET=(()=>{switch(serverEntry.TARGET){case"rsc":return"react-nextjs";case"reactNative":return"react-native";default:return serverEntry.TARGET}})(),SDK_NAME=`@builder.io/sdk-${SDK_NAME_FOR_TARGET}`,noop=()=>{};let safeDynamicRequire=noop;try{safeDynamicRequire=eval("require")}catch(t){}const INJECTED_IVM_GLOBAL="BUILDER_IVM";let IVM_INSTANCE=null;const setIvm=(t,e={})=>{IVM_INSTANCE=t,setIsolateContext(e)},SHOULD_MENTION_INITIALIZE_SCRIPT=SDK_NAME==="@builder.io/sdk-react-nextjs"||SDK_NAME==="@builder.io/sdk-react",getIvm=()=>{try{if(IVM_INSTANCE)return IVM_INSTANCE;const e=safeDynamicRequire("isolated-vm");if(e)return e}catch(e){serverEntry.logger.error("isolated-vm import error.",e)}const t=`${serverEntry.MSG_PREFIX}could not import \`isolated-vm\` module for safe script execution on a Node server.
|
|
2
2
|
|
|
3
3
|
SOLUTION: In a server-only execution path within your application, do one of the following:
|
|
4
4
|
|
package/lib/browser/init.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const I="react",b="[Builder.io]: ",d={log:(...e)=>console.log(b,...e),error:(...e)=>console.error(b,...e),warn:(...e)=>console.warn(b,...e),debug:(...e)=>console.debug(b,...e)};function c(){return typeof window!="undefined"&&typeof document!="undefined"}const ce=e=>{const t={};return e.forEach((n,r)=>{t[r]=n}),t},
|
|
2
|
-
For more information, read https://github.com/BuilderIO/this-package-uses-fetch`),new Error("Builder SDK could not find a global `fetch` function");return e}const z=Ce();function E(e,t=null,n="."){return Object.keys(e).reduce((r,o)=>{const s=e[o],a=[t,o].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...r,...E(s,a,n)}:{...r,[a]:s}},{})}function J(e,t,n={}){for(const r in e){const o=e[r],s=t?t+"."+r:r;o&&typeof o=="object"&&!Array.isArray(o)&&!Object.keys(o).find(a=>a.startsWith("$"))?J(o,s,n):n[s]=o}return n}const Oe="v3",
|
|
1
|
+
"use strict";const I="react",b="[Builder.io]: ",d={log:(...e)=>console.log(b,...e),error:(...e)=>console.error(b,...e),warn:(...e)=>console.warn(b,...e),debug:(...e)=>console.debug(b,...e)};function c(){return typeof window!="undefined"&&typeof document!="undefined"}const ce=e=>{const t={};return e.forEach((n,r)=>{t[r]=n}),t},M=e=>e instanceof URLSearchParams?ce(e):e,U=e=>typeof e=="string"?e:e instanceof URLSearchParams?e.toString():new URLSearchParams(e).toString();function ue(){return c()&&window.self!==window.top}function F(e){return ue()&&U(e||window.location.search).indexOf("builder.frameEditing=")!==-1}const de=()=>{if(c()){const e=new URL(location.href);return e.pathname===""&&(e.pathname="/"),e}else return console.warn("Cannot get location for tracking in non-browser environment"),null},le=()=>typeof navigator=="object"&&navigator.userAgent||"",N=()=>{const e=le(),t={Android(){return e.match(/Android/i)},BlackBerry(){return e.match(/BlackBerry/i)},iOS(){return e.match(/iPhone|iPod/i)},Opera(){return e.match(/Opera Mini/i)},Windows(){return e.match(/IEMobile/i)||e.match(/WPDesktop/i)},any(){return t.Android()||t.BlackBerry()||t.iOS()||t.Opera()||t.Windows()||I==="reactNative"}},n=e.match(/Tablet|iPad/i),r=de();return{urlPath:r==null?void 0:r.pathname,host:(r==null?void 0:r.host)||(r==null?void 0:r.hostname),device:n?"tablet":t.any()?"mobile":"desktop"}},p=e=>e!=null,fe=e=>{if(e==="localhost"||e==="127.0.0.1")return e;const t=e.split(".");return t.length>2?t.slice(1).join("."):e},D=({name:e,canTrack:t})=>{var n;try{return t?(n=document.cookie.split("; ").find(r=>r.startsWith(`${e}=`)))==null?void 0:n.split("=")[1]:void 0}catch(r){d.warn("[COOKIE] GET error: ",(r==null?void 0:r.message)||r);return}},j=async e=>D(e),ge=e=>e.map(([t,n])=>n?`${t}=${n}`:t).filter(p).join("; "),he=[["secure",""],["SameSite","None"]],pe=({name:e,value:t,expires:n})=>{const o=(c()?location.protocol==="https:":!0)?he:[[]],s=n?[["expires",n.toUTCString()]]:[[]],a=[[e,t],...s,["path","/"],["domain",fe(window.location.hostname)],...o];return ge(a)},K=async({name:e,value:t,expires:n,canTrack:r})=>{try{if(!r)return;const o=pe({name:e,value:t,expires:n});document.cookie=o}catch(o){d.warn("[COOKIE] SET error: ",(o==null?void 0:o.message)||o)}},me="builder.tests",k=e=>`${me}.${e}`,ye=({contentId:e})=>j({name:k(e),canTrack:!0}),Se=({contentId:e})=>D({name:k(e),canTrack:!0}),we=({contentId:e,value:t})=>K({name:k(e),value:t,canTrack:!0}),_=e=>p(e.id)&&p(e.variations)&&Object.keys(e.variations).length>0,be=({id:e,variations:t})=>{var o;let n=0;const r=Math.random();for(const s in t){const a=(o=t[s])==null?void 0:o.testRatio;if(n+=a,r<n)return s}return e},W=e=>{const t=be(e);return we({contentId:e.id,value:t}).catch(n=>{d.error("could not store A/B test variation: ",n)}),t},$=({item:e,testGroupId:t})=>{const n=e.variations[t];return t===e.id||!n?{testVariationId:e.id,testVariationName:"Default"}:{data:n.data,testVariationId:n.id,testVariationName:n.name||(n.id===e.id?"Default":"")}},Ie=({item:e,canTrack:t})=>{if(!t)return e;if(!e)return;if(!_(e))return e;const n=Se({contentId:e.id})||W({variations:e.variations,id:e.id}),r=$({item:e,testGroupId:n});return{...e,...r}},ve=async({item:e,canTrack:t})=>{if(!t||!_(e))return e;const r=await ye({contentId:e.id})||W({variations:e.variations,id:e.id}),o=$({item:e,testGroupId:r});return{...e,...o}},G=e=>p(e)?e:!0,Ee=e=>({type:"builder.registerComponent",data:P(e)}),ke=e=>{const t=e.toString().trim();return`return (${!t.startsWith("function")&&!t.startsWith("(")?"function ":""}${t}).apply(this, arguments)`};function P(e){return JSON.parse(JSON.stringify(e,(t,n)=>typeof n=="function"?ke(n):n))}function Pe(){return typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:globalThis}function Ce(){const e=Pe().fetch;if(typeof e=="undefined")throw console.warn(`Builder SDK could not find a global fetch function. Make sure you have a polyfill for fetch in your project.
|
|
2
|
+
For more information, read https://github.com/BuilderIO/this-package-uses-fetch`),new Error("Builder SDK could not find a global `fetch` function");return e}const z=Ce();function E(e,t=null,n="."){return Object.keys(e).reduce((r,o)=>{const s=e[o],a=[t,o].filter(Boolean).join(n);return[typeof s=="object",s!==null,!(Array.isArray(s)&&s.length===0)].every(Boolean)?{...r,...E(s,a,n)}:{...r,[a]:s}},{})}function J(e,t,n={}){for(const r in e){const o=e[r],s=t?t+"."+r:r;o&&typeof o=="object"&&!Array.isArray(o)&&!Object.keys(o).find(a=>a.startsWith("$"))?J(o,s,n):n[s]=o}return n}const Oe="v3",x="builder.",Ae="options.",C=e=>{if(!e)return{};const t=M(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(x)){const o=r.replace(x,"").replace(Ae,"");n[o]=t[r]}}),n},Te=()=>{if(!c())return{};const e=new URLSearchParams(window.location.search);return C(e)},R=e=>typeof e=="number"&&!isNaN(e)&&e>=0,O=e=>{const{limit:t=30,userAttributes:n,query:r,model:o,apiKey:s,enrich:a,locale:l,apiVersion:y=Oe,fields:m,omit:v,offset:u,cacheSeconds:g,staleCacheSeconds:h,sort:S,includeUnpublished:A}=e;if(!s)throw new Error("Missing API key");if(!["v3"].includes(y))throw new Error(`Invalid apiVersion: expected 'v3', received '${y}'`);const ie=t!==1,i=new URL(`https://cdn.builder.io/api/${y}/content/${o}`);if(i.searchParams.set("apiKey",s),i.searchParams.set("limit",String(t)),i.searchParams.set("noTraverse",String(ie)),i.searchParams.set("includeRefs",String(!0)),l&&i.searchParams.set("locale",l),a&&i.searchParams.set("enrich",String(a)),i.searchParams.set("omit",v||"meta.componentsUsed"),m&&i.searchParams.set("fields",m),Number.isFinite(u)&&u>-1&&i.searchParams.set("offset",String(Math.floor(u))),typeof A=="boolean"&&i.searchParams.set("includeUnpublished",String(A)),g&&R(g)&&i.searchParams.set("cacheSeconds",String(g)),h&&R(h)&&i.searchParams.set("staleCacheSeconds",String(h)),S){const f=E({sort:S});for(const w in f)i.searchParams.set(w,JSON.stringify(f[w]))}const ae={...Te(),...M(e.options||{})},T=E(ae);for(const f in T)i.searchParams.set(f,String(T[f]));if(n&&i.searchParams.set("userAttributes",JSON.stringify(n)),r){const f=J({query:r});for(const w in f)i.searchParams.set(w,JSON.stringify(f[w]))}return i},xe=e=>"results"in e;async function H(e){const t=await q({...e,limit:1});return t&&t[0]||null}const Re=async e=>{var s;const t=O(e);return await(await((s=e.fetch)!=null?s:z)(t.href,e.fetchOptions)).json()},X=async(e,t,n=O(e))=>{const r=G(e.canTrack);if(n.search.includes("preview="),!r||!(c()||I==="reactNative"))return t.results;try{const o=[];for(const s of t.results)o.push(await ve({item:s,canTrack:r}));t.results=o}catch(o){d.error("Could not process A/B tests. ",o)}return t.results};async function q(e){try{const t=O(e),n=await Re(e);return xe(n)?X(e,n):(d.error("Error fetching data. ",{url:t,content:n,options:e}),null)}catch(t){return d.error("Error fetching data. ",t),null}}function Be(e){const t=e||(c()?window.location.search:void 0);return t?U(t).indexOf("builder.preview=")!==-1:!1}function Le(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g,function(e){const t=Math.random()*16|0;return(e=="x"?t:t&3|8).toString(16)})}function Q(){return Le().replace(/-/g,"")}const Y="builderSessionId",Ve=async({canTrack:e})=>{if(!e)return;const t=await j({name:Y,canTrack:e});if(p(t))return t;{const n=Me();return Ue({id:n,canTrack:e}),n}},Me=()=>Q(),Ue=({id:e,canTrack:t})=>K({name:Y,value:e,canTrack:t}),Z=()=>c()&&typeof localStorage!="undefined"?localStorage:void 0,Fe=({key:e,canTrack:t})=>{var n;try{return t?(n=Z())==null?void 0:n.getItem(e):void 0}catch(r){console.debug("[LocalStorage] GET error: ",r);return}},Ne=({key:e,canTrack:t,value:n})=>{var r;try{t&&((r=Z())==null||r.setItem(e,n))}catch(o){console.debug("[LocalStorage] SET error: ",o)}},ee="builderVisitorId",De=({canTrack:e})=>{if(!e)return;const t=Fe({key:ee,canTrack:e});if(p(t))return t;{const n=je();return Ke({id:n,canTrack:e}),n}},je=()=>Q(),Ke=({id:e,canTrack:t})=>Ne({key:ee,value:e,canTrack:t}),_e=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await Ve({canTrack:e}),n=De({canTrack:e});return{sessionId:t,visitorId:n}},We=async({type:e,canTrack:t,apiKey:n,metadata:r,...o})=>({type:e,data:{...o,metadata:{url:location.href,...r},...await _e({canTrack:t}),userAttributes:N(),ownerId:n}});async function te(e){if(!e.apiKey){d.error("Missing API key for track call. Please provide your API key.");return}if(e.canTrack&&!F()&&(c()||I==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await We(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const $e=e=>te({...e,canTrack:!0}),Ge=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function ne(e,t){if(!t.origin.startsWith("http")&&!t.origin.startsWith("https"))return!1;const n=new URL(t.origin),r=n.hostname;return(e||Ge).findIndex(o=>o.startsWith("*.")?r.endsWith(o.slice(1)):o===r)>-1}const ze="2.0.9",B={};function re(e,t){e==="plugin"&&(t=P(t));let n=B[e];if(n||(n=B[e]=[]),n.push(t),c()){const r={type:"builder.register",data:{type:e,info:t}};try{parent.postMessage(r,"*"),parent!==window&&window.postMessage(r,"*")}catch(o){console.debug("Could not postmessage",o)}}}const Je=()=>{re("insertMenu",{name:"_default",default:!0,items:[{name:"Box"},{name:"Text"},{name:"Image"},{name:"Columns"},{name:"Core:Section"},{name:"Core:Button"},{name:"Embed"},{name:"Custom Code"}]})};let L=!1;const oe=(e={})=>{var t,n;L||(L=!0,c()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:I,version:ze,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",r=>{var s,a;if(!ne(e.trustedHosts,r))return;const{data:o}=r;if(o!=null&&o.type)switch(o.type){case"builder.evaluate":{const l=o.data.text,y=o.data.arguments||[],m=o.data.id,v=new Function(l);let u,g=null;try{u=v.apply(null,y)}catch(h){g=h}g?(s=window.parent)==null||s.postMessage({type:"builder.evaluateError",data:{id:m,error:g.message}},"*"):u&&typeof u.then=="function"?u.then(h=>{var S;(S=window.parent)==null||S.postMessage({type:"builder.evaluateResult",data:{id:m,result:h}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:u,id:m}},"*");break}}})))},se=({model:e,trustedHosts:t,callbacks:n})=>r=>{if(!ne(t,r))return;const{data:o}=r;if(o)switch(o.type){case"builder.configureSdk":{n.configureSdk(o.data);break}case"builder.triggerAnimation":{n.animation(o.data);break}case"builder.contentUpdate":{const s=o.data,a=s.key||s.alias||s.entry||s.modelName,l=s.data;a===e&&n.contentUpdate(l);break}}},He=(e,t,n)=>{if(!c)return d.warn("`subscribeToEditor` only works in the browser. It currently seems to be running on the server."),()=>{};oe();const r=se({callbacks:{contentUpdate:t,animation:()=>{},configureSdk:()=>{}},model:e,trustedHosts:n==null?void 0:n.trustedHosts});return window.addEventListener("message",r),()=>{window.removeEventListener("message",r)}},V={};function Xe(e){if(c()){Object.assign(V,e);const t={type:"builder.settingsChange",data:V};parent.postMessage(t,"*")}}const qe=async e=>{var r,o,s;const t=e.path||((r=e.url)==null?void 0:r.pathname)||((o=e.userAttributes)==null?void 0:o.urlPath),n={...e,apiKey:e.apiKey,model:e.model||"page",userAttributes:{...e.userAttributes,...t?{urlPath:t}:{}},options:C(e.searchParams||((s=e.url)==null?void 0:s.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await H(n)}};exports.MSG_PREFIX=b;exports.TARGET=I;exports._processContentResult=X;exports._track=te;exports.checkIsDefined=p;exports.createEditorListener=se;exports.createRegisterComponentMessage=Ee;exports.fetch=z;exports.fetchBuilderProps=qe;exports.fetchEntries=q;exports.fetchOneEntry=H;exports.getBuilderSearchParams=C;exports.getDefaultCanTrack=G;exports.getUserAttributes=N;exports.handleABTestingSync=Ie;exports.isBrowser=c;exports.isEditing=F;exports.isPreviewing=Be;exports.logger=d;exports.register=re;exports.registerInsertMenu=Je;exports.serializeIncludingFunctions=P;exports.setEditorSettings=Xe;exports.setupBrowserForEditing=oe;exports.subscribeToEditor=He;exports.track=$e;
|