@builder.io/sdk-react 0.6.0 → 0.6.2
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/index.cjs
CHANGED
|
@@ -94,4 +94,4 @@ ${gt({customFonts:e.customFonts})}
|
|
|
94
94
|
text-align: inherit;
|
|
95
95
|
font-family: inherit;
|
|
96
96
|
}
|
|
97
|
-
`.trim());return a.jsx(W,{styles:t})}const xt=({content:e,data:t,locale:n})=>{var r,l,d;const i={};(l=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||l.forEach(c=>{var s;c.name&&c.defaultValue!==void 0&&((s=e==null?void 0:e.data)!=null&&s.state)&&e.data.state[c.name]===void 0&&(i[c.name]=c.defaultValue)});const o={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...n?{locale:n}:{}};return{...i,...o}},St=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,yt="0.6.0",vt=()=>{u.register("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 te=!1;const pt=(e={})=>{var t,n;te||(te=!0,u.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:u.TARGET,version:yt,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var o,r;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const l=i.data.text,d=i.data.arguments||[],c=i.data.id,s=new Function(l);let m,g=null;try{m=s.apply(null,d)}catch(y){g=y}g?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:c,error:g.message}},"*"):m&&typeof m.then=="function"?m.then(y=>{var k;(k=window.parent)==null||k.postMessage({type:"builder.evaluateResult",data:{id:c,result:y}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:m,id:c}},"*");break}}})))};function ne(e){return Math.round(e*1e3)/1e3}const kt=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let i=n?e:e.parentElement;do{if(!i)return null;if(t(i))return i}while(i=i.parentElement);return null},Ct=e=>kt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ie=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=ne(i/n.width),l=ne(o/n.height);return{x:r,y:l}},wt=e=>{const t=e.target,n=t&&Ct(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ie({event:e,target:t}):void 0,builderTargetOffset:n?ie({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}};function jt(e){var E,F,P,B,L;const t=f.useRef(null),[n,i]=f.useState(()=>u.checkIsDefined(e.canTrack)?e.canTrack:!0),[o,r]=f.useState(()=>0);function l(v){var x,p,j,R,$;const w={...e.builderContextSignal.content,...v,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...v==null?void 0:v.data},meta:{...(p=e.builderContextSignal.content)==null?void 0:p.meta,...v==null?void 0:v.meta,breakpoints:((j=v==null?void 0:v.meta)==null?void 0:j.breakpoints)||(($=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:$.breakpoints)}};e.setBuilderContextSignal(ve=>({...ve,content:w}))}f.useState(()=>0);const[d,c]=f.useState(()=>!1);function s(v){var x;const{data:w}=v;if(w)switch(w.type){case"builder.configureSdk":{const p=w.data,{breakpoints:j,contentId:R}=p;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;j&&l({meta:{breakpoints:j}}),r(o+1);break}case"builder.contentUpdate":{const p=w.data,j=p.key||p.alias||p.entry||p.modelName,R=p.data;j===e.model&&(l(R),r(o+1));break}}}function m(){var w,x;const v=(x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.jsCode;v&&A({code:v,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[g,y]=f.useState(()=>({})),[k,S]=f.useState(()=>!1);function h(v){var w,x;if(e.builderContextSignal.content){const p=(w=e.builderContextSignal.content)==null?void 0:w.testVariationId,j=(x=e.builderContextSignal.content)==null?void 0:x.id;u._track({type:"click",canTrack:n,contentId:j,apiKey:e.apiKey,variationId:p!==j?p:void 0,...wt(v),unique:!k})}k||S(!0)}function C(v){return v.replace(/{{([^}]+)}}/g,(w,x)=>A({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function T({url:v,key:w}){u.fetch(v).then(x=>x.json()).then(x=>{var j,R;const p={...e.builderContextSignal.rootState,[w]:x};(R=(j=e.builderContextSignal).rootSetState)==null||R.call(j,p),g[w]=!0}).catch(x=>{console.error("error fetching dynamic data",v,x)})}function b(){var w,x;const v=((x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.httpRequests)??{};Object.entries(v).forEach(([p,j])=>{if(j&&(!g[p]||u.isEditing())){const R=C(j);T({url:R,key:p})}})}function I(){u.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:u.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return f.useEffect(()=>{var v,w;if(e.apiKey||u.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),u.isBrowser()){if(u.isEditing()&&(r(o+1),window.addEventListener("message",s),vt(),pt({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(x=>{var j;const p=u.createRegisterComponentMessage(x);(j=window.parent)==null||j.postMessage(p,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",I)),e.builderContextSignal.content){const x=(v=e.builderContextSignal.content)==null?void 0:v.testVariationId,p=(w=e.builderContextSignal.content)==null?void 0:w.id;u._track({type:"impression",canTrack:n,contentId:p,apiKey:e.apiKey,variationId:x!==p?x:void 0})}if(u.isPreviewing()){const x=new URL(location.href).searchParams,p=x.get("builder.preview"),j=x.get(`builder.preview.${p}`),R=x.get("apiKey")||x.get("builder.space");p===e.model&&R===e.apiKey&&(!e.content||j===e.content.id)&&u.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then($=>{$&&l($)})}m(),b(),I()}},[]),f.useEffect(()=>{e.content&&l(e.content)},[e.content]),f.useEffect(()=>{},[d]),f.useEffect(()=>{m()},[(F=(E=e.builderContextSignal.content)==null?void 0:E.data)==null?void 0:F.jsCode,e.builderContextSignal.rootState]),f.useEffect(()=>{b()},[(B=(P=e.builderContextSignal.content)==null?void 0:P.data)==null?void 0:B.httpRequests]),f.useEffect(()=>{I()},[e.builderContextSignal.rootState]),f.useEffect(()=>()=>{u.isBrowser()&&(window.removeEventListener("message",s),window.removeEventListener("builder:component:stateChangeListenerActivated",I))},[]),a.jsx(G.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:a.jsx("div",{ref:t,onClick:v=>h(v),"builder-content-id":(L=e.builderContextSignal.content)==null?void 0:L.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},o)}):null})}function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function ae(e){var c,s,m,g,y,k,S;const[t,n]=f.useState(()=>{var h,C;return Ye({variationId:(h=e.content)==null?void 0:h.testVariationId,contentId:(C=e.content)==null?void 0:C.id})});function i(h){d(C=>({...C,rootState:h}))}const[o,r]=f.useState(()=>[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:{component:C,...u.serializeComponentInfo(T)}}),{})),[l,d]=f.useState(()=>({content:St({content:e.content,data:e.data}),localState:void 0,rootState:xt({content:e.content,data:e.data,locale:e.locale}),rootSetState:i,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:u.serializeComponentInfo(T)}),{}),inheritedStyles:{}}));return a.jsx(se.Provider,{value:{registeredComponents:o},children:a.jsxs(jt,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:l,setBuilderContextSignal:d,children:[e.isSsrAbTest?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:t})}):null,a.jsx(a.Fragment,{children:a.jsx(bt,{contentId:(c=l.content)==null?void 0:c.id,cssCode:(m=(s=l.content)==null?void 0:s.data)==null?void 0:m.cssCode,customFonts:(y=(g=l.content)==null?void 0:g.data)==null?void 0:y.customFonts})}),a.jsx(U,{blocks:(S=(k=l.content)==null?void 0:k.data)==null?void 0:S.blocks,context:l,registeredComponents:o})]})})}function J(e){var l,d,c;const[t,n]=f.useState(()=>He({canTrack:u.getDefaultCanTrack(e.canTrack),content:e.content}));function i(){var s;return Je(V(e.content).map(m=>({id:m.testVariationId,testRatio:m.testRatio})),((s=e.content)==null?void 0:s.id)||"")}function o(){return V(e.content).map(s=>`.variant-${s.testVariationId} { display: none; } `).join("")}function r(){var s;return t?{...e.content,testVariationId:(s=e.content)==null?void 0:s.id}:u.handleABTestingSync({item:e.content,canTrack:u.getDefaultCanTrack(e.canTrack)})}return f.useEffect(()=>{},[]),a.jsxs(a.Fragment,{children:[!e.__isNestedRender&&u.TARGET!=="reactNative"?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:Ge()})}):null,t?a.jsxs(a.Fragment,{children:[a.jsx(W,{id:`variants-styles-${(l=e.content)==null?void 0:l.id}`,styles:o()}),a.jsx(z,{scriptStr:i()}),(d=V(e.content))==null?void 0:d.map(s=>a.jsx(ae,{content:s,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},s.testVariationId))]}):null,a.jsx(ae,{content:r(),classNameProp:`variant-${(c=e.content)==null?void 0:c.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Tt=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return u.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(n=>{u.logger.error("Could not fetch symbol content: ",n)})};function ye(e){var r,l,d;function t(){var c,s;return[e.attributes.className,"builder-symbol",(c=e.symbol)!=null&&c.inline?"builder-inline-symbol":void 0,(s=e.symbol)!=null&&s.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[n,i]=f.useState(()=>{var c;return(c=e.symbol)==null?void 0:c.content});function o(){n||Tt({symbol:e.symbol,builderContextValue:e.builderContext}).then(c=>{c&&i(c)})}return f.useEffect(()=>{o()},[]),f.useEffect(()=>{o()},[e.symbol]),a.jsx("div",{...e.attributes,className:t(),children:a.jsx(J,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(r=e.symbol)==null?void 0:r.data,...e.builderContext.localState,...(l=n==null?void 0:n.data)==null?void 0:l.state},model:(d=e.symbol)==null?void 0:d.model,content:n})})}const It=U,Rt=J;exports._processContentResult=u._processContentResult;exports.createRegisterComponentMessage=u.createRegisterComponentMessage;exports.fetchBuilderProps=u.fetchBuilderProps;exports.fetchEntries=u.fetchEntries;exports.fetchOneEntry=u.fetchOneEntry;exports.getAllContent=u.getAllContent;exports.getBuilderSearchParams=u.getBuilderSearchParams;exports.getContent=u.getContent;exports.isEditing=u.isEditing;exports.isPreviewing=u.isPreviewing;exports.register=u.register;exports.setEditorSettings=u.setEditorSettings;exports.track=u.track;exports.Blocks=U;exports.Button=oe;exports.Columns=de;exports.Content=J;exports.Fragment=ue;exports.Image=me;exports.RenderBlocks=It;exports.RenderContent=Rt;exports.Section=fe;exports.Symbol=ye;exports.Text=xe;exports.Video=Se;
|
|
97
|
+
`.trim());return a.jsx(W,{styles:t})}const xt=({content:e,data:t,locale:n})=>{var r,l,d;const i={};(l=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||l.forEach(c=>{var s;c.name&&c.defaultValue!==void 0&&((s=e==null?void 0:e.data)!=null&&s.state)&&e.data.state[c.name]===void 0&&(i[c.name]=c.defaultValue)});const o={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...n?{locale:n}:{}};return{...i,...o}},St=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,yt="0.6.2",vt=()=>{u.register("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 te=!1;const pt=(e={})=>{var t,n;te||(te=!0,u.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:u.TARGET,version:yt,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var o,r;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const l=i.data.text,d=i.data.arguments||[],c=i.data.id,s=new Function(l);let m,g=null;try{m=s.apply(null,d)}catch(y){g=y}g?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:c,error:g.message}},"*"):m&&typeof m.then=="function"?m.then(y=>{var k;(k=window.parent)==null||k.postMessage({type:"builder.evaluateResult",data:{id:c,result:y}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:m,id:c}},"*");break}}})))};function ne(e){return Math.round(e*1e3)/1e3}const kt=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let i=n?e:e.parentElement;do{if(!i)return null;if(t(i))return i}while(i=i.parentElement);return null},Ct=e=>kt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ie=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=ne(i/n.width),l=ne(o/n.height);return{x:r,y:l}},wt=e=>{const t=e.target,n=t&&Ct(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ie({event:e,target:t}):void 0,builderTargetOffset:n?ie({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}};function jt(e){var E,F,P,B,L;const t=f.useRef(null),[n,i]=f.useState(()=>u.checkIsDefined(e.canTrack)?e.canTrack:!0),[o,r]=f.useState(()=>0);function l(v){var x,p,j,R,$;const w={...e.builderContextSignal.content,...v,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...v==null?void 0:v.data},meta:{...(p=e.builderContextSignal.content)==null?void 0:p.meta,...v==null?void 0:v.meta,breakpoints:((j=v==null?void 0:v.meta)==null?void 0:j.breakpoints)||(($=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:$.breakpoints)}};e.setBuilderContextSignal(ve=>({...ve,content:w}))}f.useState(()=>0);const[d,c]=f.useState(()=>!1);function s(v){var x;const{data:w}=v;if(w)switch(w.type){case"builder.configureSdk":{const p=w.data,{breakpoints:j,contentId:R}=p;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;j&&l({meta:{breakpoints:j}}),r(o+1);break}case"builder.contentUpdate":{const p=w.data,j=p.key||p.alias||p.entry||p.modelName,R=p.data;j===e.model&&(l(R),r(o+1));break}}}function m(){var w,x;const v=(x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.jsCode;v&&A({code:v,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[g,y]=f.useState(()=>({})),[k,S]=f.useState(()=>!1);function h(v){var w,x;if(e.builderContextSignal.content){const p=(w=e.builderContextSignal.content)==null?void 0:w.testVariationId,j=(x=e.builderContextSignal.content)==null?void 0:x.id;u._track({type:"click",canTrack:n,contentId:j,apiKey:e.apiKey,variationId:p!==j?p:void 0,...wt(v),unique:!k})}k||S(!0)}function C(v){return v.replace(/{{([^}]+)}}/g,(w,x)=>A({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function T({url:v,key:w}){u.fetch(v).then(x=>x.json()).then(x=>{var j,R;const p={...e.builderContextSignal.rootState,[w]:x};(R=(j=e.builderContextSignal).rootSetState)==null||R.call(j,p),g[w]=!0}).catch(x=>{console.error("error fetching dynamic data",v,x)})}function b(){var w,x;const v=((x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.httpRequests)??{};Object.entries(v).forEach(([p,j])=>{if(j&&(!g[p]||u.isEditing())){const R=C(j);T({url:R,key:p})}})}function I(){u.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:u.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return f.useEffect(()=>{var v,w;if(e.apiKey||u.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),u.isBrowser()){if(u.isEditing()&&(r(o+1),window.addEventListener("message",s),vt(),pt({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(x=>{var j;const p=u.createRegisterComponentMessage(x);(j=window.parent)==null||j.postMessage(p,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",I)),e.builderContextSignal.content){const x=(v=e.builderContextSignal.content)==null?void 0:v.testVariationId,p=(w=e.builderContextSignal.content)==null?void 0:w.id;u._track({type:"impression",canTrack:n,contentId:p,apiKey:e.apiKey,variationId:x!==p?x:void 0})}if(u.isPreviewing()){const x=new URL(location.href).searchParams,p=x.get("builder.preview"),j=x.get(`builder.preview.${p}`),R=x.get("apiKey")||x.get("builder.space");p===e.model&&R===e.apiKey&&(!e.content||j===e.content.id)&&u.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then($=>{$&&l($)})}m(),b(),I()}},[]),f.useEffect(()=>{e.content&&l(e.content)},[e.content]),f.useEffect(()=>{},[d]),f.useEffect(()=>{m()},[(F=(E=e.builderContextSignal.content)==null?void 0:E.data)==null?void 0:F.jsCode,e.builderContextSignal.rootState]),f.useEffect(()=>{b()},[(B=(P=e.builderContextSignal.content)==null?void 0:P.data)==null?void 0:B.httpRequests]),f.useEffect(()=>{I()},[e.builderContextSignal.rootState]),f.useEffect(()=>()=>{u.isBrowser()&&(window.removeEventListener("message",s),window.removeEventListener("builder:component:stateChangeListenerActivated",I))},[]),a.jsx(G.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:a.jsx("div",{ref:t,onClick:v=>h(v),"builder-content-id":(L=e.builderContextSignal.content)==null?void 0:L.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},o)}):null})}function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function ae(e){var c,s,m,g,y,k,S;const[t,n]=f.useState(()=>{var h,C;return Ye({variationId:(h=e.content)==null?void 0:h.testVariationId,contentId:(C=e.content)==null?void 0:C.id})});function i(h){d(C=>({...C,rootState:h}))}const[o,r]=f.useState(()=>[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:{component:C,...u.serializeComponentInfo(T)}}),{})),[l,d]=f.useState(()=>({content:St({content:e.content,data:e.data}),localState:void 0,rootState:xt({content:e.content,data:e.data,locale:e.locale}),rootSetState:i,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:u.serializeComponentInfo(T)}),{}),inheritedStyles:{}}));return a.jsx(se.Provider,{value:{registeredComponents:o},children:a.jsxs(jt,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:l,setBuilderContextSignal:d,children:[e.isSsrAbTest?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:t})}):null,a.jsx(a.Fragment,{children:a.jsx(bt,{contentId:(c=l.content)==null?void 0:c.id,cssCode:(m=(s=l.content)==null?void 0:s.data)==null?void 0:m.cssCode,customFonts:(y=(g=l.content)==null?void 0:g.data)==null?void 0:y.customFonts})}),a.jsx(U,{blocks:(S=(k=l.content)==null?void 0:k.data)==null?void 0:S.blocks,context:l,registeredComponents:o})]})})}function J(e){var l,d,c;const[t,n]=f.useState(()=>He({canTrack:u.getDefaultCanTrack(e.canTrack),content:e.content}));function i(){var s;return Je(V(e.content).map(m=>({id:m.testVariationId,testRatio:m.testRatio})),((s=e.content)==null?void 0:s.id)||"")}function o(){return V(e.content).map(s=>`.variant-${s.testVariationId} { display: none; } `).join("")}function r(){var s;return t?{...e.content,testVariationId:(s=e.content)==null?void 0:s.id}:u.handleABTestingSync({item:e.content,canTrack:u.getDefaultCanTrack(e.canTrack)})}return f.useEffect(()=>{},[]),a.jsxs(a.Fragment,{children:[!e.__isNestedRender&&u.TARGET!=="reactNative"?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:Ge()})}):null,t?a.jsxs(a.Fragment,{children:[a.jsx(W,{id:`variants-styles-${(l=e.content)==null?void 0:l.id}`,styles:o()}),a.jsx(z,{scriptStr:i()}),(d=V(e.content))==null?void 0:d.map(s=>a.jsx(ae,{content:s,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},s.testVariationId))]}):null,a.jsx(ae,{content:r(),classNameProp:`variant-${(c=e.content)==null?void 0:c.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Tt=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return u.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(n=>{u.logger.error("Could not fetch symbol content: ",n)})};function ye(e){var r,l,d;function t(){var c,s;return[e.attributes.className,"builder-symbol",(c=e.symbol)!=null&&c.inline?"builder-inline-symbol":void 0,(s=e.symbol)!=null&&s.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[n,i]=f.useState(()=>{var c;return(c=e.symbol)==null?void 0:c.content});function o(){n||Tt({symbol:e.symbol,builderContextValue:e.builderContext}).then(c=>{c&&i(c)})}return f.useEffect(()=>{o()},[]),f.useEffect(()=>{o()},[e.symbol]),a.jsx("div",{...e.attributes,className:t(),children:a.jsx(J,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(r=e.symbol)==null?void 0:r.data,...e.builderContext.localState,...(l=n==null?void 0:n.data)==null?void 0:l.state},model:(d=e.symbol)==null?void 0:d.model,content:n})})}const It=U,Rt=J;exports._processContentResult=u._processContentResult;exports.createRegisterComponentMessage=u.createRegisterComponentMessage;exports.fetchBuilderProps=u.fetchBuilderProps;exports.fetchEntries=u.fetchEntries;exports.fetchOneEntry=u.fetchOneEntry;exports.getAllContent=u.getAllContent;exports.getBuilderSearchParams=u.getBuilderSearchParams;exports.getContent=u.getContent;exports.isEditing=u.isEditing;exports.isPreviewing=u.isPreviewing;exports.register=u.register;exports.setEditorSettings=u.setEditorSettings;exports.track=u.track;exports.Blocks=U;exports.Button=oe;exports.Columns=de;exports.Content=J;exports.Fragment=ue;exports.Image=me;exports.RenderBlocks=It;exports.RenderContent=Rt;exports.Section=fe;exports.Symbol=ye;exports.Text=xe;exports.Video=Se;
|
package/lib/browser/index.mjs
CHANGED
package/lib/edge/index.cjs
CHANGED
|
@@ -114,4 +114,4 @@ ${Di({customFonts:e.customFonts})}
|
|
|
114
114
|
text-align: inherit;
|
|
115
115
|
font-family: inherit;
|
|
116
116
|
}
|
|
117
|
-
`.trim());return c.jsx(lt,{styles:t})}const Hi=({content:e,data:t,locale:r})=>{var a,s,d;const n={};(s=(a=e==null?void 0:e.data)==null?void 0:a.inputs)==null||s.forEach(h=>{var m;h.name&&h.defaultValue!==void 0&&((m=e==null?void 0:e.data)!=null&&m.state)&&e.data.state[h.name]===void 0&&(n[h.name]=h.defaultValue)});const i={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...r?{locale:r}:{}};return{...n,...i}},Ki=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,Gi="0.6.0",zi=()=>{S.register("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 Gn=!1;const Xi=(e={})=>{var t,r;Gn||(Gn=!0,S.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:S.TARGET,version:Gi,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(r=window.parent)==null||r.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:n})=>{var i,a;if(n!=null&&n.type)switch(n.type){case"builder.evaluate":{const s=n.data.text,d=n.data.arguments||[],h=n.data.id,m=new Function(s);let y,x=null;try{y=m.apply(null,d)}catch(M){x=M}x?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:h,error:x.message}},"*"):y&&typeof y.then=="function"?y.then(M=>{var _;(_=window.parent)==null||_.postMessage({type:"builder.evaluateResult",data:{id:h,result:M}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:y,id:h}},"*");break}}})))};function zn(e){return Math.round(e*1e3)/1e3}const Ji=(e,t,r=!0)=>{if(!(e instanceof HTMLElement))return null;let n=r?e:e.parentElement;do{if(!n)return null;if(t(n))return n}while(n=n.parentElement);return null},Yi=e=>Ji(e,t=>{const r=t.getAttribute("builder-id")||t.id;return(r==null?void 0:r.indexOf("builder-"))===0}),Xn=({event:e,target:t})=>{const r=t.getBoundingClientRect(),n=e.clientX-r.left,i=e.clientY-r.top,a=zn(n/r.width),s=zn(i/r.height);return{x:a,y:s}},qi=e=>{const t=e.target,r=t&&Yi(t),n=(r==null?void 0:r.getAttribute("builder-id"))||(r==null?void 0:r.id);return{targetBuilderElement:n||void 0,metadata:{targetOffset:t?Xn({event:e,target:t}):void 0,builderTargetOffset:r?Xn({event:e,target:r}):void 0,builderElementIndex:r&&n?[].slice.call(document.getElementsByClassName(n)).indexOf(r):void 0}}};function Zi(e){var ie,oe,K,Z,A;const t=I.useRef(null),[r,n]=I.useState(()=>S.checkIsDefined(e.canTrack)?e.canTrack:!0),[i,a]=I.useState(()=>0);function s(L){var F,U,R,H,se;const T={...e.builderContextSignal.content,...L,data:{...(F=e.builderContextSignal.content)==null?void 0:F.data,...L==null?void 0:L.data},meta:{...(U=e.builderContextSignal.content)==null?void 0:U.meta,...L==null?void 0:L.meta,breakpoints:((R=L==null?void 0:L.meta)==null?void 0:R.breakpoints)||((se=(H=e.builderContextSignal.content)==null?void 0:H.meta)==null?void 0:se.breakpoints)}};e.setBuilderContextSignal(ne=>({...ne,content:T}))}I.useState(()=>0);const[d,h]=I.useState(()=>!1);function m(L){var F;const{data:T}=L;if(T)switch(T.type){case"builder.configureSdk":{const U=T.data,{breakpoints:R,contentId:H}=U;if(!H||H!==((F=e.builderContextSignal.content)==null?void 0:F.id))return;R&&s({meta:{breakpoints:R}}),a(i+1);break}case"builder.contentUpdate":{const U=T.data,R=U.key||U.alias||U.entry||U.modelName,H=U.data;R===e.model&&(s(H),a(i+1));break}}}function y(){var T,F;const L=(F=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:F.jsCode;L&&Je({code:L,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[x,M]=I.useState(()=>({})),[_,E]=I.useState(()=>!1);function j(L){var T,F;if(e.builderContextSignal.content){const U=(T=e.builderContextSignal.content)==null?void 0:T.testVariationId,R=(F=e.builderContextSignal.content)==null?void 0:F.id;S._track({type:"click",canTrack:r,contentId:R,apiKey:e.apiKey,variationId:U!==R?U:void 0,...qi(L),unique:!_})}_||E(!0)}function $(L){return L.replace(/{{([^}]+)}}/g,(T,F)=>Je({code:F,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function V({url:L,key:T}){S.fetch(L).then(F=>F.json()).then(F=>{var R,H;const U={...e.builderContextSignal.rootState,[T]:F};(H=(R=e.builderContextSignal).rootSetState)==null||H.call(R,U),x[T]=!0}).catch(F=>{console.error("error fetching dynamic data",L,F)})}function v(){var T,F;const L=((F=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:F.httpRequests)??{};Object.entries(L).forEach(([U,R])=>{if(R&&(!x[U]||S.isEditing())){const H=$(R);V({url:H,key:U})}})}function W(){S.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:S.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return I.useEffect(()=>{var L,T;if(e.apiKey||S.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),S.isBrowser()){if(S.isEditing()&&(a(i+1),window.addEventListener("message",m),zi(),Xi({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(F=>{var R;const U=S.createRegisterComponentMessage(F);(R=window.parent)==null||R.postMessage(U,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",W)),e.builderContextSignal.content){const F=(L=e.builderContextSignal.content)==null?void 0:L.testVariationId,U=(T=e.builderContextSignal.content)==null?void 0:T.id;S._track({type:"impression",canTrack:r,contentId:U,apiKey:e.apiKey,variationId:F!==U?F:void 0})}if(S.isPreviewing()){const F=new URL(location.href).searchParams,U=F.get("builder.preview"),R=F.get(`builder.preview.${U}`),H=F.get("apiKey")||F.get("builder.space");U===e.model&&H===e.apiKey&&(!e.content||R===e.content.id)&&S.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(se=>{se&&s(se)})}y(),v(),W()}},[]),I.useEffect(()=>{e.content&&s(e.content)},[e.content]),I.useEffect(()=>{},[d]),I.useEffect(()=>{y()},[(oe=(ie=e.builderContextSignal.content)==null?void 0:ie.data)==null?void 0:oe.jsCode,e.builderContextSignal.rootState]),I.useEffect(()=>{v()},[(Z=(K=e.builderContextSignal.content)==null?void 0:K.data)==null?void 0:Z.httpRequests]),I.useEffect(()=>{W()},[e.builderContextSignal.rootState]),I.useEffect(()=>()=>{S.isBrowser()&&(window.removeEventListener("message",m),window.removeEventListener("builder:component:stateChangeListenerActivated",W))},[]),c.jsx(tn.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?c.jsx(c.Fragment,{children:c.jsx("div",{ref:t,onClick:L=>j(L),"builder-content-id":(A=e.builderContextSignal.content)==null?void 0:A.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},i)}):null})}function Dt(e){return c.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function Jn(e){var h,m,y,x,M,_,E;const[t,r]=I.useState(()=>{var j,$;return ki({variationId:(j=e.content)==null?void 0:j.testVariationId,contentId:($=e.content)==null?void 0:$.id})});function n(j){d($=>({...$,rootState:j}))}const[i,a]=I.useState(()=>[...Kn(),...S.components,...e.customComponents||[]].reduce((j,{component:$,...V})=>({...j,[V.name]:{component:$,...S.serializeComponentInfo(V)}}),{})),[s,d]=I.useState(()=>({content:Ki({content:e.content,data:e.data}),localState:void 0,rootState:Hi({content:e.content,data:e.data,locale:e.locale}),rootSetState:n,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...Kn(),...S.components,...e.customComponents||[]].reduce((j,{component:$,...V})=>({...j,[V.name]:S.serializeComponentInfo(V)}),{}),inheritedStyles:{}}));return c.jsx(ar.Provider,{value:{registeredComponents:i},children:c.jsxs(Zi,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:s,setBuilderContextSignal:d,children:[e.isSsrAbTest?c.jsx(c.Fragment,{children:c.jsx(Dt,{scriptStr:t})}):null,c.jsx(c.Fragment,{children:c.jsx(Wi,{contentId:(h=s.content)==null?void 0:h.id,cssCode:(y=(m=s.content)==null?void 0:m.data)==null?void 0:y.cssCode,customFonts:(M=(x=s.content)==null?void 0:x.data)==null?void 0:M.customFonts})}),c.jsx(ct,{blocks:(E=(_=s.content)==null?void 0:_.data)==null?void 0:E.blocks,context:s,registeredComponents:i})]})})}function nn(e){var s,d,h;const[t,r]=I.useState(()=>yi({canTrack:S.getDefaultCanTrack(e.canTrack),content:e.content}));function n(){var m;return wi(it(e.content).map(y=>({id:y.testVariationId,testRatio:y.testRatio})),((m=e.content)==null?void 0:m.id)||"")}function i(){return it(e.content).map(m=>`.variant-${m.testVariationId} { display: none; } `).join("")}function a(){var m;return t?{...e.content,testVariationId:(m=e.content)==null?void 0:m.id}:S.handleABTestingSync({item:e.content,canTrack:S.getDefaultCanTrack(e.canTrack)})}return I.useEffect(()=>{},[]),c.jsxs(c.Fragment,{children:[!e.__isNestedRender&&S.TARGET!=="reactNative"?c.jsx(c.Fragment,{children:c.jsx(Dt,{scriptStr:bi()})}):null,t?c.jsxs(c.Fragment,{children:[c.jsx(lt,{id:`variants-styles-${(s=e.content)==null?void 0:s.id}`,styles:i()}),c.jsx(Dt,{scriptStr:n()}),(d=it(e.content))==null?void 0:d.map(m=>c.jsx(Jn,{content:m,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},m.testVariationId))]}):null,c.jsx(Jn,{content:a(),classNameProp:`variant-${(h=e.content)==null?void 0:h.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Qi=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return S.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(r=>{S.logger.error("Could not fetch symbol content: ",r)})};function gr(e){var a,s,d;function t(){var h,m;return[e.attributes.className,"builder-symbol",(h=e.symbol)!=null&&h.inline?"builder-inline-symbol":void 0,(m=e.symbol)!=null&&m.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[r,n]=I.useState(()=>{var h;return(h=e.symbol)==null?void 0:h.content});function i(){r||Qi({symbol:e.symbol,builderContextValue:e.builderContext}).then(h=>{h&&n(h)})}return I.useEffect(()=>{i()},[]),I.useEffect(()=>{i()},[e.symbol]),c.jsx("div",{...e.attributes,className:t(),children:c.jsx(nn,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(a=e.symbol)==null?void 0:a.data,...e.builderContext.localState,...(s=r==null?void 0:r.data)==null?void 0:s.state},model:(d=e.symbol)==null?void 0:d.model,content:r})})}const eo=ct,to=nn;exports._processContentResult=S._processContentResult;exports.createRegisterComponentMessage=S.createRegisterComponentMessage;exports.fetchBuilderProps=S.fetchBuilderProps;exports.fetchEntries=S.fetchEntries;exports.fetchOneEntry=S.fetchOneEntry;exports.getAllContent=S.getAllContent;exports.getBuilderSearchParams=S.getBuilderSearchParams;exports.getContent=S.getContent;exports.isEditing=S.isEditing;exports.isPreviewing=S.isPreviewing;exports.register=S.register;exports.setEditorSettings=S.setEditorSettings;exports.track=S.track;exports.Blocks=ct;exports.Button=Yn;exports.Columns=sr;exports.Content=nn;exports.Fragment=lr;exports.Image=ur;exports.RenderBlocks=eo;exports.RenderContent=to;exports.Section=cr;exports.Symbol=gr;exports.Text=pr;exports.Video=mr;
|
|
117
|
+
`.trim());return c.jsx(lt,{styles:t})}const Hi=({content:e,data:t,locale:r})=>{var a,s,d;const n={};(s=(a=e==null?void 0:e.data)==null?void 0:a.inputs)==null||s.forEach(h=>{var m;h.name&&h.defaultValue!==void 0&&((m=e==null?void 0:e.data)!=null&&m.state)&&e.data.state[h.name]===void 0&&(n[h.name]=h.defaultValue)});const i={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...r?{locale:r}:{}};return{...n,...i}},Ki=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,Gi="0.6.2",zi=()=>{S.register("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 Gn=!1;const Xi=(e={})=>{var t,r;Gn||(Gn=!0,S.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:S.TARGET,version:Gi,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(r=window.parent)==null||r.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:n})=>{var i,a;if(n!=null&&n.type)switch(n.type){case"builder.evaluate":{const s=n.data.text,d=n.data.arguments||[],h=n.data.id,m=new Function(s);let y,x=null;try{y=m.apply(null,d)}catch(M){x=M}x?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:h,error:x.message}},"*"):y&&typeof y.then=="function"?y.then(M=>{var _;(_=window.parent)==null||_.postMessage({type:"builder.evaluateResult",data:{id:h,result:M}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:y,id:h}},"*");break}}})))};function zn(e){return Math.round(e*1e3)/1e3}const Ji=(e,t,r=!0)=>{if(!(e instanceof HTMLElement))return null;let n=r?e:e.parentElement;do{if(!n)return null;if(t(n))return n}while(n=n.parentElement);return null},Yi=e=>Ji(e,t=>{const r=t.getAttribute("builder-id")||t.id;return(r==null?void 0:r.indexOf("builder-"))===0}),Xn=({event:e,target:t})=>{const r=t.getBoundingClientRect(),n=e.clientX-r.left,i=e.clientY-r.top,a=zn(n/r.width),s=zn(i/r.height);return{x:a,y:s}},qi=e=>{const t=e.target,r=t&&Yi(t),n=(r==null?void 0:r.getAttribute("builder-id"))||(r==null?void 0:r.id);return{targetBuilderElement:n||void 0,metadata:{targetOffset:t?Xn({event:e,target:t}):void 0,builderTargetOffset:r?Xn({event:e,target:r}):void 0,builderElementIndex:r&&n?[].slice.call(document.getElementsByClassName(n)).indexOf(r):void 0}}};function Zi(e){var ie,oe,K,Z,A;const t=I.useRef(null),[r,n]=I.useState(()=>S.checkIsDefined(e.canTrack)?e.canTrack:!0),[i,a]=I.useState(()=>0);function s(L){var F,U,R,H,se;const T={...e.builderContextSignal.content,...L,data:{...(F=e.builderContextSignal.content)==null?void 0:F.data,...L==null?void 0:L.data},meta:{...(U=e.builderContextSignal.content)==null?void 0:U.meta,...L==null?void 0:L.meta,breakpoints:((R=L==null?void 0:L.meta)==null?void 0:R.breakpoints)||((se=(H=e.builderContextSignal.content)==null?void 0:H.meta)==null?void 0:se.breakpoints)}};e.setBuilderContextSignal(ne=>({...ne,content:T}))}I.useState(()=>0);const[d,h]=I.useState(()=>!1);function m(L){var F;const{data:T}=L;if(T)switch(T.type){case"builder.configureSdk":{const U=T.data,{breakpoints:R,contentId:H}=U;if(!H||H!==((F=e.builderContextSignal.content)==null?void 0:F.id))return;R&&s({meta:{breakpoints:R}}),a(i+1);break}case"builder.contentUpdate":{const U=T.data,R=U.key||U.alias||U.entry||U.modelName,H=U.data;R===e.model&&(s(H),a(i+1));break}}}function y(){var T,F;const L=(F=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:F.jsCode;L&&Je({code:L,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[x,M]=I.useState(()=>({})),[_,E]=I.useState(()=>!1);function j(L){var T,F;if(e.builderContextSignal.content){const U=(T=e.builderContextSignal.content)==null?void 0:T.testVariationId,R=(F=e.builderContextSignal.content)==null?void 0:F.id;S._track({type:"click",canTrack:r,contentId:R,apiKey:e.apiKey,variationId:U!==R?U:void 0,...qi(L),unique:!_})}_||E(!0)}function $(L){return L.replace(/{{([^}]+)}}/g,(T,F)=>Je({code:F,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function V({url:L,key:T}){S.fetch(L).then(F=>F.json()).then(F=>{var R,H;const U={...e.builderContextSignal.rootState,[T]:F};(H=(R=e.builderContextSignal).rootSetState)==null||H.call(R,U),x[T]=!0}).catch(F=>{console.error("error fetching dynamic data",L,F)})}function v(){var T,F;const L=((F=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:F.httpRequests)??{};Object.entries(L).forEach(([U,R])=>{if(R&&(!x[U]||S.isEditing())){const H=$(R);V({url:H,key:U})}})}function W(){S.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:S.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return I.useEffect(()=>{var L,T;if(e.apiKey||S.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),S.isBrowser()){if(S.isEditing()&&(a(i+1),window.addEventListener("message",m),zi(),Xi({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(F=>{var R;const U=S.createRegisterComponentMessage(F);(R=window.parent)==null||R.postMessage(U,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",W)),e.builderContextSignal.content){const F=(L=e.builderContextSignal.content)==null?void 0:L.testVariationId,U=(T=e.builderContextSignal.content)==null?void 0:T.id;S._track({type:"impression",canTrack:r,contentId:U,apiKey:e.apiKey,variationId:F!==U?F:void 0})}if(S.isPreviewing()){const F=new URL(location.href).searchParams,U=F.get("builder.preview"),R=F.get(`builder.preview.${U}`),H=F.get("apiKey")||F.get("builder.space");U===e.model&&H===e.apiKey&&(!e.content||R===e.content.id)&&S.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(se=>{se&&s(se)})}y(),v(),W()}},[]),I.useEffect(()=>{e.content&&s(e.content)},[e.content]),I.useEffect(()=>{},[d]),I.useEffect(()=>{y()},[(oe=(ie=e.builderContextSignal.content)==null?void 0:ie.data)==null?void 0:oe.jsCode,e.builderContextSignal.rootState]),I.useEffect(()=>{v()},[(Z=(K=e.builderContextSignal.content)==null?void 0:K.data)==null?void 0:Z.httpRequests]),I.useEffect(()=>{W()},[e.builderContextSignal.rootState]),I.useEffect(()=>()=>{S.isBrowser()&&(window.removeEventListener("message",m),window.removeEventListener("builder:component:stateChangeListenerActivated",W))},[]),c.jsx(tn.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?c.jsx(c.Fragment,{children:c.jsx("div",{ref:t,onClick:L=>j(L),"builder-content-id":(A=e.builderContextSignal.content)==null?void 0:A.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},i)}):null})}function Dt(e){return c.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function Jn(e){var h,m,y,x,M,_,E;const[t,r]=I.useState(()=>{var j,$;return ki({variationId:(j=e.content)==null?void 0:j.testVariationId,contentId:($=e.content)==null?void 0:$.id})});function n(j){d($=>({...$,rootState:j}))}const[i,a]=I.useState(()=>[...Kn(),...S.components,...e.customComponents||[]].reduce((j,{component:$,...V})=>({...j,[V.name]:{component:$,...S.serializeComponentInfo(V)}}),{})),[s,d]=I.useState(()=>({content:Ki({content:e.content,data:e.data}),localState:void 0,rootState:Hi({content:e.content,data:e.data,locale:e.locale}),rootSetState:n,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...Kn(),...S.components,...e.customComponents||[]].reduce((j,{component:$,...V})=>({...j,[V.name]:S.serializeComponentInfo(V)}),{}),inheritedStyles:{}}));return c.jsx(ar.Provider,{value:{registeredComponents:i},children:c.jsxs(Zi,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:s,setBuilderContextSignal:d,children:[e.isSsrAbTest?c.jsx(c.Fragment,{children:c.jsx(Dt,{scriptStr:t})}):null,c.jsx(c.Fragment,{children:c.jsx(Wi,{contentId:(h=s.content)==null?void 0:h.id,cssCode:(y=(m=s.content)==null?void 0:m.data)==null?void 0:y.cssCode,customFonts:(M=(x=s.content)==null?void 0:x.data)==null?void 0:M.customFonts})}),c.jsx(ct,{blocks:(E=(_=s.content)==null?void 0:_.data)==null?void 0:E.blocks,context:s,registeredComponents:i})]})})}function nn(e){var s,d,h;const[t,r]=I.useState(()=>yi({canTrack:S.getDefaultCanTrack(e.canTrack),content:e.content}));function n(){var m;return wi(it(e.content).map(y=>({id:y.testVariationId,testRatio:y.testRatio})),((m=e.content)==null?void 0:m.id)||"")}function i(){return it(e.content).map(m=>`.variant-${m.testVariationId} { display: none; } `).join("")}function a(){var m;return t?{...e.content,testVariationId:(m=e.content)==null?void 0:m.id}:S.handleABTestingSync({item:e.content,canTrack:S.getDefaultCanTrack(e.canTrack)})}return I.useEffect(()=>{},[]),c.jsxs(c.Fragment,{children:[!e.__isNestedRender&&S.TARGET!=="reactNative"?c.jsx(c.Fragment,{children:c.jsx(Dt,{scriptStr:bi()})}):null,t?c.jsxs(c.Fragment,{children:[c.jsx(lt,{id:`variants-styles-${(s=e.content)==null?void 0:s.id}`,styles:i()}),c.jsx(Dt,{scriptStr:n()}),(d=it(e.content))==null?void 0:d.map(m=>c.jsx(Jn,{content:m,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},m.testVariationId))]}):null,c.jsx(Jn,{content:a(),classNameProp:`variant-${(h=e.content)==null?void 0:h.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Qi=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return S.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(r=>{S.logger.error("Could not fetch symbol content: ",r)})};function gr(e){var a,s,d;function t(){var h,m;return[e.attributes.className,"builder-symbol",(h=e.symbol)!=null&&h.inline?"builder-inline-symbol":void 0,(m=e.symbol)!=null&&m.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[r,n]=I.useState(()=>{var h;return(h=e.symbol)==null?void 0:h.content});function i(){r||Qi({symbol:e.symbol,builderContextValue:e.builderContext}).then(h=>{h&&n(h)})}return I.useEffect(()=>{i()},[]),I.useEffect(()=>{i()},[e.symbol]),c.jsx("div",{...e.attributes,className:t(),children:c.jsx(nn,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(a=e.symbol)==null?void 0:a.data,...e.builderContext.localState,...(s=r==null?void 0:r.data)==null?void 0:s.state},model:(d=e.symbol)==null?void 0:d.model,content:r})})}const eo=ct,to=nn;exports._processContentResult=S._processContentResult;exports.createRegisterComponentMessage=S.createRegisterComponentMessage;exports.fetchBuilderProps=S.fetchBuilderProps;exports.fetchEntries=S.fetchEntries;exports.fetchOneEntry=S.fetchOneEntry;exports.getAllContent=S.getAllContent;exports.getBuilderSearchParams=S.getBuilderSearchParams;exports.getContent=S.getContent;exports.isEditing=S.isEditing;exports.isPreviewing=S.isPreviewing;exports.register=S.register;exports.setEditorSettings=S.setEditorSettings;exports.track=S.track;exports.Blocks=ct;exports.Button=Yn;exports.Columns=sr;exports.Content=nn;exports.Fragment=lr;exports.Image=ur;exports.RenderBlocks=eo;exports.RenderContent=to;exports.Section=cr;exports.Symbol=gr;exports.Text=pr;exports.Video=mr;
|
package/lib/edge/index.mjs
CHANGED
package/lib/node/index.cjs
CHANGED
|
@@ -94,4 +94,4 @@ ${gt({customFonts:e.customFonts})}
|
|
|
94
94
|
text-align: inherit;
|
|
95
95
|
font-family: inherit;
|
|
96
96
|
}
|
|
97
|
-
`.trim());return a.jsx(W,{styles:t})}const xt=({content:e,data:t,locale:n})=>{var r,l,d;const i={};(l=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||l.forEach(c=>{var s;c.name&&c.defaultValue!==void 0&&((s=e==null?void 0:e.data)!=null&&s.state)&&e.data.state[c.name]===void 0&&(i[c.name]=c.defaultValue)});const o={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...n?{locale:n}:{}};return{...i,...o}},St=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,yt="0.6.0",vt=()=>{u.register("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 te=!1;const pt=(e={})=>{var t,n;te||(te=!0,u.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:u.TARGET,version:yt,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var o,r;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const l=i.data.text,d=i.data.arguments||[],c=i.data.id,s=new Function(l);let m,g=null;try{m=s.apply(null,d)}catch(y){g=y}g?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:c,error:g.message}},"*"):m&&typeof m.then=="function"?m.then(y=>{var k;(k=window.parent)==null||k.postMessage({type:"builder.evaluateResult",data:{id:c,result:y}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:m,id:c}},"*");break}}})))};function ne(e){return Math.round(e*1e3)/1e3}const kt=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let i=n?e:e.parentElement;do{if(!i)return null;if(t(i))return i}while(i=i.parentElement);return null},Ct=e=>kt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ie=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=ne(i/n.width),l=ne(o/n.height);return{x:r,y:l}},wt=e=>{const t=e.target,n=t&&Ct(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ie({event:e,target:t}):void 0,builderTargetOffset:n?ie({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}};function jt(e){var E,F,P,B,L;const t=f.useRef(null),[n,i]=f.useState(()=>u.checkIsDefined(e.canTrack)?e.canTrack:!0),[o,r]=f.useState(()=>0);function l(v){var x,p,j,R,$;const w={...e.builderContextSignal.content,...v,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...v==null?void 0:v.data},meta:{...(p=e.builderContextSignal.content)==null?void 0:p.meta,...v==null?void 0:v.meta,breakpoints:((j=v==null?void 0:v.meta)==null?void 0:j.breakpoints)||(($=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:$.breakpoints)}};e.setBuilderContextSignal(ve=>({...ve,content:w}))}f.useState(()=>0);const[d,c]=f.useState(()=>!1);function s(v){var x;const{data:w}=v;if(w)switch(w.type){case"builder.configureSdk":{const p=w.data,{breakpoints:j,contentId:R}=p;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;j&&l({meta:{breakpoints:j}}),r(o+1);break}case"builder.contentUpdate":{const p=w.data,j=p.key||p.alias||p.entry||p.modelName,R=p.data;j===e.model&&(l(R),r(o+1));break}}}function m(){var w,x;const v=(x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.jsCode;v&&A({code:v,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[g,y]=f.useState(()=>({})),[k,S]=f.useState(()=>!1);function h(v){var w,x;if(e.builderContextSignal.content){const p=(w=e.builderContextSignal.content)==null?void 0:w.testVariationId,j=(x=e.builderContextSignal.content)==null?void 0:x.id;u._track({type:"click",canTrack:n,contentId:j,apiKey:e.apiKey,variationId:p!==j?p:void 0,...wt(v),unique:!k})}k||S(!0)}function C(v){return v.replace(/{{([^}]+)}}/g,(w,x)=>A({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function T({url:v,key:w}){u.fetch(v).then(x=>x.json()).then(x=>{var j,R;const p={...e.builderContextSignal.rootState,[w]:x};(R=(j=e.builderContextSignal).rootSetState)==null||R.call(j,p),g[w]=!0}).catch(x=>{console.error("error fetching dynamic data",v,x)})}function b(){var w,x;const v=((x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.httpRequests)??{};Object.entries(v).forEach(([p,j])=>{if(j&&(!g[p]||u.isEditing())){const R=C(j);T({url:R,key:p})}})}function I(){u.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:u.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return f.useEffect(()=>{var v,w;if(e.apiKey||u.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),u.isBrowser()){if(u.isEditing()&&(r(o+1),window.addEventListener("message",s),vt(),pt({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(x=>{var j;const p=u.createRegisterComponentMessage(x);(j=window.parent)==null||j.postMessage(p,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",I)),e.builderContextSignal.content){const x=(v=e.builderContextSignal.content)==null?void 0:v.testVariationId,p=(w=e.builderContextSignal.content)==null?void 0:w.id;u._track({type:"impression",canTrack:n,contentId:p,apiKey:e.apiKey,variationId:x!==p?x:void 0})}if(u.isPreviewing()){const x=new URL(location.href).searchParams,p=x.get("builder.preview"),j=x.get(`builder.preview.${p}`),R=x.get("apiKey")||x.get("builder.space");p===e.model&&R===e.apiKey&&(!e.content||j===e.content.id)&&u.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then($=>{$&&l($)})}m(),b(),I()}},[]),f.useEffect(()=>{e.content&&l(e.content)},[e.content]),f.useEffect(()=>{},[d]),f.useEffect(()=>{m()},[(F=(E=e.builderContextSignal.content)==null?void 0:E.data)==null?void 0:F.jsCode,e.builderContextSignal.rootState]),f.useEffect(()=>{b()},[(B=(P=e.builderContextSignal.content)==null?void 0:P.data)==null?void 0:B.httpRequests]),f.useEffect(()=>{I()},[e.builderContextSignal.rootState]),f.useEffect(()=>()=>{u.isBrowser()&&(window.removeEventListener("message",s),window.removeEventListener("builder:component:stateChangeListenerActivated",I))},[]),a.jsx(G.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:a.jsx("div",{ref:t,onClick:v=>h(v),"builder-content-id":(L=e.builderContextSignal.content)==null?void 0:L.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},o)}):null})}function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function ae(e){var c,s,m,g,y,k,S;const[t,n]=f.useState(()=>{var h,C;return Ye({variationId:(h=e.content)==null?void 0:h.testVariationId,contentId:(C=e.content)==null?void 0:C.id})});function i(h){d(C=>({...C,rootState:h}))}const[o,r]=f.useState(()=>[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:{component:C,...u.serializeComponentInfo(T)}}),{})),[l,d]=f.useState(()=>({content:St({content:e.content,data:e.data}),localState:void 0,rootState:xt({content:e.content,data:e.data,locale:e.locale}),rootSetState:i,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:u.serializeComponentInfo(T)}),{}),inheritedStyles:{}}));return a.jsx(se.Provider,{value:{registeredComponents:o},children:a.jsxs(jt,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:l,setBuilderContextSignal:d,children:[e.isSsrAbTest?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:t})}):null,a.jsx(a.Fragment,{children:a.jsx(bt,{contentId:(c=l.content)==null?void 0:c.id,cssCode:(m=(s=l.content)==null?void 0:s.data)==null?void 0:m.cssCode,customFonts:(y=(g=l.content)==null?void 0:g.data)==null?void 0:y.customFonts})}),a.jsx(U,{blocks:(S=(k=l.content)==null?void 0:k.data)==null?void 0:S.blocks,context:l,registeredComponents:o})]})})}function J(e){var l,d,c;const[t,n]=f.useState(()=>He({canTrack:u.getDefaultCanTrack(e.canTrack),content:e.content}));function i(){var s;return Je(V(e.content).map(m=>({id:m.testVariationId,testRatio:m.testRatio})),((s=e.content)==null?void 0:s.id)||"")}function o(){return V(e.content).map(s=>`.variant-${s.testVariationId} { display: none; } `).join("")}function r(){var s;return t?{...e.content,testVariationId:(s=e.content)==null?void 0:s.id}:u.handleABTestingSync({item:e.content,canTrack:u.getDefaultCanTrack(e.canTrack)})}return f.useEffect(()=>{},[]),a.jsxs(a.Fragment,{children:[!e.__isNestedRender&&u.TARGET!=="reactNative"?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:Ge()})}):null,t?a.jsxs(a.Fragment,{children:[a.jsx(W,{id:`variants-styles-${(l=e.content)==null?void 0:l.id}`,styles:o()}),a.jsx(z,{scriptStr:i()}),(d=V(e.content))==null?void 0:d.map(s=>a.jsx(ae,{content:s,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},s.testVariationId))]}):null,a.jsx(ae,{content:r(),classNameProp:`variant-${(c=e.content)==null?void 0:c.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Tt=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return u.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(n=>{u.logger.error("Could not fetch symbol content: ",n)})};function ye(e){var r,l,d;function t(){var c,s;return[e.attributes.className,"builder-symbol",(c=e.symbol)!=null&&c.inline?"builder-inline-symbol":void 0,(s=e.symbol)!=null&&s.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[n,i]=f.useState(()=>{var c;return(c=e.symbol)==null?void 0:c.content});function o(){n||Tt({symbol:e.symbol,builderContextValue:e.builderContext}).then(c=>{c&&i(c)})}return f.useEffect(()=>{o()},[]),f.useEffect(()=>{o()},[e.symbol]),a.jsx("div",{...e.attributes,className:t(),children:a.jsx(J,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(r=e.symbol)==null?void 0:r.data,...e.builderContext.localState,...(l=n==null?void 0:n.data)==null?void 0:l.state},model:(d=e.symbol)==null?void 0:d.model,content:n})})}const It=U,Rt=J;exports._processContentResult=u._processContentResult;exports.createRegisterComponentMessage=u.createRegisterComponentMessage;exports.fetchBuilderProps=u.fetchBuilderProps;exports.fetchEntries=u.fetchEntries;exports.fetchOneEntry=u.fetchOneEntry;exports.getAllContent=u.getAllContent;exports.getBuilderSearchParams=u.getBuilderSearchParams;exports.getContent=u.getContent;exports.isEditing=u.isEditing;exports.isPreviewing=u.isPreviewing;exports.register=u.register;exports.setEditorSettings=u.setEditorSettings;exports.track=u.track;exports.Blocks=U;exports.Button=oe;exports.Columns=de;exports.Content=J;exports.Fragment=ue;exports.Image=me;exports.RenderBlocks=It;exports.RenderContent=Rt;exports.Section=fe;exports.Symbol=ye;exports.Text=xe;exports.Video=Se;
|
|
97
|
+
`.trim());return a.jsx(W,{styles:t})}const xt=({content:e,data:t,locale:n})=>{var r,l,d;const i={};(l=(r=e==null?void 0:e.data)==null?void 0:r.inputs)==null||l.forEach(c=>{var s;c.name&&c.defaultValue!==void 0&&((s=e==null?void 0:e.data)!=null&&s.state)&&e.data.state[c.name]===void 0&&(i[c.name]=c.defaultValue)});const o={...(d=e==null?void 0:e.data)==null?void 0:d.state,...t,...n?{locale:n}:{}};return{...i,...o}},St=({content:e,data:t})=>e?{...e,data:{...e==null?void 0:e.data,...t},meta:e==null?void 0:e.meta}:void 0,yt="0.6.2",vt=()=>{u.register("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 te=!1;const pt=(e={})=>{var t,n;te||(te=!0,u.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:u.TARGET,version:yt,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var o,r;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const l=i.data.text,d=i.data.arguments||[],c=i.data.id,s=new Function(l);let m,g=null;try{m=s.apply(null,d)}catch(y){g=y}g?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:c,error:g.message}},"*"):m&&typeof m.then=="function"?m.then(y=>{var k;(k=window.parent)==null||k.postMessage({type:"builder.evaluateResult",data:{id:c,result:y}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:m,id:c}},"*");break}}})))};function ne(e){return Math.round(e*1e3)/1e3}const kt=(e,t,n=!0)=>{if(!(e instanceof HTMLElement))return null;let i=n?e:e.parentElement;do{if(!i)return null;if(t(i))return i}while(i=i.parentElement);return null},Ct=e=>kt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ie=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=ne(i/n.width),l=ne(o/n.height);return{x:r,y:l}},wt=e=>{const t=e.target,n=t&&Ct(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ie({event:e,target:t}):void 0,builderTargetOffset:n?ie({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}};function jt(e){var E,F,P,B,L;const t=f.useRef(null),[n,i]=f.useState(()=>u.checkIsDefined(e.canTrack)?e.canTrack:!0),[o,r]=f.useState(()=>0);function l(v){var x,p,j,R,$;const w={...e.builderContextSignal.content,...v,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...v==null?void 0:v.data},meta:{...(p=e.builderContextSignal.content)==null?void 0:p.meta,...v==null?void 0:v.meta,breakpoints:((j=v==null?void 0:v.meta)==null?void 0:j.breakpoints)||(($=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:$.breakpoints)}};e.setBuilderContextSignal(ve=>({...ve,content:w}))}f.useState(()=>0);const[d,c]=f.useState(()=>!1);function s(v){var x;const{data:w}=v;if(w)switch(w.type){case"builder.configureSdk":{const p=w.data,{breakpoints:j,contentId:R}=p;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;j&&l({meta:{breakpoints:j}}),r(o+1);break}case"builder.contentUpdate":{const p=w.data,j=p.key||p.alias||p.entry||p.modelName,R=p.data;j===e.model&&(l(R),r(o+1));break}}}function m(){var w,x;const v=(x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.jsCode;v&&A({code:v,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[g,y]=f.useState(()=>({})),[k,S]=f.useState(()=>!1);function h(v){var w,x;if(e.builderContextSignal.content){const p=(w=e.builderContextSignal.content)==null?void 0:w.testVariationId,j=(x=e.builderContextSignal.content)==null?void 0:x.id;u._track({type:"click",canTrack:n,contentId:j,apiKey:e.apiKey,variationId:p!==j?p:void 0,...wt(v),unique:!k})}k||S(!0)}function C(v){return v.replace(/{{([^}]+)}}/g,(w,x)=>A({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function T({url:v,key:w}){u.fetch(v).then(x=>x.json()).then(x=>{var j,R;const p={...e.builderContextSignal.rootState,[w]:x};(R=(j=e.builderContextSignal).rootSetState)==null||R.call(j,p),g[w]=!0}).catch(x=>{console.error("error fetching dynamic data",v,x)})}function b(){var w,x;const v=((x=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:x.httpRequests)??{};Object.entries(v).forEach(([p,j])=>{if(j&&(!g[p]||u.isEditing())){const R=C(j);T({url:R,key:p})}})}function I(){u.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:u.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}return f.useEffect(()=>{var v,w;if(e.apiKey||u.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),u.isBrowser()){if(u.isEditing()&&(r(o+1),window.addEventListener("message",s),vt(),pt({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(x=>{var j;const p=u.createRegisterComponentMessage(x);(j=window.parent)==null||j.postMessage(p,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",I)),e.builderContextSignal.content){const x=(v=e.builderContextSignal.content)==null?void 0:v.testVariationId,p=(w=e.builderContextSignal.content)==null?void 0:w.id;u._track({type:"impression",canTrack:n,contentId:p,apiKey:e.apiKey,variationId:x!==p?x:void 0})}if(u.isPreviewing()){const x=new URL(location.href).searchParams,p=x.get("builder.preview"),j=x.get(`builder.preview.${p}`),R=x.get("apiKey")||x.get("builder.space");p===e.model&&R===e.apiKey&&(!e.content||j===e.content.id)&&u.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then($=>{$&&l($)})}m(),b(),I()}},[]),f.useEffect(()=>{e.content&&l(e.content)},[e.content]),f.useEffect(()=>{},[d]),f.useEffect(()=>{m()},[(F=(E=e.builderContextSignal.content)==null?void 0:E.data)==null?void 0:F.jsCode,e.builderContextSignal.rootState]),f.useEffect(()=>{b()},[(B=(P=e.builderContextSignal.content)==null?void 0:P.data)==null?void 0:B.httpRequests]),f.useEffect(()=>{I()},[e.builderContextSignal.rootState]),f.useEffect(()=>()=>{u.isBrowser()&&(window.removeEventListener("message",s),window.removeEventListener("builder:component:stateChangeListenerActivated",I))},[]),a.jsx(G.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:a.jsx("div",{ref:t,onClick:v=>h(v),"builder-content-id":(L=e.builderContextSignal.content)==null?void 0:L.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},className:e.classNameProp,children:e.children},o)}):null})}function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id})}function ae(e){var c,s,m,g,y,k,S;const[t,n]=f.useState(()=>{var h,C;return Ye({variationId:(h=e.content)==null?void 0:h.testVariationId,contentId:(C=e.content)==null?void 0:C.id})});function i(h){d(C=>({...C,rootState:h}))}const[o,r]=f.useState(()=>[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:{component:C,...u.serializeComponentInfo(T)}}),{})),[l,d]=f.useState(()=>({content:St({content:e.content,data:e.data}),localState:void 0,rootState:xt({content:e.content,data:e.data,locale:e.locale}),rootSetState:i,context:e.context||{},apiKey:e.apiKey,apiVersion:e.apiVersion,componentInfos:[...ee(),...u.components,...e.customComponents||[]].reduce((h,{component:C,...T})=>({...h,[T.name]:u.serializeComponentInfo(T)}),{}),inheritedStyles:{}}));return a.jsx(se.Provider,{value:{registeredComponents:o},children:a.jsxs(jt,{content:e.content,model:e.model,context:e.context,apiKey:e.apiKey,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,classNameProp:e.classNameProp,showContent:e.showContent,builderContextSignal:l,setBuilderContextSignal:d,children:[e.isSsrAbTest?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:t})}):null,a.jsx(a.Fragment,{children:a.jsx(bt,{contentId:(c=l.content)==null?void 0:c.id,cssCode:(m=(s=l.content)==null?void 0:s.data)==null?void 0:m.cssCode,customFonts:(y=(g=l.content)==null?void 0:g.data)==null?void 0:y.customFonts})}),a.jsx(U,{blocks:(S=(k=l.content)==null?void 0:k.data)==null?void 0:S.blocks,context:l,registeredComponents:o})]})})}function J(e){var l,d,c;const[t,n]=f.useState(()=>He({canTrack:u.getDefaultCanTrack(e.canTrack),content:e.content}));function i(){var s;return Je(V(e.content).map(m=>({id:m.testVariationId,testRatio:m.testRatio})),((s=e.content)==null?void 0:s.id)||"")}function o(){return V(e.content).map(s=>`.variant-${s.testVariationId} { display: none; } `).join("")}function r(){var s;return t?{...e.content,testVariationId:(s=e.content)==null?void 0:s.id}:u.handleABTestingSync({item:e.content,canTrack:u.getDefaultCanTrack(e.canTrack)})}return f.useEffect(()=>{},[]),a.jsxs(a.Fragment,{children:[!e.__isNestedRender&&u.TARGET!=="reactNative"?a.jsx(a.Fragment,{children:a.jsx(z,{scriptStr:Ge()})}):null,t?a.jsxs(a.Fragment,{children:[a.jsx(W,{id:`variants-styles-${(l=e.content)==null?void 0:l.id}`,styles:o()}),a.jsx(z,{scriptStr:i()}),(d=V(e.content))==null?void 0:d.map(s=>a.jsx(ae,{content:s,showContent:!1,classNameProp:void 0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t},s.testVariationId))]}):null,a.jsx(ae,{content:r(),classNameProp:`variant-${(c=e.content)==null?void 0:c.id}`,showContent:!0,model:e.model,data:e.data,context:e.context,apiKey:e.apiKey,apiVersion:e.apiVersion,customComponents:e.customComponents,canTrack:e.canTrack,locale:e.locale,includeRefs:e.includeRefs,enrich:e.enrich,isSsrAbTest:t})]})}const Tt=async({builderContextValue:e,symbol:t})=>{if(t!=null&&t.model&&(e!=null&&e.apiKey))return u.fetchOneEntry({model:t.model,apiKey:e.apiKey,apiVersion:e.apiVersion,...(t==null?void 0:t.entry)&&{query:{id:t.entry}}}).catch(n=>{u.logger.error("Could not fetch symbol content: ",n)})};function ye(e){var r,l,d;function t(){var c,s;return[e.attributes.className,"builder-symbol",(c=e.symbol)!=null&&c.inline?"builder-inline-symbol":void 0,(s=e.symbol)!=null&&s.dynamic||e.dynamic?"builder-dynamic-symbol":void 0].filter(Boolean).join(" ")}const[n,i]=f.useState(()=>{var c;return(c=e.symbol)==null?void 0:c.content});function o(){n||Tt({symbol:e.symbol,builderContextValue:e.builderContext}).then(c=>{c&&i(c)})}return f.useEffect(()=>{o()},[]),f.useEffect(()=>{o()},[e.symbol]),a.jsx("div",{...e.attributes,className:t(),children:a.jsx(J,{__isNestedRender:!0,apiVersion:e.builderContext.apiVersion,apiKey:e.builderContext.apiKey,context:e.builderContext.context,customComponents:Object.values(e.builderComponents),data:{...(r=e.symbol)==null?void 0:r.data,...e.builderContext.localState,...(l=n==null?void 0:n.data)==null?void 0:l.state},model:(d=e.symbol)==null?void 0:d.model,content:n})})}const It=U,Rt=J;exports._processContentResult=u._processContentResult;exports.createRegisterComponentMessage=u.createRegisterComponentMessage;exports.fetchBuilderProps=u.fetchBuilderProps;exports.fetchEntries=u.fetchEntries;exports.fetchOneEntry=u.fetchOneEntry;exports.getAllContent=u.getAllContent;exports.getBuilderSearchParams=u.getBuilderSearchParams;exports.getContent=u.getContent;exports.isEditing=u.isEditing;exports.isPreviewing=u.isPreviewing;exports.register=u.register;exports.setEditorSettings=u.setEditorSettings;exports.track=u.track;exports.Blocks=U;exports.Button=oe;exports.Columns=de;exports.Content=J;exports.Fragment=ue;exports.Image=me;exports.RenderBlocks=It;exports.RenderContent=Rt;exports.Section=fe;exports.Symbol=ye;exports.Text=xe;exports.Video=Se;
|
package/lib/node/index.mjs
CHANGED
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": "0.6.
|
|
4
|
+
"version": "0.6.2",
|
|
5
5
|
"files": [
|
|
6
6
|
"lib",
|
|
7
7
|
"types"
|
|
@@ -119,6 +119,10 @@
|
|
|
119
119
|
"dependsOn": [
|
|
120
120
|
"^build:react",
|
|
121
121
|
"^build"
|
|
122
|
+
],
|
|
123
|
+
"outputs": [
|
|
124
|
+
"{projectRoot}/lib",
|
|
125
|
+
"{projectRoot}/types"
|
|
122
126
|
]
|
|
123
127
|
}
|
|
124
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const SDK_VERSION = "0.6.
|
|
1
|
+
export declare const SDK_VERSION = "0.6.2";
|