@gem-sdk/core 1.14.0-moon.441 → 1.14.0-new-feature.576
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/ComponentToolbarPreview.js +1 -1
- package/dist/cjs/components/ComponentWrapper.js +1 -1
- package/dist/cjs/components/ComponentWrapperPreview.js +1 -1
- package/dist/cjs/components/Render.liquid.js +15 -7
- package/dist/cjs/components/constant.js +1 -1
- package/dist/cjs/components/resize/Spacing.js +1 -1
- package/dist/cjs/contexts/BuilderPreviewContext.js +1 -1
- package/dist/cjs/helpers/animations.js +1 -0
- package/dist/cjs/helpers/background.js +1 -1
- package/dist/cjs/helpers/carousel.js +1 -0
- package/dist/cjs/helpers/compose-advance-style.js +1 -1
- package/dist/cjs/helpers/make-style.js +1 -1
- package/dist/cjs/helpers/product.js +1 -1
- package/dist/cjs/helpers/queries/get-collection.js +1 -1
- package/dist/cjs/helpers/radius.js +6 -6
- package/dist/cjs/hooks/animation/useAnimationActions.js +1 -0
- package/dist/cjs/hooks/animation/useAnimationConfig.js +1 -0
- package/dist/cjs/hooks/animation/useAnimationPreview.js +1 -0
- package/dist/cjs/hooks/animation/useAnimationTarget.js +1 -0
- package/dist/cjs/hooks/animation/useApplyAnimation.js +1 -0
- package/dist/cjs/hooks/useAnimations.js +1 -0
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/types/animations.js +1 -0
- package/dist/esm/components/ComponentToolbarPreview.js +1 -1
- package/dist/esm/components/ComponentWrapper.js +1 -1
- package/dist/esm/components/ComponentWrapperPreview.js +1 -1
- package/dist/esm/components/Render.liquid.js +16 -8
- package/dist/esm/components/constant.js +1 -1
- package/dist/esm/components/resize/Spacing.js +1 -1
- package/dist/esm/contexts/BuilderPreviewContext.js +1 -1
- package/dist/esm/helpers/animations.js +1 -0
- package/dist/esm/helpers/background.js +1 -1
- package/dist/esm/helpers/carousel.js +1 -0
- package/dist/esm/helpers/compose-advance-style.js +1 -1
- package/dist/esm/helpers/make-style.js +1 -1
- package/dist/esm/helpers/product.js +1 -1
- package/dist/esm/helpers/queries/get-collection.js +1 -1
- package/dist/esm/helpers/radius.js +6 -6
- package/dist/esm/hooks/animation/useAnimationActions.js +1 -0
- package/dist/esm/hooks/animation/useAnimationConfig.js +1 -0
- package/dist/esm/hooks/animation/useAnimationPreview.js +1 -0
- package/dist/esm/hooks/animation/useAnimationTarget.js +1 -0
- package/dist/esm/hooks/animation/useApplyAnimation.js +1 -0
- package/dist/esm/hooks/useAnimations.js +1 -0
- package/dist/esm/index.js +1 -1
- package/dist/esm/types/animations.js +1 -0
- package/dist/types/index.d.ts +343 -48
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,Fragment as t,jsx as o}from"react/jsx-runtime";import{isValidElement as
|
|
1
|
+
import{jsxs as e,Fragment as t,jsx as o}from"react/jsx-runtime";import{useEffect as a,isValidElement as n}from"react";import{composeAdvanceStyle as d}from"../helpers/compose-advance-style.js";import{disableWrap as r,excludeApplyStyle as i}from"./constant.js";import p from"./RenderCustomCode.js";import{ComponentToolbarPreview as l}from"./ComponentToolbarPreview.js";import s from"../hooks/animation/useApplyAnimation.js";let ComponentWrapperPreview=({children:c,...m})=>{if(a(()=>{let e=new CustomEvent("editor:component:render",{bubbles:!0,detail:{componentUid:m.uid}});window.dispatchEvent(e)},[m.uid]),s({props:m}),"section"===m.type)return null;let b={};if("Section"===m.tag&&m.isThemeSection&&(b["data-theme-section"]=!0),m.editorConfigs){let e=m.editorConfigs;e.placeholder?.notAppendBeforeAfter&&(b["data-placeholder-not-append-before-after"]=!0),e.toolbar?.parent&&(b["data-toolbar-parent"]=!0),e.component?.noDelete&&(b["data-component-no-delete"]=!0),e.component?.noDuplicate&&(b["data-component-no-duplicate"]=!0),e.component?.noDragDrop&&(b["data-component-no-drag-drop"]=!0),e.component?.noSetting&&(b["data-component-no-setting"]=!0),e.component?.isThirdParty&&(b["data-component-is-third-party"]=!0),e.toolbar?.hide&&(b["data-toolbar-hide"]=!0),e.slots?.children&&(b["data-slots-children"]=!0),e.toolbar?.hide||(b["data-toolbar-wrap"]=!0)}m?.editorConfigs?.toolbar?.hide||(b["data-toolbar-wrap"]=!0);let u=d(m.advanced,m.tag),h=m.advanced,f={...b,"data-uid":m.uid,"data-component-type":"component","data-component-tag":m.tag,"data-component-label":m.label};return r.includes(m.tag)&&n(c)?e(t,{children:[o(p,{uid:m.uid,advanced:h}),e(c.type,{className:h?.cssClass,...c.props,style:u,builderAttrs:f,advanced:h,children:[c.props.children,o(l,{...m})]})]}):e(t,{children:[o(p,{uid:m.uid,advanced:h}),e("div",{style:i.includes(m.tag)?{"--mb":u?.["--mb"],"--mb-tablet":u?.["--mb-tablet"],"--mb-mobile":u?.["--mb-mobile"]}:u,className:`${m.uid} ${m.advanced?.cssClass?m.advanced?.cssClass:""}`,...f,children:[!i.includes(m.tag)&&c,n(c)&&i.includes(m.tag)&&o(c.type,{...c.props,style:u,advanced:h}),o(l,{...m})]})]})};export{ComponentWrapperPreview as default};
|
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
import"react";import"react/jsx-runtime";import"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"react-transition-group";import"@gem-sdk/core";import{RenderIf as
|
|
2
|
-
${
|
|
3
|
-
</div>`;let{cssCode:
|
|
1
|
+
import{makeStyleResponsive as e}from"../helpers/make-style.js";import"react";import"react/jsx-runtime";import"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"../hooks/useCartUI.js";import"react-transition-group";import"@gem-sdk/core";import{RenderIf as t,template as n}from"../helpers/render.js";import{baseAssetURL as r,isLocalEnv as i}from"../helpers/convert.js";import{composeAdvanceStyle as s}from"../helpers/compose-advance-style.js";import{disableWrap as d,customRenderChildren as a}from"./constant.js";let componentsRenderWithParentId=["CarouselItem"],componentTexts=["Text","Heading"],componentIconList=["IconListV2","IconList"],componentUsingAdvanced=["IconList"],Render=({uid:e,builder:r,components:i,parentId:l,extraFiles:o={},pageContext:c,...p})=>{let u=r[e],m=i[u?.tag];if(!m)return console.log("Miss component: ",u),{liquid:"",extraFiles:o};if(!u||u?.type==="section")return{liquid:"",extraFiles:o};{let o={extraFiles:{}},g=s(u.advanced,u.tag),h="";h=d.includes(u.tag)?t(u?.childrens?.length,()=>m({builderProps:{uid:e,builderData:u},styles:u.styles,setting:u.settings,style:g,advanced:u.advanced,parentId:componentsRenderWithParentId.includes(u.tag)?l:null,pageContext:c,...p,rawChildren:u.childrens.map(e=>({...r[e],uid:e,builder:r,components:i,customProps:o,pageContext:c})),children:a.includes(u.tag)?"":WrapRenderChildren({uid:e,customProps:o},u.childrens.map(e=>RenderChildren({uid:e,builder:r,components:i,customProps:o,parentTag:u.tag,pageContext:c})))}),()=>m({builderProps:{uid:e,builderData:u},styles:u.styles,setting:u.settings,advanced:u.advanced,style:g,isText:!!componentTexts.includes(u.tag)||null,parentId:componentsRenderWithParentId.includes(u.tag)?l:null,pageContext:c,...p})):n`<div style="${componentIconList.includes(u.tag)?"":g}" class="${u.uid} ${u?.childrens?.length||"IconListItemHoz"!==u.tag?"":"hidden"}">
|
|
2
|
+
${t(u?.childrens?.length,()=>m({builderProps:{uid:e,builderData:u},styles:u.styles,setting:u.settings,advanced:{...componentUsingAdvanced.includes(u.tag)?u?.advanced:{},cssClass:u?.advanced?.cssClass},pageContext:c,...p,rawChildren:u.childrens.map(e=>({...r[e],uid:e,builder:r,components:i,customProps:o,pageContext:c})),children:a.includes(u.tag)?"":WrapRenderChildren({uid:e,customProps:o},u.childrens.map(e=>RenderChildren({uid:e,builder:r,components:i,customProps:o,parentTag:u.tag,pageContext:c})))}),()=>m({builderProps:{uid:e,builderData:u},styles:u.styles,setting:u.settings,advanced:{cssClass:u?.advanced?.cssClass},pageContext:c,isText:!!componentTexts.includes(u.tag)||null,style:componentIconList.includes(u.tag)?g:null,...p}))}
|
|
3
|
+
</div>`;let{cssCode:f,jsCode:b}=RenderCustomCode(u);return f&&(h+=f),b&&(h+=b),{liquid:h=appendAnimation(u,h),extraFiles:o.extraFiles}}},RenderCustomCode=e=>{let{css:r,javascript:i,rootClassName:s}=e.advanced?.editorData||{},d=r?.replaceAll(s,e.uid),a=i?.replaceAll(s,e.uid),l=t(!!r,n`
|
|
4
4
|
<style
|
|
5
|
-
id="${`custom-css-${
|
|
5
|
+
id="${`custom-css-${e?.uid}`}"
|
|
6
6
|
>${d}</style>
|
|
7
|
-
`),o=
|
|
7
|
+
`),o=t(!!i,n`
|
|
8
8
|
<script
|
|
9
|
-
id="${`custom-js-${
|
|
9
|
+
id="${`custom-js-${e?.uid}`}"
|
|
10
10
|
>
|
|
11
11
|
try {
|
|
12
|
-
${
|
|
12
|
+
${a}
|
|
13
13
|
} catch(err){}
|
|
14
14
|
</script>
|
|
15
|
-
`);return{cssCode:
|
|
15
|
+
`);return{cssCode:l,jsCode:o}},appendAnimation=(s,d)=>{let{advanced:a,tag:l}=s,{animation:o}=a??{},c=o?.desktop?.enabled||o?.tablet?.enabled||o?.mobile?.enabled;if(!c||!o?.desktop?.triggerConfig)return d;let p=(e,t)=>e?.triggerConfig?.[t]?.animation??"none",u=e=>{if("desktop"===e);else if("tablet"===e)return o?.tablet??o?.desktop;else if("mobile"===e)return o?.mobile??o?.tablet??o?.desktop;return o?.desktop},m=e=>+!(u(e)?.enabled&&"none"!==p(u(e),"appear")),g={desktop:m("desktop"),tablet:m("tablet"),mobile:m("mobile")},h={all:"Section"===l?"":"inherit"};return n`
|
|
16
|
+
${t(i,'<script src="{{ \'gp-animation.js\' | asset_url }}" defer="defer"></script>',`<script src="${r}/assets/gp-animation.js" defer="defer"></script>`)}
|
|
17
|
+
<gp-animation
|
|
18
|
+
gp-data='${JSON.stringify({config:o,tag:l})}'
|
|
19
|
+
style="${{...h}}"
|
|
20
|
+
>
|
|
21
|
+
<div style="${{...e("op",g)}}">${d}</div>
|
|
22
|
+
</gp-animation>
|
|
23
|
+
`},RenderChildren=e=>{let t=Render(e);for(let n in t.extraFiles)Object.prototype.hasOwnProperty.call(t.extraFiles,n)&&(e.customProps.extraFiles[n]=t.extraFiles[n]);let n=new TextEncoder,r=t?.liquid?n.encode(t.liquid).length:0;if(Math.ceil(r/1024)>=180){let n=`gp-section-snippet-${e.uid}`;return e.customProps.extraFiles[n]=t.liquid,`{% render '${n}', product: product, variant: variant, product_form_id: product_form_id, productSelectedVariant: productSelectedVariant %}`}return t.liquid},WrapRenderChildren=({uid:e,customProps:t},n)=>{let r="";if(n?.length)for(let i=0;i<n.length;i++){let s=n[i];if(s){let n=r+s,d=new TextEncoder,a=n?d.encode(n).length:0;if(Math.ceil(a/1024)>=180){let n=`gp-section-snippet-${e+i}`;t.extraFiles[n]=s,r+=`{% render '${n}', product: product, variant: variant, product_form_id: product_form_id, productSelectedVariant: productSelectedVariant %}`}else r+=s}}return r};export{RenderChildren,WrapRenderChildren,Render 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","
|
|
1
|
+
let disableWrap=["Col","CollectionBanner","Row","Section","Image","Text","Button","ProductButton","Cart","Tabs","TabItem","Carousel","CarouselItem","ShopPayButton","AccordionItem","Video","Header","HeroBanner","Icon","HTMLCode","IconListHoz","IconListItem","CSSCode","FormEmail","FormDropdown","SubmitButton","Dialog","TextField","FormTextarea","ProductPrice","Product","ProductImages","ProductImagesV2","Sticky","Heading"],customRenderChildren=["Accordion","AccordionItem","Row","IconList","Tabs"],excludeApplyStyle=["IconListV2","IconList"];export{customRenderChildren,disableWrap,excludeApplyStyle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as t,Fragment as e,jsxs as r}from"react/jsx-runtime";import{useRef as o}from"react";import"zustand";import{useBuilderPreviewStore as
|
|
1
|
+
import{jsx as t,Fragment as e,jsxs as r}from"react/jsx-runtime";import{useRef as o,useCallback as n,useEffect as a}from"react";import"zustand";import{useBuilderPreviewStore as i}from"../../contexts/BuilderPreviewContext.js";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"../../hooks/useCartUI.js";import"react-transition-group";import"@gem-sdk/core";import"../../helpers/convert.js";function Spacing(l){let u=i(t=>t.isThemeSectionEditor),d=o(null),c=o(null),s=o(null),m=o(!1),p=o(0),g=o(0),b=t=>{let e=t.clientY,r=Math.ceil(e-p.current),o=g.current||0,n=o+r>=0?`${o+r}px`:"0px";return{newValue:n}},v=t=>{if(d.current&&c.current){let{newValue:e}=b(t);c.current.style.height=e,d.current.style.top=e;let r=d.current.closest("[data-toolbar-wrap]");r&&(r.style.marginBottom=e)}},f=()=>{h()},w=()=>{s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{m.current=!0;let t=new CustomEvent("editor:toolbar:resize-spacing",{bubbles:!0,detail:{value:!0}});window.dispatchEvent(t),document.addEventListener("mousemove",v),document.addEventListener("mouseup",f)},100)},h=()=>{s.current&&clearTimeout(s.current),m.current=!1;let t=new CustomEvent("editor:toolbar:resize-spacing",{bubbles:!0,detail:{value:!1}});if(window.dispatchEvent(t),d.current){let t=getComputedStyle(d.current),e=t.top,r=new CustomEvent("editor:toolbar:change-margin-bottom",{bubbles:!0,detail:{componentUid:l.uid,marginBottom:e}});window.dispatchEvent(r)}let e=d.current?.closest("[data-toolbar-wrap]");e&&(e.style.marginBottom=""),document.removeEventListener("mousemove",v),document.removeEventListener("mouseup",f)},y=(t,e)=>{let r=t.children.length;if(r)for(let o=0;o<r;o++){let r=t.children[o];if(r){let t=r.getAttribute(e);if(t)return r}}},E=n(t=>{if(m.current)return;let e=t.detail,r=d.current?.closest("[data-toolbar-wrap]"),o=r&&y(r,"data-toolbar"),n=o&&o.getAttribute("data-toolbar-active");if(n&&e?.marginBottom){let t=parseInt(e?.marginBottom),r=`${t}px`;d.current&&c.current&&(t<0?(c.current.style.display="none",d.current.style.display="none"):(c.current.style.display="block",d.current.style.display="block",c.current.style.height=r,d.current.style.top=r))}},[]),L=t=>{let e=t.getAttribute("data-component-tag");return"Dialog"===e},x=t=>{let e=t.getAttribute("data-component-tag");return"Sticky"===e},C=n(t=>{let e=d.current?.closest("[data-toolbar-wrap]");if(e){if(L(e)||x(e))return;let r=e&&y(e,"data-toolbar"),o=r&&r.getAttribute("data-toolbar-active");if(o&&t){let e=isNaN(parseInt(t))?0:Math.max(parseInt(t),0),r=`-${e}px`,o=`translate(-${e}px, -100%)`;d.current&&c.current&&(c.current.style.left=r,d.current.style.transform=o)}}},[]),S=n(t=>{if(m.current)return;let e=t.detail;e?.paddingLeft&&C(e.paddingLeft)},[C]);return a(()=>{let t=d.current?.closest("[data-toolbar-wrap]");if(t){let e=getComputedStyle(t),r=e.paddingLeft;C(r)}}),a(()=>(window.addEventListener("editor:toolbar:update-margin-bottom",E),window.addEventListener("editor:toolbar:update-padding-left",S),()=>{window.removeEventListener("editor:toolbar:update-margin-bottom",E),window.removeEventListener("editor:toolbar:update-padding-left",S)}),[E,S]),t(e,{children:"Section"!==l.tag&&t("div",{"data-spacing":!0,"data-spacing-theme-section":u,className:"absolute w-full bottom-0",children:r("div",{"data-spacing-margin-bottom":!0,children:[t("div",{"data-spacing-margin-bottom-bg":!0,ref:c,children:t("div",{"data-spacing-margin-bottom-value":!0})}),t("div",{ref:d,"data-spacing-margin-bottom-drag":!0,onMouseDown:t=>{if(d.current){let e=getComputedStyle(d.current);p.current=t.clientY,g.current=parseFloat(e.top),w()}},onMouseUp:()=>{h()},role:"presentation"})]})})})}export{Spacing as default};
|
|
@@ -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,t)=>n((i,r)=>({state:e,loaded:!1,isThemeSectionEditor:!!t,dynamicProduct:null,dynamicCollection:null,addItem:e=>{let{position:t,data:d}=e,s=r().state,l=Date.now();if("section"===e.type){if(!Array.isArray(d)){let e=d.uid,r=s.ROOT;r.childrens?r.childrens.splice(t??0,0,e):r.childrens=[e],r.dateModified=l,i({state:{...s,[e]:{uid:e,type:"section",label:d.label},ROOT:a(r)}})}}else{let{id:r,data:d}=e,n=r?s[r]??s.ROOT:s.ROOT;if("section"===n.type)return;if(Array.isArray(d)){let e=d.map(e=>e.uid),r=d.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(t??0,0,...e),i({state:{...s,...r,[n.uid]:a(n)}})}else{let e=c(d);n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(t??0,0,d.uid),i({state:{...s,...e,[n.uid]:a(n)}})}}},changeItemProp:(e,t,d)=>{if(!d||!["setting","style","advanced"].includes(d))return;let s=r().state,l=s[e];if(l?.type!=="section"&&l){let r=Date.now();switch(l.dateModified=r,d){case"setting":i({state:{...s,[e]:{...l,settings:{...l.settings,...t}}}});break;case"style":i({state:{...s,[e]:{...l,styles:{...l.styles,...t}}}});break;case"advanced":i({state:{...s,[e]:{...l,advanced:{...l.advanced,...t}}}})}}},forceChangeItemProp:(e,t,d)=>{if(!d||!["setting","style","advanced"].includes(d))return;let s=r().state,l=s[e];if(l?.type!=="section"&&l){let r=Date.now();switch(l.dateModified=r,d){case"setting":i({state:{...s,[e]:{...l,settings:t}}});break;case"style":i({state:{...s,[e]:{...l,styles:t}}});break;case"advanced":i({state:{...s,[e]:{...l,advanced:t}}})}}},changeItemPropByKey:({id:e,key:t,data:d,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let l=r().state,n=l[e];if(n?.type!=="section"&&n){let r={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===d?(console.warn("Data is undefined"),delete r[s][t]):r[s][t]=d,i({state:{...l,[e]:{...n,settings:{...r.setting},styles:{...r.style},advanced:{...r.advanced}}}})}},getItem:e=>r().state[e],removeItem:e=>{if("ROOT"===e)i({state:{ROOT:root}});else{let t=r().state;removeByKey(e,t);let d=Object.entries(t).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(d){let r=Date.now(),[s,l]=d;if("section"===l.type)return;l.childrens=l.childrens?.filter(t=>t!==e),l.dateModified=r,i({state:{...t,[s]:a(l)}})}}},moveItem:(e,t,d)=>{let s=r().state,l=s[e],n=s[t];if(l&&n&&"section"!==n.type){if("section"===l.type){let t=s.ROOT;if(!t.childrens)return;let r=t.childrens.findIndex(t=>t===e);moveByIndex(t.childrens,r,d??0),i({state:{...s,ROOT:a(t)}})}else{let r=Object.entries(s).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l&&r){let c=Date.now(),[,o]=r;if("section"===o.type)return;if(o.dateModified=c,t===o.uid&&o.childrens){let t=o.childrens.findIndex(t=>t===e);o.childrens&&t!==d&&(moveByIndex(o.childrens,t,d??0),i({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),i({state:{...s,[n.uid]:a(n),[o.uid]:a(o)}}))}}}},forceChangeState:e=>{i({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let t=e.map(e=>e.uid),r=e.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});i({loaded:!0,state:{ROOT:{...root,childrens:t},...r}})}else{let t=c(e);i({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...t}})}},addSection:(e,t)=>{let d=r().state,s=d.ROOT;s.childrens||(s.childrens=[]),s.childrens.splice(t??0,0,e.uid),i({state:{...d,ROOT:a(s)}})},getParents:(e,t)=>{let i=r().state,d=[],s=0,l=e;for(;!t||!(s>=t);){let e=Object.entries(i).find(([,e])=>"section"!==e.type&&e.childrens?.includes(l));if(!e)break;let[,t]=e;if(!t)break;d.push(t),l=t.uid,s++}return d}})),BuilderPreviewProvider=({children:i,state:r,isThemeSectionEditor:l,lazy:n,...a})=>{let c=n?d:s,o=t(()=>createBuilderPreviewProvider(r,l),[r,l]);return e(c,{children:e(BuilderPreviewContext.Provider,{...a,value:o,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 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,t)=>n((i,r)=>({state:e,loaded:!1,isThemeSectionEditor:!!t,dynamicProduct:null,dynamicCollection:null,addItem:e=>{let{position:t,data:d}=e,s=r().state,l=Date.now();if("section"===e.type){if(!Array.isArray(d)){let e=d.uid,r=s.ROOT;r.childrens?r.childrens.splice(t??0,0,e):r.childrens=[e],r.dateModified=l,i({state:{...s,[e]:{uid:e,type:"section",label:d.label},ROOT:a(r)}})}}else{let{id:r,data:d}=e,n=r?s[r]??s.ROOT:s.ROOT;if("section"===n.type)return;if(Array.isArray(d)){let e=d.map(e=>e.uid),r=d.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(t??0,0,...e),i({state:{...s,...r,[n.uid]:a(n)}})}else{let e=c(d);n.dateModified=l,n.childrens=n.childrens??[],n.childrens.splice(t??0,0,d.uid),i({state:{...s,...e,[n.uid]:a(n)}})}}},changeItemProp:(e,t,d)=>{if(!d||!["setting","style","advanced"].includes(d))return;let s=r().state,l=s[e];if(l?.type!=="section"&&l){let r=Date.now();switch(l.dateModified=r,d){case"setting":i({state:{...s,[e]:{...l,settings:{...l.settings,...t}}}});break;case"style":i({state:{...s,[e]:{...l,styles:{...l.styles,...t}}}});break;case"advanced":i({state:{...s,[e]:{...l,advanced:{...l.advanced,...t}}}})}}},forceChangeItemProp:(e,t,d)=>{if(!d||!["setting","style","advanced"].includes(d))return;let s=r().state,l=s[e];if(l?.type!=="section"&&l){let r=Date.now();switch(l.dateModified=r,d){case"setting":i({state:{...s,[e]:{...l,settings:t}}});break;case"style":i({state:{...s,[e]:{...l,styles:t}}});break;case"advanced":i({state:{...s,[e]:{...l,advanced:t}}})}}},changeItemPropByKey:({id:e,key:t,data:d,group:s})=>{if(!s||!["setting","style","advanced"].includes(s))return;let l=r().state,n=l[e];if(n?.type!=="section"&&n){let r={style:n.styles??{},advanced:n.advanced??{},setting:n.settings??{}};void 0===d?(console.warn("Data is undefined"),delete r[s][t]):r[s][t]=d,i({state:{...l,[e]:{...n,settings:{...r.setting},styles:{...r.style},advanced:{...r.advanced}}}})}},getItem:e=>r().state[e],removeItem:e=>{if("ROOT"===e)i({state:{ROOT:root}});else{let t=r().state;removeByKey(e,t);let d=Object.entries(t).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(d){let r=Date.now(),[s,l]=d;if("section"===l.type)return;l.childrens=l.childrens?.filter(t=>t!==e),l.dateModified=r,i({state:{...t,[s]:a(l)}})}}},moveItem:(e,t,d)=>{let s=r().state,l=s[e],n=s[t];if(l&&n&&"section"!==n.type){if("section"===l.type){let t=s.ROOT;if(!t.childrens)return;let r=t.childrens.findIndex(t=>t===e);moveByIndex(t.childrens,r,d??0),i({state:{...s,ROOT:a(t)}})}else{let r=Object.entries(s).find(([,t])=>"section"!==t.type&&t.childrens?.includes(e));if(l&&r){let c=Date.now(),[,o]=r;if("section"===o.type)return;if(o.dateModified=c,t===o.uid&&o.childrens){let t=o.childrens.findIndex(t=>t===e);o.childrens&&t!==d&&(moveByIndex(o.childrens,t,d??0),i({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),i({state:{...s,[n.uid]:a(n),[o.uid]:a(o)}}))}}}},forceChangeState:e=>{i({state:e,loaded:!0})},initState:e=>{if(Array.isArray(e)){let t=e.map(e=>e.uid),r=e.reduceRight((e,t)=>{let i=c(t);return{...e,...i}},{});i({loaded:!0,state:{ROOT:{...root,childrens:t},...r}})}else{let t=c(e);i({loaded:!0,state:{ROOT:{...root,childrens:[e.uid]},...t}})}},addSection:(e,t)=>{let d=r().state,s=d.ROOT;s.childrens||(s.childrens=[]),s.childrens.splice(t??0,0,e.uid),i({state:{...d,ROOT:a(s)}})},getParents:(e,t)=>{let i=r().state,d=[],s=0,l=e;for(;!t||!(s>=t);){let e=Object.entries(i).find(([,e])=>"section"!==e.type&&e.childrens?.includes(l));if(!e)break;let[,t]=e;if(!t)break;d.push(t),l=t.uid,s++}return d},updateItemName:(e,t)=>{let d=r().state,s=d[e];s&&(s.name=t,i({state:{...d,[e]:a(s)}}))}})),BuilderPreviewProvider=({children:i,state:r,isThemeSectionEditor:l,lazy:n,...a})=>{let c=n?d:s,o=t(()=>createBuilderPreviewProvider(r,l),[r,l]);return e(c,{children:e(BuilderPreviewContext.Provider,{...a,value:o,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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let EASING={ease:"cubic-bezier(0.46,0.03,0.52,0.96)","ease-in":"cubic-bezier(0.55,0.08,0.68,0.53)","ease-out":"cubic-bezier(0.46,0.03,0.52,0.96)",linear:"linear"},animations=()=>{let r=r=>{let t=JSON.parse(JSON.stringify(r)),e=["delay","speed","scale","intensity"];return e.forEach(r=>{if(!t?.[r])return;if("scale"===r){if(!t?.zoomDirection)throw TypeError("zoomDirection not found on zoom preset");let[e,a]=t?.scale?.in??[1,1],[n,o]=t?.scale?.out??[1,1];t[r]={in:[Number(e)/100,Number(a)/100],out:[Number(n)/100,Number(o)/100]};return}let e=Number(t?.[r]);if("delay"===r?t[r]=1e3*e:t[r]=e,!isFinite(e))throw TypeError(`${r} must be a number`)}),t},t=(t,e)=>{let n=r(e),{direction:o,distance:i}=n,l=["left","right"].includes(o??"")?"X":"Y",f=["left","down"].includes(o??"")?"-":"",m=[{opacity:0,transform:`translate${l}(${f}${i??100}px)`},{opacity:1,transform:`translate${l}(0)`}];return s(t,m,{...a(n,500)})},e=(t,e)=>{let n=r(e),o=[{opacity:0},{opacity:1}];return s(t,o,{...a(n,500)})},a=(r,t)=>{let e=r=>r?1.5/r*1e3:t,{loop:a,delay:n,speed:o,easing:i}=r??{},s=e(o),l=n??0,f=a?s+l:s;return{iterations:a?1/0:1,duration:f,delay:l,easing:EASING[i??"linear"]}},n=(t,e)=>{let n=r(e),{scale:o,zoomDirection:i,isFade:l}=n,[f,m]=o.in,[u,c]=o.out,p=[{transform:`scale(${f}, ${f})`,opacity:l?0:1},{transform:`scale(${m??1.2}, ${m??1.2})`,opacity:1}],d=[{transform:`scale(${u}, ${u})`,opacity:l?0:1},{transform:`scale(${c??.8}, ${c??.8})`,opacity:1}],y="in"===i?p:d;return s(t,y,{...a(n,700)})},o=(r,t,e)=>{if(!t)return r;let a=t/e,n=[...r].pop();return[...r,{...n,offset:1-a}]},i=(t,e)=>{let n=r(e),{intensity:o}=n??{},i=[{transform:"translate3d(0, 0, 0)"}],l=[{transform:"translate3d(4px, 0, 0)"},{transform:"translate3d(-4px, 0, 0)"},{transform:"translate3d(4px, 0, 0)"}],f=[];Array.from(Array(o??1).keys()).forEach(()=>{f=[...f,...l]});let m=[{transform:"translate3d(-1px, 0, 0)"},{transform:"translate3d(2px, 0, 0)"},{transform:"translate3d(-4px, 0, 0)"},...f,{transform:"translate3d(-4px, 0, 0)"},{transform:"translate3d(2px, 0, 0)"},{transform:"translate3d(-1px, 0, 0)"}];return s(t,o?m:i,{...a(n??{},820)})},s=(r,t,e)=>{let a=new KeyframeEffect(r,e.iterations&&1===e.iterations?t:o(t,e?.delay??0,e?.duration??0),{...e});return new Animation(a,document.timeline)};return{zoom:n,shake:i,fade:e,slide:t}};export{animations};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{devicesMapping as e}from"./constant.js";import{isColor as t,getSingleColorVariable as g}from"./colors.js";import{makeStyleResponsive as o}from"./make-style.js";let getStyleBackgroundByDevice=(e,t)=>e?{...getStyleBgColor(e),...getStyleBgImage(e,t),...getStyleBgPosition(e),...getStyleBgSize(e),...getStyleBgRepeat(e),...t?.ignoreBgAttachment?{}:getStyleBgAttachment(e)}:{},getStyleBgColor=e=>{let t={desktop:getBgColorByDevice(e,"desktop"),tablet:getBgColorByDevice(e,"tablet"),mobile:getBgColorByDevice(e,"mobile")};return o("bgc",t)},getBgColorByDevice=(e,t)=>getColor(e?.[t]?.color),getColor=e=>e?t(e?.toString())?e:`var(--g-c-${e})`:void 0,getStyleBgImage=(e,t)=>{let g={desktop:getBgImageByDevice(e,"desktop",t),tablet:getBgImageByDevice(e,"tablet",t),mobile:getBgImageByDevice(e,"mobile",t)};return o("bgi",g)},getBgImageByDevice=(e,t,g)=>{let o=e?.[t]?.image?.backupFileKey,
|
|
1
|
+
import{devicesMapping as e}from"./constant.js";import{isColor as t,getSingleColorVariable as g}from"./colors.js";import{makeStyleResponsive as o}from"./make-style.js";let getStyleBackgroundByDevice=(e,t)=>e?{...getStyleBgColor(e),...getStyleBgImage(e,t),...getStyleBgPosition(e),...getStyleBgSize(e),...getStyleBgRepeat(e),...t?.ignoreBgAttachment?{}:getStyleBgAttachment(e)}:{},getStyleBgColor=e=>{let t={desktop:getBgColorByDevice(e,"desktop"),tablet:getBgColorByDevice(e,"tablet"),mobile:getBgColorByDevice(e,"mobile")};return o("bgc",t)},getBgColorByDevice=(e,t)=>getColor(e?.[t]?.color),getColor=e=>e?t(e?.toString())?e:`var(--g-c-${e})`:void 0,getStyleBgImage=(e,t)=>{let g={desktop:getBgImageByDevice(e,"desktop",t),tablet:getBgImageByDevice(e,"tablet",t),mobile:getBgImageByDevice(e,"mobile",t)};return o("bgi",g)},getBgImageByDevice=(e,t,g)=>{let o=e?.[t]?.type==="video";if(o)return;let i=e?.[t]?.image?.backupFileKey,l=g?.liquid&&i&&`{{ "${i}" | asset_url }}`||e?.[t]?.image?.src;if("string"==typeof l)return`url(${l})`},getStyleBgPosition=e=>{let t={desktop:getBgPositionByDevice(e,"desktop"),tablet:getBgPositionByDevice(e,"tablet"),mobile:getBgPositionByDevice(e,"mobile")};return o("bgp",t)},getBgPositionByDevice=(e,t)=>{let g=e?.[t]?.position;return g&&`${g.x}% ${g.y}%`},getStyleBgSize=e=>{let t={desktop:getBgSizeByDevice(e,"desktop"),tablet:getBgSizeByDevice(e,"tablet"),mobile:getBgSizeByDevice(e,"mobile")};return o("bgs",t)},getBgSizeByDevice=(e,t)=>e?.[t]?.size,getStyleBgRepeat=e=>{let t={desktop:getBgRepeatByDevice(e,"desktop"),tablet:getBgRepeatByDevice(e,"tablet"),mobile:getBgRepeatByDevice(e,"mobile")};return o("bgr",t)},getBgRepeatByDevice=(e,t)=>e?.[t]?.repeat,getStyleBgAttachment=e=>{let t={desktop:getBgAttachmentByDevice(e,"desktop"),tablet:getBgAttachmentByDevice(e,"tablet"),mobile:getBgAttachmentByDevice(e,"mobile")};return o("bga",t)},getBgAttachmentByDevice=(e,t)=>e?.[t]?.attachment,composeBackgroundCss=e=>`${e?`background-color: ${g(e)} !important;`:void 0}`,makeFixedBgAttachment=e=>{if(!e)return;e.tablet=e.tablet?e.tablet:e.desktop,e.mobile=e.mobile?e.mobile:e.tablet;let t={desktop:getBgAttachmentByDevice(e,"desktop"),tablet:getBgAttachmentByDevice(e,"tablet"),mobile:getBgAttachmentByDevice(e,"mobile")},g={desktop:{...makeFixedBgAttachmentByDevice("desktop",t.desktop)},tablet:{...makeFixedBgAttachmentByDevice("tablet",t.tablet)},mobile:{...makeFixedBgAttachmentByDevice("mobile",t.mobile)}};return{wrapper:{...g.desktop?.wrapper,...g.tablet?.wrapper,...g.mobile?.wrapper},content:{...g.desktop?.content,...g.tablet?.content,...g.mobile?.content}}},makeFixedBgAttachmentByDevice=(t,g)=>{let o=e[t]??"";return"fixed"===g?{wrapper:{[`--pos${o}`]:"absolute",[`--top${o}`]:"0",[`--left${o}`]:"0",[`--w${o}`]:"100%",[`--h${o}`]:"100%"},content:{[`--pos${o}`]:"fixed",[`--w${o}`]:"100vw",[`--h${o}`]:"100vh",[`--bga${o}`]:"unset"}}:{wrapper:{[`--pos${o}`]:"absolute"},content:{[`--w${o}`]:"100%",[`--h${o}`]:"100%",[`--pos${o}`]:"absolute",[`--bga${o}`]:g}}},GRADIENT_BGR_KEY="linear-gradient",getGradientBgrStyleForButton=e=>{if(!e)return;let t={};return Object.keys(e).forEach(g=>{e[g]?.startsWith(GRADIENT_BGR_KEY)&&("normal"===g?Object.assign(t,{"--bg":e[g]}):Object.assign(t,{"--hvr-bg":e[g]}))}),t},getGradientBgrStyleByDevice=e=>{if(!e)return;let t={};return["desktop","tablet","mobile"].forEach(g=>{e[g]?.color?.includes(GRADIENT_BGR_KEY)&&Object.assign(t,{[`--bgc${"desktop"!==g?"-"+g:""}`]:"transparent",[`--bgi${"desktop"!==g?"-"+g:""}`]:`${getBgImageByDevice(e,g)||"url()"}, ${e[g]?.color}`})}),t};export{GRADIENT_BGR_KEY,composeBackgroundCss,getBgImageByDevice,getGradientBgrStyleByDevice,getGradientBgrStyleForButton,getStyleBackgroundByDevice,makeFixedBgAttachment};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
let getCarouselContainerHeight=(e,t,o)=>{let l=(e,t,o)=>"outside"===e?`calc(100% - ${t??"0"}px - ${o??"0"}px)`:"100%";return{desktop:l(e?.desktop,t?.desktop,o?.desktop),tablet:l(e?.tablet,t?.tablet,o?.tablet),mobile:l(e?.mobile,t?.mobile,o?.mobile)}},makeDotGapToCarouselStyle=(e,t)=>{let o=e=>"outside"===e?"mt":"bottom",l={desktop:t?.desktop?`${t.desktop}px`:"0px",tablet:t?.tablet?`${t.tablet}px`:"0px",mobile:t?.mobile?`${t.mobile}px`:"0px"};return{[`--${o(e?.desktop)}`]:l.desktop,[`--${o(e?.tablet)}-tablet`]:l.tablet,[`--${o(e?.mobile)}-mobile`]:l.mobile}};export{getCarouselContainerHeight,makeDotGapToCarouselStyle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{handleConvertBorderStyle as e,handleConvertBorderWidth as
|
|
1
|
+
import{handleConvertBorderStyle as e,handleConvertBorderWidth as a,handleConvertBorderColor as t,getBorderStyle as s}from"./borders.js";import{isColor as o}from"./colors.js";import{layoutComponent as r}from"./constant.js";import{makeStyleKey as i}from"./make-style.js";import{composeRadius as c,getCornerCSSFromGlobal as p}from"./radius.js";import{getStyleShadowState as n,getStyleShadow as l}from"./shadow.js";let composeSpacing=({source:e,spacing:a,type:t,suffix:s=""})=>{let{top:o,left:r,bottom:i,right:c}=a;o&&(e[`--${t}t${s}`]=o),r&&(e[`--${t}l${s}`]=r),i&&(e[`--${t}b${s}`]=i),c&&(e[`--${t}r${s}`]=c)},composeSpacingV2=({source:e,spacing:a,suffix:t=""})=>{if(a&&a.margin){let{top:s,left:o,bottom:r,right:i}=a.margin;s&&(e[`--mt${t}`]=s),o&&(e[`--ml${t}`]="0px"===o?"auto":o),r&&(e[`--mb${t}`]=r),i&&(e[`--mr${t}`]="0px"===i?"auto":i)}if(a&&a.padding){let{top:s,left:o,bottom:r,right:i}=a.padding;s&&(e[`--pt${t}`]=s),o&&(e[`--pl${t}`]=o),r&&(e[`--pb${t}`]=r),i&&(e[`--pr${t}`]=i)}},getAttrValue=(e,a,t)=>{if(null!=a)switch(e){case"bgc":case"c":return o(a.toString())?a:`var(--g-c-${a})`;case"d":if(!a)return"none";if(a&&t&&r.includes(t))return"grid";return"block";default:return a}},postPurchasePaddingMapping={loose:"21px",extraLoose:"38px",tight:"9px",extraTight:"5px",base:"14px"},composeAdvanceStyleForPostPurchase=(e,a)=>{if(!e)return{};let t={};return Object.keys(e).forEach(s=>{let o=e[s];if("blockPadding"===s){let e=postPurchasePaddingMapping[o];t["--pb"]=getAttrValue(s,e,a),t["--pt"]=getAttrValue(s,e,a),t["--mb"]="0px",t["--mt"]="0px"}if("inlinePadding"===s){let e=postPurchasePaddingMapping[o];t["--pl"]=getAttrValue(s,e,a),t["--pr"]=getAttrValue(s,e,a)}}),t};function composeAdvanceStyle(o,r){if(!o)return{};let i={},d=["desktop","tablet","mobile"],g=["hover","normal"];Object.keys(o).forEach(u=>{let b=o[u];if("cssClass"===u||null==b)return;let h=o.hasBoxShadow?o.hasBoxShadow:{};if("object"==typeof b){if(Array.isArray(b))return;Object.keys(b).forEach(m=>{if(d.includes(m)){let s=b[m];if(void 0!==s){if("border"===u&&Object.assign(i,e(b),a(b),t(b)),"rounded"===u&&Object.assign(i,c(b)),"desktop"===m)switch(u){case"padding":composeSpacing({source:i,spacing:s,type:"p"});break;case"margin":composeSpacing({source:i,spacing:s,type:"m"});break;case"spacing-setting":composeSpacingV2({source:i,spacing:s});break;case"m":case"p":break;default:i[`--${u}`]=getAttrValue(u,s,r)}else switch(u){case"padding":composeSpacing({source:i,spacing:s,type:"p",suffix:`-${m}`});break;case"margin":composeSpacing({source:i,spacing:s,type:"m",suffix:`-${m}`});break;case"spacing-setting":composeSpacingV2({source:i,spacing:s,suffix:`-${m}`});break;case"m":case"p":break;default:i[`--${u}-${m}`]=getAttrValue(u,s,r)}}}else if(g.includes(m))switch(u){case"hasBoxShadow":break;case"boxShadow":Object.assign(i,n(b,"box-shadow",h))}else"border"===u&&("none"===b.border&&(b.border="solid",b.color="#121212",b.isCustom=!0,b.width="0px",b.position="all"),Object.assign(i,s(b))),"rounded"===u&&Object.assign(i,p(b)),"hasBoxShadow"===u&&Object.assign(i,l({value:o.boxShadow,styleAppliedFor:"box-shadow",isEnableShadow:o.hasBoxShadow})),"boxShadow"===u&&Object.assign(i,l({value:b,styleAppliedFor:"box-shadow",isEnableShadow:o.hasBoxShadow}))})}else i[`--${u}`]=getAttrValue(u,b,r),"hasBoxShadow"===u&&o.boxShadow&&Object.assign(i,l({value:o.boxShadow,styleAppliedFor:"box-shadow",isEnableShadow:o.hasBoxShadow}));if("blockPadding"===u){let e=postPurchasePaddingMapping[b];i["--pb"]=getAttrValue(u,e,r),i["--pt"]=getAttrValue(u,e,r),i["--mb"]="0px",i["--mt"]="0px"}if("inlinePadding"===u){let e=postPurchasePaddingMapping[b];i["--pl"]=getAttrValue(u,e,r),i["--pr"]=getAttrValue(u,e,r)}});let u=composeAdvanceStyleForPostPurchase(o,r);return{...i,...u}}let splitStyle=(e,a={})=>{let t=e.map(e=>i(e)).flat(),s=Object.keys(a).filter(e=>t.includes(e)),o=s.reduce((e,t)=>({...e,[t]:a[t]}),{}),r=Object.keys(a).filter(e=>!s.includes(e)).reduce((e,t)=>({...e,[t]:a[t]}),{});return[o,r]};export{composeAdvanceStyle,composeAdvanceStyleForPostPurchase,splitStyle};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{getResponsiveValueByScreen as e}from"./get-resonsive-value.js";let removeNullUndefined=e=>Object.entries(e).reduce((e,[t,o])=>null==o?e:{...e,[t]:o},{}),makeStyleKey=e=>[e,`hvr-${e}`,`focus-${e}`,`${e}-tablet`,`hvr-${e}-tablet`,`focus-${e}-tablet`,`${e}-mobile`,`hvr-${e}-mobile`,`focus-${e}-mobile`].map(e=>`--${e}`),makeStyle=e=>removeNullUndefined(Object.fromEntries(Object.entries(e).map(([e,t])=>[`--${e}`,t]))),makeStyleState=(e,t)=>t?{[`--${e}`]:t?.normal,[`--hvr-${e}`]:t?.hover,[`--focus-${e}`]:t?.focus}:{},makeStyleResponsiveState=(e,t)=>t?{[`--${e}`]:t?.desktop?.normal,[`--hvr-${e}`]:t?.desktop?.hover,[`--focus-${e}`]:t?.desktop?.focus,[`--${e}-tablet`]:t?.tablet?.normal,[`--hvr-${e}-tablet`]:t?.tablet?.hover,[`--focus-${e}-tablet`]:t?.tablet?.focus,[`--${e}-mobile`]:t?.mobile?.normal,[`--hvr-${e}-mobile`]:t?.mobile?.hover,[`--focus-${e}-mobile`]:t?.mobile?.focus}:{},makeStyleResponsive=(e,t)=>({[`--${e}`]:t?.desktop,[`--${e}-tablet`]:t?.tablet,[`--${e}-mobile`]:t?.mobile}),makeWidth=(t,o)=>{let l=(t,o,l)=>{let a=e(o,t),
|
|
1
|
+
import{getResponsiveValueByScreen as e}from"./get-resonsive-value.js";let removeNullUndefined=e=>Object.entries(e).reduce((e,[t,o])=>null==o?e:{...e,[t]:o},{}),makeStyleKey=e=>[e,`hvr-${e}`,`focus-${e}`,`${e}-tablet`,`hvr-${e}-tablet`,`focus-${e}-tablet`,`${e}-mobile`,`hvr-${e}-mobile`,`focus-${e}-mobile`].map(e=>`--${e}`),makeStyle=e=>removeNullUndefined(Object.fromEntries(Object.entries(e).map(([e,t])=>[`--${e}`,t]))),makeStyleState=(e,t)=>t?{[`--${e}`]:t?.normal,[`--hvr-${e}`]:t?.hover,[`--focus-${e}`]:t?.focus}:{},makeStyleResponsiveState=(e,t)=>t?{[`--${e}`]:t?.desktop?.normal,[`--hvr-${e}`]:t?.desktop?.hover,[`--focus-${e}`]:t?.desktop?.focus,[`--${e}-tablet`]:t?.tablet?.normal,[`--hvr-${e}-tablet`]:t?.tablet?.hover,[`--focus-${e}-tablet`]:t?.tablet?.focus,[`--${e}-mobile`]:t?.mobile?.normal,[`--hvr-${e}-mobile`]:t?.mobile?.hover,[`--focus-${e}-mobile`]:t?.mobile?.focus}:{},makeStyleResponsive=(e,t,o)=>({[`--${e}`]:o?`${t?.desktop}${o}`:t?.desktop,[`--${e}-tablet`]:o?`${t?.tablet}${o}`:t?.tablet,[`--${e}-mobile`]:o?`${t?.mobile}${o}`:t?.mobile}),makeWidth=(t,o)=>{let l=(t,o,l)=>{let a=e(o,t),i=l?.[t]===void 0?l?.desktop:l?.[t];return i?"100%":!1===i?a??a:a||"auto"};return{desktop:l("desktop",t,o),tablet:l("tablet",t,o),mobile:l("mobile",t,o)}},makeGlobalSizeWidthResponsive=e=>({"--w":e?.desktop?.width,"--w-tablet":e?.tablet?.width,"--w-mobile":e?.mobile?.width}),makeGlobalSizeHeightResponsive=e=>({"--h":e?.desktop?.height,"--h-tablet":e?.tablet?.height,"--h-mobile":e?.mobile?.height}),makeHeight=(e,t)=>{let o=(e,t,o)=>{let l=t?.[e],a=o?.[e];return a?"auto":!1===a?l??l:l};return{desktop:o("desktop",e,t),tablet:o("tablet",e,t),mobile:o("mobile",e,t)}},makeAspectRatio=(t,o,l)=>{let a={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let m=e(t,i);"none"!==m&&(a={...a,[i]:"custom"!==m?m:`${e(o,"desktop")}/${e(l,"desktop")}`})}),a},makeLineClamp=(e,t)=>{let o=(e,t,o)=>{let l=t?.[e],a=o?.[e]||o?.desktop;return a||void 0===a?l:"unset"};return{desktop:o("desktop",e,t),tablet:o("tablet",e,t),mobile:o("mobile",e,t)}};export{makeAspectRatio,makeGlobalSizeHeightResponsive,makeGlobalSizeWidthResponsive,makeHeight,makeLineClamp,makeStyle,makeStyleKey,makeStyleResponsive,makeStyleResponsiveState,makeStyleState,makeWidth,removeNullUndefined};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{checkInStock as e}from"./variant.js";function getSelectedVariant(e,t){
|
|
1
|
+
import{checkInStock as e}from"./variant.js";function getSelectedVariant(e,t,n){return e&&e.length&&t&&e[0]?.selectedOptions.length===Object.keys(t).length?n?e.find(e=>e?.id===n):e.find(e=>Object.entries(t).every(([t,n])=>e?.selectedOptions.some(e=>e.name===t&&e.value===n))):void 0}function parseSelectedOption(e){if(e&&(!e||0!==e.length))return e.reduce((e,{name:t,value:n})=>t&&n?{...e,[t]:n}:e,{})}function checkAvailableVariantInStock(t,n,r){return!!t&&t.some(t=>{if(t){let{selectedOptions:i}=t,a=i?.some(e=>e?.name===n&&e.value===r),c=e(t);return a&&c}return!1})}export{checkAvailableVariantInStock,getSelectedVariant,parseSelectedOption};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{CollectionDetailFilterDocument as e}from"../../graphql/queries/collection-detail-filter.generated.js";import{ProductVariantsDocument as t}from"../../graphql/queries/product-variants.generated.js";import{isDefined as r}from"../is-defined.js";let PRODUCT_PER_PAGE=8;function productSortedByOrder(e){switch(e){case"TITLE_ASC":case"none":default:return{direction:"ASC",field:"TITLE"};case"TITLE_DESC":return{direction:"DESC",field:"TITLE"};case"CREATED_AT_ASC":return{direction:"ASC",field:"PLATFORM_CREATED_AT"};case"CREATED_AT_DESC":return{direction:"DESC",field:"PLATFORM_CREATED_AT"}}}let getCollection=async(e,t)=>{let r=await loopFetchCollection(e,t);if(!r)throw Error("collections not found");let o=await mergeProductCollectionVariant(e,r,t.isSample);return o},fetchCollection=async(t,r)=>t([e,r]),calculateFirstProduct=(e,t,r)=>{let o=e-r*t;return e<r?e:o>0?r:r+o},chunkArray=(e,t)=>{let r=[],o=0;for(;o<e.length;)r.push(e.slice(o,t+o)),o+=t;return r},loopFetchCollection=async(e,t)=>{let r,o,d,i,n;let s=1;if(t.numberOfProducts){let a=Math.ceil(t.numberOfProducts/8);for(;s<=a&&!1!==i;){r={firstVariant:1,firstMedia:30,orderBy:{field:"PLATFORM_UPDATED_AT",direction:"DESC"},orderByMedia:{field:"POSITION",direction:"ASC"},firstProduct:calculateFirstProduct(t.numberOfProducts,s,8),...t.id&&"latest"!==t.id.toLowerCase()?{where:{baseID:t.id}}:{where:{isSample:t.isSample}},orderByProduct:productSortedByOrder(t.orderBy),whereProduct:{status:"ACTIVE",...t.isStorefront&&{isStorefront:t.isStorefront},isSample:t.isSample},...o?{productsAfter:o}:void 0};let a=await fetchCollection(e,r);if(o=a?.collections?.edges?.[0]?.node?.products?.pageInfo?.endCursor,1===s?(d=a,n=d?.collections?.edges?.[0]):n?.node?.products&&a?.collections?.edges?.[0]?.node?.products?.edges&&(n.node.products={pageInfo:a?.collections?.edges?.[0]?.node?.products?.pageInfo,edges:n.node?.products?.edges.concat(a?.collections?.edges?.[0]?.node?.products?.edges)}),s++,!n?.node?.products?.pageInfo?.hasNextPage){i=!1;break}}return d}},mergeProductCollectionVariant=async(e,t,o)=>{let d=t?.collections?.edges?.[0]?.node;if(!d)return t;let i=d?.products?.edges,n=i?.map(e=>e?.node?.baseID).filter(r),s=await fetchVariantsByBaseIds(e,{ids:n,isSample:o}),a=i?.map(e=>{let t=s?.variants?.edges?.filter(t=>t?.node?.id===e?.node?.id);return{...e,node:e.node?{...e.node,variants:e.node?.variants?{...e.node?.variants,edges:t?.[0]?.node?.variants?.edges??[]}:void 0}:void 0}})??[],c={...t,collections:{edges:[{node:{...d,products:{edges:a}},cursor:void 0}]}};return c},fetchVariantsByBaseIds=async(e,{ids:r,isSample:o,isStorefront:d})=>{let i=chunkArray(r??[],8),n=[],s=async r=>{try{return await e([t,r])}catch{return{}}},a=i.map(e=>{let t={firstVariant:100,first:e.length,orderBy:{field:"TITLE",direction:"ASC"},where:{status:"ACTIVE",isSample:o,...d&&{isStorefront:d},...e.length&&{baseIDIn:e.sort()}}};return s(t)}),c=await Promise.all(a),l=c?.reduce((e,t)=>e.concat(t?.variants?.edges??[]),n);return{variants:{edges:l}}};export{calculateFirstProduct,getCollection};
|
|
1
|
+
import{CollectionDetailFilterDocument as e}from"../../graphql/queries/collection-detail-filter.generated.js";import{ProductVariantsDocument as t}from"../../graphql/queries/product-variants.generated.js";import{isDefined as r}from"../is-defined.js";let PRODUCT_PER_PAGE=8;function productSortedByOrder(e){switch(e){case"TITLE_ASC":case"none":default:return{direction:"ASC",field:"TITLE"};case"TITLE_DESC":return{direction:"DESC",field:"TITLE"};case"CREATED_AT_ASC":return{direction:"ASC",field:"PLATFORM_CREATED_AT"};case"CREATED_AT_DESC":return{direction:"DESC",field:"PLATFORM_CREATED_AT"}}}let getCollection=async(e,t)=>{let r=await loopFetchCollection(e,t);if(!r)throw Error("collections not found");let o=await mergeProductCollectionVariant(e,r,t.isSample);return o},fetchCollection=async(t,r)=>t([e,r]),calculateFirstProduct=(e,t,r)=>{let o=e-r*t;return e<r?e:o>0?r:r+o},chunkArray=(e,t)=>{let r=[],o=0;for(;o<e.length;)r.push(e.slice(o,t+o)),o+=t;return r},loopFetchCollection=async(e,t)=>{let r,o,d,i,n;let s=1;if(t.numberOfProducts){let a=Math.ceil(t.numberOfProducts/8);for(;s<=a&&!1!==i;){r={firstVariant:1,firstMedia:30,orderBy:{field:"PLATFORM_UPDATED_AT",direction:"DESC"},orderByMedia:{field:"POSITION",direction:"ASC"},firstProduct:calculateFirstProduct(t.numberOfProducts,s,8),...t.id&&"latest"!==t.id.toLowerCase()?{where:{baseID:t.id}}:{where:{isSample:t.isSample}},orderByProduct:productSortedByOrder(t.orderBy),whereProduct:{status:"ACTIVE",...t.isStorefront&&{isStorefront:t.isStorefront},isSample:t.isSample},...o?{productsAfter:o}:void 0};let a=await fetchCollection(e,r);if(o=a?.collections?.edges?.[0]?.node?.products?.pageInfo?.endCursor,1===s?(d=a,n=d?.collections?.edges?.[0]):n?.node?.products&&a?.collections?.edges?.[0]?.node?.products?.edges&&(n.node.products={pageInfo:a?.collections?.edges?.[0]?.node?.products?.pageInfo,edges:n.node?.products?.edges.concat(a?.collections?.edges?.[0]?.node?.products?.edges)}),s++,!n?.node?.products?.pageInfo?.hasNextPage){i=!1;break}}return d}},mergeProductCollectionVariant=async(e,t,o)=>{let d=t?.collections?.edges?.[0]?.node;if(!d)return t;let i=d?.products?.edges,n=i?.map(e=>e?.node?.baseID).filter(r),s=await fetchVariantsByBaseIds(e,{ids:n,isSample:o}),a=i?.map(e=>{let t=s?.variants?.edges?.filter(t=>t?.node?.id===e?.node?.id);return{...e,node:e.node?{...e.node,variants:e.node?.variants?{...e.node?.variants,edges:t?.[0]?.node?.variants?.edges??[]}:void 0}:void 0}})??[],c={...t,collections:{edges:[{node:{...d,products:{edges:a}},cursor:void 0}]}};return c},fetchVariantsByBaseIds=async(e,{ids:r,isSample:o,isStorefront:d})=>{let i=chunkArray(r??[],8),n=[],s=async r=>{try{return await e([t,{...r,orderByVariant:{field:"POSITION",direction:"ASC"}}])}catch{return{}}},a=i.map(e=>{let t={firstVariant:100,first:e.length,orderBy:{field:"TITLE",direction:"ASC"},where:{status:"ACTIVE",isSample:o,...d&&{isStorefront:d},...e.length&&{baseIDIn:e.sort()}}};return s(t)}),c=await Promise.all(a),l=c?.reduce((e,t)=>e.concat(t?.variants?.edges??[]),n);return{variants:{edges:l}}};export{calculateFirstProduct,getCollection};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import{devicesMapping as e,stateMapping as
|
|
2
|
-
${
|
|
3
|
-
${
|
|
4
|
-
${
|
|
5
|
-
${
|
|
6
|
-
`}return
|
|
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,t,r)=>{if(!t||!a)return{};let o=r&&"desktop"!==r?e?.[r]:"",i=s?.[a];return{[`-${i}-radius${o}`]:`var(--g-radius-${t})`}},getCustomRadius=(a,t,r)=>{if(!t||!a||t?.radiusType!=="custom")return{};let o=r&&"desktop"!==r?e?.[r]:"",i=s?.[a];return{[`-${i}-bblr${o}`]:t.bblr,[`-${i}-bbrr${o}`]:t.bbrr,[`-${i}-btlr${o}`]:t.btlr,[`-${i}-btrr${o}`]:t.btrr}},composeRadius=e=>e?"desktop"in e||"tablet"in e||"mobile"in e?composeRadiusResponsiveState(e):composeRadiusState(e):{},composeRadiusResponsive=e=>{let s={};return Object.assign(s,getCustomRadius("normal",e?.desktop,"desktop")),Object.assign(s,getCustomRadius("normal",e?.tablet,"tablet")),Object.assign(s,getCustomRadius("normal",e?.mobile,"mobile")),s},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:t,bblr:r,bbrr:o,btlr:i,btrr:u}=e,c=s?" !important":"";switch(t){case"medium":case"large":case"small":a=`border-radius: var(--g-radius-${t});`;break;case"circle":case"none":case"custom":a=`
|
|
2
|
+
${r?`border-bottom-left-radius: ${r}${c};`:""}
|
|
3
|
+
${o?`border-bottom-right-radius: ${o}${c};`:""}
|
|
4
|
+
${i?`border-top-left-radius: ${i}${c};`:""}
|
|
5
|
+
${u?`border-top-right-radius: ${u}${c};`:""}
|
|
6
|
+
`}return a};export{composeCornerCss,composeRadius,composeRadiusResponsive,getCornerCSSFromGlobal,getCustomRadius,getRadiusCSSFromGlobal,getRadiusStyleActiveState};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useRef as r,useCallback as t}from"react";let useAnimationActions=()=>{let n=r(),e=t(r=>{n.current=r},[n]),o=t(()=>{if(n.current)for(let r of n.current)r.play()},[]),c=t(()=>{if(n.current)for(let r of n.current)r.cancel()},[]),i=t(r=>{if(n.current)for(let t of n.current)t.onfinish=r},[]);return{currentAnimation:n.current,setAnimation:e,playAnimation:o,cancelAnimation:c,setAnimationOnFinish:i}};export{useAnimationActions};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useMemo as e}from"react";import{useCurrentDevice as n}from"../use-current-device.js";let useAnimationConfig=t=>{let i=n(),a=e(()=>t?.advanced?.animation?.[i],[i,t?.advanced?.animation]),r=()=>{let{trigger:e,triggerConfig:n}=a,{animation:t,setting:i}=n[e];return{type:t,setting:i[t]}},o=a?.enabled;return{isEnabledAnimation:o,getAnimationConfig:r}};export{useAnimationConfig};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useCallback as e}from"react";let useAnimationPreview=({props:i,playAnimation:t,cancelAnimation:r,setAnimationOnFinish:n,setToolbarActive:u})=>{let o=e(e=>{let{uid:o,isCancel:a}=e.detail;if(i.uid===o){if(r(),a){u(!0);return}t(),u(!1),n(()=>{u(!0)})}},[i.uid,r,t,u,n]);return{previewAnimation:o}};export{useAnimationPreview};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useRef as t,useCallback as e,useEffect as r}from"react";import{useAnimationConfig as T}from"./useAnimationConfig.js";let SPACING_ACTIVE_ATTRIBUTE="data-spacing",TOOLBAR_ACTIVE_ATTRIBUTE="data-toolbar-active",OUTLINE_ACTIVE_ATTRIBUTE="data-outline-active",TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE="data-toolbar-add-active",useAnimationTarget=a=>{let{isEnabledAnimation:o}=T(a),u=a.tag,A=a.uid,i=t(null),n=t([]),l=t=>{if(n.current)for(let e of n.current)t?(e.toolbar?.setAttribute(TOOLBAR_ACTIVE_ATTRIBUTE,"true"),e.outline?.setAttribute(OUTLINE_ACTIVE_ATTRIBUTE,"true"),e.spacing?.setAttribute(SPACING_ACTIVE_ATTRIBUTE,"true"),e.addSectionTop?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE,"true"),e.addSectionBottom?.setAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE,"true")):(e.toolbar?.removeAttribute(TOOLBAR_ACTIVE_ATTRIBUTE),e.outline?.removeAttribute(OUTLINE_ACTIVE_ATTRIBUTE),e.spacing?.removeAttribute(SPACING_ACTIVE_ATTRIBUTE),e.addSectionTop?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE),e.addSectionBottom?.removeAttribute(TOOLBAR_ADD_SECTION_ACTIVE_ATTRIBUTE))},c=t=>{let e=t.querySelector("[data-toolbar-add-top]"),r=t.querySelector("[data-toolbar-add-bottom]"),T=Array.from(t.children),a=T.find(t=>null!==t.getAttribute("data-toolbar")),o=T.find(t=>null!==t.getAttribute("data-outline"));return{sectionToolbar:a,sectionOutline:o,sectionAddTop:e,sectionAddBottom:r}},d=e(t=>t.reduce((t,e)=>{let r=null,T=null,a=e,o=e.querySelector("[data-toolbar][data-toolbar-active]"),A=e.querySelector("[data-outline][data-outline-active]"),i=Array.from(a.children),n=i.find(t=>null!==t.getAttribute("data-spacing"));switch(u){case"Button":case"SubmitButton":case"ProductButton":case"DynamicCheckout":a=e.querySelector("button");break;case"ProductProperties":a=e.querySelector("input");break;case"Section":{a=e;let{sectionOutline:t,sectionToolbar:u,sectionAddTop:i,sectionAddBottom:n}=c(a);A=t,o=u,r=i,T=n;break}default:a=e}let l={target:a,toolbar:o,outline:A,spacing:n,addSectionTop:r,addSectionBottom:T};return t.push(l),t},[]),[u]),I=e(()=>{if(!o)return;i.current||(i.current=document.querySelectorAll(`[data-uid="${A}"]`));let t=Array.from(i.current);if(!t.length)return;let e=d(t);n.current=e},[A,d,o]);return r(()=>{I()},[o,I]),{targetObjects:n,setToolbarActive:l,initListOfTargets:I}};export{useAnimationTarget};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{useCallback as t,useEffect as i}from"react";import{useAnimations as e}from"../useAnimations.js";import{useAnimationTarget as n}from"./useAnimationTarget.js";import{useAnimationConfig as o}from"./useAnimationConfig.js";import{useAnimationActions as r}from"./useAnimationActions.js";import{useAnimationPreview as m}from"./useAnimationPreview.js";import{AnimationType as a}from"../../types/animations.js";let useApplyAnimation=({props:s})=>{let{uid:p}=s,u=e(),{initListOfTargets:w,targetObjects:d,setToolbarActive:f}=n(s),{isEnabledAnimation:A,getAnimationConfig:v}=o(s),{setAnimation:l,cancelAnimation:g,playAnimation:j,setAnimationOnFinish:c}=r(),{previewAnimation:E}=m({props:s,playAnimation:j,cancelAnimation:g,setAnimationOnFinish:c,setToolbarActive:f}),L=t(({target:t,setting:i,type:e})=>u[e](t,i),[u]),y=t(()=>{let{type:t,setting:i}=v();if(!t||t===a.None||!d.current.length){g();return}let e=d.current.map(e=>L({type:t,setting:i,target:e.target}));g(),l(e)},[v,d,g,l,L]);i(()=>(A?(w(),y()):g(),()=>{g()}),[p,y,g,A,w]),i(()=>(window.addEventListener("preview-animation",E),()=>{window.removeEventListener("preview-animation",E)}),[E]),i(()=>(window.addEventListener("init-animation-target",w),()=>{window.removeEventListener("init-animation-target",w)}),[w])};export{useApplyAnimation as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"react";import"react/jsx-runtime";import"zustand";import"swr";import"@gem-sdk/adapter-shopify";import"swr/mutation";import"vanilla-lazyload";import"./useCartUI.js";import"react-transition-group";import"@gem-sdk/core";import{animations as t}from"../helpers/animations.js";import"../helpers/convert.js";let useAnimations=()=>{let{zoom:r,shake:i,fade:o,slide:e}=t();return{zoom:r,shake:i,fade:o,slide:e}};export{useAnimations};
|
package/dist/esm/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export{default as AddOn}from"./components/AddOn.js";export{default as Render}from"./components/Render.js";export{default as RenderPreview}from"./components/RenderPreview.js";export{RenderChildren,default as RenderLiquid,WrapRenderChildren}from"./components/Render.liquid.js";export{AddonProvider,useAddon,useAddons}from"./contexts/AddonContext.js";export{BuilderComponentProvider,useBuilderComponent}from"./contexts/BuilderComponent.js";export{BuilderProvider,useBuilderStore}from"./contexts/BuilderContext.js";export{BuilderPreviewProvider,useBuilderPreviewStore}from"./contexts/BuilderPreviewContext.js";export{CartLineProvider,useCartLineStore}from"./contexts/CartLineContext.js";export{ProductListProvider,useProductListStore}from"./contexts/ProductListContext.js";export{ProductProvider,useProductStore}from"./contexts/ProductContext.js";export{SectionProvider,useSection,useSectionStore}from"./contexts/SectionContext.js";export{ShopProvider,useShopStore}from"./contexts/ShopContext.js";export{PageProvider,usePageStore}from"./contexts/PageContext.js";export{CollectionProvider,useCollectionStore}from"./contexts/CollectionContext.js";export{ModalProvider,useModalStore}from"./contexts/ModalContext.js";export{PageViewUpDocument}from"./graphql/mutations/page-view-up.generated.js";export{CollectionDetailFilterDocument}from"./graphql/queries/collection-detail-filter.generated.js";export{CollectionDocument}from"./graphql/queries/collection.generated.js";export{CollectionsDocument}from"./graphql/queries/collections.generated.js";export{PublishedThemePagesDocument}from"./graphql/queries/published-theme-pages.generated.js";export{ProductsDocument}from"./graphql/queries/products.generated.js";export{StorePropertyDocument}from"./graphql/queries/store-property.generated.js";export{PreviewPageDocument}from"./graphql/queries/preview-page.generated.js";export{composeBorderCss,getBorderStyle,handleConvertBorderColor,handleConvertBorderStyle,handleConvertBorderWidth,handleConvertClassColor,handleConvertClassColorDynamicBtn}from"./helpers/borders.js";export{cls}from"./helpers/cls.js";export{flattenConnection}from"./helpers/flatten-connection.js";export{getResponsiveStateValue,getResponsiveValue,getResponsiveValueByScreen,isColumnDirectionExist}from"./helpers/get-resonsive-value.js";export{getShortName}from"./helpers/get-shortname.js";export{default as globalEvent}from"./helpers/GlobalEvent.js";export{default as isBrowser}from"./helpers/is-browser.js";export{default as isSafari}from"./helpers/is-safari.js";export{isEmptyChildren}from"./helpers/is-empty-children.js";export{filterToolbarPreview}from"./helpers/filter-toolbar-preview.js";export{makeAspectRatio,makeGlobalSizeWidthResponsive,makeHeight,makeLineClamp,makeStyle,makeStyleResponsive,makeStyleResponsiveState,makeStyleState,makeWidth,removeNullUndefined}from"./helpers/make-style.js";export{normalizeBuilderData}from"./helpers/normalize-builder-data.js";export{prefetchQueries}from"./helpers/prefetch-queries.js";export{composeSpacing,getSpacingVariable}from"./helpers/spacing.js";export{loadScript}from"./helpers/load-script.js";export{validateEmail}from"./helpers/email.js";export{genVariable}from"./helpers/css-variable.js";export{composeGridLayout,convertOldLayout,gridToArrayRegex,optionLayoutStyle}from"./helpers/layout.js";export{isDefined}from"./helpers/is-defined.js";export{composeTextColorCss,getGlobalColorCSSProp,getGlobalColorClass,getGlobalColorResponsiveClass,getGlobalColorResponsiveStyle,getGlobalColorStateClass,getGlobalColorStateClassDynamicBtn,getGlobalColorStateResponsiveClass,getGlobalColorStateResponsiveClassDynamicBtn,getGlobalColorStateResponsiveStyle,getGlobalColorStateStyle,getGlobalColorStyle,getSingleColorVariable,isColor}from"./helpers/colors.js";export{composeTypography,composeTypographyAttr,composeTypographyClassName,composeTypographyCss,composeTypographyStyle,composeTypographyV2,composeTypographyV2Css,genTypoClass}from"./helpers/typography.js";export{composeCornerCss,composeRadius,composeRadiusResponsive,getCornerCSSFromGlobal,getCustomRadius,getRadiusCSSFromGlobal,getRadiusStyleActiveState}from"./helpers/radius.js";export{checkAvailableVariantInStock,getSelectedVariant,parseSelectedOption}from"./helpers/product.js";import*as e from"./helpers/tracking/fpixel.js";import*as o from"./helpers/tracking/gtag.js";import*as t from"./helpers/tracking/tiktokpixel.js";export{RenderIf,composeMemo,dataStringify,props,styles,template}from"./helpers/render.js";export{baseAssetURL,isLocalEnv}from"./helpers/convert.js";export{composeSize,composeSizeCss,genSizeClass,getAspectRatioGlobalSize,getGlobalSizeGap,getHeightByShapeGlobalSize,getPaddingGlobalSize,getWidthByShapeGlobalSize,getWidthHeightGlobalSize,makeGlobalSize,makeStyleWithDefault}from"./helpers/size.js";export{composeShadowCss,getStyleShadow,getStyleShadowState,parseValueWithUnit}from"./helpers/shadow.js";export{composeBackgroundCss,getBgImageByDevice,getStyleBackgroundByDevice,makeFixedBgAttachment}from"./helpers/background.js";export{generateCollectionQueryKey,generateProductQueryKey,generateProductsQueryKey}from"./helpers/query.js";export{composeAdvanceStyle,splitStyle}from"./helpers/compose-advance-style.js";export{composePositionLineHeight,composePostionIconList}from"./helpers/icon-list.js";export{useAddToCart}from"./hooks/cart/use-add-to-cart.js";export{useCartData}from"./hooks/cart/use-cart-data.js";export{useCartDiscountCodesUpdate}from"./hooks/cart/use-cart-discount-codes-update.js";export{useCartNoteUpdate}from"./hooks/cart/use-cart-note-update.js";export{useCreateCart}from"./hooks/cart/use-create-cart.js";export{useRemoveCartItem}from"./hooks/cart/use-remove-cart-item.js";export{useUpdateCartItem}from"./hooks/cart/use-update-cart-item.js";export{useCheckoutUrl,useConnectedShopify,useCurrency,useEditorMode,useIsSampleProduct,useIsStorefrontProduct,useLocale,useMatchMutate,useMobileOnly,useMoneyFormat,usePageType,usePluginEnable,useStoreFront,useSwatches}from"./hooks/shop.js";export{useCollectionQuery}from"./hooks/shop/use-collection-query.js";export{useCollectionsQuery}from"./hooks/shop/use-collections-query.js";export{useProductQuery}from"./hooks/shop/use-product-query.js";export{useProductsQuery}from"./hooks/shop/use-products-query.js";export{useCurrentDevice}from"./hooks/use-current-device.js";export{useFormatMoney}from"./hooks/useFormatMoney.js";export{useLazyVideo}from"./hooks/use-lazy-video.js";export{default as useCartId}from"./hooks/useCartId.js";export{default as useCartLine}from"./hooks/useCartLine.js";export{default as useCartUI}from"./hooks/useCartUI.js";export{useCollection}from"./hooks/useCollection.js";export{useId}from"react";export{default as useIsomorphicLayoutEffect}from"./hooks/useIsomorphicLayoutEffect.js";export{default as useLoadScript}from"./hooks/useLoadScript.js";export{default as useMoney}from"./hooks/useMoney.js";export{usePrevious}from"./hooks/usePrevious.js";export{useCheckAvailableVariantInStock,useCurrentVariant,useCurrentVariantInStock,useFeaturedImageGlobal,useIsSyncProduct,useProduct,useProductProperties,useQuantity,useSelectedOption,useUniqProductID,useVariant,useVariantOutStock,useVariants}from"./hooks/useProduct.js";export{useProductList,useProductListProducts,useProductListSettings,useProductListStyles}from"./hooks/useProductList.js";export{default as useSuspenseFetch}from"./hooks/useSuspenseFetch.js";export{default as useSwatchesOptions}from"./hooks/useSwatchesOptions.js";export{default as useInitialSwatchesOptions}from"./hooks/useInitialSwatchesOptions.js";import*as r from"./types/shop.js";export{OptionNormalStyle,OptionSpecialStyle}from"./types/global-style.js";export{calculateFirstProduct,getCollection}from"./helpers/queries/get-collection.js";export{fetchMedias,fetchVariants,getProduct}from"./helpers/queries/get-product.js";export{getProductBySlug}from"./helpers/queries/get-product-by-slug.js";export{e as fpixel,o as gtag,t as tiktokpixel,r as ShopType};
|
|
1
|
+
export{default as AddOn}from"./components/AddOn.js";export{default as Render}from"./components/Render.js";export{default as RenderPreview}from"./components/RenderPreview.js";export{RenderChildren,default as RenderLiquid,WrapRenderChildren}from"./components/Render.liquid.js";export{AddonProvider,useAddon,useAddons}from"./contexts/AddonContext.js";export{BuilderComponentProvider,useBuilderComponent}from"./contexts/BuilderComponent.js";export{BuilderProvider,useBuilderStore}from"./contexts/BuilderContext.js";export{BuilderPreviewProvider,useBuilderPreviewStore}from"./contexts/BuilderPreviewContext.js";export{CartLineProvider,useCartLineStore}from"./contexts/CartLineContext.js";export{ProductListProvider,useProductListStore}from"./contexts/ProductListContext.js";export{ProductProvider,useProductStore}from"./contexts/ProductContext.js";export{SectionProvider,useSection,useSectionStore}from"./contexts/SectionContext.js";export{ShopProvider,useShopStore}from"./contexts/ShopContext.js";export{PageProvider,usePageStore}from"./contexts/PageContext.js";export{CollectionProvider,useCollectionStore}from"./contexts/CollectionContext.js";export{ModalProvider,useModalStore}from"./contexts/ModalContext.js";export{PageViewUpDocument}from"./graphql/mutations/page-view-up.generated.js";export{CollectionDetailFilterDocument}from"./graphql/queries/collection-detail-filter.generated.js";export{CollectionDocument}from"./graphql/queries/collection.generated.js";export{CollectionsDocument}from"./graphql/queries/collections.generated.js";export{PublishedThemePagesDocument}from"./graphql/queries/published-theme-pages.generated.js";export{ProductsDocument}from"./graphql/queries/products.generated.js";export{StorePropertyDocument}from"./graphql/queries/store-property.generated.js";export{PreviewPageDocument}from"./graphql/queries/preview-page.generated.js";export{composeBorderCss,getBorderStyle,handleConvertBorderColor,handleConvertBorderStyle,handleConvertBorderWidth,handleConvertClassColor,handleConvertClassColorDynamicBtn}from"./helpers/borders.js";export{getCarouselContainerHeight,makeDotGapToCarouselStyle}from"./helpers/carousel.js";export{cls}from"./helpers/cls.js";export{flattenConnection}from"./helpers/flatten-connection.js";export{getResponsiveStateValue,getResponsiveValue,getResponsiveValueByScreen,isColumnDirectionExist}from"./helpers/get-resonsive-value.js";export{getShortName}from"./helpers/get-shortname.js";export{default as globalEvent}from"./helpers/GlobalEvent.js";export{default as isBrowser}from"./helpers/is-browser.js";export{default as isSafari}from"./helpers/is-safari.js";export{isEmptyChildren}from"./helpers/is-empty-children.js";export{filterToolbarPreview}from"./helpers/filter-toolbar-preview.js";export{animations}from"./helpers/animations.js";export{makeAspectRatio,makeGlobalSizeHeightResponsive,makeGlobalSizeWidthResponsive,makeHeight,makeLineClamp,makeStyle,makeStyleKey,makeStyleResponsive,makeStyleResponsiveState,makeStyleState,makeWidth,removeNullUndefined}from"./helpers/make-style.js";export{normalizeBuilderData}from"./helpers/normalize-builder-data.js";export{prefetchQueries}from"./helpers/prefetch-queries.js";export{composeSpacing,getSpacingVariable}from"./helpers/spacing.js";export{loadScript}from"./helpers/load-script.js";export{validateEmail}from"./helpers/email.js";export{genVariable}from"./helpers/css-variable.js";export{composeGridLayout,convertOldLayout,gridToArrayRegex,optionLayoutStyle}from"./helpers/layout.js";export{isDefined}from"./helpers/is-defined.js";export{composeTextColorCss,getGlobalColorCSSProp,getGlobalColorClass,getGlobalColorResponsiveClass,getGlobalColorResponsiveStyle,getGlobalColorStateClass,getGlobalColorStateClassDynamicBtn,getGlobalColorStateResponsiveClass,getGlobalColorStateResponsiveClassDynamicBtn,getGlobalColorStateResponsiveStyle,getGlobalColorStateStyle,getGlobalColorStyle,getSingleColorVariable,isColor}from"./helpers/colors.js";export{composeTypography,composeTypographyAttr,composeTypographyClassName,composeTypographyCss,composeTypographyStyle,composeTypographyV2,composeTypographyV2Css,genTypoClass}from"./helpers/typography.js";export{composeCornerCss,composeRadius,composeRadiusResponsive,getCornerCSSFromGlobal,getCustomRadius,getRadiusCSSFromGlobal,getRadiusStyleActiveState}from"./helpers/radius.js";export{checkAvailableVariantInStock,getSelectedVariant,parseSelectedOption}from"./helpers/product.js";import*as e from"./helpers/tracking/fpixel.js";import*as o from"./helpers/tracking/gtag.js";import*as t from"./helpers/tracking/tiktokpixel.js";export{RenderIf,composeMemo,dataStringify,props,styles,template}from"./helpers/render.js";export{baseAssetURL,isLocalEnv}from"./helpers/convert.js";export{composeSize,composeSizeCss,genSizeClass,getAspectRatioGlobalSize,getGlobalSizeGap,getHeightByShapeGlobalSize,getPaddingGlobalSize,getWidthByShapeGlobalSize,getWidthHeightGlobalSize,makeGlobalSize,makeStyleWithDefault}from"./helpers/size.js";export{composeShadowCss,getStyleShadow,getStyleShadowState,parseValueWithUnit}from"./helpers/shadow.js";export{GRADIENT_BGR_KEY,composeBackgroundCss,getBgImageByDevice,getGradientBgrStyleByDevice,getGradientBgrStyleForButton,getStyleBackgroundByDevice,makeFixedBgAttachment}from"./helpers/background.js";export{generateCollectionQueryKey,generateProductQueryKey,generateProductsQueryKey}from"./helpers/query.js";export{composeAdvanceStyle,composeAdvanceStyleForPostPurchase,splitStyle}from"./helpers/compose-advance-style.js";export{composePositionLineHeight,composePostionIconList}from"./helpers/icon-list.js";export{useAddToCart}from"./hooks/cart/use-add-to-cart.js";export{useCartData}from"./hooks/cart/use-cart-data.js";export{useCartDiscountCodesUpdate}from"./hooks/cart/use-cart-discount-codes-update.js";export{useCartNoteUpdate}from"./hooks/cart/use-cart-note-update.js";export{useCreateCart}from"./hooks/cart/use-create-cart.js";export{useRemoveCartItem}from"./hooks/cart/use-remove-cart-item.js";export{useUpdateCartItem}from"./hooks/cart/use-update-cart-item.js";export{useCheckoutUrl,useConnectedShopify,useCurrency,useEditorMode,useIsSampleProduct,useIsStorefrontProduct,useLocale,useMatchMutate,useMobileOnly,useMoneyFormat,usePageType,usePluginEnable,useStoreFront,useSwatches}from"./hooks/shop.js";export{useCollectionQuery}from"./hooks/shop/use-collection-query.js";export{useCollectionsQuery}from"./hooks/shop/use-collections-query.js";export{useProductQuery}from"./hooks/shop/use-product-query.js";export{useProductsQuery}from"./hooks/shop/use-products-query.js";export{useCurrentDevice}from"./hooks/use-current-device.js";export{useFormatMoney}from"./hooks/useFormatMoney.js";export{useLazyVideo}from"./hooks/use-lazy-video.js";export{default as useCartId}from"./hooks/useCartId.js";export{default as useCartLine}from"./hooks/useCartLine.js";export{default as useCartUI}from"./hooks/useCartUI.js";export{useCollection}from"./hooks/useCollection.js";export{useId}from"react";export{default as useIsomorphicLayoutEffect}from"./hooks/useIsomorphicLayoutEffect.js";export{default as useLoadScript}from"./hooks/useLoadScript.js";export{default as useMoney}from"./hooks/useMoney.js";export{usePrevious}from"./hooks/usePrevious.js";export{useCheckAvailableVariantInStock,useCurrentVariant,useCurrentVariantInStock,useFeaturedImageGlobal,useIsSyncProduct,useProduct,useProductProperties,useQuantity,useSelectedOption,useUniqProductID,useVariant,useVariantOutStock,useVariants}from"./hooks/useProduct.js";export{useProductList,useProductListProducts,useProductListSettings,useProductListStyles}from"./hooks/useProductList.js";export{default as useSuspenseFetch}from"./hooks/useSuspenseFetch.js";export{default as useSwatchesOptions}from"./hooks/useSwatchesOptions.js";export{default as useInitialSwatchesOptions}from"./hooks/useInitialSwatchesOptions.js";import*as r from"./types/shop.js";export{OptionNormalStyle,OptionSpecialStyle}from"./types/global-style.js";export{AnimationDirectionType,AnimationEasingType,AnimationSetting,AnimationTriggerType,AnimationType,AnimationZoomDirectionType}from"./types/animations.js";export{calculateFirstProduct,getCollection}from"./helpers/queries/get-collection.js";export{fetchMedias,fetchVariants,getProduct}from"./helpers/queries/get-product.js";export{getProductBySlug}from"./helpers/queries/get-product-by-slug.js";export{e as fpixel,o as gtag,t as tiktokpixel,r as ShopType};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var AnimationType,AnimationSetting,AnimationDirectionType,AnimationTriggerType,AnimationZoomDirectionType,AnimationEasingType;!function(i){i.Fade="fade",i.Slide="slide",i.Zoom="zoom",i.Shake="shake",i.None="none"}(AnimationType||(AnimationType={})),function(i){i.Loop="loop",i.Scale="scale",i.Delay="delay",i.Easing="easing",i.Speed="speed",i.IsFade="isFade",i.Distance="distance",i.Intensity="intensity",i.Direction="direction",i.ZoomDirection="zoomDirection"}(AnimationSetting||(AnimationSetting={})),function(i){i.Left="left",i.Right="right",i.Up="up",i.Down="down"}(AnimationDirectionType||(AnimationDirectionType={})),function(i){i.Appear="appear",i.Hover="hover"}(AnimationTriggerType||(AnimationTriggerType={})),function(i){i.In="in",i.Out="out"}(AnimationZoomDirectionType||(AnimationZoomDirectionType={})),function(i){i.Ease="ease",i.EaseIn="ease-in",i.EaseOut="ease-out",i.Linear="linear"}(AnimationEasingType||(AnimationEasingType={}));export{AnimationDirectionType,AnimationEasingType,AnimationSetting,AnimationTriggerType,AnimationType,AnimationZoomDirectionType};
|