@gem-sdk/core 1.14.0-sun.162 → 1.14.0-sun.209

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.
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),react=require("react"),composeAdvanceStyle=require("../helpers/compose-advance-style.js"),constant=require("./constant.js");const ComponentWrapperPreview=({children:e,...t})=>{if("section"===t.type)return null;let o={};if(t.editorConfigs){let e=t.editorConfigs;e.placeholder?.notAppendBeforeAfter&&(o["data-placeholder-not-append-before-after"]=!0),e.toolbar?.parent&&(o["data-toolbar-parent"]=!0),e.component?.noDelete&&(o["data-component-no-delete"]=!0),e.component?.noDuplicate&&(o["data-component-no-duplicate"]=!0),e.component?.noDragDrop&&(o["data-component-no-drag-drop"]=!0),e.component?.noSetting&&(o["data-component-no-setting"]=!0),e.component?.isThirdParty&&(o["data-component-is-third-party"]=!0),e.toolbar?.hide&&(o["data-toolbar-hide"]=!0),e.slots?.children&&(o["data-slots-children"]=!0)}let n=composeAdvanceStyle.composeAdvanceStyle(t.advanced,t.tag),a=t.advanced,r={...o,"data-uid":t.uid,"data-component-type":"component","data-component-tag":t.tag,"data-component-label":t.label};return constant.disableWrap.includes(t.tag)&&react.isValidElement(e)?jsxRuntime.jsx(e.type,{...e.props,style:n,builderAttrs:r,advanced:a}):jsxRuntime.jsx("div",{style:n,className:`${t.uid}`,...r,children:e})};exports.default=ComponentWrapperPreview;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),react=require("react"),composeAdvanceStyle=require("../helpers/compose-advance-style.js"),constant=require("./constant.js"),RenderCustomCode=require("./RenderCustomCode.js");const ComponentWrapperPreview=({children:e,...t})=>{if("section"===t.type)return null;let n={};if(t.editorConfigs){let e=t.editorConfigs;e.placeholder?.notAppendBeforeAfter&&(n["data-placeholder-not-append-before-after"]=!0),e.toolbar?.parent&&(n["data-toolbar-parent"]=!0),e.component?.noDelete&&(n["data-component-no-delete"]=!0),e.component?.noDuplicate&&(n["data-component-no-duplicate"]=!0),e.component?.noDragDrop&&(n["data-component-no-drag-drop"]=!0),e.component?.noSetting&&(n["data-component-no-setting"]=!0),e.component?.isThirdParty&&(n["data-component-is-third-party"]=!0),e.toolbar?.hide&&(n["data-toolbar-hide"]=!0),e.slots?.children&&(n["data-slots-children"]=!0)}let o=composeAdvanceStyle.composeAdvanceStyle(t.advanced,t.tag),a=t.advanced,r={...n,"data-uid":t.uid,"data-component-type":"component","data-component-tag":t.tag,"data-component-label":t.label};return constant.disableWrap.includes(t.tag)&&react.isValidElement(e)?jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(RenderCustomCode.default,{props:t}),jsxRuntime.jsx(e.type,{...e.props,style:o,builderAttrs:r,advanced:a})]}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(RenderCustomCode.default,{props:t}),jsxRuntime.jsx("div",{style:o,className:`${t.uid}`,...r,children:e})]})};exports.default=ComponentWrapperPreview;
@@ -1,3 +1,15 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("react"),require("swr");var render=require("../helpers/render.js");require("../helpers/convert.js");var composeAdvanceStyle=require("../helpers/compose-advance-style.js"),constant=require("./constant.js");const componentsRenderWithParentId=["CarouselItem"],componentTexts=["Text","Heading"],Render=({uid:e,builder:r,components:t,parentId:n,extraFiles:d={},...i})=>{let l=r[e],s=t[l?.tag];if(!s)return console.log("Miss component: ",l),{liquid:"",extraFiles:d};if(!l||l?.type==="section")return{liquid:"",extraFiles:d};{let d={extraFiles:{}},a=composeAdvanceStyle.composeAdvanceStyle(l.advanced,l.tag),o="";return{liquid:o=constant.disableWrap.includes(l.tag)?render.RenderIf(l?.childrens?.length,()=>s({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,style:a,advanced:l.advanced,parentId:componentsRenderWithParentId.includes(l.tag)?n:null,...i,rawChildren:l.childrens.map(e=>({...r[e],uid:e,builder:r,components:t,customProps:d})),children:WrapRenderChildren({uid:e,customProps:d},l.childrens.map(e=>RenderChildren({uid:e,builder:r,components:t,customProps:d,parentTag:l.tag})))}),()=>s({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,advanced:l.advanced,style:a,isText:!!componentTexts.includes(l.tag)||null,parentId:componentsRenderWithParentId.includes(l.tag)?n:null,...i})):render.template`<div style="${a}" class="${l.uid} ${l?.childrens?.length||"IconListItemHoz"!==l.tag?"":"hidden"}">
2
- ${render.RenderIf(l?.childrens?.length,()=>s({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,...i,rawChildren:l.childrens.map(e=>({...r[e],uid:e,builder:r,components:t,customProps:d})),children:WrapRenderChildren({uid:e,customProps:d},l.childrens.map(e=>RenderChildren({uid:e,builder:r,components:t,customProps:d,parentTag:l.tag})))}),()=>s({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,isText:!!componentTexts.includes(l.tag)||null,...i}))}
3
- </div>`,extraFiles:d.extraFiles}}},RenderChildren=e=>{let r=Render(e);for(let t in r.extraFiles)if(Object.prototype.hasOwnProperty.call(r.extraFiles,t)){let n=r.extraFiles[t];e.customProps.extraFiles[t]=n}let t=new TextEncoder,n=r?.liquid?t.encode(r.liquid).length:0;if(Math.ceil(n/1024)>=180){let t=`gp-section-snippet-${e.uid}`;return e.customProps.extraFiles[t]=r.liquid,`{% render '${t}', product: product, variant: variant, product_form_id: product_form_id %}`}return r.liquid},WrapRenderChildren=({uid:e,customProps:r},t)=>{let n="";if(t?.length)for(let d=0;d<t.length;d++){let i=t[d];if(i){let t=n+i,l=new TextEncoder,s=t?l.encode(t).length:0;if(Math.ceil(s/1024)>=180){let t=`gp-section-snippet-${e+d}`;r.extraFiles[t]=i,n+=`{% render '${t}', product: product, variant: variant, product_form_id: product_form_id %}`}else n+=i}}return n};exports.RenderChildren=RenderChildren,exports.WrapRenderChildren=WrapRenderChildren,exports.default=Render;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),require("react"),require("swr");var render=require("../helpers/render.js");require("../helpers/convert.js");var composeAdvanceStyle=require("../helpers/compose-advance-style.js"),constant=require("./constant.js");const componentsRenderWithParentId=["CarouselItem"],componentTexts=["Text","Heading"],Render=({uid:e,builder:r,components:t,parentId:n,extraFiles:d={},pageContext:i,...s})=>{let l=r[e],a=t[l?.tag];if(!a)return console.log("Miss component: ",l),{liquid:"",extraFiles:d};if(!l||l?.type==="section")return{liquid:"",extraFiles:d};{let d={extraFiles:{}},o=composeAdvanceStyle.composeAdvanceStyle(l.advanced,l.tag),c="";c=constant.disableWrap.includes(l.tag)?render.RenderIf(l?.childrens?.length,()=>a({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,style:o,advanced:l.advanced,parentId:componentsRenderWithParentId.includes(l.tag)?n:null,pageContext:i,...s,rawChildren:l.childrens.map(e=>({...r[e],uid:e,builder:r,components:t,customProps:d,pageContext:i})),children:constant.customRenderChildren.includes(l.tag)?"":WrapRenderChildren({uid:e,customProps:d},l.childrens.map(e=>RenderChildren({uid:e,builder:r,components:t,customProps:d,parentTag:l.tag,pageContext:i})))}),()=>a({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,advanced:l.advanced,style:o,isText:!!componentTexts.includes(l.tag)||null,parentId:componentsRenderWithParentId.includes(l.tag)?n:null,pageContext:i,...s})):render.template`<div style="${o}" class="${l.uid} ${l?.childrens?.length||"IconListItemHoz"!==l.tag?"":"hidden"}">
2
+ ${render.RenderIf(l?.childrens?.length,()=>a({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,pageContext:i,...s,rawChildren:l.childrens.map(e=>({...r[e],uid:e,builder:r,components:t,customProps:d,pageContext:i})),children:constant.customRenderChildren.includes(l.tag)?"":WrapRenderChildren({uid:e,customProps:d},l.childrens.map(e=>RenderChildren({uid:e,builder:r,components:t,customProps:d,parentTag:l.tag,pageContext:i})))}),()=>a({builderProps:{uid:e,builderData:l},styles:l.styles,setting:l.settings,pageContext:i,isText:!!componentTexts.includes(l.tag)||null,...s}))}
3
+ </div>`;let{cssCode:u,jsCode:p}=RenderCustomCode(l);return u&&(c+=u),p&&(c+=p),{liquid:c,extraFiles:d.extraFiles}}},RenderCustomCode=e=>{let{css:r,javascript:t}=e.advanced?.editorData||{},n=render.RenderIf(!!r,render.template`
4
+ <style
5
+ id="${`custom-css-${e?.uid}`}"
6
+ >${r}</style>
7
+ `),d=render.RenderIf(!!t,render.template`
8
+ <script
9
+ id="${`custom-js-${e?.uid}`}"
10
+ >
11
+ try {
12
+ ${t}
13
+ } catch(err){}
14
+ </script>
15
+ `);return{cssCode:n,jsCode:d}},RenderChildren=e=>{let r=Render(e);for(let t in r.extraFiles)if(Object.prototype.hasOwnProperty.call(r.extraFiles,t)){let n=r.extraFiles[t];e.customProps.extraFiles[t]=n}let t=new TextEncoder,n=r?.liquid?t.encode(r.liquid).length:0;if(Math.ceil(n/1024)>=180){let t=`gp-section-snippet-${e.uid}`;return e.customProps.extraFiles[t]=r.liquid,`{% render '${t}', product: product, variant: variant, product_form_id: product_form_id %}`}return r.liquid},WrapRenderChildren=({uid:e,customProps:r},t)=>{let n="";if(t?.length)for(let d=0;d<t.length;d++){let i=t[d];if(i){let t=n+i,s=new TextEncoder,l=t?s.encode(t).length:0;if(Math.ceil(l/1024)>=180){let t=`gp-section-snippet-${e+d}`;r.extraFiles[t]=i,n+=`{% render '${t}', product: product, variant: variant, product_form_id: product_form_id %}`}else n+=i}}return n};exports.RenderChildren=RenderChildren,exports.WrapRenderChildren=WrapRenderChildren,exports.default=Render;
@@ -0,0 +1,5 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),Head=require("next/head"),Script=require("next/script"),react=require("react");require("zustand"),require("swr"),require("@gem-sdk/adapter-shopify"),require("swr/mutation");var shop=require("../hooks/shop.js");require("vanilla-lazyload"),require("../hooks/useCartUI.js"),require("../helpers/convert.js");const RenderCustomCode=({props:e})=>{let r=shop.useEditorMode(),{css:s,javascript:t}=e?.advanced?.editorData||{},i={css:`custom-css-${e?.uid}`,javascript:`custom-js-${e?.uid}`},u=react.useMemo(()=>`
2
+ try {
3
+ ${t}
4
+ } catch(err){}
5
+ `,[t]);return jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(Head,{children:!!s&&jsxRuntime.jsx("style",{id:i.css,dangerouslySetInnerHTML:{__html:s}})}),!!t&&"edit"!==r&&jsxRuntime.jsx(Script,{id:i.javascript,dangerouslySetInnerHTML:{__html:u}})]})};exports.default=RenderCustomCode;
@@ -1 +1 @@
1
- "use strict";const disableWrap=["Col","CollectionBanner","Row","Section","Image","Text","Button","ProductButton","Cart","Tabs","TabItem","Carousel","CarouselItem","ShopPayButton","AccordionItem","Video","Header","HeroBanner","Icon","IconList","HTMLCode","IconListHoz","IconListItem","CSSCode","FormEmail","FormDropdown","SubmitButton","Dialog","TextField","FormTextarea","ProductPrice","Product","ProductImages"];exports.disableWrap=disableWrap;
1
+ "use strict";const disableWrap=["Col","CollectionBanner","Row","Section","Image","Text","Button","ProductButton","Cart","Tabs","TabItem","Carousel","CarouselItem","ShopPayButton","AccordionItem","Video","Header","HeroBanner","Icon","IconList","HTMLCode","IconListHoz","IconListItem","CSSCode","FormEmail","FormDropdown","SubmitButton","Dialog","TextField","FormTextarea","ProductPrice","Product","ProductImages","Sticky"],customRenderChildren=["Accordion","AccordionItem","Row","IconList","Tabs"];exports.customRenderChildren=customRenderChildren,exports.disableWrap=disableWrap;
@@ -1 +1 @@
1
- "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand"),cloneDeep=require("../helpers/clone-deep.js"),normalizeBuilderData=require("../helpers/normalize-builder-data.js");function moveByIndex(e,t,i){let r=e.splice(t,1)[0];void 0!==r&&e.splice(i,0,r)}function removeByKey(e,t){let i=t[e];i&&(delete t[e],"section"!==i.type&&i.childrens?.map(e=>removeByKey(e,t)))}const BuilderPreviewContext=react.createContext(null),root={uid:"ROOT",tag:"Root",label:"Root",childrens:[]},createBuilderPreviewProvider=e=>zustand.createStore((t,i)=>({state:e,loaded:!1,addItem:e=>{let{position:r,data:l}=e,d=i().state,n=Date.now();if("section"===e.type){if(!Array.isArray(l)){let e=l.uid,i=d.ROOT;i.childrens?i.childrens.splice(r??0,0,e):i.childrens=[e],i.dateModified=n,t({state:{...d,[e]:{uid:e,type:"section",label:l.label},ROOT:cloneDeep.cloneDeep(i)}})}}else{let{id:i,data:l}=e,s=i?d[i]??d.ROOT:d.ROOT;if("section"===s.type)return;if(Array.isArray(l)){let e=l.map(e=>e.uid),i=l.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});s.dateModified=n,s.childrens=s.childrens??[],s.childrens.splice(r??0,0,...e),t({state:{...d,...i,[s.uid]:cloneDeep.cloneDeep(s)}})}else{let e=normalizeBuilderData.normalizeBuilderData(l);s.dateModified=n,s.childrens=s.childrens??[],s.childrens.splice(r??0,0,l.uid),t({state:{...d,...e,[s.uid]:cloneDeep.cloneDeep(s)}})}}},changeItemProp:(e,r,l)=>{if(!l||!["setting","style","advanced"].includes(l))return;let d=i().state,n=d[e];if(n?.type!=="section"&&n){let i=Date.now();switch(n.dateModified=i,l){case"setting":t({state:{...d,[e]:{...n,settings:{...n.settings,...r}}}});break;case"style":t({state:{...d,[e]:{...n,styles:{...n.styles,...r}}}});break;case"advanced":t({state:{...d,[e]:{...n,advanced:{...n.advanced,...r}}}})}}},changeItemPropByKey:({id:e,key:r,data:l,group:d})=>{if(!d||!["setting","style","advanced"].includes(d))return;let n=i().state,s=n[e];if(s?.type!=="section"&&s){let i={style:s.styles??{},advanced:s.advanced??{},setting:s.settings??{}};void 0===l?(console.warn("Data is undefined"),delete i[d][r]):i[d][r]=l,t({state:{...n,[e]:{...s,settings:{...i.setting},styles:{...i.style},advanced:{...i.advanced}}}})}},getItem:e=>i().state[e],removeItem:e=>{if("ROOT"===e)t({state:{ROOT:root}});else{let r=i().state;removeByKey(e,r);let l=Object.entries(r).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l){let i=Date.now(),[d,n]=l;if("section"===n.type)return;n.childrens=n.childrens?.filter(t=>t!==e),n.dateModified=i,t({state:{...r,[d]:cloneDeep.cloneDeep(n)}})}}},moveItem:(e,r,l)=>{let d=i().state,n=d[e],s=d[r];if(n&&s&&"section"!==s.type){if("section"===n.type){let i=d.ROOT;if(!i.childrens)return;let r=i.childrens.findIndex(t=>t===e);moveByIndex(i.childrens,r,l??0),t({state:{...d,ROOT:cloneDeep.cloneDeep(i)}})}else{let i=Object.entries(d).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(n&&i){let a=Date.now(),[,c]=i;if("section"===c.type)return;if(c.dateModified=a,r===c.uid&&c.childrens){let i=c.childrens.findIndex(t=>t===e);c.childrens&&i!==l&&(moveByIndex(c.childrens,i,l??0),t({state:{...d,[c.uid]:cloneDeep.cloneDeep(c)}}))}else c.childrens=c.childrens?.filter(t=>t!==e),s&&(s.dateModified=a,s.childrens=s.childrens??[],s.childrens.splice(l??0,0,n.uid),t({state:{...d,[s.uid]:cloneDeep.cloneDeep(s),[c.uid]:cloneDeep.cloneDeep(c)}}))}}}},forceChangeState:e=>{t({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let i=e.map(e=>e.uid),r=e.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});t({loaded:!0,state:{ROOT:{...root,childrens:i},...r}})}else{let i=normalizeBuilderData.normalizeBuilderData(e);t({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...i}})}},addSection:(e,r)=>{let l=i().state,d=l.ROOT;d.childrens||(d.childrens=[]),d.childrens.splice(r??0,0,e.uid),t({state:{...l,ROOT:cloneDeep.cloneDeep(d)}})}})),BuilderPreviewProvider=({children:e,state:t,lazy:i,...r})=>{let l=i?react.Suspense:react.Fragment,d=react.useMemo(()=>createBuilderPreviewProvider(t),[t]);return jsxRuntime.jsx(l,{children:jsxRuntime.jsx(BuilderPreviewContext.Provider,{...r,value:d,children:e})})},useBuilderPreviewStore=(e,t)=>{let i=react.useContext(BuilderPreviewContext);if(!i)throw Error("useBuilderPreviewStore must be used within a BuilderPreviewProvider");return zustand.useStore(i,e,t)};exports.BuilderPreviewProvider=BuilderPreviewProvider,exports.useBuilderPreviewStore=useBuilderPreviewStore;
1
+ "use strict";var jsxRuntime=require("react/jsx-runtime"),react=require("react"),zustand=require("zustand"),cloneDeep=require("../helpers/clone-deep.js"),normalizeBuilderData=require("../helpers/normalize-builder-data.js");function moveByIndex(e,t,i){let r=e.splice(t,1)[0];void 0!==r&&e.splice(i,0,r)}function removeByKey(e,t){let i=t[e];i&&(delete t[e],"section"!==i.type&&i.childrens?.map(e=>removeByKey(e,t)))}const BuilderPreviewContext=react.createContext(null),root={uid:"ROOT",tag:"Root",label:"Root",childrens:[]},createBuilderPreviewProvider=e=>zustand.createStore((t,i)=>({state:e,loaded:!1,addItem:e=>{let{position:r,data:s}=e,d=i().state,l=Date.now();if("section"===e.type){if(!Array.isArray(s)){let e=s.uid,i=d.ROOT;i.childrens?i.childrens.splice(r??0,0,e):i.childrens=[e],i.dateModified=l,t({state:{...d,[e]:{uid:e,type:"section",label:s.label},ROOT:cloneDeep.cloneDeep(i)}})}}else{let{id:i,data:s}=e,n=i?d[i]??d.ROOT:d.ROOT;if("section"===n.type)return;if(Array.isArray(s)){let e=s.map(e=>e.uid),i=s.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(r??0,0,...e),t({state:{...d,...i,[n.uid]:cloneDeep.cloneDeep(n)}})}else{let e=normalizeBuilderData.normalizeBuilderData(s);n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(r??0,0,s.uid),t({state:{...d,...e,[n.uid]:cloneDeep.cloneDeep(n)}})}}},changeItemProp:(e,r,s)=>{if(!s||!["setting","style","advanced"].includes(s))return;let d=i().state,l=d[e];if(l?.type!=="section"&&l){let i=Date.now();switch(l.dateModified=i,s){case"setting":t({state:{...d,[e]:{...l,settings:{...l.settings,...r}}}});break;case"style":t({state:{...d,[e]:{...l,styles:{...l.styles,...r}}}});break;case"advanced":t({state:{...d,[e]:{...l,advanced:{...l.advanced,...r}}}})}}},forceChangeItemProp:(e,r,s)=>{if(!s||!["setting","style","advanced"].includes(s))return;let d=i().state,l=d[e];if(l?.type!=="section"&&l){let i=Date.now();switch(l.dateModified=i,s){case"setting":t({state:{...d,[e]:{...l,settings:r}}});break;case"style":t({state:{...d,[e]:{...l,styles:r}}});break;case"advanced":t({state:{...d,[e]:{...l,advanced:r}}})}}},changeItemPropByKey:({id:e,key:r,data:s,group:d})=>{if(!d||!["setting","style","advanced"].includes(d))return;let l=i().state,n=l[e];if(n?.type!=="section"&&n){let i={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===s?(console.warn("Data is undefined"),delete i[d][r]):i[d][r]=s,t({state:{...l,[e]:{...n,settings:{...i.setting},styles:{...i.style},advanced:{...i.advanced}}}})}},getItem:e=>i().state[e],removeItem:e=>{if("ROOT"===e)t({state:{ROOT:root}});else{let r=i().state;removeByKey(e,r);let s=Object.entries(r).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(s){let i=Date.now(),[d,l]=s;if("section"===l.type)return;l.childrens=l.childrens?.filter(t=>t!==e),l.dateModified=i,t({state:{...r,[d]:cloneDeep.cloneDeep(l)}})}}},moveItem:(e,r,s)=>{let d=i().state,l=d[e],n=d[r];if(l&&n&&"section"!==n.type){if("section"===l.type){let i=d.ROOT;if(!i.childrens)return;let r=i.childrens.findIndex(t=>t===e);moveByIndex(i.childrens,r,s??0),t({state:{...d,ROOT:cloneDeep.cloneDeep(i)}})}else{let i=Object.entries(d).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l&&i){let a=Date.now(),[,c]=i;if("section"===c.type)return;if(c.dateModified=a,r===c.uid&&c.childrens){let i=c.childrens.findIndex(t=>t===e);c.childrens&&i!==s&&(moveByIndex(c.childrens,i,s??0),t({state:{...d,[c.uid]:cloneDeep.cloneDeep(c)}}))}else c.childrens=c.childrens?.filter(t=>t!==e),n&&(n.dateModified=a,n.childrens=n.childrens??[],n.childrens.splice(s??0,0,l.uid),t({state:{...d,[n.uid]:cloneDeep.cloneDeep(n),[c.uid]:cloneDeep.cloneDeep(c)}}))}}}},forceChangeState:e=>{t({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let i=e.map(e=>e.uid),r=e.reduceRight((e,t)=>{let i=normalizeBuilderData.normalizeBuilderData(t);return{...e,...i}},{});t({loaded:!0,state:{ROOT:{...root,childrens:i},...r}})}else{let i=normalizeBuilderData.normalizeBuilderData(e);t({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...i}})}},addSection:(e,r)=>{let s=i().state,d=s.ROOT;d.childrens||(d.childrens=[]),d.childrens.splice(r??0,0,e.uid),t({state:{...s,ROOT:cloneDeep.cloneDeep(d)}})}})),BuilderPreviewProvider=({children:e,state:t,lazy:i,...r})=>{let s=i?react.Suspense:react.Fragment,d=react.useMemo(()=>createBuilderPreviewProvider(t),[t]);return jsxRuntime.jsx(s,{children:jsxRuntime.jsx(BuilderPreviewContext.Provider,{...r,value:d,children:e})})},useBuilderPreviewStore=(e,t)=>{let i=react.useContext(BuilderPreviewContext);if(!i)throw Error("useBuilderPreviewStore must be used within a BuilderPreviewProvider");return zustand.useStore(i,e,t)};exports.BuilderPreviewProvider=BuilderPreviewProvider,exports.useBuilderPreviewStore=useBuilderPreviewStore;
@@ -1,9 +1,6 @@
1
- "use strict";var constant=require("./constant.js"),makeStyle=require("./make-style.js");const getCornerCSSFromGlobal=e=>e?.radiusType?["custom","circle"].includes(e?.radiusType)?makeStyle.makeStyle({bblr:e.bblr,bbrr:e.bbrr,btlr:e.btlr,btrr:e.btrr}):makeStyle.makeStyle({radius:`var(--g-radius-${e?.radiusType})`}):{},getRadiusCSSFromGlobal=(e,s,t)=>{if(!s||!e)return{};let a=t&&"desktop"!==t?constant.devicesMapping?.[t]:"",r=constant.stateMapping?.[e];return{[`-${r}-radius${a}`]:`var(--g-radius-${s})`}},getCustomRadius=(e,s,t)=>{if(!s||!e||s?.radiusType!=="custom")return{};let a=t&&"desktop"!==t?constant.devicesMapping?.[t]:"",r=constant.stateMapping?.[e];return{[`-${r}-bblr${a}`]:s.bblr,[`-${r}-bbrr${a}`]:s.bbrr,[`-${r}-btlr${a}`]:s.btlr,[`-${r}-btrr${a}`]:s.btrr}},composeRadius=e=>e?"desktop"in e||"tablet"in e||"mobile"in e?composeRadiusResponsiveState(e):composeRadiusState(e):{},composeRadiusState=(e,s)=>{let t={};switch(e?.normal?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("normal",e?.normal?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("normal",e.normal,s))}switch(e?.hover?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("hover",e?.hover?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("hover",e.hover,s))}switch(e?.focus?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("focus",e?.focus?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("focus",e.focus,s))}return t},composeRadiusResponsiveState=e=>{let s={};return Object.assign(s,composeRadiusState(e?.desktop,"desktop")),Object.assign(s,composeRadiusState(e?.tablet,"tablet")),Object.assign(s,composeRadiusState(e?.mobile,"mobile")),s},getRadiusStyleActiveState=e=>e?.active?.radiusType==="custom"?getCustomRadius("normal",e?.active):getRadiusCSSFromGlobal("normal",e?.active?.radiusType),composeCornerCss=e=>{let s;if(!e)return;let{radiusType:t,bblr:a,bbrr:r,btlr:o,btrr:i}=e;switch(t){case"medium":case"large":case"small":s=`border-radius: var(--g-radius-${t});`;break;case"circle":case"none":case"custom":s=`
2
- ${a?`border-bottom-left-radius: ${a};`:""}
3
-
4
- ${r?`border-bottom-right-radius: ${r};`:""}
5
-
6
- ${o?`border-top-left-radius: ${o};`:""}
7
-
8
- ${i?`border-top-right-radius: ${i};`:""}
9
- `}return s};exports.composeCornerCss=composeCornerCss,exports.composeRadius=composeRadius,exports.getCornerCSSFromGlobal=getCornerCSSFromGlobal,exports.getCustomRadius=getCustomRadius,exports.getRadiusCSSFromGlobal=getRadiusCSSFromGlobal,exports.getRadiusStyleActiveState=getRadiusStyleActiveState;
1
+ "use strict";var constant=require("./constant.js"),makeStyle=require("./make-style.js");const getCornerCSSFromGlobal=e=>e?.radiusType?["custom","circle"].includes(e?.radiusType)?makeStyle.makeStyle({bblr:e.bblr,bbrr:e.bbrr,btlr:e.btlr,btrr:e.btrr}):makeStyle.makeStyle({radius:`var(--g-radius-${e?.radiusType})`}):{},getRadiusCSSFromGlobal=(e,s,t)=>{if(!s||!e)return{};let a=t&&"desktop"!==t?constant.devicesMapping?.[t]:"",r=constant.stateMapping?.[e];return{[`-${r}-radius${a}`]:`var(--g-radius-${s})`}},getCustomRadius=(e,s,t)=>{if(!s||!e||s?.radiusType!=="custom")return{};let a=t&&"desktop"!==t?constant.devicesMapping?.[t]:"",r=constant.stateMapping?.[e];return{[`-${r}-bblr${a}`]:s.bblr,[`-${r}-bbrr${a}`]:s.bbrr,[`-${r}-btlr${a}`]:s.btlr,[`-${r}-btrr${a}`]:s.btrr}},composeRadius=e=>e?"desktop"in e||"tablet"in e||"mobile"in e?composeRadiusResponsiveState(e):composeRadiusState(e):{},composeRadiusState=(e,s)=>{let t={};switch(e?.normal?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("normal",e?.normal?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("normal",e.normal,s))}switch(e?.hover?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("hover",e?.hover?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("hover",e.hover,s))}switch(e?.focus?.radiusType){case"medium":case"large":case"small":Object.assign(t,getRadiusCSSFromGlobal("focus",e?.focus?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(t,getCustomRadius("focus",e.focus,s))}return t},composeRadiusResponsiveState=e=>{let s={};return Object.assign(s,composeRadiusState(e?.desktop,"desktop")),Object.assign(s,composeRadiusState(e?.tablet,"tablet")),Object.assign(s,composeRadiusState(e?.mobile,"mobile")),s},getRadiusStyleActiveState=e=>e?.active?.radiusType==="custom"?getCustomRadius("normal",e?.active):getRadiusCSSFromGlobal("normal",e?.active?.radiusType),composeCornerCss=(e,s=!1)=>{let t;if(!e)return"";let{radiusType:a,bblr:r,bbrr:o,btlr:i,btrr:c}=e,u=s?" !important":"";switch(a){case"medium":case"large":case"small":t=`border-radius: var(--g-radius-${a});`;break;case"circle":case"none":case"custom":t=`
2
+ ${r?`border-bottom-left-radius: ${r}${u};`:""}
3
+ ${o?`border-bottom-right-radius: ${o}${u};`:""}
4
+ ${i?`border-top-left-radius: ${i}${u};`:""}
5
+ ${c?`border-top-right-radius: ${c}${u};`:""}
6
+ `}return t};exports.composeCornerCss=composeCornerCss,exports.composeRadius=composeRadius,exports.getCornerCSSFromGlobal=getCornerCSSFromGlobal,exports.getCustomRadius=getCustomRadius,exports.getRadiusCSSFromGlobal=getRadiusCSSFromGlobal,exports.getRadiusStyleActiveState=getRadiusStyleActiveState;
@@ -1 +1 @@
1
- "use strict";var colors=require("./colors.js"),constant=require("./constant.js"),getShortname=require("./get-shortname.js");const parseValueWithUnit=e=>{let t=e.match(/(\d+)(.+)/);if(t&&3===t.length){let e=Number(t[1]??0),a=t[2];return{value:e,unit:a??"px"}}return{value:0,unit:"px"}},getStyleShadow=(e,t=!1)=>{let{styleAppliedFor:a,value:o,isEnableShadow:r}=e||{},{state:s}=e||{};if(s||(s="normal"),!a||!o||void 0===o.distance)return{};let{value:l,unit:n}=parseValueWithUnit(`${o?.distance}`);return{[`-${t?"":constant.stateMapping?.[s]}-${getShortname.getShortName(a)}`]:r?`${Math.cos(parseFloat(`${o?.angle}`)*Math.PI/180)*parseFloat(`${l}`)}${n} ${Math.sin(parseFloat(`${o?.angle}`)*Math.PI/180)*parseFloat(`${l}`)}${n} ${o?.blur} ${"box-shadow"===a?o?.spread+" ":""}${colors.getSingleColorVariable(o?.color)}`:"none"}},getStyleShadowState=(e,t,a)=>{if(!e||!t)return{};let o={};for(let[r,s]of Object.entries(e))Object.assign(o,getStyleShadow({value:s,state:r,styleAppliedFor:t,isEnableShadow:a?.[r]}));return o},composeShadowCss=({hasBoxShadow:e,boxShadowValue:t})=>{if(!e||!t)return;let{value:a,unit:o}=parseValueWithUnit(`${t?.distance}`);return`box-shadow: ${Math.cos(parseFloat(`${t?.angle}`)*Math.PI/180)*parseFloat(`${a}`)}${o} ${Math.sin(parseFloat(`${t?.angle}`)*Math.PI/180)*parseFloat(`${a}`)}${o} ${t?.blur} ${t?.spread+" "}${colors.getSingleColorVariable(t?.color)};`};exports.composeShadowCss=composeShadowCss,exports.getStyleShadow=getStyleShadow,exports.getStyleShadowState=getStyleShadowState,exports.parseValueWithUnit=parseValueWithUnit;
1
+ "use strict";var colors=require("./colors.js"),constant=require("./constant.js"),getShortname=require("./get-shortname.js");const parseValueWithUnit=t=>{let e=t.match(/(\d+)(.+)/);if(e&&3===e.length){let t=Number(e[1]??0),a=e[2];return{value:t,unit:a??"px"}}return{value:0,unit:"px"}},getStyleShadow=(t,e=!1)=>{let{styleAppliedFor:a,value:o,isEnableShadow:r}=t||{},{state:s}=t||{};if(s||(s="normal"),!a||!o||void 0===o.distance)return{};let{value:l,unit:n}=parseValueWithUnit(`${o?.distance}`);return{[`-${e?"":constant.stateMapping?.[s]}-${getShortname.getShortName(a)}`]:r?`${Math.cos(parseFloat(`${o?.angle}`)*Math.PI/180)*parseFloat(`${l}`)}${n} ${Math.sin(parseFloat(`${o?.angle}`)*Math.PI/180)*parseFloat(`${l}`)}${n} ${o?.blur} ${"box-shadow"===a?o?.spread+" ":""}${colors.getSingleColorVariable(o?.color)}`:"none"}},getStyleShadowState=(t,e,a)=>{if(!t||!e)return{};let o={};for(let[r,s]of Object.entries(t))Object.assign(o,getStyleShadow({value:s,state:r,styleAppliedFor:e,isEnableShadow:a?.[r]}));return o},composeShadowCss=({hasBoxShadow:t,boxShadowValue:e,important:a})=>{if(!t||!e)return;let{value:o,unit:r}=parseValueWithUnit(`${e?.distance}`),s=a?" !important":"";return`box-shadow: ${Math.cos(parseFloat(`${e?.angle}`)*Math.PI/180)*parseFloat(`${o}`)}${r} ${Math.sin(parseFloat(`${e?.angle}`)*Math.PI/180)*parseFloat(`${o}`)}${r} ${e?.blur} ${e?.spread+" "}${colors.getSingleColorVariable(e?.color)}${s};`};exports.composeShadowCss=composeShadowCss,exports.getStyleShadow=getStyleShadow,exports.getStyleShadowState=getStyleShadowState,exports.parseValueWithUnit=parseValueWithUnit;
@@ -1 +1 @@
1
- import{jsx as t}from"react/jsx-runtime";import{isValidElement as e}from"react";import{composeAdvanceStyle as o}from"../helpers/compose-advance-style.js";import{disableWrap as n}from"./constant.js";let ComponentWrapperPreview=({children:a,...r})=>{if("section"===r.type)return null;let p={};if(r.editorConfigs){let t=r.editorConfigs;t.placeholder?.notAppendBeforeAfter&&(p["data-placeholder-not-append-before-after"]=!0),t.toolbar?.parent&&(p["data-toolbar-parent"]=!0),t.component?.noDelete&&(p["data-component-no-delete"]=!0),t.component?.noDuplicate&&(p["data-component-no-duplicate"]=!0),t.component?.noDragDrop&&(p["data-component-no-drag-drop"]=!0),t.component?.noSetting&&(p["data-component-no-setting"]=!0),t.component?.isThirdParty&&(p["data-component-is-third-party"]=!0),t.toolbar?.hide&&(p["data-toolbar-hide"]=!0),t.slots?.children&&(p["data-slots-children"]=!0)}let d=o(r.advanced,r.tag),l=r.advanced,i={...p,"data-uid":r.uid,"data-component-type":"component","data-component-tag":r.tag,"data-component-label":r.label};return n.includes(r.tag)&&e(a)?t(a.type,{...a.props,style:d,builderAttrs:i,advanced:l}):t("div",{style:d,className:`${r.uid}`,...i,children:a})};export{ComponentWrapperPreview as default};
1
+ import{jsxs as e,Fragment as t,jsx as o}from"react/jsx-runtime";import{isValidElement as n}from"react";import{composeAdvanceStyle as a}from"../helpers/compose-advance-style.js";import{disableWrap as r}from"./constant.js";import p from"./RenderCustomCode.js";let ComponentWrapperPreview=({children:d,...i})=>{if("section"===i.type)return null;let l={};if(i.editorConfigs){let e=i.editorConfigs;e.placeholder?.notAppendBeforeAfter&&(l["data-placeholder-not-append-before-after"]=!0),e.toolbar?.parent&&(l["data-toolbar-parent"]=!0),e.component?.noDelete&&(l["data-component-no-delete"]=!0),e.component?.noDuplicate&&(l["data-component-no-duplicate"]=!0),e.component?.noDragDrop&&(l["data-component-no-drag-drop"]=!0),e.component?.noSetting&&(l["data-component-no-setting"]=!0),e.component?.isThirdParty&&(l["data-component-is-third-party"]=!0),e.toolbar?.hide&&(l["data-toolbar-hide"]=!0),e.slots?.children&&(l["data-slots-children"]=!0)}let c=a(i.advanced,i.tag),m=i.advanced,s={...l,"data-uid":i.uid,"data-component-type":"component","data-component-tag":i.tag,"data-component-label":i.label};return r.includes(i.tag)&&n(d)?e(t,{children:[o(p,{props:i}),o(d.type,{...d.props,style:c,builderAttrs:s,advanced:m})]}):e(t,{children:[o(p,{props:i}),o("div",{style:c,className:`${i.uid}`,...s,children:d})]})};export{ComponentWrapperPreview as default};
@@ -1,3 +1,15 @@
1
- import"react";import"swr";import{RenderIf as e,template as t}from"../helpers/render.js";import"../helpers/convert.js";import{composeAdvanceStyle as r}from"../helpers/compose-advance-style.js";import{disableWrap as n}from"./constant.js";let componentsRenderWithParentId=["CarouselItem"],componentTexts=["Text","Heading"],Render=({uid:i,builder:d,components:l,parentId:s,extraFiles:a={},...o})=>{let c=d[i],p=l[c?.tag];if(!p)return console.log("Miss component: ",c),{liquid:"",extraFiles:a};if(!c||c?.type==="section")return{liquid:"",extraFiles:a};{let a={extraFiles:{}},u=r(c.advanced,c.tag),h="";return{liquid:h=n.includes(c.tag)?e(c?.childrens?.length,()=>p({builderProps:{uid:i,builderData:c},styles:c.styles,setting:c.settings,style:u,advanced:c.advanced,parentId:componentsRenderWithParentId.includes(c.tag)?s:null,...o,rawChildren:c.childrens.map(e=>({...d[e],uid:e,builder:d,components:l,customProps:a})),children:WrapRenderChildren({uid:i,customProps:a},c.childrens.map(e=>RenderChildren({uid:e,builder:d,components:l,customProps:a,parentTag:c.tag})))}),()=>p({builderProps:{uid:i,builderData:c},styles:c.styles,setting:c.settings,advanced:c.advanced,style:u,isText:!!componentTexts.includes(c.tag)||null,parentId:componentsRenderWithParentId.includes(c.tag)?s:null,...o})):t`<div style="${u}" class="${c.uid} ${c?.childrens?.length||"IconListItemHoz"!==c.tag?"":"hidden"}">
2
- ${e(c?.childrens?.length,()=>p({builderProps:{uid:i,builderData:c},styles:c.styles,setting:c.settings,...o,rawChildren:c.childrens.map(e=>({...d[e],uid:e,builder:d,components:l,customProps:a})),children:WrapRenderChildren({uid:i,customProps:a},c.childrens.map(e=>RenderChildren({uid:e,builder:d,components:l,customProps:a,parentTag:c.tag})))}),()=>p({builderProps:{uid:i,builderData:c},styles:c.styles,setting:c.settings,isText:!!componentTexts.includes(c.tag)||null,...o}))}
3
- </div>`,extraFiles:a.extraFiles}}},RenderChildren=e=>{let t=Render(e);for(let r in t.extraFiles)if(Object.prototype.hasOwnProperty.call(t.extraFiles,r)){let n=t.extraFiles[r];e.customProps.extraFiles[r]=n}let r=new TextEncoder,n=t?.liquid?r.encode(t.liquid).length:0;if(Math.ceil(n/1024)>=180){let r=`gp-section-snippet-${e.uid}`;return e.customProps.extraFiles[r]=t.liquid,`{% render '${r}', product: product, variant: variant, product_form_id: product_form_id %}`}return t.liquid},WrapRenderChildren=({uid:e,customProps:t},r)=>{let n="";if(r?.length)for(let i=0;i<r.length;i++){let d=r[i];if(d){let r=n+d,l=new TextEncoder,s=r?l.encode(r).length:0;if(Math.ceil(s/1024)>=180){let r=`gp-section-snippet-${e+i}`;t.extraFiles[r]=d,n+=`{% render '${r}', product: product, variant: variant, product_form_id: product_form_id %}`}else n+=d}}return n};export{RenderChildren,WrapRenderChildren,Render as default};
1
+ import"react";import"swr";import{RenderIf as e,template as t}from"../helpers/render.js";import"../helpers/convert.js";import{composeAdvanceStyle as r}from"../helpers/compose-advance-style.js";import{disableWrap as n,customRenderChildren as i}from"./constant.js";let componentsRenderWithParentId=["CarouselItem"],componentTexts=["Text","Heading"],Render=({uid:d,builder:s,components:l,parentId:a,extraFiles:o={},pageContext:c,...p})=>{let u=s[d],h=l[u?.tag];if(!h)return console.log("Miss component: ",u),{liquid:"",extraFiles:o};if(!u||u?.type==="section")return{liquid:"",extraFiles:o};{let o={extraFiles:{}},g=r(u.advanced,u.tag),m="";m=n.includes(u.tag)?e(u?.childrens?.length,()=>h({builderProps:{uid:d,builderData:u},styles:u.styles,setting:u.settings,style:g,advanced:u.advanced,parentId:componentsRenderWithParentId.includes(u.tag)?a:null,pageContext:c,...p,rawChildren:u.childrens.map(e=>({...s[e],uid:e,builder:s,components:l,customProps:o,pageContext:c})),children:i.includes(u.tag)?"":WrapRenderChildren({uid:d,customProps:o},u.childrens.map(e=>RenderChildren({uid:e,builder:s,components:l,customProps:o,parentTag:u.tag,pageContext:c})))}),()=>h({builderProps:{uid:d,builderData:u},styles:u.styles,setting:u.settings,advanced:u.advanced,style:g,isText:!!componentTexts.includes(u.tag)||null,parentId:componentsRenderWithParentId.includes(u.tag)?a:null,pageContext:c,...p})):t`<div style="${g}" class="${u.uid} ${u?.childrens?.length||"IconListItemHoz"!==u.tag?"":"hidden"}">
2
+ ${e(u?.childrens?.length,()=>h({builderProps:{uid:d,builderData:u},styles:u.styles,setting:u.settings,pageContext:c,...p,rawChildren:u.childrens.map(e=>({...s[e],uid:e,builder:s,components:l,customProps:o,pageContext:c})),children:i.includes(u.tag)?"":WrapRenderChildren({uid:d,customProps:o},u.childrens.map(e=>RenderChildren({uid:e,builder:s,components:l,customProps:o,parentTag:u.tag,pageContext:c})))}),()=>h({builderProps:{uid:d,builderData:u},styles:u.styles,setting:u.settings,pageContext:c,isText:!!componentTexts.includes(u.tag)||null,...p}))}
3
+ </div>`;let{cssCode:x,jsCode:f}=RenderCustomCode(u);return x&&(m+=x),f&&(m+=f),{liquid:m,extraFiles:o.extraFiles}}},RenderCustomCode=r=>{let{css:n,javascript:i}=r.advanced?.editorData||{},d=e(!!n,t`
4
+ <style
5
+ id="${`custom-css-${r?.uid}`}"
6
+ >${n}</style>
7
+ `),s=e(!!i,t`
8
+ <script
9
+ id="${`custom-js-${r?.uid}`}"
10
+ >
11
+ try {
12
+ ${i}
13
+ } catch(err){}
14
+ </script>
15
+ `);return{cssCode:d,jsCode:s}},RenderChildren=e=>{let t=Render(e);for(let r in t.extraFiles)if(Object.prototype.hasOwnProperty.call(t.extraFiles,r)){let n=t.extraFiles[r];e.customProps.extraFiles[r]=n}let r=new TextEncoder,n=t?.liquid?r.encode(t.liquid).length:0;if(Math.ceil(n/1024)>=180){let r=`gp-section-snippet-${e.uid}`;return e.customProps.extraFiles[r]=t.liquid,`{% render '${r}', product: product, variant: variant, product_form_id: product_form_id %}`}return t.liquid},WrapRenderChildren=({uid:e,customProps:t},r)=>{let n="";if(r?.length)for(let i=0;i<r.length;i++){let d=r[i];if(d){let r=n+d,s=new TextEncoder,l=r?s.encode(r).length:0;if(Math.ceil(l/1024)>=180){let r=`gp-section-snippet-${e+i}`;t.extraFiles[r]=d,n+=`{% render '${r}', product: product, variant: variant, product_form_id: product_form_id %}`}else n+=d}}return n};export{RenderChildren,WrapRenderChildren,Render as default};
@@ -0,0 +1,5 @@
1
+ import{jsxs as t,Fragment as r,jsx as e}from"react/jsx-runtime";import o from"next/head";import s from"next/script";import{useMemo as i}from"react";import"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import{useEditorMode as m}from"../hooks/shop.js";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"../helpers/convert.js";let RenderCustomCode=({props:a})=>{let d=m(),{css:p,javascript:n}=a?.advanced?.editorData||{},c={css:`custom-css-${a?.uid}`,javascript:`custom-js-${a?.uid}`},l=i(()=>`
2
+ try {
3
+ ${n}
4
+ } catch(err){}
5
+ `,[n]);return t(r,{children:[e(o,{children:!!p&&e("style",{id:c.css,dangerouslySetInnerHTML:{__html:p}})}),!!n&&"edit"!==d&&e(s,{id:c.javascript,dangerouslySetInnerHTML:{__html:l}})]})};export{RenderCustomCode as default};
@@ -1 +1 @@
1
- let disableWrap=["Col","CollectionBanner","Row","Section","Image","Text","Button","ProductButton","Cart","Tabs","TabItem","Carousel","CarouselItem","ShopPayButton","AccordionItem","Video","Header","HeroBanner","Icon","IconList","HTMLCode","IconListHoz","IconListItem","CSSCode","FormEmail","FormDropdown","SubmitButton","Dialog","TextField","FormTextarea","ProductPrice","Product","ProductImages"];export{disableWrap};
1
+ let disableWrap=["Col","CollectionBanner","Row","Section","Image","Text","Button","ProductButton","Cart","Tabs","TabItem","Carousel","CarouselItem","ShopPayButton","AccordionItem","Video","Header","HeroBanner","Icon","IconList","HTMLCode","IconListHoz","IconListItem","CSSCode","FormEmail","FormDropdown","SubmitButton","Dialog","TextField","FormTextarea","ProductPrice","Product","ProductImages","Sticky"],customRenderChildren=["Accordion","AccordionItem","Row","IconList","Tabs"];export{customRenderChildren,disableWrap};
@@ -1 +1 @@
1
- import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useContext as i,createContext as r,Suspense as d,Fragment as s}from"react";import{useStore as l,createStore as n}from"zustand";import{cloneDeep as a}from"../helpers/clone-deep.js";import{normalizeBuilderData as c}from"../helpers/normalize-builder-data.js";function moveByIndex(e,t,i){let r=e.splice(t,1)[0];void 0!==r&&e.splice(i,0,r)}function removeByKey(e,t){let i=t[e];i&&(delete t[e],"section"!==i.type&&i.childrens?.map(e=>removeByKey(e,t)))}let BuilderPreviewContext=r(null),root={uid:"ROOT",tag:"Root",label:"Root",childrens:[]},createBuilderPreviewProvider=e=>n((t,i)=>({state:e,loaded:!1,addItem:e=>{let{position:r,data:d}=e,s=i().state,l=Date.now();if("section"===e.type){if(!Array.isArray(d)){let e=d.uid,i=s.ROOT;i.childrens?i.childrens.splice(r??0,0,e):i.childrens=[e],i.dateModified=l,t({state:{...s,[e]:{uid:e,type:"section",label:d.label},ROOT:a(i)}})}}else{let{id:i,data:d}=e,n=i?s[i]??s.ROOT:s.ROOT;if("section"===n.type)return;if(Array.isArray(d)){let e=d.map(e=>e.uid),i=d.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(r??0,0,...e),t({state:{...s,...i,[n.uid]:a(n)}})}else{let e=c(d);n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(r??0,0,d.uid),t({state:{...s,...e,[n.uid]:a(n)}})}}},changeItemProp:(e,r,d)=>{if(!d||!["setting","style","advanced"].includes(d))return;let s=i().state,l=s[e];if(l?.type!=="section"&&l){let i=Date.now();switch(l.dateModified=i,d){case"setting":t({state:{...s,[e]:{...l,settings:{...l.settings,...r}}}});break;case"style":t({state:{...s,[e]:{...l,styles:{...l.styles,...r}}}});break;case"advanced":t({state:{...s,[e]:{...l,advanced:{...l.advanced,...r}}}})}}},changeItemPropByKey:({id:e,key:r,data:d,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let l=i().state,n=l[e];if(n?.type!=="section"&&n){let i={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===d?(console.warn("Data is undefined"),delete i[s][r]):i[s][r]=d,t({state:{...l,[e]:{...n,settings:{...i.setting},styles:{...i.style},advanced:{...i.advanced}}}})}},getItem:e=>i().state[e],removeItem:e=>{if("ROOT"===e)t({state:{ROOT:root}});else{let r=i().state;removeByKey(e,r);let d=Object.entries(r).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(d){let i=Date.now(),[s,l]=d;if("section"===l.type)return;l.childrens=l.childrens?.filter(t=>t!==e),l.dateModified=i,t({state:{...r,[s]:a(l)}})}}},moveItem:(e,r,d)=>{let s=i().state,l=s[e],n=s[r];if(l&&n&&"section"!==n.type){if("section"===l.type){let i=s.ROOT;if(!i.childrens)return;let r=i.childrens.findIndex(t=>t===e);moveByIndex(i.childrens,r,d??0),t({state:{...s,ROOT:a(i)}})}else{let i=Object.entries(s).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l&&i){let c=Date.now(),[,o]=i;if("section"===o.type)return;if(o.dateModified=c,r===o.uid&&o.childrens){let i=o.childrens.findIndex(t=>t===e);o.childrens&&i!==d&&(moveByIndex(o.childrens,i,d??0),t({state:{...s,[o.uid]:a(o)}}))}else o.childrens=o.childrens?.filter(t=>t!==e),n&&(n.dateModified=c,n.childrens=n.childrens??[],n.childrens.splice(d??0,0,l.uid),t({state:{...s,[n.uid]:a(n),[o.uid]:a(o)}}))}}}},forceChangeState:e=>{t({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let i=e.map(e=>e.uid),r=e.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});t({loaded:!0,state:{ROOT:{...root,childrens:i},...r}})}else{let i=c(e);t({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...i}})}},addSection:(e,r)=>{let d=i().state,s=d.ROOT;s.childrens||(s.childrens=[]),s.childrens.splice(r??0,0,e.uid),t({state:{...d,ROOT:a(s)}})}})),BuilderPreviewProvider=({children:i,state:r,lazy:l,...n})=>{let a=l?d:s,c=t(()=>createBuilderPreviewProvider(r),[r]);return e(a,{children:e(BuilderPreviewContext.Provider,{...n,value:c,children:i})})},useBuilderPreviewStore=(e,t)=>{let r=i(BuilderPreviewContext);if(!r)throw Error("useBuilderPreviewStore must be used within a BuilderPreviewProvider");return l(r,e,t)};export{BuilderPreviewProvider,useBuilderPreviewStore};
1
+ import{jsx as e}from"react/jsx-runtime";import{useMemo as t,useContext as i,createContext as d,Suspense as r,Fragment as s}from"react";import{useStore as l,createStore as n}from"zustand";import{cloneDeep as a}from"../helpers/clone-deep.js";import{normalizeBuilderData as c}from"../helpers/normalize-builder-data.js";function moveByIndex(e,t,i){let d=e.splice(t,1)[0];void 0!==d&&e.splice(i,0,d)}function removeByKey(e,t){let i=t[e];i&&(delete t[e],"section"!==i.type&&i.childrens?.map(e=>removeByKey(e,t)))}let BuilderPreviewContext=d(null),root={uid:"ROOT",tag:"Root",label:"Root",childrens:[]},createBuilderPreviewProvider=e=>n((t,i)=>({state:e,loaded:!1,addItem:e=>{let{position:d,data:r}=e,s=i().state,l=Date.now();if("section"===e.type){if(!Array.isArray(r)){let e=r.uid,i=s.ROOT;i.childrens?i.childrens.splice(d??0,0,e):i.childrens=[e],i.dateModified=l,t({state:{...s,[e]:{uid:e,type:"section",label:r.label},ROOT:a(i)}})}}else{let{id:i,data:r}=e,n=i?s[i]??s.ROOT:s.ROOT;if("section"===n.type)return;if(Array.isArray(r)){let e=r.map(e=>e.uid),i=r.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(d??0,0,...e),t({state:{...s,...i,[n.uid]:a(n)}})}else{let e=c(r);n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(d??0,0,r.uid),t({state:{...s,...e,[n.uid]:a(n)}})}}},changeItemProp:(e,d,r)=>{if(!r||!["setting","style","advanced"].includes(r))return;let s=i().state,l=s[e];if(l?.type!=="section"&&l){let i=Date.now();switch(l.dateModified=i,r){case"setting":t({state:{...s,[e]:{...l,settings:{...l.settings,...d}}}});break;case"style":t({state:{...s,[e]:{...l,styles:{...l.styles,...d}}}});break;case"advanced":t({state:{...s,[e]:{...l,advanced:{...l.advanced,...d}}}})}}},forceChangeItemProp:(e,d,r)=>{if(!r||!["setting","style","advanced"].includes(r))return;let s=i().state,l=s[e];if(l?.type!=="section"&&l){let i=Date.now();switch(l.dateModified=i,r){case"setting":t({state:{...s,[e]:{...l,settings:d}}});break;case"style":t({state:{...s,[e]:{...l,styles:d}}});break;case"advanced":t({state:{...s,[e]:{...l,advanced:d}}})}}},changeItemPropByKey:({id:e,key:d,data:r,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let l=i().state,n=l[e];if(n?.type!=="section"&&n){let i={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===r?(console.warn("Data is undefined"),delete i[s][d]):i[s][d]=r,t({state:{...l,[e]:{...n,settings:{...i.setting},styles:{...i.style},advanced:{...i.advanced}}}})}},getItem:e=>i().state[e],removeItem:e=>{if("ROOT"===e)t({state:{ROOT:root}});else{let d=i().state;removeByKey(e,d);let r=Object.entries(d).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(r){let i=Date.now(),[s,l]=r;if("section"===l.type)return;l.childrens=l.childrens?.filter(t=>t!==e),l.dateModified=i,t({state:{...d,[s]:a(l)}})}}},moveItem:(e,d,r)=>{let s=i().state,l=s[e],n=s[d];if(l&&n&&"section"!==n.type){if("section"===l.type){let i=s.ROOT;if(!i.childrens)return;let d=i.childrens.findIndex(t=>t===e);moveByIndex(i.childrens,d,r??0),t({state:{...s,ROOT:a(i)}})}else{let i=Object.entries(s).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l&&i){let c=Date.now(),[,o]=i;if("section"===o.type)return;if(o.dateModified=c,d===o.uid&&o.childrens){let i=o.childrens.findIndex(t=>t===e);o.childrens&&i!==r&&(moveByIndex(o.childrens,i,r??0),t({state:{...s,[o.uid]:a(o)}}))}else o.childrens=o.childrens?.filter(t=>t!==e),n&&(n.dateModified=c,n.childrens=n.childrens??[],n.childrens.splice(r??0,0,l.uid),t({state:{...s,[n.uid]:a(n),[o.uid]:a(o)}}))}}}},forceChangeState:e=>{t({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let i=e.map(e=>e.uid),d=e.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});t({loaded:!0,state:{ROOT:{...root,childrens:i},...d}})}else{let i=c(e);t({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...i}})}},addSection:(e,d)=>{let r=i().state,s=r.ROOT;s.childrens||(s.childrens=[]),s.childrens.splice(d??0,0,e.uid),t({state:{...r,ROOT:a(s)}})}})),BuilderPreviewProvider=({children:i,state:d,lazy:l,...n})=>{let a=l?r:s,c=t(()=>createBuilderPreviewProvider(d),[d]);return e(a,{children:e(BuilderPreviewContext.Provider,{...n,value:c,children:i})})},useBuilderPreviewStore=(e,t)=>{let d=i(BuilderPreviewContext);if(!d)throw Error("useBuilderPreviewStore must be used within a BuilderPreviewProvider");return l(d,e,t)};export{BuilderPreviewProvider,useBuilderPreviewStore};
@@ -1,9 +1,6 @@
1
- import{devicesMapping as e,stateMapping as s}from"./constant.js";import{makeStyle as a}from"./make-style.js";let getCornerCSSFromGlobal=e=>e?.radiusType?["custom","circle"].includes(e?.radiusType)?a({bblr:e.bblr,bbrr:e.bbrr,btlr:e.btlr,btrr:e.btrr}):a({radius:`var(--g-radius-${e?.radiusType})`}):{},getRadiusCSSFromGlobal=(a,r,t)=>{if(!r||!a)return{};let o=t&&"desktop"!==t?e?.[t]:"",i=s?.[a];return{[`-${i}-radius${o}`]:`var(--g-radius-${r})`}},getCustomRadius=(a,r,t)=>{if(!r||!a||r?.radiusType!=="custom")return{};let o=t&&"desktop"!==t?e?.[t]:"",i=s?.[a];return{[`-${i}-bblr${o}`]:r.bblr,[`-${i}-bbrr${o}`]:r.bbrr,[`-${i}-btlr${o}`]:r.btlr,[`-${i}-btrr${o}`]:r.btrr}},composeRadius=e=>e?"desktop"in e||"tablet"in e||"mobile"in e?composeRadiusResponsiveState(e):composeRadiusState(e):{},composeRadiusState=(e,s)=>{let a={};switch(e?.normal?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("normal",e?.normal?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("normal",e.normal,s))}switch(e?.hover?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("hover",e?.hover?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("hover",e.hover,s))}switch(e?.focus?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("focus",e?.focus?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("focus",e.focus,s))}return a},composeRadiusResponsiveState=e=>{let s={};return Object.assign(s,composeRadiusState(e?.desktop,"desktop")),Object.assign(s,composeRadiusState(e?.tablet,"tablet")),Object.assign(s,composeRadiusState(e?.mobile,"mobile")),s},getRadiusStyleActiveState=e=>e?.active?.radiusType==="custom"?getCustomRadius("normal",e?.active):getRadiusCSSFromGlobal("normal",e?.active?.radiusType),composeCornerCss=e=>{let s;if(!e)return;let{radiusType:a,bblr:r,bbrr:t,btlr:o,btrr:i}=e;switch(a){case"medium":case"large":case"small":s=`border-radius: var(--g-radius-${a});`;break;case"circle":case"none":case"custom":s=`
2
- ${r?`border-bottom-left-radius: ${r};`:""}
3
-
4
- ${t?`border-bottom-right-radius: ${t};`:""}
5
-
6
- ${o?`border-top-left-radius: ${o};`:""}
7
-
8
- ${i?`border-top-right-radius: ${i};`:""}
9
- `}return s};export{composeCornerCss,composeRadius,getCornerCSSFromGlobal,getCustomRadius,getRadiusCSSFromGlobal,getRadiusStyleActiveState};
1
+ import{devicesMapping as e,stateMapping as s}from"./constant.js";import{makeStyle as a}from"./make-style.js";let getCornerCSSFromGlobal=e=>e?.radiusType?["custom","circle"].includes(e?.radiusType)?a({bblr:e.bblr,bbrr:e.bbrr,btlr:e.btlr,btrr:e.btrr}):a({radius:`var(--g-radius-${e?.radiusType})`}):{},getRadiusCSSFromGlobal=(a,r,t)=>{if(!r||!a)return{};let o=t&&"desktop"!==t?e?.[t]:"",i=s?.[a];return{[`-${i}-radius${o}`]:`var(--g-radius-${r})`}},getCustomRadius=(a,r,t)=>{if(!r||!a||r?.radiusType!=="custom")return{};let o=t&&"desktop"!==t?e?.[t]:"",i=s?.[a];return{[`-${i}-bblr${o}`]:r.bblr,[`-${i}-bbrr${o}`]:r.bbrr,[`-${i}-btlr${o}`]:r.btlr,[`-${i}-btrr${o}`]:r.btrr}},composeRadius=e=>e?"desktop"in e||"tablet"in e||"mobile"in e?composeRadiusResponsiveState(e):composeRadiusState(e):{},composeRadiusState=(e,s)=>{let a={};switch(e?.normal?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("normal",e?.normal?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("normal",e.normal,s))}switch(e?.hover?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("hover",e?.hover?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("hover",e.hover,s))}switch(e?.focus?.radiusType){case"medium":case"large":case"small":Object.assign(a,getRadiusCSSFromGlobal("focus",e?.focus?.radiusType,s));break;case"circle":case"none":case"custom":Object.assign(a,getCustomRadius("focus",e.focus,s))}return a},composeRadiusResponsiveState=e=>{let s={};return Object.assign(s,composeRadiusState(e?.desktop,"desktop")),Object.assign(s,composeRadiusState(e?.tablet,"tablet")),Object.assign(s,composeRadiusState(e?.mobile,"mobile")),s},getRadiusStyleActiveState=e=>e?.active?.radiusType==="custom"?getCustomRadius("normal",e?.active):getRadiusCSSFromGlobal("normal",e?.active?.radiusType),composeCornerCss=(e,s=!1)=>{let a;if(!e)return"";let{radiusType:r,bblr:t,bbrr:o,btlr:i,btrr:c}=e,u=s?" !important":"";switch(r){case"medium":case"large":case"small":a=`border-radius: var(--g-radius-${r});`;break;case"circle":case"none":case"custom":a=`
2
+ ${t?`border-bottom-left-radius: ${t}${u};`:""}
3
+ ${o?`border-bottom-right-radius: ${o}${u};`:""}
4
+ ${i?`border-top-left-radius: ${i}${u};`:""}
5
+ ${c?`border-top-right-radius: ${c}${u};`:""}
6
+ `}return a};export{composeCornerCss,composeRadius,getCornerCSSFromGlobal,getCustomRadius,getRadiusCSSFromGlobal,getRadiusStyleActiveState};
@@ -1 +1 @@
1
- import{getSingleColorVariable as t}from"./colors.js";import{stateMapping as e}from"./constant.js";import{getShortName as a}from"./get-shortname.js";let parseValueWithUnit=t=>{let e=t.match(/(\d+)(.+)/);if(e&&3===e.length){let t=Number(e[1]??0),a=e[2];return{value:t,unit:a??"px"}}return{value:0,unit:"px"}},getStyleShadow=(r,o=!1)=>{let{styleAppliedFor:l,value:s,isEnableShadow:n}=r||{},{state:i}=r||{};if(i||(i="normal"),!l||!s||void 0===s.distance)return{};let{value:$,unit:h}=parseValueWithUnit(`${s?.distance}`);return{[`-${o?"":e?.[i]}-${a(l)}`]:n?`${Math.cos(parseFloat(`${s?.angle}`)*Math.PI/180)*parseFloat(`${$}`)}${h} ${Math.sin(parseFloat(`${s?.angle}`)*Math.PI/180)*parseFloat(`${$}`)}${h} ${s?.blur} ${"box-shadow"===l?s?.spread+" ":""}${t(s?.color)}`:"none"}},getStyleShadowState=(t,e,a)=>{if(!t||!e)return{};let r={};for(let[o,l]of Object.entries(t))Object.assign(r,getStyleShadow({value:l,state:o,styleAppliedFor:e,isEnableShadow:a?.[o]}));return r},composeShadowCss=({hasBoxShadow:e,boxShadowValue:a})=>{if(!e||!a)return;let{value:r,unit:o}=parseValueWithUnit(`${a?.distance}`);return`box-shadow: ${Math.cos(parseFloat(`${a?.angle}`)*Math.PI/180)*parseFloat(`${r}`)}${o} ${Math.sin(parseFloat(`${a?.angle}`)*Math.PI/180)*parseFloat(`${r}`)}${o} ${a?.blur} ${a?.spread+" "}${t(a?.color)};`};export{composeShadowCss,getStyleShadow,getStyleShadowState,parseValueWithUnit};
1
+ import{getSingleColorVariable as t}from"./colors.js";import{stateMapping as e}from"./constant.js";import{getShortName as a}from"./get-shortname.js";let parseValueWithUnit=t=>{let e=t.match(/(\d+)(.+)/);if(e&&3===e.length){let t=Number(e[1]??0),a=e[2];return{value:t,unit:a??"px"}}return{value:0,unit:"px"}},getStyleShadow=(r,o=!1)=>{let{styleAppliedFor:l,value:s,isEnableShadow:n}=r||{},{state:i}=r||{};if(i||(i="normal"),!l||!s||void 0===s.distance)return{};let{value:$,unit:h}=parseValueWithUnit(`${s?.distance}`);return{[`-${o?"":e?.[i]}-${a(l)}`]:n?`${Math.cos(parseFloat(`${s?.angle}`)*Math.PI/180)*parseFloat(`${$}`)}${h} ${Math.sin(parseFloat(`${s?.angle}`)*Math.PI/180)*parseFloat(`${$}`)}${h} ${s?.blur} ${"box-shadow"===l?s?.spread+" ":""}${t(s?.color)}`:"none"}},getStyleShadowState=(t,e,a)=>{if(!t||!e)return{};let r={};for(let[o,l]of Object.entries(t))Object.assign(r,getStyleShadow({value:l,state:o,styleAppliedFor:e,isEnableShadow:a?.[o]}));return r},composeShadowCss=({hasBoxShadow:e,boxShadowValue:a,important:r})=>{if(!e||!a)return;let{value:o,unit:l}=parseValueWithUnit(`${a?.distance}`),s=r?" !important":"";return`box-shadow: ${Math.cos(parseFloat(`${a?.angle}`)*Math.PI/180)*parseFloat(`${o}`)}${l} ${Math.sin(parseFloat(`${a?.angle}`)*Math.PI/180)*parseFloat(`${o}`)}${l} ${a?.blur} ${a?.spread+" "}${t(a?.color)}${s};`};export{composeShadowCss,getStyleShadow,getStyleShadowState,parseValueWithUnit};
@@ -26,39 +26,6 @@ type Props$1 = {
26
26
  };
27
27
  declare const RenderPreviewMemo: React.NamedExoticComponent<Props$1>;
28
28
 
29
- type ExtraFiles = Record<string, string>;
30
- type Props = {
31
- uid: string;
32
- builder: Record<string, any>;
33
- components: Record<string, any>;
34
- extraFiles?: ExtraFiles;
35
- [key: string]: any;
36
- };
37
- declare const Render: ({ uid, builder, components, parentId, extraFiles, ...passProps }: Props) => {
38
- liquid: string;
39
- extraFiles: ExtraFiles;
40
- };
41
- declare const RenderChildren: (props: Props) => string;
42
- declare const WrapRenderChildren: ({ uid, customProps, }: {
43
- uid: string;
44
- customProps: {
45
- extraFiles: ExtraFiles;
46
- };
47
- }, codes?: (string | undefined)[]) => string;
48
-
49
- type AddonContextProps = {
50
- components: Record<string, React.ComponentType<any>>;
51
- };
52
- type AddonProviderProps = Pick<AddonContextProps, 'components'> & {
53
- children: React.ReactNode;
54
- key?: React.Key;
55
- };
56
- declare const AddonProvider: React.FC<AddonProviderProps>;
57
- declare const useAddons: () => Record<string, React.ComponentType<any>>;
58
- declare const useAddon: (id?: string) => React.ComponentType<any> | React.FC<BaseProps & {
59
- children?: React.ReactNode;
60
- }>;
61
-
62
29
  type BlockEntity = {
63
30
  uid: string;
64
31
  tag: string;
@@ -768,6 +735,8 @@ type Mapped<K, T> = NonNullable<T> extends ObjectDevices<infer U> ? {
768
735
  placeholder?: string;
769
736
  type: 'layout-segment';
770
737
  options: Option<T>[];
738
+ iconViewBox?: string;
739
+ enableItemBackground?: boolean;
771
740
  default?: T;
772
741
  };
773
742
  type LayoutSegmentControlType<T> = {
@@ -789,6 +758,10 @@ type SwatchesLinkControlType<T> = SharedControlType<T> & {
789
758
  id?: string;
790
759
  type: 'swatchesLink';
791
760
  };
761
+ type VariantSwatchesPresetControlType<T> = SharedControlType<T> & {
762
+ id?: string;
763
+ type: 'variant:presets';
764
+ };
792
765
 
793
766
  type LayoutControlType<T> = SharedControlType<T> & {
794
767
  type: 'layout';
@@ -846,7 +819,15 @@ type TypographyV2ControlType<T> = SharedControlType<T> & {
846
819
  };
847
820
  };
848
821
 
849
- type ControlProp<T> = AngleControlType<T> | CheckboxControlType<T> | ColorPickerControlType<T> | GroupControlType<T> | IconControlType<T> | InputFixContentControlType<T> | InputNumberControlType<T> | InputUnitControlType<T> | InputUnitSpacingControlType<T> | InputUnitWidthControlType<T> | InputControlType<T> | MarginControlType<T> | PaddingControlType<T> | PositionControlType<T> | RadioGroupControlType | RangeControlType<T> | SegmentControlType<T> | SelectControlType<T> | TextareaControlType<T> | ToggleControlType<T> | ImageControlType<T> | ChildrensControlType | GridControlType<T> | FlexControlType<T> | TextEditorControlType<T> | ProductControlType<T> | TypographyControlType<T> | TypographyV2ControlType<T> | MenuControlType<T> | BehaviorStateControlType<T> | PickLinkControlType<T> | BoxShadowControlType<T> | TextShadowControlType<T> | BorderControlType<T> | BorderRadiusControlType<T> | RadiusPresetControlType<T> | SizeControlType<T> | ChildItemType<T> | PickMultiProductControlType<T> | CollectionControlType<T> | BackgroundControlType<T> | VisibilityControlType<T> | SelectVariantControlType | CountdownEvergreenType | Timezone<T> | CustomContentControlType<T> | DateTimePickerControlType | CountdownDailyType | KlaviyoCodes | YotpoLoyaltyCodes | InputWidthControlType<T> | LayoutSegmentControlType<T> | InputSpacing<T> | UniqueIdControlType<T> | PositionSquareControlType<T> | CustomCodeEditor | LayoutControlType<T> | SwatchesLinkControlType<T> | ProductListControlType<T> | CollectionBannerControlType<T> | Ratio<T>;
822
+ type StickyDisplayControlType<T> = SharedControlType<T> & {
823
+ type: 'sticky-display';
824
+ };
825
+
826
+ type SyncProductPropertiesControlType<T> = SharedControlType<T> & {
827
+ type: 'sync-product-properties';
828
+ };
829
+
830
+ type ControlProp<T> = AngleControlType<T> | CheckboxControlType<T> | ColorPickerControlType<T> | GroupControlType<T> | IconControlType<T> | InputFixContentControlType<T> | InputNumberControlType<T> | InputUnitControlType<T> | InputUnitSpacingControlType<T> | InputUnitWidthControlType<T> | InputControlType<T> | MarginControlType<T> | PaddingControlType<T> | PositionControlType<T> | RadioGroupControlType | RangeControlType<T> | SegmentControlType<T> | SelectControlType<T> | TextareaControlType<T> | ToggleControlType<T> | ImageControlType<T> | ChildrensControlType | GridControlType<T> | FlexControlType<T> | TextEditorControlType<T> | ProductControlType<T> | TypographyControlType<T> | TypographyV2ControlType<T> | MenuControlType<T> | BehaviorStateControlType<T> | PickLinkControlType<T> | BoxShadowControlType<T> | TextShadowControlType<T> | BorderControlType<T> | BorderRadiusControlType<T> | RadiusPresetControlType<T> | SizeControlType<T> | ChildItemType<T> | PickMultiProductControlType<T> | CollectionControlType<T> | BackgroundControlType<T> | VisibilityControlType<T> | SelectVariantControlType | CountdownEvergreenType | Timezone<T> | CustomContentControlType<T> | DateTimePickerControlType | CountdownDailyType | KlaviyoCodes | YotpoLoyaltyCodes | InputWidthControlType<T> | LayoutSegmentControlType<T> | InputSpacing<T> | UniqueIdControlType<T> | PositionSquareControlType<T> | CustomCodeEditor | LayoutControlType<T> | SwatchesLinkControlType<T> | VariantSwatchesPresetControlType<T> | ProductListControlType<T> | CollectionBannerControlType<T> | Ratio<T> | StickyDisplayControlType<T> | SyncProductPropertiesControlType<T>;
850
831
  type Setting<P extends BaseProps> = {
851
832
  id: 'setting';
852
833
  note?: string;
@@ -7012,6 +6993,9 @@ declare namespace shop {
7012
6993
  };
7013
6994
  }
7014
6995
 
6996
+ type PageContext = {
6997
+ numberOfProductOfProductList: number;
6998
+ };
7015
6999
  type DeepPartial<T> = {
7016
7000
  [P in keyof T]?: DeepPartial<T[P]>;
7017
7001
  };
@@ -7200,6 +7184,40 @@ type ProductInputAnalytic = {
7200
7184
  currency?: string;
7201
7185
  };
7202
7186
 
7187
+ type ExtraFiles = Record<string, string>;
7188
+ type Props = {
7189
+ uid: string;
7190
+ builder: Record<string, any>;
7191
+ components: Record<string, any>;
7192
+ extraFiles?: ExtraFiles;
7193
+ pageContext?: PageContext;
7194
+ [key: string]: any;
7195
+ };
7196
+ declare const Render: ({ uid, builder, components, parentId, extraFiles, pageContext, ...passProps }: Props) => {
7197
+ liquid: string;
7198
+ extraFiles: ExtraFiles;
7199
+ };
7200
+ declare const RenderChildren: (props: Props) => string;
7201
+ declare const WrapRenderChildren: ({ uid, customProps, }: {
7202
+ uid: string;
7203
+ customProps: {
7204
+ extraFiles: ExtraFiles;
7205
+ };
7206
+ }, codes?: (string | undefined)[]) => string;
7207
+
7208
+ type AddonContextProps = {
7209
+ components: Record<string, React.ComponentType<any>>;
7210
+ };
7211
+ type AddonProviderProps = Pick<AddonContextProps, 'components'> & {
7212
+ children: React.ReactNode;
7213
+ key?: React.Key;
7214
+ };
7215
+ declare const AddonProvider: React.FC<AddonProviderProps>;
7216
+ declare const useAddons: () => Record<string, React.ComponentType<any>>;
7217
+ declare const useAddon: (id?: string) => React.ComponentType<any> | React.FC<BaseProps & {
7218
+ children?: React.ReactNode;
7219
+ }>;
7220
+
7203
7221
  type BuilderComponentProps = {
7204
7222
  components: Record<string, React.ComponentType<any>>;
7205
7223
  getItem: (id: string) => React.ComponentType<BaseProps> | undefined;
@@ -7237,6 +7255,7 @@ type BuilderPreviewContextProps = {
7237
7255
  addSection: (data: Omit<SectionEntity, 'type'>, position?: number) => void;
7238
7256
  moveItem: (id: string, moveTo: string, position?: number) => void;
7239
7257
  changeItemProp: (id: string, data?: Record<string, any>, group?: GroupPropType) => void;
7258
+ forceChangeItemProp: (id: string, data?: Record<string, any>, group?: GroupPropType) => void;
7240
7259
  changeItemPropByKey: (input: {
7241
7260
  id: string;
7242
7261
  key: string;
@@ -9290,7 +9309,7 @@ declare const getRadiusCSSFromGlobal: (state: StateType, key?: RoundedSize, devi
9290
9309
  declare const getCustomRadius: (state: StateType, radius?: CornerRadius, device?: NameDevices) => React.CSSProperties;
9291
9310
  declare const composeRadius: (value?: StateProp<CornerRadius> | ResponsiveStateProp<CornerRadius>) => React.CSSProperties;
9292
9311
  declare const getRadiusStyleActiveState: (radiusValue?: StateProp<CornerRadius>) => React.CSSProperties;
9293
- declare const composeCornerCss: (value?: CornerRadius | undefined) => string | undefined;
9312
+ declare const composeCornerCss: (value?: CornerRadius | undefined, important?: boolean) => string | undefined;
9294
9313
 
9295
9314
  declare function getSelectedVariant(variants?: Maybe<VariantSelectFragment>[], choices?: Record<string, string>): Maybe<VariantSelectFragment>;
9296
9315
  declare function parseSelectedOption(options: SelectedOption[]): SelectedOption | undefined;
@@ -9370,9 +9389,10 @@ declare const getStyleShadow: (shadowStyle: ShadowStyle, isActiveState?: boolean
9370
9389
  [x: string]: string;
9371
9390
  };
9372
9391
  declare const getStyleShadowState: (shadow?: StateProp<ShadowProps>, styleAppliedFor?: ShadowStyleApplied, isEnableShadow?: StateProp<boolean>) => React.CSSProperties;
9373
- declare const composeShadowCss: ({ hasBoxShadow, boxShadowValue, }: {
9392
+ declare const composeShadowCss: ({ hasBoxShadow, boxShadowValue, important, }: {
9374
9393
  hasBoxShadow?: boolean | undefined;
9375
9394
  boxShadowValue?: ShadowProps | undefined;
9395
+ important?: boolean | undefined;
9376
9396
  }) => string | undefined;
9377
9397
 
9378
9398
  type Options = {
@@ -9404,7 +9424,7 @@ type RequiredCursorEdge<T> = {
9404
9424
  };
9405
9425
  declare const fetchVariants: (fetcher: FetchFunc, { id, isSample, isStorefront }: FetchProductParams) => Promise<RequiredCursorEdge<VariantSelectFragment>[]>;
9406
9426
  declare const fetchMedias: (fetcher: FetchFunc, { id, isSample, isStorefront }: FetchProductParams) => Promise<(Pick<MediaEdge, "cursor"> & {
9407
- node?: Maybe<Pick<Media, "width" | "height" | "id" | "contentType" | "previewImage" | "src" | "alt">>;
9427
+ node?: Maybe<Pick<Media, "width" | "height" | "id" | "src" | "alt" | "contentType" | "previewImage">>;
9408
9428
  })[]>;
9409
9429
 
9410
9430
  type FetchProductsParams = {
@@ -9599,13 +9619,13 @@ declare const useSelectedOption: () => {
9599
9619
  setSelectedOption: (optionId?: Maybe<string>, optionValue?: Maybe<string>) => void;
9600
9620
  forceSelectedOption: (value?: Record<string, any> | undefined) => void;
9601
9621
  };
9602
- declare const useVariants: () => Maybe<Pick<ProductVariant, "title" | "width" | "length" | "weight" | "height" | "id" | "barcode" | "baseID" | "costPrice" | "inventoryPolicy" | "inventoryQuantity" | "inventoryStatus" | "isDigital" | "lowInventoryAmount" | "manageInventory" | "mediaId" | "platform" | "price" | "salePrice" | "sku" | "soldIndividually"> & {
9622
+ declare const useVariants: () => Maybe<Pick<ProductVariant, "title" | "width" | "length" | "weight" | "height" | "id" | "baseID" | "platform" | "sku" | "barcode" | "costPrice" | "inventoryPolicy" | "inventoryQuantity" | "inventoryStatus" | "isDigital" | "lowInventoryAmount" | "manageInventory" | "mediaId" | "price" | "salePrice" | "soldIndividually"> & {
9603
9623
  selectedOptions: Pick<SelectedOption, "value" | "name" | "optionType">[];
9604
- media?: Maybe<Pick<Media, "width" | "height" | "id" | "contentType" | "previewImage" | "src" | "alt">>;
9624
+ media?: Maybe<Pick<Media, "width" | "height" | "id" | "src" | "alt" | "contentType" | "previewImage">>;
9605
9625
  }>[];
9606
- declare const useVariant: (id: string) => Maybe<Pick<ProductVariant, "title" | "width" | "length" | "weight" | "height" | "id" | "barcode" | "baseID" | "costPrice" | "inventoryPolicy" | "inventoryQuantity" | "inventoryStatus" | "isDigital" | "lowInventoryAmount" | "manageInventory" | "mediaId" | "platform" | "price" | "salePrice" | "sku" | "soldIndividually"> & {
9626
+ declare const useVariant: (id: string) => Maybe<Pick<ProductVariant, "title" | "width" | "length" | "weight" | "height" | "id" | "baseID" | "platform" | "sku" | "barcode" | "costPrice" | "inventoryPolicy" | "inventoryQuantity" | "inventoryStatus" | "isDigital" | "lowInventoryAmount" | "manageInventory" | "mediaId" | "price" | "salePrice" | "soldIndividually"> & {
9607
9627
  selectedOptions: Pick<SelectedOption, "value" | "name" | "optionType">[];
9608
- media?: Maybe<Pick<Media, "width" | "height" | "id" | "contentType" | "previewImage" | "src" | "alt">>;
9628
+ media?: Maybe<Pick<Media, "width" | "height" | "id" | "src" | "alt" | "contentType" | "previewImage">>;
9609
9629
  }>;
9610
9630
  declare const useCurrentVariant: () => Maybe<VariantSelectFragment>;
9611
9631
  declare const useCurrentVariantInStock: () => boolean;
@@ -9651,4 +9671,4 @@ type PublishedThemePageSelectFragment = Pick<PublishedThemePage, 'id' | 'name' |
9651
9671
 
9652
9672
  declare const getProductBySlug: (fetcher: FetchFunc, slug?: string) => Promise<ProductSelectFragment>;
9653
9673
 
9654
- export { AddOn, AddonProvider, AddonProviderProps, AlignItemProp, AlignProp, Background, BaseProps, BasePropsWrap, BlockEntity, BoldSubscriptionsWidgetType, Border, BorderStyle, BuilderComponentProvider, BuilderComponentProviderProps, BuilderEntity, BuilderEntityNested, BuilderPreviewProvider, BuilderPreviewProviderProps, BuilderProvider, BuilderProviderProps, BuilderState, Builtin, CartLineProvider, CartLineProviderProps, CollectionDetailFilterDocument, CollectionDetailFilterQueryResponse, CollectionDetailFilterQueryVariables, CollectionDocument, CollectionProvider, CollectionProviderProps, CollectionQueryResponse, CollectionQueryVariables, CollectionSelectFragment, CollectionsDocument, CollectionsQueryResponse, CollectionsQueryVariables, ColorKey, ColorType$1 as ColorType, ColorValueType, Component, ComponentPreset, ComponentSetting, ContainerProp, ControlProp, ControlUI, CornerRadius, CornerRadiusType, CustomComponentConfig, DeepPartial, ExtractState, FetchCollectionArgs, FetchFunc, FetchProductParams, FlexDirectionProp, FontName, GlobalStyleConfig, GlobalStyleResponsiveConfig, GlobalSwatchesData, GraphQLConnection, GroupPropType, HSLAColorType, HSLColorType, HexColorType, InitComponentType, InstantJudgeMeReviewsWidgetType, InstantKlaviyoWidgetType, InstantLooxReviewsWidgetType, JudgeMeReviewsWidgetType, KlaviyoWidgetType, LooxReviewsWidgetType, ModalProvider, ModalProviderProps, NameDevices, NestedKeys, ObjectDeviceGlobalType, ObjectDevices, ObjectLayoutValue, OptionNormalStyle, OptionSpecialStyle, PageType, PageViewUpDocument, PageViewUpMutationResponse, PageViewUpMutationVariables, PickyStoryWidgetType, PreviewPageDocument, PreviewPageQueryResponse, PreviewPageQueryVariables, Primitive, ProductInputAnalytic, ProductListProvider, ProductListProviderProps, ProductProvider, ProductProviderProps, ProductReviewsWidgetType, ProductSelectFragment, ProductsDocument, ProductsQueryResponse, ProductsQueryVariables, PublishedThemePageSelectFragment, PublishedThemePagesDocument, PublishedThemePagesQueryResponse, PublishedThemePagesQueryVariables, RGBAColorType, RGBColorType, Ratio$1 as Ratio, RenderMemo as Render, RenderChildren, RenderIf, Render as RenderLiquid, RenderMode, RenderPreviewMemo as RenderPreview, RequiredCursorEdge, ResponsiveStateProp, RivyoWidgetType, RoundedSize, RyviuWidgetType, SectionData, SectionEntity, SectionProvider, SectionProviderProps, ShadowProps, ShadowStyle, ShadowStyleApplied, ShadowType, ShopProvider, ShopProviderProps, shop as ShopType, SizeProps, SizeSetting, SizeType, SpacingType, StampedWidgetType, StateProp, StateSelector, StateType, StoreConfig, StorePropertyDocument, StorePropertyQueryResponse, StorePropertyQueryVariables, SwatchesOptionType, SwatchesOptionValue, TransformProp, TypographyProps, TypographySetting, TypographySettingV2, TypographyType, TypographyV2Attrs, TypographyV2Props, VariantSelectFragment, WiserWidgetType, WrapRenderChildren, baseAssetURL, calculateFirstProduct, checkAvailableVariantInStock, cls, composeAdvanceStyle, composeBackgroundCss, composeBorderCss, composeCornerCss, composeGridLayout, composeMemo, composeRadius, composeShadowCss, composeSize, composeSizeCss, composeSpacing, composeTextColorCss, composeTypography, composeTypographyAttr, composeTypographyClassName, composeTypographyCss, composeTypographyStyle, composeTypographyV2, composeTypographyV2Css, convertOldLayout, dataStringify, fetchMedias, fetchVariants, flattenConnection, fpixel, genSizeClass, genTypoClass, genVariable, generateCollectionQueryKey, generateProductQueryKey, generateProductsQueryKey, getBorderStyle, getCollection, getCornerCSSFromGlobal, getCustomRadius, getGlobalColorCSSProp, getGlobalColorClass, getGlobalColorResponsiveClass, getGlobalColorResponsiveStyle, getGlobalColorStateClass, getGlobalColorStateClassDynamicBtn, getGlobalColorStateResponsiveClass, getGlobalColorStateResponsiveClassDynamicBtn, getGlobalColorStateResponsiveStyle, getGlobalColorStateStyle, getGlobalColorStyle, getProduct, getProductBySlug, getRadiusCSSFromGlobal, getRadiusStyleActiveState, getResponsiveStateValue, getResponsiveValue, getResponsiveValueByScreen, getSelectedVariant, getShortName, getSingleColorVariable, getSpacingVariable, getStyleBackgroundByDevice, getStyleShadow, getStyleShadowState, globalEvent, gridToArrayRegex, gtag, handleConvertBorderColor, handleConvertBorderStyle, handleConvertBorderWidth, handleConvertClassColor, handleConvertClassColorDynamicBtn, isBrowser, isColor, isColumnDirectionExist, isDefined, isEmptyChildren, isLocalEnv, isSafari, loadScript, makeAspectRatio, makeHeight, makeLineClamp, makeStyle, makeStyleResponsive, makeStyleResponsiveState, makeStyleState, makeWidth, normalizeBuilderData, optionLayoutStyle, parseSelectedOption, parseValueWithUnit, prefetchQueries, props, removeNullUndefined, splitStyle, styles, template, tiktokpixel, useAddToCart, useAddon, useAddons, useBuilderComponent, useBuilderPreviewStore, useBuilderStore, useCartData, useCartDiscountCodesUpdate, useCartId, useCartLine, useCartLineStore, useCartNoteUpdate, useCartUI, useCheckAvailableVariantInStock, useCheckoutUrl, useCollection, useCollectionQuery, useCollectionStore, useCollectionsQuery, useConnectedShopify, useCreateCart, useCurrency, useCurrentDevice, useCurrentVariant, useCurrentVariantInStock, useEditorMode, useFeaturedImageGlobal, useFormatMoney, useIsSampleProduct, useIsStorefrontProduct, useIsomorphicLayoutEffect, useLazyVideo, useLoadScript, useLocale, useMatchMutate, useMobileOnly, useModalStore, useMoney, useMoneyFormat, usePageType, usePluginEnable, usePrevious, useProduct, useProductList, useProductListProducts, useProductListSettings, useProductListStore, useProductListStyles, useProductProperties, useProductQuery, useProductStore, useProductsQuery, useQuantity, useRemoveCartItem, useSection, useSectionStore, useSelectedOption, useShopStore, useStoreFront, useSuspenseFetch, useSwatches, useSwatchesOptions, useUniqProductID, useUpdateCartItem, useVariant, useVariantOutStock, useVariants, validateEmail };
9674
+ export { AddOn, AddonProvider, AddonProviderProps, AlignItemProp, AlignProp, Background, BaseProps, BasePropsWrap, BlockEntity, BoldSubscriptionsWidgetType, Border, BorderStyle, BuilderComponentProvider, BuilderComponentProviderProps, BuilderEntity, BuilderEntityNested, BuilderPreviewProvider, BuilderPreviewProviderProps, BuilderProvider, BuilderProviderProps, BuilderState, Builtin, CartLineProvider, CartLineProviderProps, CollectionDetailFilterDocument, CollectionDetailFilterQueryResponse, CollectionDetailFilterQueryVariables, CollectionDocument, CollectionProvider, CollectionProviderProps, CollectionQueryResponse, CollectionQueryVariables, CollectionSelectFragment, CollectionsDocument, CollectionsQueryResponse, CollectionsQueryVariables, ColorKey, ColorType$1 as ColorType, ColorValueType, Component, ComponentPreset, ComponentSetting, ContainerProp, ControlProp, ControlUI, CornerRadius, CornerRadiusType, CustomComponentConfig, DeepPartial, ExtractState, FetchCollectionArgs, FetchFunc, FetchProductParams, FlexDirectionProp, FontName, GlobalStyleConfig, GlobalStyleResponsiveConfig, GlobalSwatchesData, GraphQLConnection, GroupPropType, HSLAColorType, HSLColorType, HexColorType, InitComponentType, InstantJudgeMeReviewsWidgetType, InstantKlaviyoWidgetType, InstantLooxReviewsWidgetType, JudgeMeReviewsWidgetType, KlaviyoWidgetType, LooxReviewsWidgetType, ModalProvider, ModalProviderProps, NameDevices, NestedKeys, ObjectDeviceGlobalType, ObjectDevices, ObjectLayoutValue, OptionNormalStyle, OptionSpecialStyle, PageContext, PageType, PageViewUpDocument, PageViewUpMutationResponse, PageViewUpMutationVariables, PickyStoryWidgetType, PreviewPageDocument, PreviewPageQueryResponse, PreviewPageQueryVariables, Primitive, ProductInputAnalytic, ProductListProvider, ProductListProviderProps, ProductProvider, ProductProviderProps, ProductReviewsWidgetType, ProductSelectFragment, ProductsDocument, ProductsQueryResponse, ProductsQueryVariables, PublishedThemePageSelectFragment, PublishedThemePagesDocument, PublishedThemePagesQueryResponse, PublishedThemePagesQueryVariables, RGBAColorType, RGBColorType, Ratio$1 as Ratio, RenderMemo as Render, RenderChildren, RenderIf, Render as RenderLiquid, RenderMode, RenderPreviewMemo as RenderPreview, RequiredCursorEdge, ResponsiveStateProp, RivyoWidgetType, RoundedSize, RyviuWidgetType, SectionData, SectionEntity, SectionProvider, SectionProviderProps, ShadowProps, ShadowStyle, ShadowStyleApplied, ShadowType, ShopProvider, ShopProviderProps, shop as ShopType, SizeProps, SizeSetting, SizeType, SpacingType, StampedWidgetType, StateProp, StateSelector, StateType, StoreConfig, StorePropertyDocument, StorePropertyQueryResponse, StorePropertyQueryVariables, SwatchesOptionType, SwatchesOptionValue, TransformProp, TypographyProps, TypographySetting, TypographySettingV2, TypographyType, TypographyV2Attrs, TypographyV2Props, VariantSelectFragment, WiserWidgetType, WrapRenderChildren, baseAssetURL, calculateFirstProduct, checkAvailableVariantInStock, cls, composeAdvanceStyle, composeBackgroundCss, composeBorderCss, composeCornerCss, composeGridLayout, composeMemo, composeRadius, composeShadowCss, composeSize, composeSizeCss, composeSpacing, composeTextColorCss, composeTypography, composeTypographyAttr, composeTypographyClassName, composeTypographyCss, composeTypographyStyle, composeTypographyV2, composeTypographyV2Css, convertOldLayout, dataStringify, fetchMedias, fetchVariants, flattenConnection, fpixel, genSizeClass, genTypoClass, genVariable, generateCollectionQueryKey, generateProductQueryKey, generateProductsQueryKey, getBorderStyle, getCollection, getCornerCSSFromGlobal, getCustomRadius, getGlobalColorCSSProp, getGlobalColorClass, getGlobalColorResponsiveClass, getGlobalColorResponsiveStyle, getGlobalColorStateClass, getGlobalColorStateClassDynamicBtn, getGlobalColorStateResponsiveClass, getGlobalColorStateResponsiveClassDynamicBtn, getGlobalColorStateResponsiveStyle, getGlobalColorStateStyle, getGlobalColorStyle, getProduct, getProductBySlug, getRadiusCSSFromGlobal, getRadiusStyleActiveState, getResponsiveStateValue, getResponsiveValue, getResponsiveValueByScreen, getSelectedVariant, getShortName, getSingleColorVariable, getSpacingVariable, getStyleBackgroundByDevice, getStyleShadow, getStyleShadowState, globalEvent, gridToArrayRegex, gtag, handleConvertBorderColor, handleConvertBorderStyle, handleConvertBorderWidth, handleConvertClassColor, handleConvertClassColorDynamicBtn, isBrowser, isColor, isColumnDirectionExist, isDefined, isEmptyChildren, isLocalEnv, isSafari, loadScript, makeAspectRatio, makeHeight, makeLineClamp, makeStyle, makeStyleResponsive, makeStyleResponsiveState, makeStyleState, makeWidth, normalizeBuilderData, optionLayoutStyle, parseSelectedOption, parseValueWithUnit, prefetchQueries, props, removeNullUndefined, splitStyle, styles, template, tiktokpixel, useAddToCart, useAddon, useAddons, useBuilderComponent, useBuilderPreviewStore, useBuilderStore, useCartData, useCartDiscountCodesUpdate, useCartId, useCartLine, useCartLineStore, useCartNoteUpdate, useCartUI, useCheckAvailableVariantInStock, useCheckoutUrl, useCollection, useCollectionQuery, useCollectionStore, useCollectionsQuery, useConnectedShopify, useCreateCart, useCurrency, useCurrentDevice, useCurrentVariant, useCurrentVariantInStock, useEditorMode, useFeaturedImageGlobal, useFormatMoney, useIsSampleProduct, useIsStorefrontProduct, useIsomorphicLayoutEffect, useLazyVideo, useLoadScript, useLocale, useMatchMutate, useMobileOnly, useModalStore, useMoney, useMoneyFormat, usePageType, usePluginEnable, usePrevious, useProduct, useProductList, useProductListProducts, useProductListSettings, useProductListStore, useProductListStyles, useProductProperties, useProductQuery, useProductStore, useProductsQuery, useQuantity, useRemoveCartItem, useSection, useSectionStore, useSelectedOption, useShopStore, useStoreFront, useSuspenseFetch, useSwatches, useSwatchesOptions, useUniqProductID, useUpdateCartItem, useVariant, useVariantOutStock, useVariants, validateEmail };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/core",
3
- "version": "1.14.0-sun.162",
3
+ "version": "1.14.0-sun.209",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "devDependencies": {
27
27
  "@gem-sdk/adapter-shopify": "1.12.0",
28
- "@gem-sdk/styles": "1.14.0-sun.162"
28
+ "@gem-sdk/styles": "1.14.0-sun.209"
29
29
  },
30
30
  "dependencies": {
31
31
  "react-error-boundary": "4.0.10",