@builder.io/sdk-react 1.0.19-dev-1 → 1.0.19-dev-3
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 +1 -1
- package/lib/browser/blocks-exports.mjs +1 -1
- 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 +2 -2
- package/lib/browser/{server-entry-1a86f409.cjs → server-entry-246ac447.cjs} +1 -1
- package/lib/browser/{server-entry-cfff49d1.js → server-entry-648ced60.js} +16 -16
- package/lib/browser/server-entry.cjs +1 -1
- package/lib/browser/server-entry.mjs +1 -1
- package/lib/edge/{blocks-0397d1b3.cjs → blocks-1ef1b497.cjs} +1 -1
- package/lib/edge/{blocks-055d1c68.js → blocks-96f32285.js} +2 -2
- package/lib/edge/blocks-exports.cjs +1 -1
- package/lib/edge/blocks-exports.mjs +2 -2
- package/lib/edge/{button-58695538.cjs → button-79f8230f.cjs} +1 -1
- package/lib/edge/{button-14d13356.js → button-9a2f847a.js} +2 -2
- package/lib/edge/{columns-88c413d0.cjs → columns-80ff175b.cjs} +1 -1
- package/lib/edge/{columns-41560f8a.js → columns-ee14f1cd.js} +3 -3
- package/lib/edge/{content-variants-b0cbabea.cjs → content-variants-43bb7ef9.cjs} +1 -1
- package/lib/edge/{content-variants-8d6bee85.js → content-variants-f2545274.js} +8 -8
- package/lib/edge/{form-56a68fe5.js → form-c6575c2f.js} +3 -3
- package/lib/edge/{form-489500da.cjs → form-e323bdeb.cjs} +1 -1
- package/lib/edge/{get-class-prop-name-f1301669.cjs → get-class-prop-name-56c2bb2a.cjs} +1 -1
- package/lib/edge/{get-class-prop-name-859a7f60.js → get-class-prop-name-edafbe66.js} +1 -1
- package/lib/edge/{img-0c1e53c0.cjs → img-6c0c558f.cjs} +1 -1
- package/lib/edge/{img-b4ff1bef.js → img-9f9d566a.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 +2 -2
- package/lib/edge/{input-c6fee09c.js → input-66da4f55.js} +1 -1
- package/lib/edge/{input-2103da14.cjs → input-b5e4a75b.cjs} +1 -1
- package/lib/edge/{select-f260d051.js → select-2fa689c6.js} +1 -1
- package/lib/edge/{select-b8ad0a4c.cjs → select-8c5cffbf.cjs} +1 -1
- package/lib/edge/{server-entry-d46a218d.js → server-entry-459eea9f.js} +16 -16
- package/lib/edge/{server-entry-00891f33.cjs → server-entry-fd2f6fc7.cjs} +1 -1
- package/lib/edge/server-entry.cjs +1 -1
- package/lib/edge/server-entry.mjs +1 -1
- package/lib/edge/{slot-6546a4c9.cjs → slot-03f192e6.cjs} +1 -1
- package/lib/edge/{slot-6b53b8c4.js → slot-4345b1d1.js} +3 -3
- package/lib/edge/{symbol-324dadc8.js → symbol-5bb161cb.js} +2 -2
- package/lib/edge/{symbol-636383eb.cjs → symbol-6d93cf58.cjs} +1 -1
- package/lib/node/blocks-exports.cjs +1 -1
- 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 +5 -5
- package/lib/node/{node-runtime-87cf9b13.cjs → node-runtime-22601e2e.cjs} +2 -2
- package/lib/node/{node-runtime-1ca09d03.js → node-runtime-5b60cd21.js} +16 -9
- package/lib/node/{server-entry-8c84ddbd.js → server-entry-480156a9.js} +16 -16
- package/lib/node/{server-entry-ff6fc2b4.cjs → server-entry-94e10626.cjs} +1 -1
- package/lib/node/server-entry.cjs +1 -1
- package/lib/node/server-entry.mjs +1 -1
- package/package.json +2 -2
- package/types/constants/sdk-version.d.ts +1 -1
- package/types/functions/evaluate/node-runtime/init.d.ts +1 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use client";"use strict";var Fe=Object.defineProperty;var Pe=(e,t,n)=>t in e?Fe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var z=(e,t,n)=>(Pe(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),h=require("./server-entry-
|
|
1
|
+
"use client";"use strict";var Fe=Object.defineProperty;var Pe=(e,t,n)=>t in e?Fe(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var z=(e,t,n)=>(Pe(e,typeof t!="symbol"?t+"":t,n),n);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("react/jsx-runtime"),h=require("./server-entry-94e10626.cjs"),f=require("react"),L=require("./node-runtime-22601e2e.cjs"),Ve=new Set(["area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr"]),Be=e=>typeof e=="string"&&Ve.has(e.toLowerCase());function Q(e){return a.jsx(a.Fragment,{children:Be(e.TagName)?a.jsx(a.Fragment,{children:a.jsx(e.TagName,{...e.attributes,...e.actionAttributes})}):a.jsx(a.Fragment,{children:typeof e.TagName=="string"?a.jsx(a.Fragment,{children:a.jsx(e.TagName,{...e.attributes,...e.actionAttributes,children:e.children})}):a.jsx(a.Fragment,{children:a.jsx(e.TagName,{...e.attributes,...e.actionAttributes,children:e.children})})})})}const M=()=>{switch(h.TARGET){case"react":case"reactNative":case"rsc":return"className";case"svelte":case"vue":case"solid":case"qwik":return"class"}};function ce(e){return a.jsx(Q,{attributes:{...e.attributes,[M()]:`${e.link?"":"builder-button"} ${e.attributes[M()]||""}`,...e.link?{href:e.link,target:e.openLinkInNewTab?"_blank":void 0,role:"link"}:{role:"button"}},TagName:e.link?e.builderLinkComponent||"a":"button",actionAttributes:{},children:e.text})}const q=f.createContext({content:null,context:{},localState:void 0,rootSetState(){},rootState:{},apiKey:null,apiVersion:void 0,componentInfos:{},inheritedStyles:{},BlocksWrapper:"div",BlocksWrapperProps:{}}),de=f.createContext({registeredComponents:{}});function Ae(e){var t;return{...(t=e.component)==null?void 0:t.options,...e.options,builderBlock:e}}const We=({code:e,builder:t,context:n,event:i,localState:o,rootSetState:s,rootState:r})=>{const l=L.getFunctionArguments({builder:t,context:n,event:i,state:ue({rootState:r,localState:o,rootSetState:s})});return new Function(...l.map(([d])=>d),e)(...l.map(([,d])=>d))};function ue({rootState:e,localState:t,rootSetState:n}){return new Proxy(e,{get:(i,o)=>{if(t&&o in t)return t[o];const s=i[o];return typeof s=="object"&&s!==null?ue({rootState:s,localState:void 0,rootSetState:n?r=>{i[o]=r,n(i)}:void 0}):s},set:(i,o,s)=>{if(t&&o in t)throw new Error("Writing to local state is not allowed as it is read-only.");return i[o]=s,n==null||n(i),!0}})}function Ne(){var e;return typeof process!="undefined"&&h.checkIsDefined((e=process==null?void 0:process.versions)==null?void 0:e.node)}const $e=()=>{var i;if(!Ne())return!1;const e=process.arch==="arm64",t=process.version.startsWith("v20"),n=(i=process.env.NODE_OPTIONS)==null?void 0:i.includes("--no-node-snapshot");return e&&t&&!n?(h.logger.log("Skipping usage of `isolated-vm` to avoid crashes in Node v20 on an arm64 machine.\n If you would like to use the `isolated-vm` package on this machine, please provide the `NODE_OPTIONS=--no-node-snapshot` config to your Node process.\n See https://github.com/BuilderIO/builder/blob/main/packages/sdks/README.md#node-v20--m1-macs-apple-silicon-support for more information.\n "),!0):!1},De=e=>h.isBrowser()||$e()?We(e):L.runInNode(e),V=class V{static getCacheKey(t){return JSON.stringify({...t,event:t.event?Math.random():void 0})}static getCachedValue(t){return V.cache.get(t)}static setCachedValue(t,n){V.cache.size>20&&V.cache.delete(V.cache.keys().next().value),V.cache.set(t,{value:n})}};z(V,"cacheLimit",20),z(V,"cache",new Map);let D=V;function O({code:e,context:t,localState:n,rootState:i,rootSetState:o,event:s,isExpression:r=!0,enableCache:l}){if(e===""){h.logger.warn("Skipping evaluation of empty code block.");return}const d={code:L.parseCode(e,{isExpression:r}),builder:L.getBuilderGlobals(),context:t,event:s,rootSetState:o,rootState:i,localState:n};if(l){const c=D.getCacheKey(d),m=D.getCachedValue(c);if(m)return m.value}try{const c=De(d);if(l){const m=D.getCacheKey(d);D.setCachedValue(m,c)}return c}catch(c){h.logger.error("Failed code evaluation: "+c.message,{code:e});return}}const Le=({block:e,context:t,localState:n,rootState:i,rootSetState:o})=>{if(!e.bindings)return e;const s=h.fastClone(e),r={...s,properties:{...s.properties},actions:{...s.actions}};for(const l in e.bindings){const d=e.bindings[l],c=O({code:d,localState:n,rootState:i,rootSetState:o,context:t,enableCache:!0});L.set(r,l,c)}return r};function K({block:e,context:t,shouldEvaluateBindings:n,localState:i,rootState:o,rootSetState:s}){const r=e;return n?Le({block:r,localState:i,rootState:o,rootSetState:s,context:t}):r}function Me(e,t,n={}){let i,o,s,r=null,l=0;const d=function(){l=n.leading===!1?0:Date.now(),r=null,s=e.apply(i,o),r||(i=o=null)};return function(){const c=Date.now();!l&&n.leading===!1&&(l=c);const m=t-(c-l);return i=this,o=arguments,m<=0||m>t?(r&&(clearTimeout(r),r=null),l=c,s=e.apply(i,o),r||(i=o=null)):!r&&n.trailing!==!1&&(r=setTimeout(d,m)),s}}function W(e,...t){const n=Object(e);for(let i=1;i<arguments.length;i++){const o=arguments[i];if(o!=null)for(const s in o)Object.prototype.hasOwnProperty.call(o,s)&&(n[s]=o[s])}return n}const X=e=>e?e.replace(/([A-Z])/g,t=>`-${t[0].toLowerCase()}`):"";function Oe(e){for(const t of e)switch(t.trigger){case"pageLoad":me(t);break;case"hover":He(t);break;case"scrollInView":Ke(t);break}}function Z(e){console.warn(`Cannot animate element: element with ID ${e} not found!`)}function ee(e,t){const n=Ue(e),i=getComputedStyle(t),o=e.steps[0].styles,s=e.steps[e.steps.length-1].styles,r=[o,s];for(const l of r)for(const d of n)d in l||(l[d]=i[d])}function Ue(e){const t=[];for(const n of e.steps)for(const i in n.styles)t.indexOf(i)===-1&&t.push(i);return t}function me(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){Z(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{ee(e,n),n.style.transition="none",n.style.transitionDelay="0",W(n.style,e.steps[0].styles),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${X(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s"),W(n.style,e.steps[1].styles),setTimeout(()=>{n.style.transition="",n.style.transitionDelay=""},(e.delay||0)*1e3+e.duration*1e3+100)})})}function He(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){Z(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{ee(e,n);const i=e.steps[0].styles,o=e.steps[1].styles;function s(){W(n.style,i)}function r(){W(n.style,o)}s(),n.addEventListener("mouseenter",r),n.addEventListener("mouseleave",s),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${X(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s")})})}function Ke(e){const t=Array.prototype.slice.call(document.getElementsByClassName(e.elementId||e.id||""));if(!t.length){Z(e.elementId||e.id||"");return}Array.from(t).forEach(n=>{ee(e,n);let i=!1,o=!1;function s(){!i&&l(n)?(i=!0,o=!0,setTimeout(()=>{W(n.style,e.steps[1].styles),e.repeat||document.removeEventListener("scroll",r),setTimeout(()=>{o=!1,e.repeat||(n.style.transition="",n.style.transitionDelay="")},(e.duration+(e.delay||0))*1e3+100)})):e.repeat&&i&&!o&&!l(n)&&(i=!1,W(n.style,e.steps[0].styles))}const r=Me(s,200,{leading:!1});function l(m){const g=m.getBoundingClientRect(),x=window.innerHeight,k=(e.thresholdPercent||0)/100*x;return g.bottom>k&&g.top<x-k}const d=e.steps[0].styles;function c(){W(n.style,d)}c(),setTimeout(()=>{n.style.transition=`all ${e.duration}s ${X(e.easing)}`,e.delay&&(n.style.transitionDelay=e.delay+"s")}),document.addEventListener("scroll",r,{capture:!0,passive:!0}),s()})}const qe=e=>e.replace(/([a-z0-9]|(?=[A-Z]))([A-Z])/g,"$1-$2").toLowerCase(),fe=e=>Object.entries(e).map(([n,i])=>{if(typeof i=="string")return`${qe(n)}: ${i};`}).filter(h.checkIsDefined),_e=e=>fe(e).join(`
|
|
2
2
|
`),J=({mediaQuery:e,className:t,styles:n})=>{const i=`.${t} {
|
|
3
3
|
${_e(n)}
|
|
4
4
|
}`;return e?`${e} {
|
|
@@ -3,9 +3,9 @@ var Le = Object.defineProperty;
|
|
|
3
3
|
var De = (e, t, n) => t in e ? Le(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
4
4
|
var ee = (e, t, n) => (De(e, typeof t != "symbol" ? t + "" : t, n), n);
|
|
5
5
|
import { jsx as l, Fragment as g, jsxs as B } from "react/jsx-runtime";
|
|
6
|
-
import { TARGET as q, checkIsDefined as J, logger as U, isBrowser as Y, fastClone as oe, isEditing as F, registerInsertMenu as Me, setupBrowserForEditing as je, createRegisterComponentMessage as Oe, getDefaultCanTrack as G, _track as ue, isPreviewing as Ue, fetchOneEntry as ve, createEditorListener as He, fetch as Ke, serializeComponentInfo as me, handleABTestingSync as qe } from "./server-entry-
|
|
6
|
+
import { TARGET as q, checkIsDefined as J, logger as U, isBrowser as Y, fastClone as oe, isEditing as F, registerInsertMenu as Me, setupBrowserForEditing as je, createRegisterComponentMessage as Oe, getDefaultCanTrack as G, _track as ue, isPreviewing as Ue, fetchOneEntry as ve, createEditorListener as He, fetch as Ke, serializeComponentInfo as me, handleABTestingSync as qe } from "./server-entry-480156a9.js";
|
|
7
7
|
import { createContext as ke, useState as C, useEffect as V, useContext as fe, useRef as X, createElement as Ce } from "react";
|
|
8
|
-
import { getFunctionArguments as _e, runInNode as ze, parseCode as Je, getBuilderGlobals as Ye, set as we } from "./node-runtime-
|
|
8
|
+
import { getFunctionArguments as _e, runInNode as ze, parseCode as Je, getBuilderGlobals as Ye, set as we } from "./node-runtime-5b60cd21.js";
|
|
9
9
|
const Ge = /* @__PURE__ */ new Set(["area", "base", "br", "col", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]), Qe = (e) => typeof e == "string" && Ge.has(e.toLowerCase());
|
|
10
10
|
function ae(e) {
|
|
11
11
|
return /* @__PURE__ */ l(g, { children: Qe(e.TagName) ? /* @__PURE__ */ l(g, { children: /* @__PURE__ */ l(e.TagName, { ...e.attributes, ...e.actionAttributes }) }) : /* @__PURE__ */ l(g, { children: typeof e.TagName == "string" ? /* @__PURE__ */ l(g, { children: /* @__PURE__ */ l(e.TagName, { ...e.attributes, ...e.actionAttributes, children: e.children }) }) : /* @__PURE__ */ l(g, { children: /* @__PURE__ */ l(e.TagName, { ...e.attributes, ...e.actionAttributes, children: e.children }) }) }) });
|
package/lib/node/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-94e10626.cjs");require("react/jsx-runtime");require("react");require("./node-runtime-22601e2e.cjs");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/node/index.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Blocks as s, BuilderContext as n, Button as m, Columns as c, Content as g, Fragment as a, Image as p, Section as d, Symbol as l, Text as u, Video as f } from "./blocks-exports.mjs";
|
|
2
|
-
import { _processContentResult as C, createRegisterComponentMessage as E, fetchBuilderProps as h, fetchEntries as x, fetchOneEntry as S, getBuilderSearchParams as b, isEditing as P, isPreviewing as k, register as y, setEditorSettings as R, subscribeToEditor as T, track as v } from "./server-entry-
|
|
2
|
+
import { _processContentResult as C, createRegisterComponentMessage as E, fetchBuilderProps as h, fetchEntries as x, fetchOneEntry as S, getBuilderSearchParams as b, isEditing as P, isPreviewing as k, register as y, setEditorSettings as R, subscribeToEditor as T, track as v } from "./server-entry-480156a9.js";
|
|
3
3
|
import "react/jsx-runtime";
|
|
4
4
|
import "react";
|
|
5
|
-
import "./node-runtime-
|
|
5
|
+
import "./node-runtime-5b60cd21.js";
|
|
6
6
|
export {
|
|
7
7
|
s as Blocks,
|
|
8
8
|
n as BuilderContext,
|
package/lib/node/init.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("isolated-vm"),i=require("./node-runtime-22601e2e.cjs");require("./server-entry-94e10626.cjs");const t=()=>{i.setIvm(e)};exports.initializeNodeRuntime=t;
|
package/lib/node/init.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import
|
|
2
|
-
import "./
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
1
|
+
import i from "isolated-vm";
|
|
2
|
+
import { setIvm as m } from "./node-runtime-5b60cd21.js";
|
|
3
|
+
import "./server-entry-480156a9.js";
|
|
4
|
+
const e = () => {
|
|
5
|
+
m(i);
|
|
6
6
|
};
|
|
7
7
|
export {
|
|
8
8
|
e as initializeNodeRuntime
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";const serverEntry=require("./server-entry-
|
|
1
|
+
"use strict";const serverEntry=require("./server-entry-94e10626.cjs"),getFunctionArguments=({builder:e,context:r,event:n,state:t})=>Object.entries({state:t,Builder:e,builder:e,context:r,event:n}),getBuilderGlobals=()=>({isEditing:serverEntry.isEditing(),isBrowser:serverEntry.isBrowser(),isServer:!serverEntry.isBrowser(),getUserAttributes:()=>serverEntry.getUserAttributes()}),parseCode=(e,{isExpression:r=!0})=>r&&!(e.includes(";")||e.includes(" return ")||e.trim().startsWith("return "))?`return (${e});`:e,set=(e,r,n)=>{if(Object(e)!==e)return e;const t=Array.isArray(r)?r:r.toString().match(/[^.[\]]+/g);return t.slice(0,-1).reduce((u,s,c)=>Object(u[s])===u[s]?u[s]:u[s]=Math.abs(Number(t[c+1]))>>0===+t[c+1]?[]:{},e)[t[t.length-1]]=n,e},noop=()=>{};let safeDynamicRequire=noop;try{safeDynamicRequire=eval("require")}catch(e){}const getSyncValName=e=>`bldr_${e}_sync`,BUILDER_SET_STATE_NAME="BUILDER_SET_STATE",INJECTED_IVM_GLOBAL="BUILDER_IVM",REF_TO_PROXY_FN=`
|
|
2
2
|
var refToProxy = (obj) => {
|
|
3
3
|
if (typeof obj !== 'object' || obj === null) {
|
|
4
4
|
return obj;
|
|
@@ -38,4 +38,4 @@ if (typeof output === 'object' && output !== null) {
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
output;
|
|
41
|
-
`};let IVM_INSTANCE=null;const setIvm=e=>{IVM_INSTANCE=e},getIvm=()=>IVM_INSTANCE
|
|
41
|
+
`};let IVM_INSTANCE=null;const setIvm=e=>{IVM_INSTANCE=e},getIvm=()=>{if(IVM_INSTANCE)return IVM_INSTANCE;const e=safeDynamicRequire("isolated-vm");if(!e)throw new Error("isolated-vm is not available");return e},getIsolateContext=()=>{const e=getIvm();return new e.Isolate({memoryLimit:128}).createContextSync()},runInNode=({code:e,builder:r,context:n,event:t,localState:u,rootSetState:s,rootState:c})=>{const y=getIvm(),v=serverEntry.fastClone({...c,...u}),a=getFunctionArguments({builder:r,context:n,event:t,state:v}),g=getIsolateContext(),i=g.global;i.setSync("global",i.derefInto()),i.setSync("log",function(...o){console.log(...o)}),i.setSync(BUILDER_SET_STATE_NAME,function(o,l){set(c,o,l),s==null||s(c)}),a.forEach(([o,l])=>{const p=typeof l=="object"?new y.Reference(o==="builder"?{...l,getUserAttributes:()=>l.getUserAttributes()}:l):null;i.setSync(getSyncValName(o),p)}),i.setSync(INJECTED_IVM_GLOBAL,y);const I=processCode({code:e,args:a}),E=g.evalSync(I);try{return JSON.parse(E)}catch{return E}};exports.getBuilderGlobals=getBuilderGlobals;exports.getFunctionArguments=getFunctionArguments;exports.parseCode=parseCode;exports.runInNode=runInNode;exports.set=set;exports.setIvm=setIvm;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { isEditing, isBrowser, getUserAttributes, fastClone } from "./server-entry-
|
|
1
|
+
import { isEditing, isBrowser, getUserAttributes, fastClone } from "./server-entry-480156a9.js";
|
|
2
2
|
const getFunctionArguments = ({
|
|
3
3
|
builder: e,
|
|
4
4
|
context: n,
|
|
@@ -80,7 +80,14 @@ output;
|
|
|
80
80
|
let IVM_INSTANCE = null;
|
|
81
81
|
const setIvm = (e) => {
|
|
82
82
|
IVM_INSTANCE = e;
|
|
83
|
-
}, getIvm = () =>
|
|
83
|
+
}, getIvm = () => {
|
|
84
|
+
if (IVM_INSTANCE)
|
|
85
|
+
return IVM_INSTANCE;
|
|
86
|
+
const e = safeDynamicRequire("isolated-vm");
|
|
87
|
+
if (!e)
|
|
88
|
+
throw new Error("isolated-vm is not available");
|
|
89
|
+
return e;
|
|
90
|
+
}, getIsolateContext = () => {
|
|
84
91
|
const e = getIvm();
|
|
85
92
|
return new e.Isolate({
|
|
86
93
|
memoryLimit: 128
|
|
@@ -94,10 +101,10 @@ const setIvm = (e) => {
|
|
|
94
101
|
rootSetState: s,
|
|
95
102
|
rootState: u
|
|
96
103
|
}) => {
|
|
97
|
-
const
|
|
104
|
+
const a = getIvm(), I = fastClone({
|
|
98
105
|
...u,
|
|
99
106
|
...c
|
|
100
|
-
}),
|
|
107
|
+
}), y = getFunctionArguments({
|
|
101
108
|
builder: n,
|
|
102
109
|
context: r,
|
|
103
110
|
event: t,
|
|
@@ -107,19 +114,19 @@ const setIvm = (e) => {
|
|
|
107
114
|
console.log(...o);
|
|
108
115
|
}), i.setSync(BUILDER_SET_STATE_NAME, function(o, l) {
|
|
109
116
|
set(u, o, l), s == null || s(u);
|
|
110
|
-
}),
|
|
111
|
-
const
|
|
117
|
+
}), y.forEach(([o, l]) => {
|
|
118
|
+
const v = typeof l == "object" ? new a.Reference(
|
|
112
119
|
// workaround: methods with default values for arguments is not being cloned over
|
|
113
120
|
o === "builder" ? {
|
|
114
121
|
...l,
|
|
115
122
|
getUserAttributes: () => l.getUserAttributes()
|
|
116
123
|
} : l
|
|
117
124
|
) : null;
|
|
118
|
-
i.setSync(getSyncValName(o),
|
|
119
|
-
}), i.setSync(INJECTED_IVM_GLOBAL,
|
|
125
|
+
i.setSync(getSyncValName(o), v);
|
|
126
|
+
}), i.setSync(INJECTED_IVM_GLOBAL, a);
|
|
120
127
|
const f = processCode({
|
|
121
128
|
code: e,
|
|
122
|
-
args:
|
|
129
|
+
args: y
|
|
123
130
|
}), E = g.evalSync(f);
|
|
124
131
|
try {
|
|
125
132
|
return JSON.parse(E);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
const
|
|
1
|
+
const I = "react", b = "[Builder.io]: ", f = {
|
|
2
2
|
log: (...e) => console.log(b, ...e),
|
|
3
3
|
error: (...e) => console.error(b, ...e),
|
|
4
4
|
warn: (...e) => console.warn(b, ...e),
|
|
@@ -43,7 +43,7 @@ const Z = () => {
|
|
|
43
43
|
return e.match(/IEMobile/i) || e.match(/WPDesktop/i);
|
|
44
44
|
},
|
|
45
45
|
any() {
|
|
46
|
-
return t.Android() || t.BlackBerry() || t.iOS() || t.Opera() || t.Windows() ||
|
|
46
|
+
return t.Android() || t.BlackBerry() || t.iOS() || t.Opera() || t.Windows() || I === "reactNative";
|
|
47
47
|
}
|
|
48
48
|
}, n = e.match(/Tablet|iPad/i), r = Z();
|
|
49
49
|
return {
|
|
@@ -213,12 +213,12 @@ function ye() {
|
|
|
213
213
|
return e;
|
|
214
214
|
}
|
|
215
215
|
const we = ye();
|
|
216
|
-
function
|
|
216
|
+
function v(e, t = null, n = ".") {
|
|
217
217
|
return Object.keys(e).reduce((r, o) => {
|
|
218
218
|
const s = e[o], a = [t, o].filter(Boolean).join(n);
|
|
219
219
|
return [typeof s == "object", s !== null, !(Array.isArray(s) && s.length === 0)].every(Boolean) ? {
|
|
220
220
|
...r,
|
|
221
|
-
...
|
|
221
|
+
...v(s, a, n)
|
|
222
222
|
} : {
|
|
223
223
|
...r,
|
|
224
224
|
[a]: s
|
|
@@ -235,7 +235,7 @@ const Se = "v3", x = "builder.", be = "options.", W = (e) => {
|
|
|
235
235
|
n[o] = t[r];
|
|
236
236
|
}
|
|
237
237
|
}), n;
|
|
238
|
-
},
|
|
238
|
+
}, ve = () => {
|
|
239
239
|
if (!c())
|
|
240
240
|
return {};
|
|
241
241
|
const e = new URLSearchParams(window.location.search);
|
|
@@ -264,27 +264,27 @@ const Se = "v3", x = "builder.", be = "options.", W = (e) => {
|
|
|
264
264
|
throw new Error(`Invalid apiVersion: expected 'v3', received '${y}'`);
|
|
265
265
|
const X = t !== 1, i = new URL(`https://cdn.builder.io/api/${y}/content/${o}`);
|
|
266
266
|
if (i.searchParams.set("apiKey", s), i.searchParams.set("limit", String(t)), i.searchParams.set("noTraverse", String(X)), i.searchParams.set("includeRefs", String(!0)), d && i.searchParams.set("locale", d), a && i.searchParams.set("enrich", String(a)), i.searchParams.set("omit", k || "meta.componentsUsed"), p && i.searchParams.set("fields", p), Number.isFinite(u) && u > -1 && i.searchParams.set("offset", String(Math.floor(u))), typeof C == "boolean" && i.searchParams.set("includeUnpublished", String(C)), h && A(h) && i.searchParams.set("cacheSeconds", String(h)), g && A(g) && i.searchParams.set("staleCacheSeconds", String(g)), w) {
|
|
267
|
-
const l =
|
|
267
|
+
const l = v({
|
|
268
268
|
sort: w
|
|
269
269
|
});
|
|
270
270
|
for (const S in l)
|
|
271
271
|
i.searchParams.set(S, JSON.stringify(l[S]));
|
|
272
272
|
}
|
|
273
273
|
const q = {
|
|
274
|
-
...
|
|
274
|
+
...ve(),
|
|
275
275
|
...L(e.options || {})
|
|
276
|
-
}, O =
|
|
276
|
+
}, O = v(q);
|
|
277
277
|
for (const l in O)
|
|
278
278
|
i.searchParams.set(l, String(O[l]));
|
|
279
279
|
if (n && i.searchParams.set("userAttributes", JSON.stringify(n)), r) {
|
|
280
|
-
const l =
|
|
280
|
+
const l = v({
|
|
281
281
|
query: r
|
|
282
282
|
});
|
|
283
283
|
for (const S in l)
|
|
284
284
|
i.searchParams.set(S, JSON.stringify(l[S]));
|
|
285
285
|
}
|
|
286
286
|
return i;
|
|
287
|
-
},
|
|
287
|
+
}, Ie = (e) => "results" in e;
|
|
288
288
|
async function ke(e) {
|
|
289
289
|
const t = await Ce({
|
|
290
290
|
...e,
|
|
@@ -298,7 +298,7 @@ const Ee = async (e) => {
|
|
|
298
298
|
return await (await ((s = e.fetch) != null ? s : we)(t.href, e.fetchOptions)).json();
|
|
299
299
|
}, Pe = async (e, t, n = P(e)) => {
|
|
300
300
|
const r = fe(e.canTrack);
|
|
301
|
-
if (n.search.includes("preview="), !r || !(c() ||
|
|
301
|
+
if (n.search.includes("preview="), !r || !(c() || I === "reactNative"))
|
|
302
302
|
return t.results;
|
|
303
303
|
try {
|
|
304
304
|
const o = [];
|
|
@@ -316,7 +316,7 @@ const Ee = async (e) => {
|
|
|
316
316
|
async function Ce(e) {
|
|
317
317
|
try {
|
|
318
318
|
const t = P(e), n = await Ee(e);
|
|
319
|
-
return
|
|
319
|
+
return Ie(n) ? Pe(e, n) : (f.error("Error fetching data. ", {
|
|
320
320
|
url: t,
|
|
321
321
|
content: n,
|
|
322
322
|
options: e
|
|
@@ -455,7 +455,7 @@ async function Fe(e) {
|
|
|
455
455
|
f.error("Missing API key for track call. Please provide your API key.");
|
|
456
456
|
return;
|
|
457
457
|
}
|
|
458
|
-
if (e.canTrack && !U() && (c() ||
|
|
458
|
+
if (e.canTrack && !U() && (c() || I === "reactNative"))
|
|
459
459
|
return fetch("https://cdn.builder.io/api/v1/track", {
|
|
460
460
|
method: "POST",
|
|
461
461
|
body: JSON.stringify({
|
|
@@ -477,7 +477,7 @@ function H(e, t) {
|
|
|
477
477
|
const n = new URL(t.origin), r = n.hostname;
|
|
478
478
|
return (e || je).findIndex((o) => o.startsWith("*.") ? r.endsWith(o.slice(1)) : o === r) > -1;
|
|
479
479
|
}
|
|
480
|
-
const De = "1.0.19", T = {};
|
|
480
|
+
const De = "1.0.19-dev-2", T = {};
|
|
481
481
|
function Ke(e, t) {
|
|
482
482
|
let n = T[e];
|
|
483
483
|
if (n || (n = T[e] = []), n.push(t), c()) {
|
|
@@ -524,7 +524,7 @@ const _e = (e = {}) => {
|
|
|
524
524
|
R || (R = !0, c() && ((t = window.parent) == null || t.postMessage({
|
|
525
525
|
type: "builder.sdkInfo",
|
|
526
526
|
data: {
|
|
527
|
-
target:
|
|
527
|
+
target: I,
|
|
528
528
|
version: De,
|
|
529
529
|
supportsPatchUpdates: !1,
|
|
530
530
|
// Supports builder-model="..." attribute which is needed to
|
|
@@ -657,7 +657,7 @@ const Ye = async (e) => {
|
|
|
657
657
|
};
|
|
658
658
|
};
|
|
659
659
|
export {
|
|
660
|
-
|
|
660
|
+
I as TARGET,
|
|
661
661
|
Pe as _processContentResult,
|
|
662
662
|
Fe as _track,
|
|
663
663
|
m as checkIsDefined,
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"use strict";const b="react",I="[Builder.io]: ",d={log:(...e)=>console.log(I,...e),error:(...e)=>console.error(I,...e),warn:(...e)=>console.warn(I,...e),debug:(...e)=>console.debug(I,...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,F=e=>typeof e=="string"?e:e instanceof URLSearchParams?e.toString():new URLSearchParams(e).toString();function ue(){return c()&&window.self!==window.top}function k(e){return ue()&&F(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()||b==="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"}},C=e=>JSON.parse(JSON.stringify(e)),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)},_=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",P=e=>`${me}.${e}`,ye=({contentId:e})=>j({name:P(e),canTrack:!0}),we=({contentId:e})=>D({name:P(e),canTrack:!0}),Se=({contentId:e,value:t})=>_({name:P(e),value:t,canTrack:!0}),K=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 Se({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(!K(e))return e;const n=we({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||!K(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:z(e)}),ke=e=>{const t=e.toString().trim();return`return (${!t.startsWith("function")&&!t.startsWith("(")?"function ":""}${t}).apply(this, arguments)`},Ce=e=>typeof e=="function"?ke(e):C(e),z=({inputs:e,...t})=>({...C(t),inputs:e==null?void 0:e.map(n=>Object.entries(n).reduce((r,[o,s])=>({...r,[o]:Ce(s)}),{}))});function Pe(){return typeof globalThis!="undefined"?globalThis:typeof window!="undefined"?window:typeof global!="undefined"?global:typeof self!="undefined"?self:globalThis}function Oe(){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 J=Oe();function v(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,...v(s,a,n)}:{...r,[a]:s}},{})}const Te="v3",R="builder.",xe="options.",O=e=>{if(!e)return{};const t=M(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(R)){const o=r.replace(R,"").replace(xe,"");n[o]=t[r]}}),n},Ae=()=>{if(!c())return{};const e=new URLSearchParams(window.location.search);return O(e)},B=e=>typeof e=="number"&&!isNaN(e)&&e>=0,T=e=>{const{limit:t=30,userAttributes:n,query:r,model:o,apiKey:s,enrich:a,locale:l,apiVersion:y=Te,fields:m,omit:E,offset:u,cacheSeconds:g,staleCacheSeconds:h,sort:w,includeUnpublished:x}=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",E||"meta.componentsUsed"),m&&i.searchParams.set("fields",m),Number.isFinite(u)&&u>-1&&i.searchParams.set("offset",String(Math.floor(u))),typeof x=="boolean"&&i.searchParams.set("includeUnpublished",String(x)),g&&B(g)&&i.searchParams.set("cacheSeconds",String(g)),h&&B(h)&&i.searchParams.set("staleCacheSeconds",String(h)),w){const f=v({sort:w});for(const S in f)i.searchParams.set(S,JSON.stringify(f[S]))}const ae={...Ae(),...M(e.options||{})},A=v(ae);for(const f in A)i.searchParams.set(f,String(A[f]));if(n&&i.searchParams.set("userAttributes",JSON.stringify(n)),r){const f=v({query:r});for(const S in f)i.searchParams.set(S,JSON.stringify(f[S]))}return i},Re=e=>"results"in e;async function H(e){const t=await q({...e,limit:1});return t&&t[0]||null}const Be=async e=>{var s;const t=T(e);return await(await((s=e.fetch)!=null?s:J)(t.href,e.fetchOptions)).json()},X=async(e,t,n=T(e))=>{const r=G(e.canTrack);if(n.search.includes("preview="),!r||!(c()||b==="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=T(e),n=await Be(e);return Re(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 Le(e){if(!c())return!1;const t=F(e||window.location.search);return k(t)?!1:t.indexOf("builder.preview=")!==-1}function Ve(){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 Y(){return Ve().replace(/-/g,"")}const Q="builderSessionId",Ue=async({canTrack:e})=>{if(!e)return;const t=await j({name:Q,canTrack:e});if(p(t))return t;{const n=Me();return Fe({id:n,canTrack:e}),n}},Me=()=>Y(),Fe=({id:e,canTrack:t})=>_({name:Q,value:e,canTrack:t}),Z=()=>c()&&typeof localStorage!="undefined"?localStorage:void 0,Ne=({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}},De=({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",je=({canTrack:e})=>{if(!e)return;const t=Ne({key:ee,canTrack:e});if(p(t))return t;{const n=_e();return Ke({id:n,canTrack:e}),n}},_e=()=>Y(),Ke=({id:e,canTrack:t})=>De({key:ee,value:e,canTrack:t}),We=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await Ue({canTrack:e}),n=je({canTrack:e});return{sessionId:t,visitorId:n}},$e=async({type:e,canTrack:t,apiKey:n,metadata:r,...o})=>({type:e,data:{...o,metadata:{url:location.href,...r},...await We({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&&!k()&&(c()||b==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await $e(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const Ge=e=>te({...e,canTrack:!0}),ze=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function ne(e,t){const n=new URL(t.origin),r=n.hostname;return(e||ze).findIndex(o=>o.startsWith("*.")?r.endsWith(o.slice(1)):o===r)>-1}const Je="1.0.19",L={};function re(e,t){let n=L[e];if(n||(n=L[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 He=()=>{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 V=!1;const oe=(e={})=>{var t,n;V||(V=!0,c()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:b,version:Je,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,E=new Function(l);let u,g=null;try{u=E.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 w;(w=window.parent)==null||w.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}}},Xe=(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)}},U={};function qe(e){if(c()){Object.assign(U,e);const t={type:"builder.settingsChange",data:U};parent.postMessage(t,"*")}}const Ye=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:O(e.searchParams||((s=e.url)==null?void 0:s.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await H(n)}};exports.TARGET=b;exports._processContentResult=X;exports._track=te;exports.checkIsDefined=p;exports.createEditorListener=se;exports.createRegisterComponentMessage=Ee;exports.fastClone=C;exports.fetch=J;exports.fetchBuilderProps=Ye;exports.fetchEntries=q;exports.fetchOneEntry=H;exports.getBuilderSearchParams=O;exports.getDefaultCanTrack=G;exports.getUserAttributes=N;exports.handleABTestingSync=Ie;exports.isBrowser=c;exports.isEditing=k;exports.isPreviewing=Le;exports.logger=d;exports.register=re;exports.registerInsertMenu=He;exports.serializeComponentInfo=z;exports.setEditorSettings=qe;exports.setupBrowserForEditing=oe;exports.subscribeToEditor=Xe;exports.track=Ge;
|
|
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 J=Oe();function v(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,...v(s,a,n)}:{...r,[a]:s}},{})}const Te="v3",R="builder.",xe="options.",O=e=>{if(!e)return{};const t=M(e),n={};return Object.keys(t).forEach(r=>{if(r.startsWith(R)){const o=r.replace(R,"").replace(xe,"");n[o]=t[r]}}),n},Ae=()=>{if(!c())return{};const e=new URLSearchParams(window.location.search);return O(e)},B=e=>typeof e=="number"&&!isNaN(e)&&e>=0,T=e=>{const{limit:t=30,userAttributes:n,query:r,model:o,apiKey:s,enrich:a,locale:l,apiVersion:y=Te,fields:m,omit:E,offset:u,cacheSeconds:g,staleCacheSeconds:h,sort:w,includeUnpublished:x}=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",E||"meta.componentsUsed"),m&&i.searchParams.set("fields",m),Number.isFinite(u)&&u>-1&&i.searchParams.set("offset",String(Math.floor(u))),typeof x=="boolean"&&i.searchParams.set("includeUnpublished",String(x)),g&&B(g)&&i.searchParams.set("cacheSeconds",String(g)),h&&B(h)&&i.searchParams.set("staleCacheSeconds",String(h)),w){const f=v({sort:w});for(const S in f)i.searchParams.set(S,JSON.stringify(f[S]))}const ae={...Ae(),...M(e.options||{})},A=v(ae);for(const f in A)i.searchParams.set(f,String(A[f]));if(n&&i.searchParams.set("userAttributes",JSON.stringify(n)),r){const f=v({query:r});for(const S in f)i.searchParams.set(S,JSON.stringify(f[S]))}return i},Re=e=>"results"in e;async function H(e){const t=await q({...e,limit:1});return t&&t[0]||null}const Be=async e=>{var s;const t=T(e);return await(await((s=e.fetch)!=null?s:J)(t.href,e.fetchOptions)).json()},X=async(e,t,n=T(e))=>{const r=G(e.canTrack);if(n.search.includes("preview="),!r||!(c()||b==="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=T(e),n=await Be(e);return Re(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 Le(e){if(!c())return!1;const t=F(e||window.location.search);return k(t)?!1:t.indexOf("builder.preview=")!==-1}function Ve(){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 Y(){return Ve().replace(/-/g,"")}const Q="builderSessionId",Ue=async({canTrack:e})=>{if(!e)return;const t=await j({name:Q,canTrack:e});if(p(t))return t;{const n=Me();return Fe({id:n,canTrack:e}),n}},Me=()=>Y(),Fe=({id:e,canTrack:t})=>_({name:Q,value:e,canTrack:t}),Z=()=>c()&&typeof localStorage!="undefined"?localStorage:void 0,Ne=({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}},De=({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",je=({canTrack:e})=>{if(!e)return;const t=Ne({key:ee,canTrack:e});if(p(t))return t;{const n=_e();return Ke({id:n,canTrack:e}),n}},_e=()=>Y(),Ke=({id:e,canTrack:t})=>De({key:ee,value:e,canTrack:t}),We=async({canTrack:e})=>{if(!e)return{visitorId:void 0,sessionId:void 0};const t=await Ue({canTrack:e}),n=je({canTrack:e});return{sessionId:t,visitorId:n}},$e=async({type:e,canTrack:t,apiKey:n,metadata:r,...o})=>({type:e,data:{...o,metadata:{url:location.href,...r},...await We({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&&!k()&&(c()||b==="reactNative"))return fetch("https://cdn.builder.io/api/v1/track",{method:"POST",body:JSON.stringify({events:[await $e(e)]}),headers:{"content-type":"application/json"},mode:"cors"}).catch(t=>{console.error("Failed to track: ",t)})}const Ge=e=>te({...e,canTrack:!0}),ze=["*.beta.builder.io","beta.builder.io","builder.io","localhost","qa.builder.io"];function ne(e,t){const n=new URL(t.origin),r=n.hostname;return(e||ze).findIndex(o=>o.startsWith("*.")?r.endsWith(o.slice(1)):o===r)>-1}const Je="1.0.19-dev-2",L={};function re(e,t){let n=L[e];if(n||(n=L[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 He=()=>{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 V=!1;const oe=(e={})=>{var t,n;V||(V=!0,c()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:b,version:Je,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,E=new Function(l);let u,g=null;try{u=E.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 w;(w=window.parent)==null||w.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}}},Xe=(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)}},U={};function qe(e){if(c()){Object.assign(U,e);const t={type:"builder.settingsChange",data:U};parent.postMessage(t,"*")}}const Ye=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:O(e.searchParams||((s=e.url)==null?void 0:s.searchParams)||e.options)};return{apiKey:n.apiKey,model:n.model,content:await H(n)}};exports.TARGET=b;exports._processContentResult=X;exports._track=te;exports.checkIsDefined=p;exports.createEditorListener=se;exports.createRegisterComponentMessage=Ee;exports.fastClone=C;exports.fetch=J;exports.fetchBuilderProps=Ye;exports.fetchEntries=q;exports.fetchOneEntry=H;exports.getBuilderSearchParams=O;exports.getDefaultCanTrack=G;exports.getUserAttributes=N;exports.handleABTestingSync=Ie;exports.isBrowser=c;exports.isEditing=k;exports.isPreviewing=Le;exports.logger=d;exports.register=re;exports.registerInsertMenu=He;exports.serializeComponentInfo=z;exports.setEditorSettings=qe;exports.setupBrowserForEditing=oe;exports.subscribeToEditor=Xe;exports.track=Ge;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./server-entry-
|
|
1
|
+
"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./server-entry-94e10626.cjs");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;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { _processContentResult as r, createRegisterComponentMessage as s, fetchBuilderProps as i, fetchEntries as n, fetchOneEntry as o, getBuilderSearchParams as c, isEditing as g, isPreviewing as a, register as d, setEditorSettings as E, subscribeToEditor as f, track as h } from "./server-entry-
|
|
1
|
+
import { _processContentResult as r, createRegisterComponentMessage as s, fetchBuilderProps as i, fetchEntries as n, fetchOneEntry as o, getBuilderSearchParams as c, isEditing as g, isPreviewing as a, register as d, setEditorSettings as E, subscribeToEditor as f, track as h } from "./server-entry-480156a9.js";
|
|
2
2
|
export {
|
|
3
3
|
r as _processContentResult,
|
|
4
4
|
s as createRegisterComponentMessage,
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@builder.io/sdk-react",
|
|
3
3
|
"description": "Builder.io SDK for React",
|
|
4
|
-
"version": "1.0.19-dev-
|
|
4
|
+
"version": "1.0.19-dev-3",
|
|
5
5
|
"homepage": "https://github.com/BuilderIO/builder/tree/main/packages/sdks/output/react",
|
|
6
6
|
"type": "module",
|
|
7
7
|
"repository": {
|
|
@@ -80,7 +80,7 @@
|
|
|
80
80
|
}
|
|
81
81
|
},
|
|
82
82
|
"./node/init": {
|
|
83
|
-
"types": "./types/
|
|
83
|
+
"types": "./types/functions/evaluate/node-runtime/init.d.ts",
|
|
84
84
|
"import": "./lib/node/init.mjs",
|
|
85
85
|
"require": "./lib/node/init.cjs"
|
|
86
86
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "1.0.19";
|
|
1
|
+
export declare const SDK_VERSION = "1.0.19-dev-2";
|