@gem-sdk/components 12.0.0-dev.138 → 12.0.0-dev.141

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";var e=require("@gem-sdk/core"),t=require("./helpers.js");require("react/jsx-runtime"),require("react");var r=require("../../common/const.js"),o=require("../../hero-banner/common/helpers.js"),n=require("../../helpers.js"),l=require("../settings/configs/translate.js");function s(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}exports.getBackdropStyle=e=>{let r={...t.pointerEventStyle(e)};return s(r)},exports.getBodyContentStyle=({setting:r,style:o,uid:i,pageContext:a,type:g="React"})=>{let{fullScreen:p,height:y,background:d}=r??{},u="Liquid"===g?n.getBackgroundTranslated({background:d,uid:i,enableTranslate:!!l.Dialog?.background?.id,pageContext:a,isTranslateVideo:!1}):d,c={...t.getInnerStyle(o),...t.removeHeightPercentForContent(t.heightStyle(p,y)),"border-radius":"inherit",...e.getStyleBackgroundByDevice(u),...e.getGradientBgrStyleByDevice(u,{desktop:!0,tablet:!0,mobile:!0})};return s(c)},exports.getButtonContentStyle=t=>{let{btnBg:r,btnRounded:n,btnColor:l,btnPadding:i,btnWidth:a,btnHeight:g}=t??{},p=a?e.makeStyleResponsive("w",o.getWidth(a)):{},y=g?e.makeStyleResponsive("h",o.getWidth(g)):{},d={...p,...y,...e.getGlobalColorResponsiveStyle("c",{desktop:l}),...e.getGlobalColorResponsiveStyle("bgc",{desktop:r}),...e.getResponsiveStylePadding(i),...e.composeRadius({normal:n})};return s(d)},exports.getContainStyle=()=>{let e={"z-index":r.ELEMENT_Z_INDEX.DIALOG};return s(e)},exports.getDialogContentStyle=({style:r,width:o,height:n,fullScreen:l})=>{let i={...t.getWrapperDialogStyle(r),...t.getBorderStyle(r),...t.getDisplayStyle(r),...e.makeStyleResponsive("w",e.makeWidth(o,l)),...t.heightStyle(l,n)};return s(i)},exports.getOverlayStyle=(r,o,n)=>{let l={...e.makeStyle({op:0==Number(r)?"0":(Number(r)??0)/100}),...e.getGlobalColorResponsiveStyle("bgc",{desktop:o}),...t.getDisplayStyle(n)};return s(l)},exports.getSvgContentStyle=e=>{let t={};return e&&(t={"--height-icon":`${e}`}),s(t)},exports.getWrapperStyle=e=>{let t={"--d":e?.desktop?"contents":"none","--d-tablet":e?.tablet?"contents":"none","--d-mobile":e?.mobile?"contents":"none"};return s(t)};
1
+ "use strict";var e=require("@gem-sdk/core"),t=require("./helpers.js");require("react/jsx-runtime"),require("react");var r=require("../../common/const.js"),o=require("../../hero-banner/common/helpers.js"),n=require("../../helpers.js"),l=require("../settings/configs/translate.js");function s(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}exports.getBackdropStyle=e=>{let r={...t.pointerEventStyle(e)};return s(r)},exports.getBodyContentStyle=({setting:r,style:o,uid:i,pageContext:a,type:g="React"})=>{let{fullScreen:p,height:y,background:d}=r??{},u="Liquid"===g?n.getBackgroundTranslated({background:d,uid:i,enableTranslate:!!l.Dialog?.background?.id,pageContext:a,isTranslateVideo:!1}):d,c={...t.getInnerStyle(o),...t.removeHeightPercentForContent(t.heightStyle(p,y)),"border-radius":"inherit",...e.getStyleBackgroundByDevice(u),...e.getGradientBgrStyleByDevice(u,{desktop:!0,tablet:!0,mobile:!0})};return s(c)},exports.getButtonContentStyle=t=>{let{btnBg:r,btnRounded:n,btnColor:l,btnPadding:i,btnWidth:a,btnHeight:g}=t??{},p=a?e.makeStyleResponsive("w",o.getWidth(a)):{},y=g?e.makeStyleResponsive("h",o.getWidth(g)):{},d={...p,...y,...e.getGlobalColorResponsiveStyle("c",{desktop:l}),...e.getGlobalColorResponsiveStyle("bgc",{desktop:r}),...e.getResponsiveStylePadding(i),...e.composeRadius({normal:n})};return s(d)},exports.getContainStyle=()=>{let e={"z-index":r.ELEMENT_Z_INDEX.DIALOG};return s(e)},exports.getDialogContentStyle=({style:r,width:o,height:n,fullScreen:l})=>{let i={...t.getWrapperDialogStyle(r),...t.getBorderStyle(r),...t.getDisplayStyle(r),...e.makeStyleResponsive("w",e.makeWidth(o,l)),...t.heightStyle(l,n)};return s(i)},exports.getOverlayStyle=(r,o,n)=>{let l={...e.makeStyle({op:0==Number(r)?"0":(Number(r)||0)/100}),...e.getGlobalColorResponsiveStyle("bgc",{desktop:o}),...t.getDisplayStyle(n)};return s(l)},exports.getSvgContentStyle=e=>{let t={};return e&&(t={"--height-icon":`${e}`}),s(t)},exports.getWrapperStyle=e=>{let t={"--d":e?.desktop?"contents":"none","--d-tablet":e?.tablet?"contents":"none","--d-mobile":e?.mobile?"contents":"none"};return s(t)};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("@gem-sdk/core"),t=require("react");require("../../../../../modal/components/confirm.js");var l=require("../../../../../modal/components/Modal.js"),o=require("./LightBoxCarousel.js"),p=require("./LightBoxGalleryCarousel.js"),i=require("./LightBoxImageZoom.js");exports.default=({builderPropUID:r,productImages:g,open:n,onHandleClose:a})=>{let u=s.useFeaturedImageGlobal(),[c,d]=t.useState(!1),[m,x]=t.useState(0),f=t.useMemo(()=>(g||[]).map((e,s)=>({...e,id:e.id||`gp-lightbox-${s}`,src:e.src||e.previewImage,alt:e.alt||"Product image"})),[g]),j=t.useMemo(()=>!["VIDEO","EXTERNAL_VIDEO","MODEL_3D"].includes(f[m]?.contentType||""),[f,m]),h=t.useMemo(()=>{let e=f.findIndex(e=>e.id===u?.id);return e&&e>0?e:0},[f,u]);t.useEffect(()=>{n&&(d(!1),x(h))},[n]);let I=()=>{d(e=>!e)};return e.jsx(l.default,{setting:{open:n},styles:{width:"calc(100% + 2rem)"},closeOnClickOutside:!0,closeOnEscape:!0,onKeypressEscape:()=>a(),onClose:()=>{a()},lockBodyScroll:!0,disableIframeClickEvent:!0,contentClass:"!gp--mx-4 !gp-my-auto !gp-h-screen !gp-max-w-none !gp-rounded-none !gp-bg-[#0F0F10] !gp-px-0 !gp-py-0 !gp-text-white",zoomButton:{isShowButton:j,isZoomIn:c,onToggleZoom:I},closeButtonClassName:"gp-top-[34px] gp-text-[#AAAAAA] gp-scale-125",wrapperContentClasses:"gp-size-full",children:e.jsx("div",{className:"gp-flex gp-gap-2 gp-size-full gp-min-w-0 gp-flex-col gp-items-center gp-justify-center",children:c?e.jsx(i.default,{image:f[m],onExitZoom:I}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"gp-flex gp-w-full gp-min-w-0 gp-flex-1 gp-items-center gp-justify-center gp-overflow-hidden gp-px-[52px] gp-mt-[52px] mobile:gp-px-0",children:e.jsx(o.default,{builderPropUID:r,displayImages:f,activeIndex:m,imageActiveIndex:h,onChangeSlide:x,onToggleZoom:I})}),e.jsx("div",{className:"gp-flex gp-justify-center gp-w-full gp-pb-2 mobile:gp-pb-5 gp-px-[52px] mobile:gp-px-0",children:e.jsx(p.default,{builderPropUID:r,displayImages:f,activeIndex:m,onChangeSlide:x})})]})})})};
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),s=require("@gem-sdk/core"),t=require("react");require("../../../../../modal/components/confirm.js");var l=require("../../../../../modal/components/Modal.js"),o=require("./LightBoxCarousel.js"),p=require("./LightBoxGalleryCarousel.js"),i=require("./LightBoxImageZoom.js");exports.default=({builderPropUID:r,productImages:g,open:n,onHandleClose:a})=>{let u=s.useFeaturedImageGlobal(),[c,d]=t.useState(!1),[m,x]=t.useState(0),f=t.useMemo(()=>(g||[]).map((e,s)=>(e.id=e.id||`gp-lightbox-${s}`,e.src=e.src||e.previewImage,e.alt=e.alt||"Product image",e)),[g]),j=t.useMemo(()=>!["VIDEO","EXTERNAL_VIDEO","MODEL_3D"].includes(f[m]?.contentType||""),[f,m]),h=t.useMemo(()=>{let e=f.findIndex(e=>e.id===u?.id);return e&&e>0?e:0},[f,u]);t.useEffect(()=>{n&&(d(!1),x(h))},[n]);let I=()=>{d(e=>!e)};return e.jsx(l.default,{setting:{open:n},styles:{width:"calc(100% + 2rem)"},closeOnClickOutside:!0,closeOnEscape:!0,onKeypressEscape:()=>a(),onClose:()=>{a()},lockBodyScroll:!0,disableIframeClickEvent:!0,contentClass:"!gp--mx-4 !gp-my-auto !gp-h-screen !gp-max-w-none !gp-rounded-none !gp-bg-[#0F0F10] !gp-px-0 !gp-py-0 !gp-text-white",zoomButton:{isShowButton:j,isZoomIn:c,onToggleZoom:I},closeButtonClassName:"gp-top-[34px] gp-text-[#AAAAAA] gp-scale-125",wrapperContentClasses:"gp-size-full",children:e.jsx("div",{className:"gp-flex gp-gap-2 gp-size-full gp-min-w-0 gp-flex-col gp-items-center gp-justify-center",children:c?e.jsx(i.default,{image:f[m],onExitZoom:I}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"gp-flex gp-w-full gp-min-w-0 gp-flex-1 gp-items-center gp-justify-center gp-overflow-hidden gp-px-[52px] gp-mt-[52px] mobile:gp-px-0",children:e.jsx(o.default,{builderPropUID:r,displayImages:f,activeIndex:m,imageActiveIndex:h,onChangeSlide:x,onToggleZoom:I})}),e.jsx("div",{className:"gp-flex gp-justify-center gp-w-full gp-pb-2 mobile:gp-pb-5 gp-px-[52px] mobile:gp-px-0",children:e.jsx(p.default,{builderPropUID:r,displayImages:f,activeIndex:m,onChangeSlide:x})})]})})})};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),s=require("@gem-sdk/core"),d=require("../SalePageProductListWarning.js"),l=require("next/head"),i=require("./ProductListGridLayout.js"),a=require("./ProductListCarouselLayout.js"),u=require("./common/styles.js"),c=require("@gem-sdk/system"),n=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js"),h=require("./hooks/useProductsQuery.js"),P=require("./hooks/useCollectionQuery.js"),p=require("./hooks/useProductRelatedQuery.js"),f=require("./hooks/useMainRelatedProductQuery.js");const y=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:j,styles:k,builderProps:v,setting:x,builderAttrs:I}=t,{isRelatedProduct:S,productSetting:b}=g.getData(t),{isEditMode:q,isPreviewSharePageMode:T}=s.useRenderMode(),C=s.useCurrentDevice(),M=s.usePageType(),w=s.usePageStore(e=>e.dynamicCollection),[L,G]=o.useState(1),[O,N]=o.useState(!0),A="GP_FUNNEL_PAGE"===M;"GP_COLLECTION"==M&&(b.productSrc="DynamicCollection",b.collectionId=w?.collectionId??"latest");let B=b?.productSrc??"Collection",{mainRelatedProduct:E,relatedProductIdAssigned:Q}=f.default({isEditMode:q,isPreviewSharePageMode:T,isRelatedProduct:S,relatedProductId:b.relatedProductId}),D=b.relatedTag&&b.relatedTag[0],F=b.relatedTag&&"tags"===b.relatedTag[0]&&(!E?.tags||E?.tags.length===0),_=b.relatedTag&&"collection"===b.relatedTag[0]&&(!E?.collections?.edges||E?.collections.edges.length===0),z=b.relatedTag&&"vendor"===b.relatedTag[0]&&!E?.vendor,{isNotFoundRelatedProduct:R,relatedProducts:H}=p.default({isEditMode:q,isPreviewSharePageMode:T,isRelatedProduct:S,productSetting:b,setting:x,mainRelatedProduct:E}),W=h.useProductsQuery({productIds:"PickProduct"===B?b?.productIds:void 0,defaultSelectedProductCount:b?.numOfSelectedProducts}),$=o.useMemo(()=>({id:b?.collectionId??"latest",numberOfProducts:x?.numberOfProducts??4,orderBy:x?.orderBy}),[b?.collectionId,Number(x?.numberOfProducts),x?.orderBy]),V=P.useCollectionQuery({variables:"PickProduct"!==B?$:void 0}),U="PickProduct"===B?W.isLoading:V.isLoading,J="PickProduct"===B?W.error:V.error,K="PickProduct"===B?W.isValidating:V.isValidating,X=V.data?.collections?.edges?.[0]?.node,Y="PickProduct"===B?s.flattenConnection(W.data?.products):s.flattenConnection(X?.products),Z=s.usePageStore(e=>e.assignedProductIds),ee=s.usePageStore(e=>e.isApplyAllProducts),et=o.useMemo(()=>(Z??[]).length>0&&!ee||ee,[Z,ee]),er=H?.data?.products&&et?s.flattenConnection(H?.data?.products):[],eo=S?er:"PickProduct"===B&&b?.productIds?.length?b?.productIds?.map(e=>Y?.find(t=>t?.baseID===e)).filter(Boolean)??Y:"PickProduct"!==B?Y:Y.filter((e,t)=>t<(b?.numOfSelectedProducts??4)),es=o.useMemo(()=>R&&S&&q||!eo.length&&!U&&O&&q,[O,U,R,S,q,eo.length]),ed=o.useMemo(()=>!eo||R&&S,[R,S,eo]),el=o.useMemo(()=>{if(!x?.sameHeight)return[];let e=0,t=Math.ceil((eo?.length??0)/+(x?.slidesToShow?.[C]??1));return Array.from(Array(eo?.length??0)).map((r,o)=>(o>=+(x?.slidesToShow?.[C]??1)*(e+1)&&++e,{gridRow:`${1+L*e}/${L+1+L*e}`,marginBottom:e+1<t?m.getPropertyByDevice(k?.horizontalGutter,C):void 0}))},[x?.sameHeight,x?.slidesToShow,L,eo?.length,C,k?.horizontalGutter]),ei=o.useMemo(()=>K||U||J||!eo||R&&S,[J,U,R,S,K,eo]),ea=o.useMemo(()=>E?.collections?.edges.map(e=>e.node?.id)??[],[E?.collections?.edges]);o.useEffect(()=>{ei||setTimeout(()=>{let{builderData:e}=v??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&G(r.childElementCount||1)},q?0:500)},[v,ei,q,ea]);let eu=o.useMemo(()=>({collection:X,products:eo,settings:{loop:x?.loop??{desktop:!1},scrollMode:x?.scrollMode??{desktop:"snap"},slidesToShow:x?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:k?.layout,dot:x?.dot,dotStyle:x?.dotStyle,arrow:x?.arrow,controlOverContent:x?.controlOverContent},styles:{horizontalGutter:k?.horizontalGutter,verticalGutter:k?.verticalGutter,fullWidth:k?.fullWidth,spacing:k?.spacing,width:k?.width,height:k?.height}}),[X,eo,x,k]);if(v?.isPreview&&A)return e.jsx(e.Fragment,{});if(es)return e.jsx(e.Fragment,{children:c.If(O,e.jsx(y,{builderAttrs:I,collectionHandle:X?.handle,productSrc:B,onClose:()=>N(!1),children:j,relatedTagString:D,assignProductNoTags:F||_||z,noAssignedProduct:!Q}))});let{productListWrapStyle:ec,productListContentStyle:en,productListWrapAlignStyle:eg}=u.getStyle(t),{productListWrapClass:em}=n.getClass(t);return e.jsxs("div",{...I,className:em,style:ec,children:[!!k?.preloadBgImage&&e.jsxs(l,{children:[!!k.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage.desktop.image.src,as:"image"}),!!k.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage?.tablet?.image?.src,as:"image"}),!!k.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage?.mobile?.image?.src,as:"image"})]}),U||K?e.jsx(r.default,{}):J?e.jsxs("div",{children:["Error: ",J?.message]}):ed?e.jsx("div",{children:"Products not found"}):e.jsx(s.ProductListProvider,{...eu,children:e.jsx("div",{className:"gp-flex gp-w-full",style:eg,children:e.jsxs("div",{style:en,children:[A&&e.jsx(d.default,{}),e.jsx(e.Fragment,{children:c.If(k?.layout==="grid",e.jsx(i.default,{...t,productSortedById:eo,generateGridRowArray:el}),e.jsx(a.default,{...t,productSortedById:eo}))})]})})}),s.filterToolbarPreview(j,!0)]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),s=require("@gem-sdk/core"),d=require("../SalePageProductListWarning.js"),l=require("next/head"),i=require("./ProductListGridLayout.js"),a=require("./ProductListCarouselLayout.js"),u=require("./common/styles.js"),c=require("@gem-sdk/system"),n=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js"),h=require("./hooks/useProductsQuery.js"),P=require("./hooks/useCollectionQuery.js"),p=require("./hooks/useProductRelatedQuery.js"),f=require("./hooks/useMainRelatedProductQuery.js");const y=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:j,styles:k,builderProps:x,setting:v,builderAttrs:I}=t,{isRelatedProduct:S,productSetting:b}=g.getData(t),{isEditMode:q,isPreviewSharePageMode:T}=s.useRenderMode(),C=s.useCurrentDevice(),M=s.usePageType(),w=s.usePageStore(e=>e.dynamicCollection),[L,G]=o.useState(1),[O,N]=o.useState(!0),A="GP_FUNNEL_PAGE"===M;"GP_COLLECTION"==M&&(b.productSrc="DynamicCollection",b.collectionId=w?.collectionId??"latest");let B=b?.productSrc??"Collection",{mainRelatedProduct:E,relatedProductIdAssigned:Q}=f.default({isEditMode:q,isPreviewSharePageMode:T,isRelatedProduct:S,relatedProductId:b.relatedProductId}),D=b.relatedTag&&b.relatedTag[0],F=b.relatedTag&&"tags"===b.relatedTag[0]&&(!E?.tags||E?.tags.length===0),_=b.relatedTag&&"collection"===b.relatedTag[0]&&(!E?.collections?.edges||E?.collections.edges.length===0),z=b.relatedTag&&"vendor"===b.relatedTag[0]&&!E?.vendor,{isNotFoundRelatedProduct:R,relatedProducts:H}=p.default({isEditMode:q,isPreviewSharePageMode:T,isRelatedProduct:S,productSetting:b,setting:v,mainRelatedProduct:E}),W=h.useProductsQuery({productIds:b?.productIds,defaultSelectedProductCount:b?.numOfSelectedProducts,productSrc:B}),$=o.useMemo(()=>({id:b?.collectionId??"latest",numberOfProducts:v?.numberOfProducts??4,orderBy:v?.orderBy}),[b?.collectionId,Number(v?.numberOfProducts),v?.orderBy]),V=P.useCollectionQuery({variables:"PickProduct"!==B?$:void 0}),U="PickProduct"===B?W.isLoading:V.isLoading,J="PickProduct"===B?W.error:V.error,K="PickProduct"===B?W.isValidating:V.isValidating,X=V.data?.collections?.edges?.[0]?.node,Y="PickProduct"===B?s.flattenConnection(W.data?.products):s.flattenConnection(X?.products),Z=s.usePageStore(e=>e.assignedProductIds),ee=s.usePageStore(e=>e.isApplyAllProducts),et=o.useMemo(()=>(Z??[]).length>0&&!ee||ee,[Z,ee]),er=H?.data?.products&&et?s.flattenConnection(H?.data?.products):[],eo=S?er:"PickProduct"===B&&b?.productIds?.length?b?.productIds?.map(e=>Y?.find(t=>t?.baseID===e)).filter(Boolean)??Y:"PickProduct"!==B?Y:Y.filter((e,t)=>t<(b?.numOfSelectedProducts??4)),es=o.useMemo(()=>R&&S&&q||!eo.length&&!U&&O&&q,[O,U,R,S,q,eo.length]),ed=o.useMemo(()=>!eo||R&&S,[R,S,eo]),el=o.useMemo(()=>{if(!v?.sameHeight)return[];let e=0,t=Math.ceil((eo?.length??0)/+(v?.slidesToShow?.[C]??1));return Array.from(Array(eo?.length??0)).map((r,o)=>(o>=+(v?.slidesToShow?.[C]??1)*(e+1)&&++e,{gridRow:`${1+L*e}/${L+1+L*e}`,marginBottom:e+1<t?m.getPropertyByDevice(k?.horizontalGutter,C):void 0}))},[v?.sameHeight,v?.slidesToShow,L,eo?.length,C,k?.horizontalGutter]),ei=o.useMemo(()=>K||U||J||!eo||R&&S,[J,U,R,S,K,eo]),ea=o.useMemo(()=>E?.collections?.edges.map(e=>e.node?.id)??[],[E?.collections?.edges]);o.useEffect(()=>{ei||setTimeout(()=>{let{builderData:e}=x??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&G(r.childElementCount||1)},q?0:500)},[x,ei,q,ea]);let eu=o.useMemo(()=>({collection:X,products:eo,settings:{loop:v?.loop??{desktop:!1},scrollMode:v?.scrollMode??{desktop:"snap"},slidesToShow:v?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:k?.layout,dot:v?.dot,dotStyle:v?.dotStyle,arrow:v?.arrow,controlOverContent:v?.controlOverContent},styles:{horizontalGutter:k?.horizontalGutter,verticalGutter:k?.verticalGutter,fullWidth:k?.fullWidth,spacing:k?.spacing,width:k?.width,height:k?.height}}),[X,eo,v,k]);if(x?.isPreview&&A)return e.jsx(e.Fragment,{});if(es)return e.jsx(e.Fragment,{children:c.If(O,e.jsx(y,{builderAttrs:I,collectionHandle:X?.handle,productSrc:B,onClose:()=>N(!1),children:j,relatedTagString:D,assignProductNoTags:F||_||z,noAssignedProduct:!Q}))});let{productListWrapStyle:ec,productListContentStyle:en,productListWrapAlignStyle:eg}=u.getStyle(t),{productListWrapClass:em}=n.getClass(t);return e.jsxs("div",{...I,className:em,style:ec,children:[!!k?.preloadBgImage&&e.jsxs(l,{children:[!!k.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage.desktop.image.src,as:"image"}),!!k.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage?.tablet?.image?.src,as:"image"}),!!k.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:k.backgroundImage?.mobile?.image?.src,as:"image"})]}),U||K?e.jsx(r.default,{}):J?e.jsxs("div",{children:["Error: ",J?.message]}):ed?e.jsx("div",{children:"Products not found"}):e.jsx(s.ProductListProvider,{...eu,children:e.jsx("div",{className:"gp-flex gp-w-full",style:eg,children:e.jsxs("div",{style:en,children:[A&&e.jsx(d.default,{}),e.jsx(e.Fragment,{children:c.If(k?.layout==="grid",e.jsx(i.default,{...t,productSortedById:eo,generateGridRowArray:el}),e.jsx(a.default,{...t,productSortedById:eo}))})]})})}),s.filterToolbarPreview(j,!0)]})};
@@ -0,0 +1 @@
1
+ "use strict";exports.PRODUCT_SOURCE=void 0,function(o){o.Collection="Collection",o.PickProduct="PickProduct",o.DynamicCollection="DynamicCollection",o.RelatedProduct="RelatedProduct"}(exports.PRODUCT_SOURCE||(exports.PRODUCT_SOURCE={}));
@@ -1 +1 @@
1
- "use strict";var e=require("@gem-sdk/core"),r=require("react"),t=require("swr");exports.useProductsQuery=({defaultSelectedProductCount:a,productIds:s})=>{let u=e.useFetchHandle(),o=e.usePageStore(e=>e.publicStoreFrontData),i=r.useMemo(()=>e.hasPublicStoreFrontData(o)?e.createStoreFrontFetcher(o):u,[o]),n=e.useIsSampleProduct(),c=e.useIsStorefrontProduct(),d=e.generateProductsQueryKey({ids:s??[],isSample:n,isStorefront:c,defaultSelectedProductCount:a}),l=t(d,async([,r])=>e.getProducts(i,r),{revalidateOnMount:!1});return r.useEffect(()=>{let e=!!l.error,r=l.isLoading||l.isValidating,t=!l.data&&!r,a=!e&&t&&s?.length;a&&l.mutate()},[s?.length,l.data,l.error,l.isLoading,l.isValidating]),{...l}};
1
+ "use strict";var e=require("@gem-sdk/core"),r=require("react"),t=require("swr"),a=require("../constants/index.js");exports.useProductsQuery=({defaultSelectedProductCount:s,productIds:u,productSrc:o})=>{let i=e.useFetchHandle(),n=e.usePageStore(e=>e.publicStoreFrontData),c=r.useMemo(()=>e.hasPublicStoreFrontData(n)?e.createStoreFrontFetcher(n):i,[n]),d=e.useIsSampleProduct(),l=e.useIsStorefrontProduct(),P=e.generateProductsQueryKey({ids:u??[],isSample:d,isStorefront:l,defaultSelectedProductCount:s}),g=t(P,async([,r])=>e.getProducts(c,r),{revalidateOnMount:!1});return r.useEffect(()=>{if(o!==a.PRODUCT_SOURCE.PickProduct)return;let e=!!g.error,r=g.isLoading||g.isValidating,t=!g.data&&!r;!e&&t&&g.mutate()},[o,u?.length,g.data,g.error,g.isLoading,g.isValidating]),{...g}};
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../text/components/Text.liquid.js"),i=require("./components/variants/index.liquid.js"),s=require("./components/dropdown-swatches/Dropdown.liquid.js"),a=require("./components/dropdown-group/DropdownGroup.liquid.js"),o=require("../../../helpers.js"),n=require("./utils/mappingVariantStyles.js"),r=require("@gem-sdk/system"),l=require("./common/main/getAttr.js"),p=require("./common/main/styles.js"),d=require("./common/main/classes.js"),u=require("./common/main/getData.js"),c=require("./common/variants/classes.js"),m=require("../../helpers/function.js"),v=require("./common/variants/styles.js"),f=require("./OptionVariantsNewFormat.liquid.js"),g=require("./OptionVariantsOldFormat.liquid.js");const $={desktop:!0,tablet:!0,mobile:!0};exports.default=_=>{let{builderProps:q,styles:y,setting:h,advanced:j}=_,{align:S,swatchItemWidth:L,dropdownItemWidth:w,swatchSpacing:O,optionTypo:b,marginBottom:V}=y??{},{label:P,optionType:D,showAsSwatches:x,layout:C,hasPreSelected:E}=h??{},I=j?.d??$,{uid:A}=q??{},N=()=>{let t={};return e.DEVICES.forEach(i=>{let s=e.getResponsiveValueByScreen(L,i);t[i]="auto"===s}),t},F=()=>{let t={};return e.DEVICES.forEach(e=>{t[e]=w?.[e]==="fill"}),t},T=h?.variantPresets?n.mappingVariantStyles(h?.variantPresets,y):[],G=T?.map(e=>({...e,presets:{[e.optionType]:e.presets[e.optionType]}})),k={...h,variantPresets:G},z=e=>{let t={"'":"&apos;",'"':"&quot;"},i=e;for(let s in t)e.indexOf(s)>=0&&(i=i.replaceAll(s,t[s]));return i},W=({showDropdown:t,isRenderDefault:a,typeOfOption:o})=>e.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../text/components/Text.liquid.js"),i=require("./components/variants/index.liquid.js"),s=require("./components/dropdown-swatches/Dropdown.liquid.js"),a=require("./components/dropdown-group/DropdownGroup.liquid.js"),o=require("../../../helpers.js"),n=require("./utils/mappingVariantStyles.js"),r=require("@gem-sdk/system"),l=require("./common/main/getAttr.js"),p=require("./common/main/styles.js"),d=require("./common/main/classes.js"),u=require("./common/main/getData.js"),c=require("./common/variants/classes.js"),m=require("../../helpers/function.js"),v=require("./common/variants/styles.js"),f=require("./OptionVariantsNewFormat.liquid.js"),g=require("./OptionVariantsOldFormat.liquid.js");const $={desktop:!0,tablet:!0,mobile:!0};exports.default=_=>{let{builderProps:q,styles:y,setting:h,advanced:j}=_,{align:S,swatchItemWidth:L,dropdownItemWidth:w,swatchSpacing:O,optionTypo:b,marginBottom:V}=y??{},{label:P,optionType:D,showAsSwatches:x,layout:C,hasPreSelected:E}=h??{},I=j?.d??$,{uid:A}=q??{},N=()=>{let t={};return e.DEVICES.forEach(i=>{let s=e.getResponsiveValueByScreen(L,i);t[i]="auto"===s}),t},F=()=>{let t={};return e.DEVICES.forEach(e=>{t[e]=w?.[e]==="fill"}),t},T=h?.variantPresets?n.mappingVariantStyles(h?.variantPresets,y):[],G=T?.map(e=>(e.presets={[e.optionType]:e.presets[e.optionType]},e)),k={...h,variantPresets:G},z=e=>{let t={"'":"&apos;",'"':"&quot;"},i=e;for(let s in t)e.indexOf(s)>=0&&(i=i.replaceAll(s,t[s]));return i},W=({showDropdown:t,isRenderDefault:a,typeOfOption:o})=>e.template`
2
2
  ${r.LiquidFor("value in values",i.default({id:"{{option.name | escape | handleize}}-{{value | escape | handleize}}",variantKey:"{{option.name | escape}}-{{option.position}}-{{ forloop.index }}",showAsSwatches:x,uid:A,name:"{{option.name | escape}}",value:{label:"{{value | escape}}"},checked:E?"{%- if option.selected_value == value -%}true{% else %}false{%- endif -%}":"false",optionPosition:"rootForloop",typeOfOption:o,activeClass:E?"{%- if option.selected_value == value -%}option-item-active{%- endif -%}":"",...y,...k,swatchAutoWidth:N(),optionTypo:b,isRenderDefault:a}))}
3
3
  ${r.LiquidIf(t?'type == "dropdown"':"false",s.default({...y,...k,swatchAutoWidth:F(),optionTypo:b}))}`,J=h?.variantPresets?.map(e=>({name:z(e.optionName),type:e.optionType})).map(e=>`${e.name}($1)${e.type}`).join("($2)").toString(),M={renderVariantItem:W,variantPresetsLiquid:J??""},R=r.createClass(d.getVariantOptionGroupClass(S)),B=r.createStyle(p.getVariantOptionGroupStyle(O,O)),U=u.getTextVariantTitleData(_,"Liquid"),H=r.createClass(c.getWrapVariantOptionClass(C,S)),K=r.createClass(d.getWrapDropdownClass(S)),Q=u.getDropdownGroupData(_),X=r.createAttr(l.getAttrs({uid:A,hasPreSelected:E,cssClass:j?.cssClass})),Y=r.createStyle(p.getWrapperStyle(_)),Z=r.createClass({"gp-flex gp-flex-col !gp-ml-0":!0});return e.template`
4
4
  ${r.Liquid("{%- assign total_combinations = 1 -%}")}
@@ -1 +1 @@
1
- "use strict";var e=require("@gem-sdk/core"),t=require("../../helpers.js"),o=require("../settings/configs/translate.js");const i=/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=|shorts\/)|youtu\.be\/)([^"&?/\s]{11})/i;exports.covertStrParamsToObj=e=>{let t=e.split("&");return t.shift(),t.reduce((e,t)=>{let[o,i]=t.split("=");return"loop"!==o?{...e,[o]:i}:e},{})},exports.fallbackImageVideoUrl="https://cdn.shopify.com/s/files/1/0703/5214/2562/files/gempages_518090459516502570-3d3a4631-1d7d-4a2f-9ef0-9bbe7220e02d.jpg",exports.getAspectRatioSettings=(t,o)=>{let i={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},s={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},r={desktop:o?.desktop==="custom"?`${e.getResponsiveValueByScreen(i,"desktop")}/${e.getResponsiveValueByScreen(s,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e.getResponsiveValueByScreen(i,"tablet")}/${e.getResponsiveValueByScreen(s,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e.getResponsiveValueByScreen(i,"mobile")}/${e.getResponsiveValueByScreen(s,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return r},exports.getSettingTranslatedVideoAndThumbnail=(i,s,r)=>{if(!i||!s)return{};if(r?.isPreviewing)return i;let l=e.cloneDeep(i);if(l.youtubeUrl&&"youtube"===l.type){let e=t.getDynamicSourceLocales({val:l.youtubeUrl,uid:s,settingId:t.createSettingId({id:o.Video?.youtubeUrl?.id})});l.youtubeUrlTranslated=String(e)}if(l.vimeoUrl&&"vimeo"===l.type){let e=t.getDynamicSourceLocales({val:l.vimeoUrl,uid:s,settingId:t.createSettingId({id:o.Video?.vimeoUrl?.id})});l.vimeoUrlTranslated=String(e)}if(l.html5Url&&"html5"===l.type){let e=t.getDynamicSourceLocales({val:l.html5Url,uid:s,settingId:t.createSettingId({id:o.Video?.html5Url?.id})});l.html5Url=String(e)}if(l.poster){let e=t.getDynamicSourceLocales({val:l.poster?.src,uid:s,settingId:o.Video?.poster?.id?`${o.Video.poster.id}_src`:""});l.poster.src=String(e)}return l},exports.getVimeoParams=e=>{let{id:t,autoplay:o,muted:i,controls:s,loop:r,lazy:l}=e,a=encodeURIComponent(t),p=`?&autoplay=${l?1:o?1:0}&muted=${i?1:0}&loop=${r?1:0}&controls=${s}&autopause=false`,n=`https://player.vimeo.com/video/${a}${p}`;return{videoId:a,params:p,iframeSrc:n}},exports.getVimeoVideoId=e=>e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|album\/(\d+)\/video\/|video\/)?(\d+)(?:$|\/|\?)/)?.[3],exports.getYoutubeParams=e=>{let{id:t,params:o,muted:i,webp:s,controls:r,adNetwork:l,autoplay:a,lazy:p}=e,n=encodeURIComponent(t),d="hqdefault",u=`${o}`||"",m=i?"&mute=1":"",c=s?"webp":"jpg",b=s?"vi_webp":"vi",g=e.thumbnail||`https://i.ytimg.com/${b}/${n}/${d}.${c}`,v=e.noCookie?"https://www.youtube-nocookie.com":"https://www.youtube.com",h=`${v}/embed/${n}?autoplay=${!!p||a}&state=1${m}${u}&controls=${r?1:0}`;return{videoId:n,posterImp:d,paramsImp:u,mutedImp:m,format:c,vi:b,posterUrl:g,ytUrl:v,iframeSrc:h,adNetworkImp:l||!1}},exports.getYoutubeVideoId=e=>{let t=e.match(i);return t?.[1]??void 0},exports.isSettingLoop=e=>e.includes("loop=1"),exports.makeStyleResponsiveRatio=(e,t)=>({[`--${e}`]:t?.desktop,[`--${e}-tablet`]:t?.tablet,[`--${e}-mobile`]:t?.mobile}),exports.parseTimeVideo=e=>{let t=e.split(":",2);return t.length<=1?parseInt(t[0]||"0"):60*parseInt(t[0]||"0")+parseInt(t[1]||"0")},exports.vimeoVideoRegex=/^(?:http:\/\/|https:\/\/)vimeo\.com\/[\w/]+(?:\?.*)?$/im,exports.youtubeVideoRegex=i;
1
+ "use strict";var e=require("@gem-sdk/core"),t=require("../../helpers.js"),o=require("../settings/configs/translate.js");const i=/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=|shorts\/)|youtu\.be\/)([^"&?/\s]{11})/i;exports.covertStrParamsToObj=e=>{let t=e.split("&");return t.shift(),t.reduce((e,t)=>{let[o,i]=t.split("=");return"loop"!==o&&(e[o]=i),e},{})},exports.fallbackImageVideoUrl="https://cdn.shopify.com/s/files/1/0703/5214/2562/files/gempages_518090459516502570-3d3a4631-1d7d-4a2f-9ef0-9bbe7220e02d.jpg",exports.getAspectRatioSettings=(t,o)=>{let i={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},s={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},r={desktop:o?.desktop==="custom"?`${e.getResponsiveValueByScreen(i,"desktop")}/${e.getResponsiveValueByScreen(s,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e.getResponsiveValueByScreen(i,"tablet")}/${e.getResponsiveValueByScreen(s,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e.getResponsiveValueByScreen(i,"mobile")}/${e.getResponsiveValueByScreen(s,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return r},exports.getSettingTranslatedVideoAndThumbnail=(i,s,r)=>{if(!i||!s)return{};if(r?.isPreviewing)return i;let l=e.cloneDeep(i);if(l.youtubeUrl&&"youtube"===l.type){let e=t.getDynamicSourceLocales({val:l.youtubeUrl,uid:s,settingId:t.createSettingId({id:o.Video?.youtubeUrl?.id})});l.youtubeUrlTranslated=String(e)}if(l.vimeoUrl&&"vimeo"===l.type){let e=t.getDynamicSourceLocales({val:l.vimeoUrl,uid:s,settingId:t.createSettingId({id:o.Video?.vimeoUrl?.id})});l.vimeoUrlTranslated=String(e)}if(l.html5Url&&"html5"===l.type){let e=t.getDynamicSourceLocales({val:l.html5Url,uid:s,settingId:t.createSettingId({id:o.Video?.html5Url?.id})});l.html5Url=String(e)}if(l.poster){let e=t.getDynamicSourceLocales({val:l.poster?.src,uid:s,settingId:o.Video?.poster?.id?`${o.Video.poster.id}_src`:""});l.poster.src=String(e)}return l},exports.getVimeoParams=e=>{let{id:t,autoplay:o,muted:i,controls:s,loop:r,lazy:l}=e,a=encodeURIComponent(t),p=`?&autoplay=${l?1:o?1:0}&muted=${i?1:0}&loop=${r?1:0}&controls=${s}&autopause=false`,n=`https://player.vimeo.com/video/${a}${p}`;return{videoId:a,params:p,iframeSrc:n}},exports.getVimeoVideoId=e=>e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|album\/(\d+)\/video\/|video\/)?(\d+)(?:$|\/|\?)/)?.[3],exports.getYoutubeParams=e=>{let{id:t,params:o,muted:i,webp:s,controls:r,adNetwork:l,autoplay:a,lazy:p}=e,n=encodeURIComponent(t),d="hqdefault",u=`${o}`||"",m=i?"&mute=1":"",c=s?"webp":"jpg",b=s?"vi_webp":"vi",g=e.thumbnail||`https://i.ytimg.com/${b}/${n}/${d}.${c}`,v=e.noCookie?"https://www.youtube-nocookie.com":"https://www.youtube.com",h=`${v}/embed/${n}?autoplay=${!!p||a}&state=1${m}${u}&controls=${r?1:0}`;return{videoId:n,posterImp:d,paramsImp:u,mutedImp:m,format:c,vi:b,posterUrl:g,ytUrl:v,iframeSrc:h,adNetworkImp:l||!1}},exports.getYoutubeVideoId=e=>{let t=e.match(i);return t?.[1]??void 0},exports.isSettingLoop=e=>e.includes("loop=1"),exports.makeStyleResponsiveRatio=(e,t)=>({[`--${e}`]:t?.desktop,[`--${e}-tablet`]:t?.tablet,[`--${e}-mobile`]:t?.mobile}),exports.parseTimeVideo=e=>{let t=e.split(":",2);return t.length<=1?parseInt(t[0]||"0"):60*parseInt(t[0]||"0")+parseInt(t[1]||"0")},exports.vimeoVideoRegex=/^(?:http:\/\/|https:\/\/)vimeo\.com\/[\w/]+(?:\?.*)?$/im,exports.youtubeVideoRegex=i;
@@ -1 +1 @@
1
- import{getGlobalColorResponsiveStyle as e,makeStyle as t,makeStyleResponsive as r,makeWidth as o,composeRadius as n,getResponsiveStylePadding as l,getGradientBgrStyleByDevice as i,getStyleBackgroundByDevice as s}from"@gem-sdk/core";import{pointerEventStyle as m,getDisplayStyle as a,heightStyle as p,getBorderStyle as c,getWrapperDialogStyle as d,removeHeightPercentForContent as g,getInnerStyle as u}from"./helpers.js";import"react/jsx-runtime";import"react";import{ELEMENT_Z_INDEX as b}from"../../common/const.js";import{getWidth as f}from"../../hero-banner/common/helpers.js";import{getBackgroundTranslated as y}from"../../helpers.js";import{Dialog as S}from"../settings/configs/translate.js";function h(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}let j=e=>{let t={"--d":e?.desktop?"contents":"none","--d-tablet":e?.tablet?"contents":"none","--d-mobile":e?.mobile?"contents":"none"};return h(t)},k=()=>{let e={"z-index":b.DIALOG};return h(e)},C=e=>{let t={...m(e)};return h(t)},O=(r,o,n)=>{let l={...t({op:0==Number(r)?"0":(Number(r)??0)/100}),...e("bgc",{desktop:o}),...a(n)};return h(l)},x=({style:e,width:t,height:n,fullScreen:l})=>{let i={...d(e),...c(e),...a(e),...r("w",o(t,l)),...p(l,n)};return h(i)},B=t=>{let{btnBg:o,btnRounded:i,btnColor:s,btnPadding:m,btnWidth:a,btnHeight:p}=t??{},c=a?r("w",f(a)):{},d=p?r("h",f(p)):{},g={...c,...d,...e("c",{desktop:s}),...e("bgc",{desktop:o}),...l(m),...n({normal:i})};return h(g)},v=e=>{let t={};return e&&(t={"--height-icon":`${e}`}),h(t)},w=({setting:e,style:t,uid:r,pageContext:o,type:n="React"})=>{let{fullScreen:l,height:m,background:a}=e??{},c="Liquid"===n?y({background:a,uid:r,enableTranslate:!!S?.background?.id,pageContext:o,isTranslateVideo:!1}):a,d={...u(t),...g(p(l,m)),"border-radius":"inherit",...s(c),...i(c,{desktop:!0,tablet:!0,mobile:!0})};return h(d)};export{C as getBackdropStyle,w as getBodyContentStyle,B as getButtonContentStyle,k as getContainStyle,x as getDialogContentStyle,O as getOverlayStyle,v as getSvgContentStyle,j as getWrapperStyle};
1
+ import{getGlobalColorResponsiveStyle as e,makeStyle as t,makeStyleResponsive as r,makeWidth as o,composeRadius as n,getResponsiveStylePadding as l,getGradientBgrStyleByDevice as i,getStyleBackgroundByDevice as s}from"@gem-sdk/core";import{pointerEventStyle as m,getDisplayStyle as a,heightStyle as p,getBorderStyle as c,getWrapperDialogStyle as d,removeHeightPercentForContent as g,getInnerStyle as u}from"./helpers.js";import"react/jsx-runtime";import"react";import{ELEMENT_Z_INDEX as b}from"../../common/const.js";import{getWidth as f}from"../../hero-banner/common/helpers.js";import{getBackgroundTranslated as y}from"../../helpers.js";import{Dialog as S}from"../settings/configs/translate.js";function h(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}let j=e=>{let t={"--d":e?.desktop?"contents":"none","--d-tablet":e?.tablet?"contents":"none","--d-mobile":e?.mobile?"contents":"none"};return h(t)},k=()=>{let e={"z-index":b.DIALOG};return h(e)},C=e=>{let t={...m(e)};return h(t)},O=(r,o,n)=>{let l={...t({op:0==Number(r)?"0":(Number(r)||0)/100}),...e("bgc",{desktop:o}),...a(n)};return h(l)},x=({style:e,width:t,height:n,fullScreen:l})=>{let i={...d(e),...c(e),...a(e),...r("w",o(t,l)),...p(l,n)};return h(i)},B=t=>{let{btnBg:o,btnRounded:i,btnColor:s,btnPadding:m,btnWidth:a,btnHeight:p}=t??{},c=a?r("w",f(a)):{},d=p?r("h",f(p)):{},g={...c,...d,...e("c",{desktop:s}),...e("bgc",{desktop:o}),...l(m),...n({normal:i})};return h(g)},v=e=>{let t={};return e&&(t={"--height-icon":`${e}`}),h(t)},w=({setting:e,style:t,uid:r,pageContext:o,type:n="React"})=>{let{fullScreen:l,height:m,background:a}=e??{},c="Liquid"===n?y({background:a,uid:r,enableTranslate:!!S?.background?.id,pageContext:o,isTranslateVideo:!1}):a,d={...u(t),...g(p(l,m)),"border-radius":"inherit",...s(c),...i(c,{desktop:!0,tablet:!0,mobile:!0})};return h(d)};export{C as getBackdropStyle,w as getBodyContentStyle,B as getButtonContentStyle,k as getContainStyle,x as getDialogContentStyle,O as getOverlayStyle,v as getSvgContentStyle,j as getWrapperStyle};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e,jsxs as o,Fragment as p}from"react/jsx-runtime";import{useFeaturedImageGlobal as t}from"@gem-sdk/core";import{useState as l,useMemo as i,useEffect as g}from"react";import"../../../../../modal/components/confirm.js";import n from"../../../../../modal/components/Modal.js";import s from"./LightBoxCarousel.js";import r from"./LightBoxGalleryCarousel.js";import m from"./LightBoxImageZoom.js";let a=({builderPropUID:a,productImages:c,open:d,onHandleClose:x})=>{let f=t(),[u,h]=l(!1),[I,y]=l(0),w=i(()=>(c||[]).map((e,o)=>({...e,id:e.id||`gp-lightbox-${o}`,src:e.src||e.previewImage,alt:e.alt||"Product image"})),[c]),C=i(()=>!["VIDEO","EXTERNAL_VIDEO","MODEL_3D"].includes(w[I]?.contentType||""),[w,I]),b=i(()=>{let e=w.findIndex(e=>e.id===f?.id);return e&&e>0?e:0},[w,f]);g(()=>{d&&(h(!1),y(b))},[d]);let j=()=>{h(e=>!e)};return e(n,{setting:{open:d},styles:{width:"calc(100% + 2rem)"},closeOnClickOutside:!0,closeOnEscape:!0,onKeypressEscape:()=>x(),onClose:()=>{x()},lockBodyScroll:!0,disableIframeClickEvent:!0,contentClass:"!gp--mx-4 !gp-my-auto !gp-h-screen !gp-max-w-none !gp-rounded-none !gp-bg-[#0F0F10] !gp-px-0 !gp-py-0 !gp-text-white",zoomButton:{isShowButton:C,isZoomIn:u,onToggleZoom:j},closeButtonClassName:"gp-top-[34px] gp-text-[#AAAAAA] gp-scale-125",wrapperContentClasses:"gp-size-full",children:e("div",{className:"gp-flex gp-gap-2 gp-size-full gp-min-w-0 gp-flex-col gp-items-center gp-justify-center",children:u?e(m,{image:w[I],onExitZoom:j}):o(p,{children:[e("div",{className:"gp-flex gp-w-full gp-min-w-0 gp-flex-1 gp-items-center gp-justify-center gp-overflow-hidden gp-px-[52px] gp-mt-[52px] mobile:gp-px-0",children:e(s,{builderPropUID:a,displayImages:w,activeIndex:I,imageActiveIndex:b,onChangeSlide:y,onToggleZoom:j})}),e("div",{className:"gp-flex gp-justify-center gp-w-full gp-pb-2 mobile:gp-pb-5 gp-px-[52px] mobile:gp-px-0",children:e(r,{builderPropUID:a,displayImages:w,activeIndex:I,onChangeSlide:y})})]})})})};export{a as default};
2
+ import{jsx as e,jsxs as o,Fragment as p}from"react/jsx-runtime";import{useFeaturedImageGlobal as t}from"@gem-sdk/core";import{useState as l,useMemo as i,useEffect as g}from"react";import"../../../../../modal/components/confirm.js";import n from"../../../../../modal/components/Modal.js";import s from"./LightBoxCarousel.js";import r from"./LightBoxGalleryCarousel.js";import m from"./LightBoxImageZoom.js";let a=({builderPropUID:a,productImages:c,open:d,onHandleClose:x})=>{let f=t(),[u,h]=l(!1),[I,y]=l(0),w=i(()=>(c||[]).map((e,o)=>(e.id=e.id||`gp-lightbox-${o}`,e.src=e.src||e.previewImage,e.alt=e.alt||"Product image",e)),[c]),C=i(()=>!["VIDEO","EXTERNAL_VIDEO","MODEL_3D"].includes(w[I]?.contentType||""),[w,I]),b=i(()=>{let e=w.findIndex(e=>e.id===f?.id);return e&&e>0?e:0},[w,f]);g(()=>{d&&(h(!1),y(b))},[d]);let j=()=>{h(e=>!e)};return e(n,{setting:{open:d},styles:{width:"calc(100% + 2rem)"},closeOnClickOutside:!0,closeOnEscape:!0,onKeypressEscape:()=>x(),onClose:()=>{x()},lockBodyScroll:!0,disableIframeClickEvent:!0,contentClass:"!gp--mx-4 !gp-my-auto !gp-h-screen !gp-max-w-none !gp-rounded-none !gp-bg-[#0F0F10] !gp-px-0 !gp-py-0 !gp-text-white",zoomButton:{isShowButton:C,isZoomIn:u,onToggleZoom:j},closeButtonClassName:"gp-top-[34px] gp-text-[#AAAAAA] gp-scale-125",wrapperContentClasses:"gp-size-full",children:e("div",{className:"gp-flex gp-gap-2 gp-size-full gp-min-w-0 gp-flex-col gp-items-center gp-justify-center",children:u?e(m,{image:w[I],onExitZoom:j}):o(p,{children:[e("div",{className:"gp-flex gp-w-full gp-min-w-0 gp-flex-1 gp-items-center gp-justify-center gp-overflow-hidden gp-px-[52px] gp-mt-[52px] mobile:gp-px-0",children:e(s,{builderPropUID:a,displayImages:w,activeIndex:I,imageActiveIndex:b,onChangeSlide:y,onToggleZoom:j})}),e("div",{className:"gp-flex gp-justify-center gp-w-full gp-pb-2 mobile:gp-pb-5 gp-px-[52px] mobile:gp-px-0",children:e(r,{builderPropUID:a,displayImages:w,activeIndex:I,onChangeSlide:y})})]})})})};export{a as default};
@@ -1 +1 @@
1
- import{jsx as e,Fragment as o,jsxs as t}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useMemo as i,useEffect as s}from"react";import{useRenderMode as a,useCurrentDevice as c,usePageType as n,usePageStore as m,flattenConnection as u,ProductListProvider as g,filterToolbarPreview as p}from"@gem-sdk/core";import h from"../SalePageProductListWarning.js";import P from"next/head";import f from"./ProductListGridLayout.js";import k from"./ProductListCarouselLayout.js";import{getStyle as y}from"./common/styles.js";import{If as I}from"@gem-sdk/system";import{getClass as b}from"./common/classes.js";import{getData as v}from"./common/helpers.js";import{getPropertyByDevice as T}from"../../../dialog/common/helpers.js";import{useProductsQuery as S}from"./hooks/useProductsQuery.js";import{useCollectionQuery as j}from"./hooks/useCollectionQuery.js";import w from"./hooks/useProductRelatedQuery.js";import C from"./hooks/useMainRelatedProductQuery.js";let L=r(()=>import("../ProductNotFound.js"),{loading:d}),G=r=>{let{children:G,styles:O,builderProps:N,setting:A,builderAttrs:B}=r,{isRelatedProduct:x,productSetting:E}=v(r),{isEditMode:z,isPreviewSharePageMode:M}=a(),Q=c(),H=n(),R=m(e=>e.dynamicCollection),[W,$]=l(1),[_,D]=l(!0),F="GP_FUNNEL_PAGE"===H;"GP_COLLECTION"==H&&(E.productSrc="DynamicCollection",E.collectionId=R?.collectionId??"latest");let V=E?.productSrc??"Collection",{mainRelatedProduct:q,relatedProductIdAssigned:U}=C({isEditMode:z,isPreviewSharePageMode:M,isRelatedProduct:x,relatedProductId:E.relatedProductId}),J=E.relatedTag&&E.relatedTag[0],K=E.relatedTag&&"tags"===E.relatedTag[0]&&(!q?.tags||q?.tags.length===0),X=E.relatedTag&&"collection"===E.relatedTag[0]&&(!q?.collections?.edges||q?.collections.edges.length===0),Y=E.relatedTag&&"vendor"===E.relatedTag[0]&&!q?.vendor,{isNotFoundRelatedProduct:Z,relatedProducts:ee}=w({isEditMode:z,isPreviewSharePageMode:M,isRelatedProduct:x,productSetting:E,setting:A,mainRelatedProduct:q}),eo=S({productIds:"PickProduct"===V?E?.productIds:void 0,defaultSelectedProductCount:E?.numOfSelectedProducts}),et=i(()=>({id:E?.collectionId??"latest",numberOfProducts:A?.numberOfProducts??4,orderBy:A?.orderBy}),[E?.collectionId,Number(A?.numberOfProducts),A?.orderBy]),er=j({variables:"PickProduct"!==V?et:void 0}),ed="PickProduct"===V?eo.isLoading:er.isLoading,el="PickProduct"===V?eo.error:er.error,ei="PickProduct"===V?eo.isValidating:er.isValidating,es=er.data?.collections?.edges?.[0]?.node,ea="PickProduct"===V?u(eo.data?.products):u(es?.products),ec=m(e=>e.assignedProductIds),en=m(e=>e.isApplyAllProducts),em=i(()=>(ec??[]).length>0&&!en||en,[ec,en]),eu=ee?.data?.products&&em?u(ee?.data?.products):[],eg=x?eu:"PickProduct"===V&&E?.productIds?.length?E?.productIds?.map(e=>ea?.find(o=>o?.baseID===e)).filter(Boolean)??ea:"PickProduct"!==V?ea:ea.filter((e,o)=>o<(E?.numOfSelectedProducts??4)),ep=i(()=>Z&&x&&z||!eg.length&&!ed&&_&&z,[_,ed,Z,x,z,eg.length]),eh=i(()=>!eg||Z&&x,[Z,x,eg]),eP=i(()=>{if(!A?.sameHeight)return[];let e=0,o=Math.ceil((eg?.length??0)/+(A?.slidesToShow?.[Q]??1));return Array.from(Array(eg?.length??0)).map((t,r)=>(r>=+(A?.slidesToShow?.[Q]??1)*(e+1)&&++e,{gridRow:`${1+W*e}/${W+1+W*e}`,marginBottom:e+1<o?T(O?.horizontalGutter,Q):void 0}))},[A?.sameHeight,A?.slidesToShow,W,eg?.length,Q,O?.horizontalGutter]),ef=i(()=>ei||ed||el||!eg||Z&&x,[el,ed,Z,x,ei,eg]),ek=i(()=>q?.collections?.edges.map(e=>e.node?.id)??[],[q?.collections?.edges]);s(()=>{ef||setTimeout(()=>{let{builderData:e}=N??{},o=e?.childrens?.[0];if(!o)return;let t=document.querySelector(`[data-id=${o}] div`);t&&$(t.childElementCount||1)},z?0:500)},[N,ef,z,ek]);let ey=i(()=>({collection:es,products:eg,settings:{loop:A?.loop??{desktop:!1},scrollMode:A?.scrollMode??{desktop:"snap"},slidesToShow:A?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:O?.layout,dot:A?.dot,dotStyle:A?.dotStyle,arrow:A?.arrow,controlOverContent:A?.controlOverContent},styles:{horizontalGutter:O?.horizontalGutter,verticalGutter:O?.verticalGutter,fullWidth:O?.fullWidth,spacing:O?.spacing,width:O?.width,height:O?.height}}),[es,eg,A,O]);if(N?.isPreview&&F)return e(o,{});if(ep)return e(o,{children:I(_,e(L,{builderAttrs:B,collectionHandle:es?.handle,productSrc:V,onClose:()=>D(!1),children:G,relatedTagString:J,assignProductNoTags:K||X||Y,noAssignedProduct:!U}))});let{productListWrapStyle:eI,productListContentStyle:eb,productListWrapAlignStyle:ev}=y(r),{productListWrapClass:eT}=b(r);return t("div",{...B,className:eT,style:eI,children:[!!O?.preloadBgImage&&t(P,{children:[!!O.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage.desktop.image.src,as:"image"}),!!O.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage?.tablet?.image?.src,as:"image"}),!!O.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage?.mobile?.image?.src,as:"image"})]}),ed||ei?e(d,{}):el?t("div",{children:["Error: ",el?.message]}):eh?e("div",{children:"Products not found"}):e(g,{...ey,children:e("div",{className:"gp-flex gp-w-full",style:ev,children:t("div",{style:eb,children:[F&&e(h,{}),e(o,{children:I(O?.layout==="grid",e(f,{...r,productSortedById:eg,generateGridRowArray:eP}),e(k,{...r,productSortedById:eg}))})]})})}),p(G,!0)]})};export{G as default};
1
+ import{jsx as e,Fragment as o,jsxs as t}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useMemo as i,useEffect as s}from"react";import{useRenderMode as a,useCurrentDevice as c,usePageType as n,usePageStore as m,flattenConnection as u,ProductListProvider as g,filterToolbarPreview as p}from"@gem-sdk/core";import h from"../SalePageProductListWarning.js";import f from"next/head";import P from"./ProductListGridLayout.js";import k from"./ProductListCarouselLayout.js";import{getStyle as y}from"./common/styles.js";import{If as I}from"@gem-sdk/system";import{getClass as b}from"./common/classes.js";import{getData as T}from"./common/helpers.js";import{getPropertyByDevice as v}from"../../../dialog/common/helpers.js";import{useProductsQuery as S}from"./hooks/useProductsQuery.js";import{useCollectionQuery as j}from"./hooks/useCollectionQuery.js";import w from"./hooks/useProductRelatedQuery.js";import C from"./hooks/useMainRelatedProductQuery.js";let L=r(()=>import("../ProductNotFound.js"),{loading:d}),G=r=>{let{children:G,styles:O,builderProps:N,setting:A,builderAttrs:B}=r,{isRelatedProduct:x,productSetting:E}=T(r),{isEditMode:z,isPreviewSharePageMode:M}=a(),Q=c(),H=n(),R=m(e=>e.dynamicCollection),[W,$]=l(1),[_,D]=l(!0),F="GP_FUNNEL_PAGE"===H;"GP_COLLECTION"==H&&(E.productSrc="DynamicCollection",E.collectionId=R?.collectionId??"latest");let V=E?.productSrc??"Collection",{mainRelatedProduct:q,relatedProductIdAssigned:U}=C({isEditMode:z,isPreviewSharePageMode:M,isRelatedProduct:x,relatedProductId:E.relatedProductId}),J=E.relatedTag&&E.relatedTag[0],K=E.relatedTag&&"tags"===E.relatedTag[0]&&(!q?.tags||q?.tags.length===0),X=E.relatedTag&&"collection"===E.relatedTag[0]&&(!q?.collections?.edges||q?.collections.edges.length===0),Y=E.relatedTag&&"vendor"===E.relatedTag[0]&&!q?.vendor,{isNotFoundRelatedProduct:Z,relatedProducts:ee}=w({isEditMode:z,isPreviewSharePageMode:M,isRelatedProduct:x,productSetting:E,setting:A,mainRelatedProduct:q}),eo=S({productIds:E?.productIds,defaultSelectedProductCount:E?.numOfSelectedProducts,productSrc:V}),et=i(()=>({id:E?.collectionId??"latest",numberOfProducts:A?.numberOfProducts??4,orderBy:A?.orderBy}),[E?.collectionId,Number(A?.numberOfProducts),A?.orderBy]),er=j({variables:"PickProduct"!==V?et:void 0}),ed="PickProduct"===V?eo.isLoading:er.isLoading,el="PickProduct"===V?eo.error:er.error,ei="PickProduct"===V?eo.isValidating:er.isValidating,es=er.data?.collections?.edges?.[0]?.node,ea="PickProduct"===V?u(eo.data?.products):u(es?.products),ec=m(e=>e.assignedProductIds),en=m(e=>e.isApplyAllProducts),em=i(()=>(ec??[]).length>0&&!en||en,[ec,en]),eu=ee?.data?.products&&em?u(ee?.data?.products):[],eg=x?eu:"PickProduct"===V&&E?.productIds?.length?E?.productIds?.map(e=>ea?.find(o=>o?.baseID===e)).filter(Boolean)??ea:"PickProduct"!==V?ea:ea.filter((e,o)=>o<(E?.numOfSelectedProducts??4)),ep=i(()=>Z&&x&&z||!eg.length&&!ed&&_&&z,[_,ed,Z,x,z,eg.length]),eh=i(()=>!eg||Z&&x,[Z,x,eg]),ef=i(()=>{if(!A?.sameHeight)return[];let e=0,o=Math.ceil((eg?.length??0)/+(A?.slidesToShow?.[Q]??1));return Array.from(Array(eg?.length??0)).map((t,r)=>(r>=+(A?.slidesToShow?.[Q]??1)*(e+1)&&++e,{gridRow:`${1+W*e}/${W+1+W*e}`,marginBottom:e+1<o?v(O?.horizontalGutter,Q):void 0}))},[A?.sameHeight,A?.slidesToShow,W,eg?.length,Q,O?.horizontalGutter]),eP=i(()=>ei||ed||el||!eg||Z&&x,[el,ed,Z,x,ei,eg]),ek=i(()=>q?.collections?.edges.map(e=>e.node?.id)??[],[q?.collections?.edges]);s(()=>{eP||setTimeout(()=>{let{builderData:e}=N??{},o=e?.childrens?.[0];if(!o)return;let t=document.querySelector(`[data-id=${o}] div`);t&&$(t.childElementCount||1)},z?0:500)},[N,eP,z,ek]);let ey=i(()=>({collection:es,products:eg,settings:{loop:A?.loop??{desktop:!1},scrollMode:A?.scrollMode??{desktop:"snap"},slidesToShow:A?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:O?.layout,dot:A?.dot,dotStyle:A?.dotStyle,arrow:A?.arrow,controlOverContent:A?.controlOverContent},styles:{horizontalGutter:O?.horizontalGutter,verticalGutter:O?.verticalGutter,fullWidth:O?.fullWidth,spacing:O?.spacing,width:O?.width,height:O?.height}}),[es,eg,A,O]);if(N?.isPreview&&F)return e(o,{});if(ep)return e(o,{children:I(_,e(L,{builderAttrs:B,collectionHandle:es?.handle,productSrc:V,onClose:()=>D(!1),children:G,relatedTagString:J,assignProductNoTags:K||X||Y,noAssignedProduct:!U}))});let{productListWrapStyle:eI,productListContentStyle:eb,productListWrapAlignStyle:eT}=y(r),{productListWrapClass:ev}=b(r);return t("div",{...B,className:ev,style:eI,children:[!!O?.preloadBgImage&&t(f,{children:[!!O.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage.desktop.image.src,as:"image"}),!!O.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage?.tablet?.image?.src,as:"image"}),!!O.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:O.backgroundImage?.mobile?.image?.src,as:"image"})]}),ed||ei?e(d,{}):el?t("div",{children:["Error: ",el?.message]}):eh?e("div",{children:"Products not found"}):e(g,{...ey,children:e("div",{className:"gp-flex gp-w-full",style:eT,children:t("div",{style:eb,children:[F&&e(h,{}),e(o,{children:I(O?.layout==="grid",e(P,{...r,productSortedById:eg,generateGridRowArray:ef}),e(k,{...r,productSortedById:eg}))})]})})}),p(G,!0)]})};export{G as default};
@@ -0,0 +1 @@
1
+ var o;!function(o){o.Collection="Collection",o.PickProduct="PickProduct",o.DynamicCollection="DynamicCollection",o.RelatedProduct="RelatedProduct"}(o||(o={}));export{o as PRODUCT_SOURCE};
@@ -1 +1 @@
1
- import{useFetchHandle as r,usePageStore as t,hasPublicStoreFrontData as e,createStoreFrontFetcher as a,useIsSampleProduct as i,useIsStorefrontProduct as o,generateProductsQueryKey as n,getProducts as d}from"@gem-sdk/core";import{useMemo as s,useEffect as l}from"react";import m from"swr";let g=({defaultSelectedProductCount:g,productIds:u})=>{let c=r(),p=t(r=>r.publicStoreFrontData),f=s(()=>e(p)?a(p):c,[p]),h=i(),y=o(),L=n({ids:u??[],isSample:h,isStorefront:y,defaultSelectedProductCount:g}),V=m(L,async([,r])=>d(f,r),{revalidateOnMount:!1});return l(()=>{let r=!!V.error,t=V.isLoading||V.isValidating,e=!V.data&&!t,a=!r&&e&&u?.length;a&&V.mutate()},[u?.length,V.data,V.error,V.isLoading,V.isValidating]),{...V}};export{g as useProductsQuery};
1
+ import{useFetchHandle as r,usePageStore as t,hasPublicStoreFrontData as i,createStoreFrontFetcher as o,useIsSampleProduct as e,useIsStorefrontProduct as a,generateProductsQueryKey as n,getProducts as s}from"@gem-sdk/core";import{useMemo as d,useEffect as m}from"react";import u from"swr";import{PRODUCT_SOURCE as c}from"../constants/index.js";let l=({defaultSelectedProductCount:l,productIds:g,productSrc:p})=>{let f=r(),P=t(r=>r.publicStoreFrontData),k=d(()=>i(P)?o(P):f,[P]),x=e(),y=a(),L=n({ids:g??[],isSample:x,isStorefront:y,defaultSelectedProductCount:l}),V=u(L,async([,r])=>s(k,r),{revalidateOnMount:!1});return m(()=>{if(p!==c.PickProduct)return;let r=!!V.error,t=V.isLoading||V.isValidating,i=!V.data&&!t;!r&&i&&V.mutate()},[p,g?.length,V.data,V.error,V.isLoading,V.isValidating]),{...V}};export{l as useProductsQuery};
@@ -1,4 +1,4 @@
1
- import{template as t,baseAssetURL as e,isLocalEnv as i,DEVICES as o,getResponsiveValueByScreen as s}from"@gem-sdk/core";import n from"../../../text/components/Text.liquid.js";import a from"./components/variants/index.liquid.js";import r from"./components/dropdown-swatches/Dropdown.liquid.js";import p from"./components/dropdown-group/DropdownGroup.liquid.js";import{getSettingPreloadData as l}from"../../../helpers.js";import{mappingVariantStyles as d}from"./utils/mappingVariantStyles.js";import{createClass as m,createStyle as c,createAttr as u,Liquid as v,LiquidFor as f,LiquidIf as $,If as g}from"@gem-sdk/system";import{getAttrs as _}from"./common/main/getAttr.js";import{getVariantOptionGroupStyle as h,getWrapperStyle as y}from"./common/main/styles.js";import{getVariantOptionGroupClass as j,getWrapDropdownClass as w}from"./common/main/classes.js";import{getTextVariantTitleData as b,getDropdownGroupData as S}from"./common/main/getData.js";import{getWrapVariantOptionClass as P}from"./common/variants/classes.js";import{getStyleOfObject as O}from"../../helpers/function.js";import{getMarginBottomStyle as x}from"./common/variants/styles.js";import{renderOptionValuesNewFormatSwatches as V}from"./OptionVariantsNewFormat.liquid.js";import{renderOptionValuesOld as N}from"./OptionVariantsOldFormat.liquid.js";let A={desktop:!0,tablet:!0,mobile:!0},q=q=>{let{builderProps:D,styles:E,setting:T,advanced:k}=q,{align:F,swatchItemWidth:G,dropdownItemWidth:z,swatchSpacing:C,optionTypo:J,marginBottom:I}=E??{},{label:M,optionType:W,showAsSwatches:L,layout:R,hasPreSelected:H}=T??{},K=k?.d??A,{uid:Q}=D??{},U=()=>{let t={};return o.forEach(e=>{let i=s(G,e);t[e]="auto"===i}),t},B=()=>{let t={};return o.forEach(e=>{t[e]=z?.[e]==="fill"}),t},X=T?.variantPresets?d(T?.variantPresets,E):[],Y=X?.map(t=>({...t,presets:{[t.optionType]:t.presets[t.optionType]}})),Z={...T,variantPresets:Y},tt=t=>{let e={"'":"&apos;",'"':"&quot;"},i=t;for(let o in e)t.indexOf(o)>=0&&(i=i.replaceAll(o,e[o]));return i},te=({showDropdown:e,isRenderDefault:i,typeOfOption:o})=>t`
1
+ import{template as t,baseAssetURL as e,isLocalEnv as i,DEVICES as o,getResponsiveValueByScreen as s}from"@gem-sdk/core";import n from"../../../text/components/Text.liquid.js";import a from"./components/variants/index.liquid.js";import r from"./components/dropdown-swatches/Dropdown.liquid.js";import p from"./components/dropdown-group/DropdownGroup.liquid.js";import{getSettingPreloadData as l}from"../../../helpers.js";import{mappingVariantStyles as d}from"./utils/mappingVariantStyles.js";import{createClass as m,createStyle as c,createAttr as u,Liquid as v,LiquidFor as f,LiquidIf as $,If as g}from"@gem-sdk/system";import{getAttrs as _}from"./common/main/getAttr.js";import{getVariantOptionGroupStyle as h,getWrapperStyle as y}from"./common/main/styles.js";import{getVariantOptionGroupClass as j,getWrapDropdownClass as w}from"./common/main/classes.js";import{getTextVariantTitleData as b,getDropdownGroupData as S}from"./common/main/getData.js";import{getWrapVariantOptionClass as P}from"./common/variants/classes.js";import{getStyleOfObject as O}from"../../helpers/function.js";import{getMarginBottomStyle as x}from"./common/variants/styles.js";import{renderOptionValuesNewFormatSwatches as V}from"./OptionVariantsNewFormat.liquid.js";import{renderOptionValuesOld as N}from"./OptionVariantsOldFormat.liquid.js";let A={desktop:!0,tablet:!0,mobile:!0},q=q=>{let{builderProps:D,styles:E,setting:T,advanced:k}=q,{align:F,swatchItemWidth:G,dropdownItemWidth:z,swatchSpacing:C,optionTypo:J,marginBottom:I}=E??{},{label:M,optionType:W,showAsSwatches:L,layout:R,hasPreSelected:H}=T??{},K=k?.d??A,{uid:Q}=D??{},U=()=>{let t={};return o.forEach(e=>{let i=s(G,e);t[e]="auto"===i}),t},B=()=>{let t={};return o.forEach(e=>{t[e]=z?.[e]==="fill"}),t},X=T?.variantPresets?d(T?.variantPresets,E):[],Y=X?.map(t=>(t.presets={[t.optionType]:t.presets[t.optionType]},t)),Z={...T,variantPresets:Y},tt=t=>{let e={"'":"&apos;",'"':"&quot;"},i=t;for(let o in e)t.indexOf(o)>=0&&(i=i.replaceAll(o,e[o]));return i},te=({showDropdown:e,isRenderDefault:i,typeOfOption:o})=>t`
2
2
  ${f("value in values",a({id:"{{option.name | escape | handleize}}-{{value | escape | handleize}}",variantKey:"{{option.name | escape}}-{{option.position}}-{{ forloop.index }}",showAsSwatches:L,uid:Q,name:"{{option.name | escape}}",value:{label:"{{value | escape}}"},checked:H?"{%- if option.selected_value == value -%}true{% else %}false{%- endif -%}":"false",optionPosition:"rootForloop",typeOfOption:o,activeClass:H?"{%- if option.selected_value == value -%}option-item-active{%- endif -%}":"",...E,...Z,swatchAutoWidth:U(),optionTypo:J,isRenderDefault:i}))}
3
3
  ${$(e?'type == "dropdown"':"false",r({...E,...Z,swatchAutoWidth:B(),optionTypo:J}))}`,ti=T?.variantPresets?.map(t=>({name:tt(t.optionName),type:t.optionType})).map(t=>`${t.name}($1)${t.type}`).join("($2)").toString(),to={renderVariantItem:te,variantPresetsLiquid:ti??""},ts=m(j(F)),tn=c(h(C,C)),ta=b(q,"Liquid"),tr=m(P(R,F)),tp=m(w(F)),tl=S(q),td=u(_({uid:Q,hasPreSelected:H,cssClass:k?.cssClass})),tm=c(y(q)),tc=m({"gp-flex gp-flex-col !gp-ml-0":!0});return t`
4
4
  ${v("{%- assign total_combinations = 1 -%}")}
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as e,cloneDeep as t}from"@gem-sdk/core";import{getDynamicSourceLocales as o,createSettingId as i}from"../../helpers.js";import{Video as l}from"../settings/configs/translate.js";let s=(t,o)=>{let i={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},l={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},s={desktop:o?.desktop==="custom"?`${e(i,"desktop")}/${e(l,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e(i,"tablet")}/${e(l,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e(i,"mobile")}/${e(l,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return s},r=(e,s,r)=>{if(!e||!s)return{};if(r?.isPreviewing)return e;let m=t(e);if(m.youtubeUrl&&"youtube"===m.type){let e=o({val:m.youtubeUrl,uid:s,settingId:i({id:l?.youtubeUrl?.id})});m.youtubeUrlTranslated=String(e)}if(m.vimeoUrl&&"vimeo"===m.type){let e=o({val:m.vimeoUrl,uid:s,settingId:i({id:l?.vimeoUrl?.id})});m.vimeoUrlTranslated=String(e)}if(m.html5Url&&"html5"===m.type){let e=o({val:m.html5Url,uid:s,settingId:i({id:l?.html5Url?.id})});m.html5Url=String(e)}if(m.poster){let e=o({val:m.poster?.src,uid:s,settingId:l?.poster?.id?`${l.poster.id}_src`:""});m.poster.src=String(e)}return m},m=e=>{let{id:t,params:o,muted:i,webp:l,controls:s,adNetwork:r,autoplay:m,lazy:a}=e,d=encodeURIComponent(t),p="hqdefault",n=`${o}`||"",u=i?"&mute=1":"",b=l?"webp":"jpg",g=l?"vi_webp":"vi",h=e.thumbnail||`https://i.ytimg.com/${g}/${d}/${p}.${b}`,c=e.noCookie?"https://www.youtube-nocookie.com":"https://www.youtube.com",$=`${c}/embed/${d}?autoplay=${!!a||m}&state=1${u}${n}&controls=${s?1:0}`;return{videoId:d,posterImp:p,paramsImp:n,mutedImp:u,format:b,vi:g,posterUrl:h,ytUrl:c,iframeSrc:$,adNetworkImp:r||!1}},a=e=>{let{id:t,autoplay:o,muted:i,controls:l,loop:s,lazy:r}=e,m=encodeURIComponent(t),a=`?&autoplay=${r?1:o?1:0}&muted=${i?1:0}&loop=${s?1:0}&controls=${l}&autopause=false`,d=`https://player.vimeo.com/video/${m}${a}`;return{videoId:m,params:a,iframeSrc:d}},d=(e,t)=>({[`--${e}`]:t?.desktop,[`--${e}-tablet`]:t?.tablet,[`--${e}-mobile`]:t?.mobile}),p="https://cdn.shopify.com/s/files/1/0703/5214/2562/files/gempages_518090459516502570-3d3a4631-1d7d-4a2f-9ef0-9bbe7220e02d.jpg",n=/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=|shorts\/)|youtu\.be\/)([^"&?/\s]{11})/i,u=/^(?:http:\/\/|https:\/\/)vimeo\.com\/[\w/]+(?:\?.*)?$/im,b=e=>{let t=e.match(n);return t?.[1]??void 0},g=e=>e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|album\/(\d+)\/video\/|video\/)?(\d+)(?:$|\/|\?)/)?.[3],h=e=>{let t=e.split(":",2);return t.length<=1?parseInt(t[0]||"0"):60*parseInt(t[0]||"0")+parseInt(t[1]||"0")},c=e=>{let t=e.split("&");return t.shift(),t.reduce((e,t)=>{let[o,i]=t.split("=");return"loop"!==o?{...e,[o]:i}:e},{})},$=e=>e.includes("loop=1");export{c as covertStrParamsToObj,p as fallbackImageVideoUrl,s as getAspectRatioSettings,r as getSettingTranslatedVideoAndThumbnail,a as getVimeoParams,g as getVimeoVideoId,m as getYoutubeParams,b as getYoutubeVideoId,$ as isSettingLoop,d as makeStyleResponsiveRatio,h as parseTimeVideo,u as vimeoVideoRegex,n as youtubeVideoRegex};
1
+ import{getResponsiveValueByScreen as e,cloneDeep as t}from"@gem-sdk/core";import{getDynamicSourceLocales as o,createSettingId as i}from"../../helpers.js";import{Video as l}from"../settings/configs/translate.js";let s=(t,o)=>{let i={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},l={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},s={desktop:o?.desktop==="custom"?`${e(i,"desktop")}/${e(l,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e(i,"tablet")}/${e(l,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e(i,"mobile")}/${e(l,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return s},r=(e,s,r)=>{if(!e||!s)return{};if(r?.isPreviewing)return e;let m=t(e);if(m.youtubeUrl&&"youtube"===m.type){let e=o({val:m.youtubeUrl,uid:s,settingId:i({id:l?.youtubeUrl?.id})});m.youtubeUrlTranslated=String(e)}if(m.vimeoUrl&&"vimeo"===m.type){let e=o({val:m.vimeoUrl,uid:s,settingId:i({id:l?.vimeoUrl?.id})});m.vimeoUrlTranslated=String(e)}if(m.html5Url&&"html5"===m.type){let e=o({val:m.html5Url,uid:s,settingId:i({id:l?.html5Url?.id})});m.html5Url=String(e)}if(m.poster){let e=o({val:m.poster?.src,uid:s,settingId:l?.poster?.id?`${l.poster.id}_src`:""});m.poster.src=String(e)}return m},m=e=>{let{id:t,params:o,muted:i,webp:l,controls:s,adNetwork:r,autoplay:m,lazy:a}=e,d=encodeURIComponent(t),p="hqdefault",n=`${o}`||"",u=i?"&mute=1":"",b=l?"webp":"jpg",g=l?"vi_webp":"vi",h=e.thumbnail||`https://i.ytimg.com/${g}/${d}/${p}.${b}`,c=e.noCookie?"https://www.youtube-nocookie.com":"https://www.youtube.com",$=`${c}/embed/${d}?autoplay=${!!a||m}&state=1${u}${n}&controls=${s?1:0}`;return{videoId:d,posterImp:p,paramsImp:n,mutedImp:u,format:b,vi:g,posterUrl:h,ytUrl:c,iframeSrc:$,adNetworkImp:r||!1}},a=e=>{let{id:t,autoplay:o,muted:i,controls:l,loop:s,lazy:r}=e,m=encodeURIComponent(t),a=`?&autoplay=${r?1:o?1:0}&muted=${i?1:0}&loop=${s?1:0}&controls=${l}&autopause=false`,d=`https://player.vimeo.com/video/${m}${a}`;return{videoId:m,params:a,iframeSrc:d}},d=(e,t)=>({[`--${e}`]:t?.desktop,[`--${e}-tablet`]:t?.tablet,[`--${e}-mobile`]:t?.mobile}),p="https://cdn.shopify.com/s/files/1/0703/5214/2562/files/gempages_518090459516502570-3d3a4631-1d7d-4a2f-9ef0-9bbe7220e02d.jpg",n=/(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/(?:[^/]+\/.+\/|(?:v|e(?:mbed)?)\/|.*[?&]v=|shorts\/)|youtu\.be\/)([^"&?/\s]{11})/i,u=/^(?:http:\/\/|https:\/\/)vimeo\.com\/[\w/]+(?:\?.*)?$/im,b=e=>{let t=e.match(n);return t?.[1]??void 0},g=e=>e.match(/https?:\/\/(?:www\.|player\.)?vimeo.com\/(?:channels\/(?:\w+\/)?|groups\/([^/]*)\/videos\/|album\/(\d+)\/video\/|video\/)?(\d+)(?:$|\/|\?)/)?.[3],h=e=>{let t=e.split(":",2);return t.length<=1?parseInt(t[0]||"0"):60*parseInt(t[0]||"0")+parseInt(t[1]||"0")},c=e=>{let t=e.split("&");return t.shift(),t.reduce((e,t)=>{let[o,i]=t.split("=");return"loop"!==o&&(e[o]=i),e},{})},$=e=>e.includes("loop=1");export{c as covertStrParamsToObj,p as fallbackImageVideoUrl,s as getAspectRatioSettings,r as getSettingTranslatedVideoAndThumbnail,a as getVimeoParams,g as getVimeoVideoId,m as getYoutubeParams,b as getYoutubeVideoId,$ as isSettingLoop,d as makeStyleResponsiveRatio,h as parseTimeVideo,u as vimeoVideoRegex,n as youtubeVideoRegex};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/components",
3
- "version": "12.0.0-dev.138",
3
+ "version": "12.0.0-dev.141",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -15,7 +15,7 @@
15
15
  "post:publish": "node ./scripts/convert-publish.js",
16
16
  "watch": "rollup -c ./scripts/rollup.config.mjs -w",
17
17
  "build": "rollup -c ./scripts/rollup.config.mjs --environment NODE_ENV:production",
18
- "lint": "eslint ./src --ext .tsx,.ts",
18
+ "lint": "oxlint --format=stylish ./src",
19
19
  "test": "jest -c ./../../helpers/jest.config.ts",
20
20
  "test:watch": "jest -c ./../../helpers/jest.config.ts --watch",
21
21
  "type-check": "yarn tsc --noEmit",
@@ -26,9 +26,9 @@
26
26
  "i18n:extract": "rollup -c ./scripts/rollup.config.settings.mjs && node ./scripts/translate/extract-texts-to-locales.js && node ./scripts/translate/en-keys-usage.js"
27
27
  },
28
28
  "devDependencies": {
29
- "@gem-sdk/core": "12.0.0-dev.138",
30
- "@gem-sdk/styles": "12.0.0-dev.138",
31
- "@gem-sdk/system": "12.0.0-dev.138",
29
+ "@gem-sdk/core": "12.0.0-dev.141",
30
+ "@gem-sdk/styles": "12.0.0-dev.141",
31
+ "@gem-sdk/system": "12.0.0-dev.141",
32
32
  "@types/react-transition-group": "^4.4.12",
33
33
  "postcss-import": "16.1.1",
34
34
  "@thedutchcoder/postcss-rem-to-px": "0.0.2",