@builder.io/sdk-react 0.11.4 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -156,7 +156,7 @@
156
156
  "${t}",${JSON.stringify(e)}, ${Ce}
157
157
  )`,vt=({contentId:e,variationId:t})=>`window.${ke}(
158
158
  "${t}", "${e}", ${Ce}
159
- )`;function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function re(e){return Math.round(e*1e3)/1e3}const pt=(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},kt=e=>pt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ce=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=re(i/n.width),c=re(o/n.height);return{x:r,y:c}},Ct=e=>{const t=e.target,n=t&&kt(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ce({event:e,target:t}):void 0,builderTargetOffset:n?ce({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}},wt="0.11.4",It=()=>{d.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 le=!1;const Et=(e={})=>{var t,n;le||(le=!0,d.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:d.TARGET,version:wt,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 c=i.data.text,s=i.data.arguments||[],l=i.data.id,u=new Function(c);let f,x=null;try{f=u.apply(null,s)}catch(v){x=v}x?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:l,error:x.message}},"*"):f&&typeof f.then=="function"?f.then(v=>{var y;(y=window.parent)==null||y.postMessage({type:"builder.evaluateResult",data:{id:l,result:v}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:f,id:l}},"*");break}}})))};function Tt(e){var F,D,Y,Q,J,X,Z;const t=m.useRef(null),[n,i]=m.useState(()=>0);m.useState(()=>!0);function o(g){var b,S;const h={...e.builderContextSignal.rootState,...g};e.builderContextSignal.rootSetState?(S=(b=e.builderContextSignal).rootSetState)==null||S.call(b,h):e.setBuilderContextSignal(p=>({...p,rootState:h}))}function r(g){var b,S,p,E,A;const h={...e.builderContextSignal.content,...g,data:{...(b=e.builderContextSignal.content)==null?void 0:b.data,...g==null?void 0:g.data},meta:{...(S=e.builderContextSignal.content)==null?void 0:S.meta,...g==null?void 0:g.meta,breakpoints:((p=g==null?void 0:g.meta)==null?void 0:p.breakpoints)||((A=(E=e.builderContextSignal.content)==null?void 0:E.meta)==null?void 0:A.breakpoints)}};e.setBuilderContextSignal(Ie=>({...Ie,content:h}))}m.useState(()=>0);const[c,s]=m.useState(()=>!1),[l,u]=m.useState(()=>e.contentWrapper||"div");function f(g){var b;const{data:h}=g;if(h)switch(h.type){case"builder.configureSdk":{const S=h.data,{breakpoints:p,contentId:E}=S;if(!E||E!==((b=e.builderContextSignal.content)==null?void 0:b.id))return;p&&r({meta:{breakpoints:p}}),i(n+1);break}case"builder.contentUpdate":{const S=h.data,p=S.key||S.alias||S.entry||S.modelName,E=S.data;p===e.model&&(r(E),i(n+1));break}}}function x(){var h,b;const g=(b=(h=e.builderContextSignal.content)==null?void 0:h.data)==null?void 0:b.jsCode;g&&W({code:g,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[v,y]=m.useState(()=>({})),[C,k]=m.useState(()=>!1);function T(g){var h,b;if(e.builderContextSignal.content){const S=(h=e.builderContextSignal.content)==null?void 0:h.testVariationId,p=(b=e.builderContextSignal.content)==null?void 0:b.id;d._track({type:"click",canTrack:d.getDefaultCanTrack(e.canTrack),contentId:p,apiKey:e.apiKey,variationId:S!==p?S:void 0,...Ct(g),unique:!C})}C||k(!0)}function R(g){return g.replace(/{{([^}]+)}}/g,(h,b)=>W({code:b,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function w({url:g,key:h}){d.fetch(g).then(b=>b.json()).then(b=>{var p,E;const S={...e.builderContextSignal.rootState,[h]:b};(E=(p=e.builderContextSignal).rootSetState)==null||E.call(p,S),v[h]=!0}).catch(b=>{console.error("error fetching dynamic data",g,b)})}function I(){var h,b,S;const g=(S=(b=(h=e.builderContextSignal.content)==null?void 0:h.data)==null?void 0:b.httpRequests)!=null?S:{};Object.entries(g).forEach(([p,E])=>{if(E&&(!v[p]||d.isEditing())){const A=R(E);w({url:A,key:p})}})}function j(){d.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:d.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function P(g){i(n+1),window.addEventListener("message",f),It(),Et({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(h=>{var S;const b=d.createRegisterComponentMessage(h);(S=window.parent)==null||S.postMessage(b,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",j)}function B(g){const h=new URL(location.href).searchParams,b=h.get("builder.preview"),S=h.get(`builder.preview.${b}`),p=h.get("apiKey")||h.get("builder.space");b===e.model&&p===e.apiKey&&(!e.content||S===e.content.id)&&d.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(E=>{E&&r(E)})}return m.useEffect(()=>{var g;return(g=t.current)==null||g.addEventListener("initeditingbldr",P),()=>{var h;return(h=t.current)==null?void 0:h.removeEventListener("initeditingbldr",P)}},[]),m.useEffect(()=>{var g;return(g=t.current)==null||g.addEventListener("initpreviewingbldr",B),()=>{var h;return(h=t.current)==null?void 0:h.removeEventListener("initpreviewingbldr",B)}},[]),m.useEffect(()=>{var g,h;if(d.isBrowser()){if(d.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&d.getDefaultCanTrack(e.canTrack)){const S=(g=e.builderContextSignal.content)==null?void 0:g.testVariationId,p=(h=e.builderContextSignal.content)==null?void 0:h.id,E=e.apiKey;d._track({type:"impression",canTrack:!0,contentId:p,apiKey:E,variationId:S!==p?S:void 0})}d.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),m.useEffect(()=>{e.apiKey||d.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),x(),I(),j()},[]),m.useEffect(()=>{e.content&&r(e.content)},[e.content]),m.useEffect(()=>{},[c]),m.useEffect(()=>{x()},[(D=(F=e.builderContextSignal.content)==null?void 0:F.data)==null?void 0:D.jsCode,e.builderContextSignal.rootState]),m.useEffect(()=>{I()},[(Q=(Y=e.builderContextSignal.content)==null?void 0:Y.data)==null?void 0:Q.httpRequests]),m.useEffect(()=>{j()},[e.builderContextSignal.rootState]),m.useEffect(()=>{e.data&&o(e.data)},[e.data]),m.useEffect(()=>{e.locale&&o({locale:e.locale})},[e.locale]),m.useEffect(()=>()=>{d.isBrowser()&&(window.removeEventListener("message",f),window.removeEventListener("builder:component:stateChangeListenerActivated",j))},[]),a.jsx(q.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:m.createElement(l,{key:n,ref:t,onClick:g=>T(g),"builder-content-id":(J=e.builderContextSignal.content)==null?void 0:J.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((X=e.content)==null?void 0:X.testVariationId)||((Z=e.content)==null?void 0:Z.id)}`},e.children)}):null})}const Rt=e=>{var r,c;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],i=(c=e.fileUrl)!=null?c:(r=e==null?void 0:e.files)==null?void 0:r.regular;let o="";if(i&&t&&n&&(o+=`
159
+ )`;function z(e){return a.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function re(e){return Math.round(e*1e3)/1e3}const pt=(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},kt=e=>pt(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),ce=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,o=e.clientY-n.top,r=re(i/n.width),c=re(o/n.height);return{x:r,y:c}},Ct=e=>{const t=e.target,n=t&&kt(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?ce({event:e,target:t}):void 0,builderTargetOffset:n?ce({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}},wt="0.12.0",It=()=>{d.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 le=!1;const Et=(e={})=>{var t,n;le||(le=!0,d.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:d.TARGET,version:wt,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 c=i.data.text,s=i.data.arguments||[],l=i.data.id,u=new Function(c);let f,x=null;try{f=u.apply(null,s)}catch(v){x=v}x?(o=window.parent)==null||o.postMessage({type:"builder.evaluateError",data:{id:l,error:x.message}},"*"):f&&typeof f.then=="function"?f.then(v=>{var y;(y=window.parent)==null||y.postMessage({type:"builder.evaluateResult",data:{id:l,result:v}},"*")}).catch(console.error):(r=window.parent)==null||r.postMessage({type:"builder.evaluateResult",data:{result:f,id:l}},"*");break}}})))};function Tt(e){var F,D,Y,Q,J,X,Z;const t=m.useRef(null),[n,i]=m.useState(()=>0);m.useState(()=>!0);function o(g){var b,S;const h={...e.builderContextSignal.rootState,...g};e.builderContextSignal.rootSetState?(S=(b=e.builderContextSignal).rootSetState)==null||S.call(b,h):e.setBuilderContextSignal(p=>({...p,rootState:h}))}function r(g){var b,S,p,E,A;const h={...e.builderContextSignal.content,...g,data:{...(b=e.builderContextSignal.content)==null?void 0:b.data,...g==null?void 0:g.data},meta:{...(S=e.builderContextSignal.content)==null?void 0:S.meta,...g==null?void 0:g.meta,breakpoints:((p=g==null?void 0:g.meta)==null?void 0:p.breakpoints)||((A=(E=e.builderContextSignal.content)==null?void 0:E.meta)==null?void 0:A.breakpoints)}};e.setBuilderContextSignal(Ie=>({...Ie,content:h}))}m.useState(()=>0);const[c,s]=m.useState(()=>!1),[l,u]=m.useState(()=>e.contentWrapper||"div");function f(g){var b;const{data:h}=g;if(h)switch(h.type){case"builder.configureSdk":{const S=h.data,{breakpoints:p,contentId:E}=S;if(!E||E!==((b=e.builderContextSignal.content)==null?void 0:b.id))return;p&&r({meta:{breakpoints:p}}),i(n+1);break}case"builder.contentUpdate":{const S=h.data,p=S.key||S.alias||S.entry||S.modelName,E=S.data;p===e.model&&(r(E),i(n+1));break}}}function x(){var h,b;const g=(b=(h=e.builderContextSignal.content)==null?void 0:h.data)==null?void 0:b.jsCode;g&&W({code:g,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[v,y]=m.useState(()=>({})),[C,k]=m.useState(()=>!1);function T(g){var h,b;if(e.builderContextSignal.content){const S=(h=e.builderContextSignal.content)==null?void 0:h.testVariationId,p=(b=e.builderContextSignal.content)==null?void 0:b.id;d._track({type:"click",canTrack:d.getDefaultCanTrack(e.canTrack),contentId:p,apiKey:e.apiKey,variationId:S!==p?S:void 0,...Ct(g),unique:!C})}C||k(!0)}function R(g){return g.replace(/{{([^}]+)}}/g,(h,b)=>W({code:b,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function w({url:g,key:h}){d.fetch(g).then(b=>b.json()).then(b=>{var p,E;const S={...e.builderContextSignal.rootState,[h]:b};(E=(p=e.builderContextSignal).rootSetState)==null||E.call(p,S),v[h]=!0}).catch(b=>{console.error("error fetching dynamic data",g,b)})}function I(){var h,b,S;const g=(S=(b=(h=e.builderContextSignal.content)==null?void 0:h.data)==null?void 0:b.httpRequests)!=null?S:{};Object.entries(g).forEach(([p,E])=>{if(E&&(!v[p]||d.isEditing())){const A=R(E);w({url:A,key:p})}})}function j(){d.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:d.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function P(g){i(n+1),window.addEventListener("message",f),It(),Et({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(h=>{var S;const b=d.createRegisterComponentMessage(h);(S=window.parent)==null||S.postMessage(b,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",j)}function B(g){const h=new URL(location.href).searchParams,b=h.get("builder.preview"),S=h.get(`builder.preview.${b}`),p=h.get("apiKey")||h.get("builder.space");b===e.model&&p===e.apiKey&&(!e.content||S===e.content.id)&&d.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(E=>{E&&r(E)})}return m.useEffect(()=>{var g;return(g=t.current)==null||g.addEventListener("initeditingbldr",P),()=>{var h;return(h=t.current)==null?void 0:h.removeEventListener("initeditingbldr",P)}},[]),m.useEffect(()=>{var g;return(g=t.current)==null||g.addEventListener("initpreviewingbldr",B),()=>{var h;return(h=t.current)==null?void 0:h.removeEventListener("initpreviewingbldr",B)}},[]),m.useEffect(()=>{var g,h;if(d.isBrowser()){if(d.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&d.getDefaultCanTrack(e.canTrack)){const S=(g=e.builderContextSignal.content)==null?void 0:g.testVariationId,p=(h=e.builderContextSignal.content)==null?void 0:h.id,E=e.apiKey;d._track({type:"impression",canTrack:!0,contentId:p,apiKey:E,variationId:S!==p?S:void 0})}d.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),m.useEffect(()=>{e.apiKey||d.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),x(),I(),j()},[]),m.useEffect(()=>{e.content&&r(e.content)},[e.content]),m.useEffect(()=>{},[c]),m.useEffect(()=>{x()},[(D=(F=e.builderContextSignal.content)==null?void 0:F.data)==null?void 0:D.jsCode,e.builderContextSignal.rootState]),m.useEffect(()=>{I()},[(Q=(Y=e.builderContextSignal.content)==null?void 0:Y.data)==null?void 0:Q.httpRequests]),m.useEffect(()=>{j()},[e.builderContextSignal.rootState]),m.useEffect(()=>{e.data&&o(e.data)},[e.data]),m.useEffect(()=>{e.locale&&o({locale:e.locale})},[e.locale]),m.useEffect(()=>()=>{d.isBrowser()&&(window.removeEventListener("message",f),window.removeEventListener("builder:component:stateChangeListenerActivated",j))},[]),a.jsx(q.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?a.jsx(a.Fragment,{children:m.createElement(l,{key:n,ref:t,onClick:g=>T(g),"builder-content-id":(J=e.builderContextSignal.content)==null?void 0:J.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((X=e.content)==null?void 0:X.testVariationId)||((Z=e.content)==null?void 0:Z.id)}`},e.children)}):null})}const Rt=e=>{var r,c;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],i=(c=e.fileUrl)!=null?c:(r=e==null?void 0:e.files)==null?void 0:r.regular;let o="";if(i&&t&&n&&(o+=`
160
160
  @font-face {
161
161
  font-family: "${t}";
162
162
  src: local("${n}"), url('${i}') format('woff2');
@@ -2008,7 +2008,7 @@ const Ot = (e, t, n = !0) => {
2008
2008
  builderElementIndex: n && i ? [].slice.call(document.getElementsByClassName(i)).indexOf(n) : void 0
2009
2009
  }
2010
2010
  };
2011
- }, zt = "0.11.4", qt = () => {
2011
+ }, zt = "0.12.0", qt = () => {
2012
2012
  Fe("insertMenu", {
2013
2013
  name: "_default",
2014
2014
  default: !0,
@@ -176,7 +176,7 @@ theFunction();
176
176
  "${t}",${JSON.stringify(e)}, ${mr}
177
177
  )`,Hi=({contentId:e,variationId:t})=>`window.${pr}(
178
178
  "${t}", "${e}", ${mr}
179
- )`;function Ht(e){return d.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function Kn(e){return Math.round(e*1e3)/1e3}const Ki=(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},Gi=e=>Ki(e,t=>{const r=t.getAttribute("builder-id")||t.id;return(r==null?void 0:r.indexOf("builder-"))===0}),Gn=({event:e,target:t})=>{const r=t.getBoundingClientRect(),n=e.clientX-r.left,i=e.clientY-r.top,a=Kn(n/r.width),s=Kn(i/r.height);return{x:a,y:s}},zi=e=>{const t=e.target,r=t&&Gi(t),n=(r==null?void 0:r.getAttribute("builder-id"))||(r==null?void 0:r.id);return{targetBuilderElement:n||void 0,metadata:{targetOffset:t?Gn({event:e,target:t}):void 0,builderTargetOffset:r?Gn({event:e,target:r}):void 0,builderElementIndex:r&&n?[].slice.call(document.getElementsByClassName(n)).indexOf(r):void 0}}},Xi="0.11.4",Yi=()=>{v.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 zn=!1;const Ji=(e={})=>{var t,r;zn||(zn=!0,v.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:v.TARGET,version:Xi,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,u=n.data.arguments||[],h=n.data.id,g=new Function(s);let y,b=null;try{y=g.apply(null,u)}catch(D){b=D}b?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:h,error:b.message}},"*"):y&&typeof y.then=="function"?y.then(D=>{var U;(U=window.parent)==null||U.postMessage({type:"builder.evaluateResult",data:{id:h,result:D}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:y,id:h}},"*");break}}})))};function qi(e){var te,I,Ee,V,be,le,H;const t=k.useRef(null),[r,n]=k.useState(()=>0);k.useState(()=>!0);function i(j){var A,B;const T={...e.builderContextSignal.rootState,...j};e.builderContextSignal.rootSetState?(B=(A=e.builderContextSignal).rootSetState)==null||B.call(A,T):e.setBuilderContextSignal(_=>({..._,rootState:T}))}function a(j){var A,B,_,G,we;const T={...e.builderContextSignal.content,...j,data:{...(A=e.builderContextSignal.content)==null?void 0:A.data,...j==null?void 0:j.data},meta:{...(B=e.builderContextSignal.content)==null?void 0:B.meta,...j==null?void 0:j.meta,breakpoints:((_=j==null?void 0:j.meta)==null?void 0:_.breakpoints)||((we=(G=e.builderContextSignal.content)==null?void 0:G.meta)==null?void 0:we.breakpoints)}};e.setBuilderContextSignal(et=>({...et,content:T}))}k.useState(()=>0);const[s,u]=k.useState(()=>!1),[h,g]=k.useState(()=>e.contentWrapper||"div");function y(j){var A;const{data:T}=j;if(T)switch(T.type){case"builder.configureSdk":{const B=T.data,{breakpoints:_,contentId:G}=B;if(!G||G!==((A=e.builderContextSignal.content)==null?void 0:A.id))return;_&&a({meta:{breakpoints:_}}),n(r+1);break}case"builder.contentUpdate":{const B=T.data,_=B.key||B.alias||B.entry||B.modelName,G=B.data;_===e.model&&(a(G),n(r+1));break}}}function b(){var T,A;const j=(A=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:A.jsCode;j&&qe({code:j,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[D,U]=k.useState(()=>({})),[N,F]=k.useState(()=>!1);function L(j){var T,A;if(e.builderContextSignal.content){const B=(T=e.builderContextSignal.content)==null?void 0:T.testVariationId,_=(A=e.builderContextSignal.content)==null?void 0:A.id;v._track({type:"click",canTrack:v.getDefaultCanTrack(e.canTrack),contentId:_,apiKey:e.apiKey,variationId:B!==_?B:void 0,...zi(j),unique:!N})}N||F(!0)}function Y(j){return j.replace(/{{([^}]+)}}/g,(T,A)=>qe({code:A,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function x({url:j,key:T}){v.fetch(j).then(A=>A.json()).then(A=>{var _,G;const B={...e.builderContextSignal.rootState,[T]:A};(G=(_=e.builderContextSignal).rootSetState)==null||G.call(_,B),D[T]=!0}).catch(A=>{console.error("error fetching dynamic data",j,A)})}function K(){var T,A,B;const j=(B=(A=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:A.httpRequests)!=null?B:{};Object.entries(j).forEach(([_,G])=>{if(G&&(!D[_]||v.isEditing())){const we=Y(G);x({url:we,key:_})}})}function ee(){v.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:v.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function ae(j){n(r+1),window.addEventListener("message",y),Yi(),Ji({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(T=>{var B;const A=v.createRegisterComponentMessage(T);(B=window.parent)==null||B.postMessage(A,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",ee)}function $(j){const T=new URL(location.href).searchParams,A=T.get("builder.preview"),B=T.get(`builder.preview.${A}`),_=T.get("apiKey")||T.get("builder.space");A===e.model&&_===e.apiKey&&(!e.content||B===e.content.id)&&v.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(G=>{G&&a(G)})}return k.useEffect(()=>{var j;return(j=t.current)==null||j.addEventListener("initeditingbldr",ae),()=>{var T;return(T=t.current)==null?void 0:T.removeEventListener("initeditingbldr",ae)}},[]),k.useEffect(()=>{var j;return(j=t.current)==null||j.addEventListener("initpreviewingbldr",$),()=>{var T;return(T=t.current)==null?void 0:T.removeEventListener("initpreviewingbldr",$)}},[]),k.useEffect(()=>{var j,T;if(v.isBrowser()){if(v.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&v.getDefaultCanTrack(e.canTrack)){const B=(j=e.builderContextSignal.content)==null?void 0:j.testVariationId,_=(T=e.builderContextSignal.content)==null?void 0:T.id,G=e.apiKey;v._track({type:"impression",canTrack:!0,contentId:_,apiKey:G,variationId:B!==_?B:void 0})}v.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),k.useEffect(()=>{e.apiKey||v.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),b(),K(),ee()},[]),k.useEffect(()=>{e.content&&a(e.content)},[e.content]),k.useEffect(()=>{},[s]),k.useEffect(()=>{b()},[(I=(te=e.builderContextSignal.content)==null?void 0:te.data)==null?void 0:I.jsCode,e.builderContextSignal.rootState]),k.useEffect(()=>{K()},[(V=(Ee=e.builderContextSignal.content)==null?void 0:Ee.data)==null?void 0:V.httpRequests]),k.useEffect(()=>{ee()},[e.builderContextSignal.rootState]),k.useEffect(()=>{e.data&&i(e.data)},[e.data]),k.useEffect(()=>{e.locale&&i({locale:e.locale})},[e.locale]),k.useEffect(()=>()=>{v.isBrowser()&&(window.removeEventListener("message",y),window.removeEventListener("builder:component:stateChangeListenerActivated",ee))},[]),d.jsx(Kt.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?d.jsx(d.Fragment,{children:k.createElement(h,{key:r,ref:t,onClick:j=>L(j),"builder-content-id":(be=e.builderContextSignal.content)==null?void 0:be.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((le=e.content)==null?void 0:le.testVariationId)||((H=e.content)==null?void 0:H.id)}`},e.children)}):null})}const Zi=e=>{var a,s;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),r=t.split(",")[0],n=(s=e.fileUrl)!=null?s:(a=e==null?void 0:e.files)==null?void 0:a.regular;let i="";if(n&&t&&r&&(i+=`
179
+ )`;function Ht(e){return d.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function Kn(e){return Math.round(e*1e3)/1e3}const Ki=(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},Gi=e=>Ki(e,t=>{const r=t.getAttribute("builder-id")||t.id;return(r==null?void 0:r.indexOf("builder-"))===0}),Gn=({event:e,target:t})=>{const r=t.getBoundingClientRect(),n=e.clientX-r.left,i=e.clientY-r.top,a=Kn(n/r.width),s=Kn(i/r.height);return{x:a,y:s}},zi=e=>{const t=e.target,r=t&&Gi(t),n=(r==null?void 0:r.getAttribute("builder-id"))||(r==null?void 0:r.id);return{targetBuilderElement:n||void 0,metadata:{targetOffset:t?Gn({event:e,target:t}):void 0,builderTargetOffset:r?Gn({event:e,target:r}):void 0,builderElementIndex:r&&n?[].slice.call(document.getElementsByClassName(n)).indexOf(r):void 0}}},Xi="0.12.0",Yi=()=>{v.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 zn=!1;const Ji=(e={})=>{var t,r;zn||(zn=!0,v.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:v.TARGET,version:Xi,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,u=n.data.arguments||[],h=n.data.id,g=new Function(s);let y,b=null;try{y=g.apply(null,u)}catch(D){b=D}b?(i=window.parent)==null||i.postMessage({type:"builder.evaluateError",data:{id:h,error:b.message}},"*"):y&&typeof y.then=="function"?y.then(D=>{var U;(U=window.parent)==null||U.postMessage({type:"builder.evaluateResult",data:{id:h,result:D}},"*")}).catch(console.error):(a=window.parent)==null||a.postMessage({type:"builder.evaluateResult",data:{result:y,id:h}},"*");break}}})))};function qi(e){var te,I,Ee,V,be,le,H;const t=k.useRef(null),[r,n]=k.useState(()=>0);k.useState(()=>!0);function i(j){var A,B;const T={...e.builderContextSignal.rootState,...j};e.builderContextSignal.rootSetState?(B=(A=e.builderContextSignal).rootSetState)==null||B.call(A,T):e.setBuilderContextSignal(_=>({..._,rootState:T}))}function a(j){var A,B,_,G,we;const T={...e.builderContextSignal.content,...j,data:{...(A=e.builderContextSignal.content)==null?void 0:A.data,...j==null?void 0:j.data},meta:{...(B=e.builderContextSignal.content)==null?void 0:B.meta,...j==null?void 0:j.meta,breakpoints:((_=j==null?void 0:j.meta)==null?void 0:_.breakpoints)||((we=(G=e.builderContextSignal.content)==null?void 0:G.meta)==null?void 0:we.breakpoints)}};e.setBuilderContextSignal(et=>({...et,content:T}))}k.useState(()=>0);const[s,u]=k.useState(()=>!1),[h,g]=k.useState(()=>e.contentWrapper||"div");function y(j){var A;const{data:T}=j;if(T)switch(T.type){case"builder.configureSdk":{const B=T.data,{breakpoints:_,contentId:G}=B;if(!G||G!==((A=e.builderContextSignal.content)==null?void 0:A.id))return;_&&a({meta:{breakpoints:_}}),n(r+1);break}case"builder.contentUpdate":{const B=T.data,_=B.key||B.alias||B.entry||B.modelName,G=B.data;_===e.model&&(a(G),n(r+1));break}}}function b(){var T,A;const j=(A=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:A.jsCode;j&&qe({code:j,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[D,U]=k.useState(()=>({})),[N,F]=k.useState(()=>!1);function L(j){var T,A;if(e.builderContextSignal.content){const B=(T=e.builderContextSignal.content)==null?void 0:T.testVariationId,_=(A=e.builderContextSignal.content)==null?void 0:A.id;v._track({type:"click",canTrack:v.getDefaultCanTrack(e.canTrack),contentId:_,apiKey:e.apiKey,variationId:B!==_?B:void 0,...zi(j),unique:!N})}N||F(!0)}function Y(j){return j.replace(/{{([^}]+)}}/g,(T,A)=>qe({code:A,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function x({url:j,key:T}){v.fetch(j).then(A=>A.json()).then(A=>{var _,G;const B={...e.builderContextSignal.rootState,[T]:A};(G=(_=e.builderContextSignal).rootSetState)==null||G.call(_,B),D[T]=!0}).catch(A=>{console.error("error fetching dynamic data",j,A)})}function K(){var T,A,B;const j=(B=(A=(T=e.builderContextSignal.content)==null?void 0:T.data)==null?void 0:A.httpRequests)!=null?B:{};Object.entries(j).forEach(([_,G])=>{if(G&&(!D[_]||v.isEditing())){const we=Y(G);x({url:we,key:_})}})}function ee(){v.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:v.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function ae(j){n(r+1),window.addEventListener("message",y),Yi(),Ji({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(T=>{var B;const A=v.createRegisterComponentMessage(T);(B=window.parent)==null||B.postMessage(A,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",ee)}function $(j){const T=new URL(location.href).searchParams,A=T.get("builder.preview"),B=T.get(`builder.preview.${A}`),_=T.get("apiKey")||T.get("builder.space");A===e.model&&_===e.apiKey&&(!e.content||B===e.content.id)&&v.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(G=>{G&&a(G)})}return k.useEffect(()=>{var j;return(j=t.current)==null||j.addEventListener("initeditingbldr",ae),()=>{var T;return(T=t.current)==null?void 0:T.removeEventListener("initeditingbldr",ae)}},[]),k.useEffect(()=>{var j;return(j=t.current)==null||j.addEventListener("initpreviewingbldr",$),()=>{var T;return(T=t.current)==null?void 0:T.removeEventListener("initpreviewingbldr",$)}},[]),k.useEffect(()=>{var j,T;if(v.isBrowser()){if(v.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&v.getDefaultCanTrack(e.canTrack)){const B=(j=e.builderContextSignal.content)==null?void 0:j.testVariationId,_=(T=e.builderContextSignal.content)==null?void 0:T.id,G=e.apiKey;v._track({type:"impression",canTrack:!0,contentId:_,apiKey:G,variationId:B!==_?B:void 0})}v.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),k.useEffect(()=>{e.apiKey||v.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),b(),K(),ee()},[]),k.useEffect(()=>{e.content&&a(e.content)},[e.content]),k.useEffect(()=>{},[s]),k.useEffect(()=>{b()},[(I=(te=e.builderContextSignal.content)==null?void 0:te.data)==null?void 0:I.jsCode,e.builderContextSignal.rootState]),k.useEffect(()=>{K()},[(V=(Ee=e.builderContextSignal.content)==null?void 0:Ee.data)==null?void 0:V.httpRequests]),k.useEffect(()=>{ee()},[e.builderContextSignal.rootState]),k.useEffect(()=>{e.data&&i(e.data)},[e.data]),k.useEffect(()=>{e.locale&&i({locale:e.locale})},[e.locale]),k.useEffect(()=>()=>{v.isBrowser()&&(window.removeEventListener("message",y),window.removeEventListener("builder:component:stateChangeListenerActivated",ee))},[]),d.jsx(Kt.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?d.jsx(d.Fragment,{children:k.createElement(h,{key:r,ref:t,onClick:j=>L(j),"builder-content-id":(be=e.builderContextSignal.content)==null?void 0:be.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((le=e.content)==null?void 0:le.testVariationId)||((H=e.content)==null?void 0:H.id)}`},e.children)}):null})}const Zi=e=>{var a,s;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),r=t.split(",")[0],n=(s=e.fileUrl)!=null?s:(a=e==null?void 0:e.files)==null?void 0:a.regular;let i="";if(n&&t&&r&&(i+=`
180
180
  @font-face {
181
181
  font-family: "${t}";
182
182
  src: local("${r}"), url('${n}') format('woff2');
@@ -4480,7 +4480,7 @@ const po = (e, t, r = !0) => {
4480
4480
  builderElementIndex: r && n ? [].slice.call(document.getElementsByClassName(n)).indexOf(r) : void 0
4481
4481
  }
4482
4482
  };
4483
- }, vo = "0.11.4", yo = () => {
4483
+ }, vo = "0.12.0", yo = () => {
4484
4484
  $r("insertMenu", {
4485
4485
  name: "_default",
4486
4486
  default: !0,
@@ -196,7 +196,7 @@ output;
196
196
  "${t}",${JSON.stringify(e)}, ${isHydrationTarget}
197
197
  )`,getUpdateVariantVisibilityScript=({contentId:e,variationId:t})=>`window.${UPDATE_VARIANT_VISIBILITY_SCRIPT_FN_NAME}(
198
198
  "${t}", "${e}", ${isHydrationTarget}
199
- )`;function InlinedScript(e){return jsxRuntime.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function round(e){return Math.round(e*1e3)/1e3}const findParentElement=(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},findBuilderParent=e=>findParentElement(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),computeOffset=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,r=e.clientY-n.top,o=round(i/n.width),a=round(r/n.height);return{x:o,y:a}},getInteractionPropertiesForEvent=e=>{const t=e.target,n=t&&findBuilderParent(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?computeOffset({event:e,target:t}):void 0,builderTargetOffset:n?computeOffset({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}},SDK_VERSION="0.11.4",registerInsertMenu=()=>{serverEntry.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 isSetupForEditing=!1;const setupBrowserForEditing=(e={})=>{var t,n;isSetupForEditing||(isSetupForEditing=!0,serverEntry.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:serverEntry.TARGET,version:SDK_VERSION,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var r,o;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const a=i.data.text,c=i.data.arguments||[],s=i.data.id,l=new Function(a);let u,g=null;try{u=l.apply(null,c)}catch(b){g=b}g?(r=window.parent)==null||r.postMessage({type:"builder.evaluateError",data:{id:s,error:g.message}},"*"):u&&typeof u.then=="function"?u.then(b=>{var f;(f=window.parent)==null||f.postMessage({type:"builder.evaluateResult",data:{id:s,result:b}},"*")}).catch(console.error):(o=window.parent)==null||o.postMessage({type:"builder.evaluateResult",data:{result:u,id:s}},"*");break}}})))};function EnableEditor(e){var w,P,A,F,_,V,W;const t=react.useRef(null),[n,i]=react.useState(()=>0);react.useState(()=>!0);function r(d){var x,h;const m={...e.builderContextSignal.rootState,...d};e.builderContextSignal.rootSetState?(h=(x=e.builderContextSignal).rootSetState)==null||h.call(x,m):e.setBuilderContextSignal(p=>({...p,rootState:m}))}function o(d){var x,h,p,R,B;const m={...e.builderContextSignal.content,...d,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...d==null?void 0:d.data},meta:{...(h=e.builderContextSignal.content)==null?void 0:h.meta,...d==null?void 0:d.meta,breakpoints:((p=d==null?void 0:d.meta)==null?void 0:p.breakpoints)||((B=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:B.breakpoints)}};e.setBuilderContextSignal($=>({...$,content:m}))}react.useState(()=>0);const[a,c]=react.useState(()=>!1),[s,l]=react.useState(()=>e.contentWrapper||"div");function u(d){var x;const{data:m}=d;if(m)switch(m.type){case"builder.configureSdk":{const h=m.data,{breakpoints:p,contentId:R}=h;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;p&&o({meta:{breakpoints:p}}),i(n+1);break}case"builder.contentUpdate":{const h=m.data,p=h.key||h.alias||h.entry||h.modelName,R=h.data;p===e.model&&(o(R),i(n+1));break}}}function g(){var m,x;const d=(x=(m=e.builderContextSignal.content)==null?void 0:m.data)==null?void 0:x.jsCode;d&&evaluate({code:d,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[b,f]=react.useState(()=>({})),[y,S]=react.useState(()=>!1);function k(d){var m,x;if(e.builderContextSignal.content){const h=(m=e.builderContextSignal.content)==null?void 0:m.testVariationId,p=(x=e.builderContextSignal.content)==null?void 0:x.id;serverEntry._track({type:"click",canTrack:serverEntry.getDefaultCanTrack(e.canTrack),contentId:p,apiKey:e.apiKey,variationId:h!==p?h:void 0,...getInteractionPropertiesForEvent(d),unique:!y})}y||S(!0)}function j(d){return d.replace(/{{([^}]+)}}/g,(m,x)=>evaluate({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function v({url:d,key:m}){serverEntry.fetch(d).then(x=>x.json()).then(x=>{var p,R;const h={...e.builderContextSignal.rootState,[m]:x};(R=(p=e.builderContextSignal).rootSetState)==null||R.call(p,h),b[m]=!0}).catch(x=>{console.error("error fetching dynamic data",d,x)})}function C(){var m,x,h;const d=(h=(x=(m=e.builderContextSignal.content)==null?void 0:m.data)==null?void 0:x.httpRequests)!=null?h:{};Object.entries(d).forEach(([p,R])=>{if(R&&(!b[p]||serverEntry.isEditing())){const B=j(R);v({url:B,key:p})}})}function E(){serverEntry.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:serverEntry.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function I(d){i(n+1),window.addEventListener("message",u),registerInsertMenu(),setupBrowserForEditing({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(m=>{var h;const x=serverEntry.createRegisterComponentMessage(m);(h=window.parent)==null||h.postMessage(x,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",E)}function T(d){const m=new URL(location.href).searchParams,x=m.get("builder.preview"),h=m.get(`builder.preview.${x}`),p=m.get("apiKey")||m.get("builder.space");x===e.model&&p===e.apiKey&&(!e.content||h===e.content.id)&&serverEntry.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(R=>{R&&o(R)})}return react.useEffect(()=>{var d;return(d=t.current)==null||d.addEventListener("initeditingbldr",I),()=>{var m;return(m=t.current)==null?void 0:m.removeEventListener("initeditingbldr",I)}},[]),react.useEffect(()=>{var d;return(d=t.current)==null||d.addEventListener("initpreviewingbldr",T),()=>{var m;return(m=t.current)==null?void 0:m.removeEventListener("initpreviewingbldr",T)}},[]),react.useEffect(()=>{var d,m;if(serverEntry.isBrowser()){if(serverEntry.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&serverEntry.getDefaultCanTrack(e.canTrack)){const h=(d=e.builderContextSignal.content)==null?void 0:d.testVariationId,p=(m=e.builderContextSignal.content)==null?void 0:m.id,R=e.apiKey;serverEntry._track({type:"impression",canTrack:!0,contentId:p,apiKey:R,variationId:h!==p?h:void 0})}serverEntry.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),react.useEffect(()=>{e.apiKey||serverEntry.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),g(),C(),E()},[]),react.useEffect(()=>{e.content&&o(e.content)},[e.content]),react.useEffect(()=>{},[a]),react.useEffect(()=>{g()},[(P=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:P.jsCode,e.builderContextSignal.rootState]),react.useEffect(()=>{C()},[(F=(A=e.builderContextSignal.content)==null?void 0:A.data)==null?void 0:F.httpRequests]),react.useEffect(()=>{E()},[e.builderContextSignal.rootState]),react.useEffect(()=>{e.data&&r(e.data)},[e.data]),react.useEffect(()=>{e.locale&&r({locale:e.locale})},[e.locale]),react.useEffect(()=>()=>{serverEntry.isBrowser()&&(window.removeEventListener("message",u),window.removeEventListener("builder:component:stateChangeListenerActivated",E))},[]),jsxRuntime.jsx(builderContext.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?jsxRuntime.jsx(jsxRuntime.Fragment,{children:react.createElement(s,{key:n,ref:t,onClick:d=>k(d),"builder-content-id":(_=e.builderContextSignal.content)==null?void 0:_.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((V=e.content)==null?void 0:V.testVariationId)||((W=e.content)==null?void 0:W.id)}`},e.children)}):null})}const getCssFromFont=e=>{var o,a;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],i=(a=e.fileUrl)!=null?a:(o=e==null?void 0:e.files)==null?void 0:o.regular;let r="";if(i&&t&&n&&(r+=`
199
+ )`;function InlinedScript(e){return jsxRuntime.jsx("script",{dangerouslySetInnerHTML:{__html:e.scriptStr},id:e.id||""})}function round(e){return Math.round(e*1e3)/1e3}const findParentElement=(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},findBuilderParent=e=>findParentElement(e,t=>{const n=t.getAttribute("builder-id")||t.id;return(n==null?void 0:n.indexOf("builder-"))===0}),computeOffset=({event:e,target:t})=>{const n=t.getBoundingClientRect(),i=e.clientX-n.left,r=e.clientY-n.top,o=round(i/n.width),a=round(r/n.height);return{x:o,y:a}},getInteractionPropertiesForEvent=e=>{const t=e.target,n=t&&findBuilderParent(t),i=(n==null?void 0:n.getAttribute("builder-id"))||(n==null?void 0:n.id);return{targetBuilderElement:i||void 0,metadata:{targetOffset:t?computeOffset({event:e,target:t}):void 0,builderTargetOffset:n?computeOffset({event:e,target:n}):void 0,builderElementIndex:n&&i?[].slice.call(document.getElementsByClassName(i)).indexOf(n):void 0}}},SDK_VERSION="0.12.0",registerInsertMenu=()=>{serverEntry.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 isSetupForEditing=!1;const setupBrowserForEditing=(e={})=>{var t,n;isSetupForEditing||(isSetupForEditing=!0,serverEntry.isBrowser()&&((t=window.parent)==null||t.postMessage({type:"builder.sdkInfo",data:{target:serverEntry.TARGET,version:SDK_VERSION,supportsPatchUpdates:!1,supportsAddBlockScoping:!0,supportsCustomBreakpoints:!0}},"*"),(n=window.parent)==null||n.postMessage({type:"builder.updateContent",data:{options:e}},"*"),window.addEventListener("message",({data:i})=>{var r,o;if(i!=null&&i.type)switch(i.type){case"builder.evaluate":{const a=i.data.text,c=i.data.arguments||[],s=i.data.id,l=new Function(a);let u,g=null;try{u=l.apply(null,c)}catch(b){g=b}g?(r=window.parent)==null||r.postMessage({type:"builder.evaluateError",data:{id:s,error:g.message}},"*"):u&&typeof u.then=="function"?u.then(b=>{var f;(f=window.parent)==null||f.postMessage({type:"builder.evaluateResult",data:{id:s,result:b}},"*")}).catch(console.error):(o=window.parent)==null||o.postMessage({type:"builder.evaluateResult",data:{result:u,id:s}},"*");break}}})))};function EnableEditor(e){var w,P,A,F,_,V,W;const t=react.useRef(null),[n,i]=react.useState(()=>0);react.useState(()=>!0);function r(d){var x,h;const m={...e.builderContextSignal.rootState,...d};e.builderContextSignal.rootSetState?(h=(x=e.builderContextSignal).rootSetState)==null||h.call(x,m):e.setBuilderContextSignal(p=>({...p,rootState:m}))}function o(d){var x,h,p,R,B;const m={...e.builderContextSignal.content,...d,data:{...(x=e.builderContextSignal.content)==null?void 0:x.data,...d==null?void 0:d.data},meta:{...(h=e.builderContextSignal.content)==null?void 0:h.meta,...d==null?void 0:d.meta,breakpoints:((p=d==null?void 0:d.meta)==null?void 0:p.breakpoints)||((B=(R=e.builderContextSignal.content)==null?void 0:R.meta)==null?void 0:B.breakpoints)}};e.setBuilderContextSignal($=>({...$,content:m}))}react.useState(()=>0);const[a,c]=react.useState(()=>!1),[s,l]=react.useState(()=>e.contentWrapper||"div");function u(d){var x;const{data:m}=d;if(m)switch(m.type){case"builder.configureSdk":{const h=m.data,{breakpoints:p,contentId:R}=h;if(!R||R!==((x=e.builderContextSignal.content)==null?void 0:x.id))return;p&&o({meta:{breakpoints:p}}),i(n+1);break}case"builder.contentUpdate":{const h=m.data,p=h.key||h.alias||h.entry||h.modelName,R=h.data;p===e.model&&(o(R),i(n+1));break}}}function g(){var m,x;const d=(x=(m=e.builderContextSignal.content)==null?void 0:m.data)==null?void 0:x.jsCode;d&&evaluate({code:d,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState})}const[b,f]=react.useState(()=>({})),[y,S]=react.useState(()=>!1);function k(d){var m,x;if(e.builderContextSignal.content){const h=(m=e.builderContextSignal.content)==null?void 0:m.testVariationId,p=(x=e.builderContextSignal.content)==null?void 0:x.id;serverEntry._track({type:"click",canTrack:serverEntry.getDefaultCanTrack(e.canTrack),contentId:p,apiKey:e.apiKey,variationId:h!==p?h:void 0,...getInteractionPropertiesForEvent(d),unique:!y})}y||S(!0)}function j(d){return d.replace(/{{([^}]+)}}/g,(m,x)=>evaluate({code:x,context:e.context||{},localState:void 0,rootState:e.builderContextSignal.rootState,rootSetState:e.builderContextSignal.rootSetState}))}function v({url:d,key:m}){serverEntry.fetch(d).then(x=>x.json()).then(x=>{var p,R;const h={...e.builderContextSignal.rootState,[m]:x};(R=(p=e.builderContextSignal).rootSetState)==null||R.call(p,h),b[m]=!0}).catch(x=>{console.error("error fetching dynamic data",d,x)})}function C(){var m,x,h;const d=(h=(x=(m=e.builderContextSignal.content)==null?void 0:m.data)==null?void 0:x.httpRequests)!=null?h:{};Object.entries(d).forEach(([p,R])=>{if(R&&(!b[p]||serverEntry.isEditing())){const B=j(R);v({url:B,key:p})}})}function E(){serverEntry.isEditing()&&window.dispatchEvent(new CustomEvent("builder:component:stateChange",{detail:{state:serverEntry.fastClone(e.builderContextSignal.rootState),ref:{name:e.model}}}))}function I(d){i(n+1),window.addEventListener("message",u),registerInsertMenu(),setupBrowserForEditing({...e.locale?{locale:e.locale}:{},...e.includeRefs?{includeRefs:e.includeRefs}:{},...e.enrich?{enrich:e.enrich}:{}}),Object.values(e.builderContextSignal.componentInfos).forEach(m=>{var h;const x=serverEntry.createRegisterComponentMessage(m);(h=window.parent)==null||h.postMessage(x,"*")}),window.addEventListener("builder:component:stateChangeListenerActivated",E)}function T(d){const m=new URL(location.href).searchParams,x=m.get("builder.preview"),h=m.get(`builder.preview.${x}`),p=m.get("apiKey")||m.get("builder.space");x===e.model&&p===e.apiKey&&(!e.content||h===e.content.id)&&serverEntry.fetchOneEntry({model:e.model,apiKey:e.apiKey,apiVersion:e.builderContextSignal.apiVersion}).then(R=>{R&&o(R)})}return react.useEffect(()=>{var d;return(d=t.current)==null||d.addEventListener("initeditingbldr",I),()=>{var m;return(m=t.current)==null?void 0:m.removeEventListener("initeditingbldr",I)}},[]),react.useEffect(()=>{var d;return(d=t.current)==null||d.addEventListener("initpreviewingbldr",T),()=>{var m;return(m=t.current)==null?void 0:m.removeEventListener("initpreviewingbldr",T)}},[]),react.useEffect(()=>{var d,m;if(serverEntry.isBrowser()){if(serverEntry.isEditing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initeditingbldr")),e.builderContextSignal.content&&serverEntry.getDefaultCanTrack(e.canTrack)){const h=(d=e.builderContextSignal.content)==null?void 0:d.testVariationId,p=(m=e.builderContextSignal.content)==null?void 0:m.id,R=e.apiKey;serverEntry._track({type:"impression",canTrack:!0,contentId:p,apiKey:R,variationId:h!==p?h:void 0})}serverEntry.isPreviewing()&&t.current&&t.current.dispatchEvent(new CustomEvent("initpreviewingbldr"))}},[]),react.useEffect(()=>{e.apiKey||serverEntry.logger.error("No API key provided to `RenderContent` component. This can cause issues. Please provide an API key using the `apiKey` prop."),g(),C(),E()},[]),react.useEffect(()=>{e.content&&o(e.content)},[e.content]),react.useEffect(()=>{},[a]),react.useEffect(()=>{g()},[(P=(w=e.builderContextSignal.content)==null?void 0:w.data)==null?void 0:P.jsCode,e.builderContextSignal.rootState]),react.useEffect(()=>{C()},[(F=(A=e.builderContextSignal.content)==null?void 0:A.data)==null?void 0:F.httpRequests]),react.useEffect(()=>{E()},[e.builderContextSignal.rootState]),react.useEffect(()=>{e.data&&r(e.data)},[e.data]),react.useEffect(()=>{e.locale&&r({locale:e.locale})},[e.locale]),react.useEffect(()=>()=>{serverEntry.isBrowser()&&(window.removeEventListener("message",u),window.removeEventListener("builder:component:stateChangeListenerActivated",E))},[]),jsxRuntime.jsx(builderContext.Provider,{value:e.builderContextSignal,children:e.builderContextSignal.content?jsxRuntime.jsx(jsxRuntime.Fragment,{children:react.createElement(s,{key:n,ref:t,onClick:d=>k(d),"builder-content-id":(_=e.builderContextSignal.content)==null?void 0:_.id,"builder-model":e.model,...e.showContent?{}:{hidden:!0,"aria-hidden":!0},...e.contentWrapperProps,className:`variant-${((V=e.content)==null?void 0:V.testVariationId)||((W=e.content)==null?void 0:W.id)}`},e.children)}):null})}const getCssFromFont=e=>{var o,a;const t=e.family+(e.kind&&!e.kind.includes("#")?", "+e.kind:""),n=t.split(",")[0],i=(a=e.fileUrl)!=null?a:(o=e==null?void 0:e.files)==null?void 0:o.regular;let r="";if(i&&t&&n&&(r+=`
200
200
  @font-face {
201
201
  font-family: "${t}";
202
202
  src: local("${n}"), url('${i}') format('woff2');
@@ -2111,7 +2111,7 @@ const findParentElement = (e, t, n = !0) => {
2111
2111
  builderElementIndex: n && i ? [].slice.call(document.getElementsByClassName(i)).indexOf(n) : void 0
2112
2112
  }
2113
2113
  };
2114
- }, SDK_VERSION = "0.11.4", registerInsertMenu = () => {
2114
+ }, SDK_VERSION = "0.12.0", registerInsertMenu = () => {
2115
2115
  register("insertMenu", {
2116
2116
  name: "_default",
2117
2117
  default: !0,
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.11.4",
4
+ "version": "0.12.0",
5
5
  "homepage": "https://github.com/BuilderIO/builder/tree/main/packages/sdks/output/react",
6
6
  "type": "module",
7
7
  "repository": {
@@ -80,66 +80,9 @@
80
80
  }
81
81
  },
82
82
  "./edge": {
83
- "node": {
84
- "types": "./types/index.d.ts",
85
- "import": "./lib/edge/index.mjs",
86
- "require": "./lib/edge/index.cjs"
87
- },
88
- "browser": {
89
- "types": "./types/index.d.ts",
90
- "import": "./lib/browser/index.mjs",
91
- "require": "./lib/browser/index.cjs"
92
- },
93
- "edge-routine": {
94
- "types": "./types/index.d.ts",
95
- "import": "./lib/edge/index.mjs",
96
- "require": "./lib/edge/index.cjs"
97
- },
98
- "workerd": {
99
- "types": "./types/index.d.ts",
100
- "import": "./lib/edge/index.mjs",
101
- "require": "./lib/edge/index.cjs"
102
- },
103
- "deno": {
104
- "types": "./types/index.d.ts",
105
- "import": "./lib/edge/index.mjs",
106
- "require": "./lib/edge/index.cjs"
107
- },
108
- "lagon": {
109
- "types": "./types/index.d.ts",
110
- "import": "./lib/edge/index.mjs",
111
- "require": "./lib/edge/index.cjs"
112
- },
113
- "netlify": {
114
- "types": "./types/index.d.ts",
115
- "import": "./lib/edge/index.mjs",
116
- "require": "./lib/edge/index.cjs"
117
- },
118
- "edge-light": {
119
- "types": "./types/index.d.ts",
120
- "import": "./lib/edge/index.mjs",
121
- "require": "./lib/edge/index.cjs"
122
- },
123
- "bun": {
124
- "types": "./types/index.d.ts",
125
- "import": "./lib/edge/index.mjs",
126
- "require": "./lib/edge/index.cjs"
127
- },
128
- "react-native": {
129
- "types": "./types/index.d.ts",
130
- "import": "./lib/edge/index.mjs",
131
- "require": "./lib/edge/index.cjs"
132
- },
133
- "electron": {
134
- "types": "./types/index.d.ts",
135
- "import": "./lib/edge/index.mjs",
136
- "require": "./lib/edge/index.cjs"
137
- },
138
- "default": {
139
- "types": "./types/index.d.ts",
140
- "import": "./lib/browser/index.mjs",
141
- "require": "./lib/browser/index.cjs"
142
- }
83
+ "types": "./types/index.d.ts",
84
+ "import": "./lib/edge/index.mjs",
85
+ "require": "./lib/edge/index.cjs"
143
86
  },
144
87
  "./node": {
145
88
  "types": "./types/index.d.ts",
@@ -1 +1 @@
1
- export declare const SDK_VERSION = "0.11.4";
1
+ export declare const SDK_VERSION = "0.12.0";