@gem-sdk/components 8.0.0-dev.52 → 8.0.0-dev.54

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 React=require("react"),core=require("@gem-sdk/core"),useTrackPreviewPause=require("./useTrackPreviewPause.js");const useCarousel=(e,t,r,s)=>{let a;let{builderProps:n,moveToIdx:i,styles:o,setting:l,isHiddenArrowWhenDisabled:u=!0,elmRef:c,isEnableCheckHasScrollableContent:d,onClickArrow:p,onHandleChangeSlideByInteraction:f,onChangeActive:m}=e,[v,y]=React.useState(!0),[g,R]=React.useState(!0),[S,k]=React.useState(!1),{loop:h,navigationEnable:V={desktop:!0},navigationStyle:b}=l??{},[B,P]=React.useState(s),[w,T]=React.useState(l?.defaultCurrentSlider??0),{isFirstPreviewClicked:N}=useTrackPreviewPause.default(l?.runPreview),E=React.useRef(),x=React.useRef(i??0),C=core.useCurrentDevice(),M=core.useEditorMode(),{onListener:O,saveToElementInteractionData:I,getInteractionPreviousData:L,trigger:z}=core.useInteraction(),D=React.useMemo(()=>core.getResponsiveValueByScreen(h,C,!1),[h,C]),q=React.useCallback(()=>{if(!l?.slidesToShow)return null;let e={};return core.DEVICES.forEach(t=>{let r=core.getResponsiveValueByScreen(l?.slidesToShow,t);e[t]=r?"auto"===r?4:Math.floor(r):0}),e},[l?.slidesToShow]),H=React.useCallback(()=>{if(!l?.slidesToShow)return null;let e={};return core.DEVICES.forEach(t=>{let r=core.getResponsiveValueByScreen(l?.slidesToShow,t);e[t]=r?"auto"===r?4:r:0}),e},[l?.slidesToShow]),j=React.useMemo(()=>{let e=H();if(e)return e;let t={};return core.DEVICES.forEach(e=>{let r=core.getResponsiveValueByScreen(l?.sneakPeak,e),s=r?"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?core.getResponsiveValueByScreen(l?.sneakPeakOffsetCenter,e)??0:core.getResponsiveValueByScreen(l?.sneakPeakOffsetForward,e)??0:0,a="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?-2:-1,n=core.getResponsiveValueByScreen(l?.itemNumber,e);t[e]="number"==typeof n?n+s/100*a:"auto"}),t},[H,l?.itemNumber,l?.sneakPeak,l?.sneakPeakOffsetCenter,l?.sneakPeakOffsetForward,l?.sneakPeakType]),F=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(j,C),t=core.getResponsiveValueByScreen(h,C,!1);return t&&Number(e??0)>s||!t&&Number(e??0)>=s},[j,C,h,s]),$=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(V,C),t=core.getResponsiveValueByScreen(b,C);return r&&e&&"none"!==t&&v&&!F},[V,C,b,r,v,F]),A=React.useMemo(()=>{let e=q();return e||l?.itemNumber},[q,l?.itemNumber]),U=React.useCallback(e=>{let t="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?2:1;return"number"==typeof core.getResponsiveValueByScreen(A,e,4)?core.getResponsiveValueByScreen(A,e,4)-t:void 0},[l?.sneakPeakType,A]),W=()=>{let e="auto"===core.getResponsiveValueByScreen(j,C,1)?1:core.getResponsiveValueByScreen(j,C,1);return e??1},G=e=>{let t=e*W();return t>=B-W()&&(t=B-W()),t},J=e=>{let t="edit"===M?{[e]:!1}:l?.enableDrag;return core.getResponsiveValueByScreen(t,e)},K=(e,t)=>{let a=l?.sneakPeak?.[C]?e:t?e:G(e);if(t){if(s<et){r?.slideTo(a);return}if(r?.realIndex===a)return;if(a===Number(r?.realIndex)+1||0===a&&r?.realIndex===s-1)return r?.slideNext();if(a===Number(r?.realIndex)-1||a===s-1&&r?.realIndex===0)return r?.slidePrev();let e="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C)&&"number"==typeof core.getResponsiveValueByScreen(l?.itemNumber,C)&&Number(core.getResponsiveValueByScreen(l?.itemNumber,C))%2==0;e?r?.slideToLoopCenterSneakPeek(a):r?.slideToLoop(a)}else r?.slideTo(a);x.current=a};React.useImperativeHandle(t,()=>({nextSlideInteraction:Z,previousSlideInteraction:_,moveToSlideInteraction:ee,getSwiper:()=>r}));let Q=e=>{z({event:"gp:rollback:select-slide",selector:`[data-id="${n?.uid}"]`,element:c?.current}),z({event:"gp:select-slide",selector:`[data-id="${n?.uid}"]`,data:e,element:c?.current})},X=e=>{r?.slideTo(e),f&&f(e)},Y=(e,t)=>{let{key:s,data:a,isRollback:n,element:i}=e,o=Math.max(r?.activeIndex??0,0);if(n&&void 0===a)return;if(n){if("specific"===t){let{previousData:e}=L(i,s);X(Number(e))}else{let e="next"===t?o-1:o+1;X(e)}return}let l="specific"===t?Math.max(x.current,0):o;I(i,s,l.toString());let u="specific"===t?Number(a):"next"===t?o+1:o-1;X(u)},Z=e=>{Y(e,"next")},_=e=>{Y(e,"previous")},ee=e=>{Y(e,"specific")},et=W(),er=React.useMemo(()=>!!B&&r&&core.getResponsiveValueByScreen(l?.dot,C)&&!F&&s>1,[B,r,l?.dot,C,F,s]),es=core.getResponsiveValueByScreen(l?.vertical,C,!1)?"vertical":"horizontal",ea=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(h,C,!1),t=r?.width??0,s={0:"mobile",768:"tablet",1025:"desktop"},a=Number(Object.entries(s).find(([,e])=>e===C)?.[0]??1025),n=Object.entries(s).reduce((r,[s,a])=>{if(!r)return;let n=Number(s),o=core.getResponsiveValueByScreen(l?.sneakPeak,a,!1),u=o&&"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,a),c=core.getResponsiveValueByScreen(l?.itemNumber,a),d=u&&"number"==typeof c,p=J(a),f=d?(t-t/et*(c-2))/2:0,m=d&&e?B:l?.initialSlide||i||0,v={allowTouchMove:p,slidesOffsetBefore:f,slidesOffsetAfter:f,initialSlide:m};return r[n]=v,r},{}),u="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C)&&"number"==typeof core.getResponsiveValueByScreen(l?.itemNumber,C)&&Number(core.getResponsiveValueByScreen(l?.itemNumber,C))>1;return{speed:o?.playSpeed??500,dir:l?.rtl?"rtl":"ltr",spaceBetween:core.getResponsiveValueByScreen(o?.spacing,C)||0,loop:e,slidesPerView:"auto"===core.getResponsiveValueByScreen(j,C,1)?"auto":et,direction:es,breakpoints:n,isSneakPeekCenter:u,slidesOffsetBefore:n?.[a]?.slidesOffsetBefore,thumbs:{slideThumbActiveClass:"gem-slider-item-active"},loopPreventsSliding:!1,autoplay:{delay:(l?.autoplayTimeout??1)*1e3,pauseOnMouseEnter:l?.pauseOnHover,stopOnLastSlide:!e}}},[o?.playSpeed,l?.rtl,o?.spacing,C,h,et,l?.sneakPeakType,l?.pauseOnHover,l?.autoplayTimeout,r?.width,B]),en=React.useCallback(e=>{let t=r&&r.params?.slidesPerView,s=t?r?.slidesPerViewDynamic():1;if(e<=1)return!1;let a="auto"===ea.slidesPerView?s:ea.slidesPerView;if(!D||e<Number(a)||!v)return!1;let n=core.getResponsiveValueByScreen(l?.sneakPeak,C,!1),i=n&&"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C),o=Number.isNaN(Number(a))?1:Math.ceil(Number(a));i&&o%2==0&&(o+=1);let u=i?Math.max(1,Math.ceil(o/2)):1;return e<o+u},[r,ea.slidesPerView,D,v,l?.sneakPeak,l?.sneakPeakType,C]);React.useEffect(()=>{let e=`[data-id="${n?.uid}"]`;O({event:"gp:change-next-slide",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};Z({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-previous-slide",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};_({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-image-step",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};ee({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-index-slide",selector:e},t=>{let r=document.querySelector(e),{data:s,isRollback:a,uniqueStorageKey:n}=t||{};ee({element:r,data:s,isRollback:a,key:n})})},[]),React.useEffect(()=>{P(s)},[s]);let ei=e=>{"next"===e?r?.slideNext():r?.slidePrev(),p&&(a&&clearTimeout(a),a=setTimeout(()=>p&&p(),500))};return React.useEffect(()=>{if("number"==typeof i){if(x.current=i,r?.params?.loop){r?.slideToLoop(i);return}r?.slideTo(i)}},[r,i,u]),React.useEffect(()=>{if(!r)return;let e=()=>{P(r.slides.length)},t=()=>{m&&m(r.realIndex)},s=()=>{T(r.realIndex),R(r?.translate===0),k(r?.translate<=r?.maxTranslate())};return r.on("transitionEnd",s),r.on("slideChange",e),r.on("slideChangeTransitionStart",t),()=>{r?.off("slideChange",e),r?.off("slideChangeTransitionStart",t),r?.off("transitionEnd",s)}},[ea.loop,r]),React.useEffect(()=>{r?.wrapperEl&&(r.wrapperEl.style.transitionTimingFunction=l?.animationMode??"ease")},[r,l?.animationMode]),React.useEffect(()=>{if(r&&r.autoplay){let e="edit"===M?!!N&&l?.runPreview&&l?.autoplay:l?.autoplay;e?r.autoplay.start():r.autoplay.stop()}},[r,l?.autoplay,M,N,l?.runPreview]),React.useEffect(()=>{let e=e=>{if(n?.uid!==e?.detail.componentUid)return;let t=e?.detail.index||0;r?.slideToLoop(t)};return window.addEventListener("move-to-idx",e),()=>window.removeEventListener("move-to-idx",e)},[r,n?.uid]),React.useEffect(()=>{if(!r)return;let e=r.el;e?.classList?.remove("swiper-horizontal","swiper-vertical");let t=core.getResponsiveValueByScreen(l?.vertical,C)?"swiper-vertical":"swiper-horizontal";e?.classList?.add(t),r?.slides?.forEach(e=>{e.style.width="",e.style.height=""}),r?.update()},[C,l?.vertical,r,r?.params]),React.useEffect(()=>{if(!r||!d)return;let e=()=>{let e=r?.slides?.slice(0,s)||[],t=Number(ea?.spaceBetween||0),a=e.reduce((e,t)=>e+t.offsetHeight,0)+t*(e.length-1),n=e.reduce((e,t)=>e+t.offsetWidth,0)+t*(e.length-1),i=r.params?.direction==="horizontal"?n>(r.width||0):a>(r.height||0);y(i)};return e(),r.on("resize",e),r.on("update",e),r.on("slidesLengthChange",e),r.on("orientationchange",e),()=>{r.off("resize",e),r.off("update",e),r.off("slidesLengthChange",e),r.off("orientationchange",e)}},[r]),{isInfinity:D,sliderSettings:ea,totalSlideItem:B,currentSlide:w,localRef:E,isRenderDots:er,showNavigation:$,isScrollToStart:g,isScrollToEnd:S,handleDotClick:K,getItemsPerPage:W,handleNextAndPrevSlide:ei,dispatchEventSelectSlide:Q,getNumberOfFullWidthShow:U,setCurrentSlide:T,shouldDuplicateSlides:en,setIsScrollToStart:R,setIsScrollToEnd:k,isHideNavigation:F}};exports.useCarousel=useCarousel;
1
+ "use strict";var React=require("react"),core=require("@gem-sdk/core"),useTrackPreviewPause=require("./useTrackPreviewPause.js");const useCarousel=(e,t,r,s)=>{let n;let{builderProps:a,moveToIdx:i,styles:o,setting:l,isHiddenArrowWhenDisabled:u=!0,elmRef:c,isEnableCheckHasScrollableContent:d,onClickArrow:p,onHandleChangeSlideByInteraction:f,onChangeActive:m}=e,[v,y]=React.useState(!0),[g,R]=React.useState(!0),[S,k]=React.useState(!1),{loop:h,navigationEnable:V={desktop:!0},navigationStyle:b}=l??{},[B,P]=React.useState(s),[w,T]=React.useState(l?.defaultCurrentSlider??0),{isFirstPreviewClicked:N}=useTrackPreviewPause.default(l?.runPreview),E=React.useRef(),x=React.useRef(i??0),C=core.useCurrentDevice(),M=core.useEditorMode(),{onListener:O,saveToElementInteractionData:I,getInteractionPreviousData:L,trigger:z}=core.useInteraction(),D=React.useMemo(()=>core.getResponsiveValueByScreen(h,C,!1),[h,C]),q=React.useCallback(()=>{if(!l?.slidesToShow)return null;let e={};return core.DEVICES.forEach(t=>{let r=core.getResponsiveValueByScreen(l?.slidesToShow,t);e[t]=r?"auto"===r?4:Math.floor(r):0}),e},[l?.slidesToShow]),H=React.useCallback(()=>{if(!l?.slidesToShow)return null;let e={};return core.DEVICES.forEach(t=>{let r=core.getResponsiveValueByScreen(l?.slidesToShow,t);e[t]=r?"auto"===r?4:r:0}),e},[l?.slidesToShow]),j=React.useMemo(()=>{let e=H();if(e)return e;let t={};return core.DEVICES.forEach(e=>{let r=core.getResponsiveValueByScreen(l?.sneakPeak,e),s=r?"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?core.getResponsiveValueByScreen(l?.sneakPeakOffsetCenter,e)??0:core.getResponsiveValueByScreen(l?.sneakPeakOffsetForward,e)??0:0,n="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?-2:-1,a=core.getResponsiveValueByScreen(l?.itemNumber,e);t[e]="number"==typeof a?a+s/100*n:"auto"}),t},[H,l?.itemNumber,l?.sneakPeak,l?.sneakPeakOffsetCenter,l?.sneakPeakOffsetForward,l?.sneakPeakType]),F=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(j,C),t=core.getResponsiveValueByScreen(h,C,!1);return t&&Number(e??0)>s||!t&&Number(e??0)>=s},[j,C,h,s]),$=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(V,C),t=core.getResponsiveValueByScreen(b,C);return r&&e&&"none"!==t&&v&&!F},[V,C,b,r,v,F]),A=React.useMemo(()=>{let e=q();return e||l?.itemNumber},[q,l?.itemNumber]),U=React.useCallback(e=>{let t="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,e)?2:1;return"number"==typeof core.getResponsiveValueByScreen(A,e,4)?core.getResponsiveValueByScreen(A,e,4)-t:void 0},[l?.sneakPeakType,A]),W=()=>{let e="auto"===core.getResponsiveValueByScreen(j,C,1)?1:core.getResponsiveValueByScreen(j,C,1);return e??1},G=e=>{let t=e*W();return t>=B-W()&&(t=B-W()),t},J=e=>{let t="edit"===M?{[e]:!1}:l?.enableDrag;return core.getResponsiveValueByScreen(t,e)},K=(e,t)=>{let n=l?.sneakPeak?.[C]?e:t?e:G(e);if(t){if(s<et){r?.slideTo(n);return}if(r?.realIndex===n)return;if(n===Number(r?.realIndex)+1||0===n&&r?.realIndex===s-1)return r?.slideNext();if(n===Number(r?.realIndex)-1||n===s-1&&r?.realIndex===0)return r?.slidePrev();let e="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C)&&"number"==typeof core.getResponsiveValueByScreen(l?.itemNumber,C)&&Number(core.getResponsiveValueByScreen(l?.itemNumber,C))%2==0;e?r?.slideToLoopCenterSneakPeek(n):r?.slideToLoop(n)}else r?.slideTo(n);x.current=n};React.useImperativeHandle(t,()=>({nextSlideInteraction:Z,previousSlideInteraction:_,moveToSlideInteraction:ee,getSwiper:()=>r}));let Q=e=>{z({event:"gp:rollback:select-slide",selector:`[data-id="${a?.uid}"]`,element:c?.current}),z({event:"gp:select-slide",selector:`[data-id="${a?.uid}"]`,data:e,element:c?.current})},X=e=>{r?.slideTo(e),f&&f(e)},Y=(e,t)=>{let{key:s,data:n,isRollback:a,element:i}=e,o=Math.max(r?.activeIndex??0,0);if(a&&void 0===n)return;if(a){if("specific"===t){let{previousData:e}=L(i,s);X(Number(e))}else{let e="next"===t?o-1:o+1;X(e)}return}let l="specific"===t?Math.max(x.current,0):o;I(i,s,l.toString());let u="specific"===t?Number(n):"next"===t?o+1:o-1;X(u)},Z=e=>{Y(e,"next")},_=e=>{Y(e,"previous")},ee=e=>{Y(e,"specific")},et=W(),er=React.useMemo(()=>!!B&&r&&core.getResponsiveValueByScreen(l?.dot,C)&&!F&&s>1,[B,r,l?.dot,C,F,s]),es=core.getResponsiveValueByScreen(l?.vertical,C,!1)?"vertical":"horizontal",en=React.useMemo(()=>{let e=core.getResponsiveValueByScreen(h,C,!1),t=r?.width??0,s={0:"mobile",768:"tablet",1025:"desktop"},n=Number(Object.entries(s).find(([,e])=>e===C)?.[0]??1025),a=Object.entries(s).reduce((r,[s,n])=>{if(!r)return;let a=Number(s),o=core.getResponsiveValueByScreen(l?.sneakPeak,n,!1),u=o&&"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,n),c=core.getResponsiveValueByScreen(l?.itemNumber,n),d="number"==typeof c&&c%2==0,p=u&&d,f=J(n),m=p?(t-t/et*(c-2))/2:0,v=p&&e?B:l?.initialSlide||i||0,y={allowTouchMove:f,slidesOffsetBefore:m,slidesOffsetAfter:m,initialSlide:v,centeredSlides:u&&!d};return r[a]=y,r},{}),u="center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C)&&"number"==typeof core.getResponsiveValueByScreen(l?.itemNumber,C)&&Number(core.getResponsiveValueByScreen(l?.itemNumber,C))>1;return{speed:o?.playSpeed??500,dir:l?.rtl?"rtl":"ltr",spaceBetween:core.getResponsiveValueByScreen(o?.spacing,C)||0,loop:e,slidesPerView:"auto"===core.getResponsiveValueByScreen(j,C,1)?"auto":et,direction:es,breakpoints:a,isSneakPeekCenter:u,slidesOffsetBefore:a?.[n]?.slidesOffsetBefore,thumbs:{slideThumbActiveClass:"gem-slider-item-active"},loopPreventsSliding:!1,autoplay:{delay:(l?.autoplayTimeout??1)*1e3,pauseOnMouseEnter:l?.pauseOnHover,stopOnLastSlide:!e}}},[o?.playSpeed,l?.rtl,o?.spacing,C,h,et,l?.sneakPeakType,l?.pauseOnHover,l?.autoplayTimeout,r?.width,B]),ea=React.useCallback(e=>{let t=r&&r.params?.slidesPerView,s=t?r?.slidesPerViewDynamic():1;if(e<=1)return!1;let n="auto"===en.slidesPerView?s:en.slidesPerView;if(!D||e<Number(n)||!v)return!1;let a=core.getResponsiveValueByScreen(l?.sneakPeak,C,!1),i=a&&"center"===core.getResponsiveValueByScreen(l?.sneakPeakType,C),o=Number.isNaN(Number(n))?1:Math.ceil(Number(n));i&&o%2==0&&(o+=1);let u=i?Math.max(1,Math.ceil(o/2)):1;return e<o+u},[r,en.slidesPerView,D,v,l?.sneakPeak,l?.sneakPeakType,C]);React.useEffect(()=>{let e=`[data-id="${a?.uid}"]`;O({event:"gp:change-next-slide",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};Z({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-previous-slide",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};_({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-image-step",selector:e,elementRef:E},e=>{let{data:t,isRollback:r,uniqueStorageKey:s}=e||{};ee({element:E.current,data:t,isRollback:r,key:s})}),O({event:"gp:change-index-slide",selector:e},t=>{let r=document.querySelector(e),{data:s,isRollback:n,uniqueStorageKey:a}=t||{};ee({element:r,data:s,isRollback:n,key:a})})},[]),React.useEffect(()=>{P(s)},[s]);let ei=e=>{"next"===e?r?.slideNext():r?.slidePrev(),p&&(n&&clearTimeout(n),n=setTimeout(()=>p&&p(),500))};return React.useEffect(()=>{if("number"==typeof i){if(x.current=i,r?.params?.loop){r?.slideToLoop(i);return}r?.slideTo(i)}},[r,i,u]),React.useEffect(()=>{if(!r)return;let e=()=>{P(r.slides.length)},t=()=>{m&&m(r.realIndex)},s=()=>{T(r.realIndex),R(r?.translate===0),k(r?.translate<=r?.maxTranslate())};return r.on("transitionEnd",s),r.on("slideChange",e),r.on("slideChangeTransitionStart",t),()=>{r?.off("slideChange",e),r?.off("slideChangeTransitionStart",t),r?.off("transitionEnd",s)}},[en.loop,r]),React.useEffect(()=>{r?.wrapperEl&&(r.wrapperEl.style.transitionTimingFunction=l?.animationMode??"ease")},[r,l?.animationMode]),React.useEffect(()=>{if(r&&r.autoplay){let e="edit"===M?!!N&&l?.runPreview&&l?.autoplay:l?.autoplay;e?r.autoplay.start():r.autoplay.stop()}},[r,l?.autoplay,M,N,l?.runPreview]),React.useEffect(()=>{let e=e=>{if(a?.uid!==e?.detail.componentUid)return;let t=e?.detail.index||0;r?.slideToLoop(t)};return window.addEventListener("move-to-idx",e),()=>window.removeEventListener("move-to-idx",e)},[r,a?.uid]),React.useEffect(()=>{if(!r)return;let e=r.el;e?.classList?.remove("swiper-horizontal","swiper-vertical");let t=core.getResponsiveValueByScreen(l?.vertical,C)?"swiper-vertical":"swiper-horizontal";e?.classList?.add(t),r?.slides?.forEach(e=>{e.style.width="",e.style.height=""}),r?.update()},[C,l?.vertical,r,r?.params]),React.useEffect(()=>{if(!r||!d)return;let e=()=>{let e=r?.slides?.slice(0,s)||[],t=Number(en?.spaceBetween||0),n=e.reduce((e,t)=>e+t.offsetHeight,0)+t*(e.length-1),a=e.reduce((e,t)=>e+t.offsetWidth,0)+t*(e.length-1),i=r.params?.direction==="horizontal"?a>(r.width||0):n>(r.height||0);y(i)};return e(),r.on("resize",e),r.on("update",e),r.on("slidesLengthChange",e),r.on("orientationchange",e),()=>{r.off("resize",e),r.off("update",e),r.off("slidesLengthChange",e),r.off("orientationchange",e)}},[r]),{isInfinity:D,sliderSettings:en,totalSlideItem:B,currentSlide:w,localRef:E,isRenderDots:er,showNavigation:$,isScrollToStart:g,isScrollToEnd:S,handleDotClick:K,getItemsPerPage:W,handleNextAndPrevSlide:ei,dispatchEventSelectSlide:Q,getNumberOfFullWidthShow:U,setCurrentSlide:T,shouldDuplicateSlides:ea,setIsScrollToStart:R,setIsScrollToEnd:k,isHideNavigation:F}};exports.useCarousel=useCarousel;
@@ -1,3 +1,10 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),helpers=require("../../../helpers.js"),Text_liquid=require("../../../text/components/Text.liquid.js"),system=require("@gem-sdk/system"),helpers$1=require("./common/helpers.js");const ProductTitle=e=>{let{setting:t}=e,r=`<p>${helpers.getStaticLocale("ProductTitle","product_not_found")}</p>`,s=()=>Text_liquid.default(helpers$1.getTextProps(e)),l={},o=t?.linkProduct,u=system.createClass({"gp-product-title-link-wrapper":!0});return system.LiquidUnless("product",`${r}`,system.If(o,core.template`<a ${l} class="${u}">
2
- ${s()}
3
- </a>`,`${s()}`))};exports.default=ProductTitle;
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),helpers=require("../../../helpers.js"),Text_liquid=require("../../../text/components/Text.liquid.js"),system=require("@gem-sdk/system"),helpers$1=require("./common/helpers.js");const ProductTitle=e=>{let{setting:t,builderProps:r}=e,s=`<p>${helpers.getStaticLocale("ProductTitle","product_not_found")}</p>`,l=()=>Text_liquid.default(helpers$1.getTextProps(e)),i=system.createAttr({href:"{{ product.url }}",title:"{{ product.title }}"}),o=t?.linkProduct,c=system.createClass({"gp-product-title-link-wrapper":!0}),p=system.createStateOrContext({linkProduct:t?.linkProduct,uid:r?.uid}),u=()=>{let e=core.isLocalEnv?"{{ 'gp-product-title-v7-5.js' | asset_url }}":`${core.baseAssetURL}/assets-v2/gp-product-title-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${helpers.getSettingPreloadData('class="gps-link" delay',"src")}="${e}" defer="defer"></script>`};return system.LiquidUnless("product",`${s}`,core.template`
2
+ <gp-product-title
3
+ gp-data='${core.dataStringify(p)}'
4
+ >
5
+ ${system.If(o,core.template`<a ${i} class="${c}">
6
+ ${l()}
7
+ </a>`,core.template`${l()}`)}
8
+ </gp-product-title>
9
+ ${u()}
10
+ `)};exports.default=ProductTitle;
@@ -1,14 +1,14 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),Row_liquid=require("../../../grid/components/row/Row.liquid.js"),system=require("@gem-sdk/system"),helpers$1=require("../../../helpers.js"),helpers=require("./common/helpers.js");const Product=e=>{let{children:t,setting:r,style:i,builderProps:a,rawChildren:o,advanced:d}=e,{isSyncProduct:s}=r??{},{rowSetting:n,rowStyles:c,formatVariantId:l,formatProductId:p,productStatus:u,preSelectedOptionIds:f,productHandle:g,advancedStyle:m}=helpers.getData(e),_=()=>core.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),Row_liquid=require("../../../grid/components/row/Row.liquid.js"),system=require("@gem-sdk/system"),helpers$1=require("../../../helpers.js"),helpers=require("./common/helpers.js");const Product=e=>{let{children:t,setting:r,style:i,builderProps:a,rawChildren:o,advanced:d}=e,{isSyncProduct:s,productSetting:n}=r??{},c=n?.hasPreSelected??!1,{rowSetting:l,rowStyles:p,formatVariantId:u,formatProductId:f,productStatus:g,preSelectedOptionIds:m,productHandle:_,advancedStyle:y}=helpers.getData(e),v=()=>core.template`
2
2
  {%- liquid
3
3
  if request.page_type == 'product'
4
- if '${u}' == '${helpers.STATIC_PRODUCT_STATUS}'
5
- if '${p}' == '${helpers.PRODUCT_ID_LATEST}'
4
+ if '${g}' == '${helpers.STATIC_PRODUCT_STATUS}'
5
+ if '${f}' == '${helpers.PRODUCT_ID_LATEST}'
6
6
  paginate collections.all.products by 100000
7
7
  assign product = collections.all.products | sort: 'created_at' | reverse | first
8
8
  endpaginate
9
9
  else
10
- assign product = all_products['${g}']
11
- assign productId = '${p}' | times: 1
10
+ assign product = all_products['${_}']
11
+ assign productId = '${f}' | times: 1
12
12
  if product == empty or product == null
13
13
  paginate collections.all.products by 100000
14
14
  for item in collections.all.products
@@ -21,13 +21,13 @@
21
21
  endif
22
22
  endif
23
23
  else
24
- if '${p}' == '${helpers.PRODUCT_ID_LATEST}'
24
+ if '${f}' == '${helpers.PRODUCT_ID_LATEST}'
25
25
  paginate collections.all.products by 100000
26
26
  assign product = collections.all.products | sort: 'created_at'| reverse | first
27
27
  endpaginate
28
28
  else
29
- assign product = all_products['${g}']
30
- assign productId = '${p}' | times: 1
29
+ assign product = all_products['${_}']
30
+ assign productId = '${f}' | times: 1
31
31
  if product == empty or product == null
32
32
  paginate collections.all.products by 100000
33
33
  for item in collections.all.products
@@ -40,11 +40,11 @@
40
40
  endif
41
41
  endif
42
42
  -%}
43
- `,y=()=>core.template`
43
+ `,$=()=>core.template`
44
44
  {%- liquid
45
45
  if request.page_type != 'product'
46
- assign product = all_products['${g}']
47
- assign productId = '${p}' | times: 1
46
+ assign product = all_products['${_}']
47
+ assign productId = '${f}' | times: 1
48
48
  if product == empty or product == null
49
49
  paginate collections.all.products by 100000
50
50
  for item in collections.all.products
@@ -56,30 +56,30 @@
56
56
  endif
57
57
  endif
58
58
  -%}
59
- `,v=()=>core.template`
59
+ `,S=()=>core.template`
60
60
  {%- assign gpBkProduct = product -%}
61
- ${system.If(u==helpers.DYNAMIC_PRODUCT_STATUS,y(),_())}
62
- `,$=()=>core.template`
63
- {%- assign initVariantId = ${l} -%}
61
+ ${system.If(g==helpers.DYNAMIC_PRODUCT_STATUS,$(),v())}
62
+ `,h=()=>core.template`
63
+ {%- assign initVariantId = ${u} -%}
64
64
  {%- assign product_form_id = 'product-form-' | append: "${a?.uid}" -%}
65
- ${l?"{%- assign variant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign variant = product.selected_or_first_available_variant -%}"}
66
- ${l?"{%- assign productSelectedVariant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign productSelectedVariant = product.selected_or_first_available_variant -%}"}
65
+ ${u?"{%- assign variant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign variant = product.selected_or_first_available_variant -%}"}
66
+ ${u?"{%- assign productSelectedVariant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign productSelectedVariant = product.selected_or_first_available_variant -%}"}
67
67
  {%-if productSelectedVariant == empty or productSelectedVariant == null -%}
68
68
  {%- assign productSelectedVariant = product.selected_or_first_available_variant -%}
69
69
  {%- endif -%}
70
70
  {%-if variant == empty or variant == null -%}
71
71
  {%- assign variant = product.selected_or_first_available_variant -%}
72
72
  {%- endif -%}
73
- `,S=()=>core.template`
74
- <div class="gp-text-center">${helpers$1.getStaticLocale("Product","product_not_found")}</div>
75
73
  `,I=()=>core.template`
76
- ${$()}
74
+ <div class="gp-text-center">${helpers$1.getStaticLocale("Product","product_not_found")}</div>
75
+ `,q=()=>core.template`
76
+ ${h()}
77
77
  <gp-product
78
78
  data-uid="${a?.uid}"
79
79
  data-id="${a?.uid}"
80
- style="${m}"
80
+ style="${y}"
81
81
  class="${d?.cssClass}"
82
- gp-context='{"productId": {{ product.id }}, "preSelectedOptionIds": [${f}], "isSyncProduct": "${s}", "variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "inventoryQuantity": {{ variant.inventory_quantity }}, "quantity": 1, "formId": "{{ product_form_id }}" }'
82
+ gp-context='{"productId": {{ product.id }}, "preSelectedOptionIds": [${m}], "isSyncProduct": "${s}", "hasPreSelected": ${c}, "variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "inventoryQuantity": {{ variant.inventory_quantity }}, "quantity": 1, "formId": "{{ product_form_id }}" }'
83
83
  gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }}}'
84
84
  >
85
85
  <product-form class="product-form">
@@ -87,13 +87,13 @@
87
87
  <input type="hidden" name="id" value="{{ variant.id }}" />
88
88
  <input type="hidden" name="quantity" value="{{ quantity }}" />
89
89
  <button type="submit" onclick="return false;" style="display:none;"></button>
90
- ${Row_liquid.default({builderProps:{...a,uid:a?.uid,uidInteraction:`${a?.uid}-row`},style:i,styles:c,setting:n,children:t,rawChildren:o})}
90
+ ${Row_liquid.default({builderProps:{...a,uid:a?.uid,uidInteraction:`${a?.uid}-row`},style:i,styles:p,setting:l,children:t,rawChildren:o})}
91
91
  {%- endform -%}
92
92
  </product-form>
93
93
  </gp-product>
94
94
  {%- assign product = gpBkProduct -%}
95
95
  `;return core.template`
96
- ${v()}
97
- ${system.LiquidIf("product != empty and product != null",I(),S())}
96
+ ${S()}
97
+ ${system.LiquidIf("product != empty and product != null",q(),I())}
98
98
  ${core.RenderIf(core.isLocalEnv,`<script ${helpers$1.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${helpers$1.getSettingPreloadData('class="gps-link" delay',"src")}="${core.baseAssetURL}/assets-v2/gp-product-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
99
99
  `};exports.default=Product;
@@ -1,4 +1,4 @@
1
1
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var BloyRewardsProgramLoyalty=require("../../configs/BloyRewardsProgramLoyalty.js"),uiV2=require("./uiV2.js"),helpers=require("../../common/helpers.js");const config={tag:BloyRewardsProgramLoyalty.default.tag,label:BloyRewardsProgramLoyalty.default.label,icon:'<img class="gp-w-[24px] gp-border gp-border-[#494949] gp-rounded-[3px]" src="https://cdn.shopify.com/app-store/listing_images/eb1dd8939bb7b954d714a5344a78df08/icon/CITe8tmBxYoDEAE=.png?width=22&height=22">',editorConfigs:{component:{isThirdParty:!0}},presets:[{id:BloyRewardsProgramLoyalty.default.id,name:{en:BloyRewardsProgramLoyalty.default.label},hideTextContent:!0,icon:{desktop:`<div class="w-full flex flex-col items-center">
2
2
  <img class="w-24 border border-dark-200 rounded-medium" src="https://cdn.shopify.com/app-store/listing_images/eb1dd8939bb7b954d714a5344a78df08/icon/CITe8tmBxYoDEAE=.png?width=22&height=22">
3
3
  <span class="preset-item-title">BLOY Rewards Program & Loyalty</span>
4
- </div>`},components:[{tag:BloyRewardsProgramLoyalty.default.tag}]}],settings:[{id:"setting",controls:[{id:"appBlockId",type:"input",default:""},{id:"widgetType",label:"Choose widget",type:"select",options:[{label:"Bloy Loyalty Guide",value:"bloy-loyalty-guide"},{label:"Bloy Loyalty Points Program",value:"bloy-loyalty-points-program"},{label:"Bloy Loyalty Vip Program",value:"bloy-loyalty-vip-program"},{label:"Bloy Loyalty Ways Earn",value:"bloy-loyalty-ways-earn"},{label:"Point On Product Page",value:"product-point-preview"}],default:"bloy-loyalty-guide"},{id:"install",type:"open-link",target:"_blank",linkType:"install",href:helpers.get3rdPartyInstallLink({handle:"bloy-loyalty"}),appName:BloyRewardsProgramLoyalty.default.label},{id:"openApp",type:"open-link",target:"_blank",linkType:"openApp",href:"https://admin.shopify.com/?redirect=/apps/bloy-loyalty",appName:BloyRewardsProgramLoyalty.default.label},{id:"align",label:"Alignment",type:"segment",options:[{label:"Left",value:"left",type:"align"},{label:"Center",value:"center",type:"align"},{label:"Right",value:"right",type:"align"}],devices:{desktop:{default:"left"}}}]}],ui:[],uiV2:uiV2.default};exports.default=config;
4
+ </div>`},components:[{tag:BloyRewardsProgramLoyalty.default.tag}]}],settings:[{id:"setting",controls:[{id:"appBlockId",type:"input",default:""},{id:"widgetType",label:"Choose widget",type:"select",options:[{label:"Bloy Loyalty Guide",value:"bloy-loyalty-guide"},{label:"Bloy Loyalty Points Program",value:"bloy-loyalty-points-program"},{label:"Bloy Loyalty Vip Program",value:"bloy-loyalty-vip-program"},{label:"Bloy Loyalty Ways Earn",value:"bloy-loyalty-ways-earn"},{label:"Point On Product Page",value:"bloy-point-caculator-pdp"}],default:"bloy-loyalty-guide"},{id:"install",type:"open-link",target:"_blank",linkType:"install",href:helpers.get3rdPartyInstallLink({handle:"bloy-loyalty"}),appName:BloyRewardsProgramLoyalty.default.label},{id:"openApp",type:"open-link",target:"_blank",linkType:"openApp",href:"https://admin.shopify.com/?redirect=/apps/bloy-loyalty",appName:BloyRewardsProgramLoyalty.default.label},{id:"align",label:"Alignment",type:"segment",options:[{label:"Left",value:"left",type:"align"},{label:"Center",value:"center",type:"align"},{label:"Right",value:"right",type:"align"}],devices:{desktop:{default:"left"}}}]}],ui:[],uiV2:uiV2.default};exports.default=config;
@@ -1 +1 @@
1
- import{useState as e,useRef as t,useMemo as r,useCallback as i,useImperativeHandle as n,useEffect as a}from"react";import{useCurrentDevice as l,useEditorMode as s,useInteraction as o,getResponsiveValueByScreen as u,DEVICES as d}from"@gem-sdk/core";import p from"./useTrackPreviewPause.js";let useCarousel=(f,m,c,k)=>{let h;let{builderProps:b,moveToIdx:y,styles:P,setting:g,isHiddenArrowWhenDisabled:w=!0,elmRef:T,isEnableCheckHasScrollableContent:v,onClickArrow:N,onHandleChangeSlideByInteraction:x,onChangeActive:S}=f,[C,O]=e(!0),[E,L]=e(!0),[M,I]=e(!1),{loop:z,navigationEnable:V={desktop:!0},navigationStyle:B}=g??{},[j,F]=e(k),[H,R]=e(g?.defaultCurrentSlider??0),{isFirstPreviewClicked:$}=p(g?.runPreview),A=t(),D=t(y??0),q=l(),U=s(),{onListener:W,saveToElementInteractionData:G,getInteractionPreviousData:J,trigger:K}=o(),Q=r(()=>u(z,q,!1),[z,q]),X=i(()=>{if(!g?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=u(g?.slidesToShow,t);e[t]=r?"auto"===r?4:Math.floor(r):0}),e},[g?.slidesToShow]),Y=i(()=>{if(!g?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=u(g?.slidesToShow,t);e[t]=r?"auto"===r?4:r:0}),e},[g?.slidesToShow]),Z=r(()=>{let e=Y();if(e)return e;let t={};return d.forEach(e=>{let r=u(g?.sneakPeak,e),i=r?"center"===u(g?.sneakPeakType,e)?u(g?.sneakPeakOffsetCenter,e)??0:u(g?.sneakPeakOffsetForward,e)??0:0,n="center"===u(g?.sneakPeakType,e)?-2:-1,a=u(g?.itemNumber,e);t[e]="number"==typeof a?a+i/100*n:"auto"}),t},[Y,g?.itemNumber,g?.sneakPeak,g?.sneakPeakOffsetCenter,g?.sneakPeakOffsetForward,g?.sneakPeakType]),_=r(()=>{let e=u(Z,q),t=u(z,q,!1);return t&&Number(e??0)>k||!t&&Number(e??0)>=k},[Z,q,z,k]),ee=r(()=>{let e=u(V,q),t=u(B,q);return c&&e&&"none"!==t&&C&&!_},[V,q,B,c,C,_]),et=r(()=>{let e=X();return e||g?.itemNumber},[X,g?.itemNumber]),er=i(e=>{let t="center"===u(g?.sneakPeakType,e)?2:1;return"number"==typeof u(et,e,4)?u(et,e,4)-t:void 0},[g?.sneakPeakType,et]),ei=()=>{let e="auto"===u(Z,q,1)?1:u(Z,q,1);return e??1},en=e=>{let t=e*ei();return t>=j-ei()&&(t=j-ei()),t},ea=e=>{let t="edit"===U?{[e]:!1}:g?.enableDrag;return u(t,e)},el=(e,t)=>{let r=g?.sneakPeak?.[q]?e:t?e:en(e);if(t){if(k<em){c?.slideTo(r);return}if(c?.realIndex===r)return;if(r===Number(c?.realIndex)+1||0===r&&c?.realIndex===k-1)return c?.slideNext();if(r===Number(c?.realIndex)-1||r===k-1&&c?.realIndex===0)return c?.slidePrev();let e="center"===u(g?.sneakPeakType,q)&&"number"==typeof u(g?.itemNumber,q)&&Number(u(g?.itemNumber,q))%2==0;e?c?.slideToLoopCenterSneakPeek(r):c?.slideToLoop(r)}else c?.slideTo(r);D.current=r};n(m,()=>({nextSlideInteraction:ed,previousSlideInteraction:ep,moveToSlideInteraction:ef,getSwiper:()=>c}));let es=e=>{K({event:"gp:rollback:select-slide",selector:`[data-id="${b?.uid}"]`,element:T?.current}),K({event:"gp:select-slide",selector:`[data-id="${b?.uid}"]`,data:e,element:T?.current})},eo=e=>{c?.slideTo(e),x&&x(e)},eu=(e,t)=>{let{key:r,data:i,isRollback:n,element:a}=e,l=Math.max(c?.activeIndex??0,0);if(n&&void 0===i)return;if(n){if("specific"===t){let{previousData:e}=J(a,r);eo(Number(e))}else{let e="next"===t?l-1:l+1;eo(e)}return}let s="specific"===t?Math.max(D.current,0):l;G(a,r,s.toString());let o="specific"===t?Number(i):"next"===t?l+1:l-1;eo(o)},ed=e=>{eu(e,"next")},ep=e=>{eu(e,"previous")},ef=e=>{eu(e,"specific")},em=ei(),ec=r(()=>!!j&&c&&u(g?.dot,q)&&!_&&k>1,[j,c,g?.dot,q,_,k]),ek=u(g?.vertical,q,!1)?"vertical":"horizontal",eh=r(()=>{let e=u(z,q,!1),t=c?.width??0,r={0:"mobile",768:"tablet",1025:"desktop"},i=Number(Object.entries(r).find(([,e])=>e===q)?.[0]??1025),n=Object.entries(r).reduce((r,[i,n])=>{if(!r)return;let a=Number(i),l=u(g?.sneakPeak,n,!1),s=l&&"center"===u(g?.sneakPeakType,n),o=u(g?.itemNumber,n),d=s&&"number"==typeof o,p=ea(n),f=d?(t-t/em*(o-2))/2:0,m=d&&e?j:g?.initialSlide||y||0,c={allowTouchMove:p,slidesOffsetBefore:f,slidesOffsetAfter:f,initialSlide:m};return r[a]=c,r},{}),a="center"===u(g?.sneakPeakType,q)&&"number"==typeof u(g?.itemNumber,q)&&Number(u(g?.itemNumber,q))>1;return{speed:P?.playSpeed??500,dir:g?.rtl?"rtl":"ltr",spaceBetween:u(P?.spacing,q)||0,loop:e,slidesPerView:"auto"===u(Z,q,1)?"auto":em,direction:ek,breakpoints:n,isSneakPeekCenter:a,slidesOffsetBefore:n?.[i]?.slidesOffsetBefore,thumbs:{slideThumbActiveClass:"gem-slider-item-active"},loopPreventsSliding:!1,autoplay:{delay:(g?.autoplayTimeout??1)*1e3,pauseOnMouseEnter:g?.pauseOnHover,stopOnLastSlide:!e}}},[P?.playSpeed,g?.rtl,P?.spacing,q,z,em,g?.sneakPeakType,g?.pauseOnHover,g?.autoplayTimeout,c?.width,j]),eb=i(e=>{let t=c&&c.params?.slidesPerView,r=t?c?.slidesPerViewDynamic():1;if(e<=1)return!1;let i="auto"===eh.slidesPerView?r:eh.slidesPerView;if(!Q||e<Number(i)||!C)return!1;let n=u(g?.sneakPeak,q,!1),a=n&&"center"===u(g?.sneakPeakType,q),l=Number.isNaN(Number(i))?1:Math.ceil(Number(i));a&&l%2==0&&(l+=1);let s=a?Math.max(1,Math.ceil(l/2)):1;return e<l+s},[c,eh.slidesPerView,Q,C,g?.sneakPeak,g?.sneakPeakType,q]);a(()=>{let e=`[data-id="${b?.uid}"]`;W({event:"gp:change-next-slide",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ed({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-previous-slide",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ep({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-image-step",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ef({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-index-slide",selector:e},t=>{let r=document.querySelector(e),{data:i,isRollback:n,uniqueStorageKey:a}=t||{};ef({element:r,data:i,isRollback:n,key:a})})},[]),a(()=>{F(k)},[k]);let ey=e=>{"next"===e?c?.slideNext():c?.slidePrev(),N&&(h&&clearTimeout(h),h=setTimeout(()=>N&&N(),500))};return a(()=>{if("number"==typeof y){if(D.current=y,c?.params?.loop){c?.slideToLoop(y);return}c?.slideTo(y)}},[c,y,w]),a(()=>{if(!c)return;let e=()=>{F(c.slides.length)},t=()=>{S&&S(c.realIndex)},r=()=>{R(c.realIndex),L(c?.translate===0),I(c?.translate<=c?.maxTranslate())};return c.on("transitionEnd",r),c.on("slideChange",e),c.on("slideChangeTransitionStart",t),()=>{c?.off("slideChange",e),c?.off("slideChangeTransitionStart",t),c?.off("transitionEnd",r)}},[eh.loop,c]),a(()=>{c?.wrapperEl&&(c.wrapperEl.style.transitionTimingFunction=g?.animationMode??"ease")},[c,g?.animationMode]),a(()=>{if(c&&c.autoplay){let e="edit"===U?!!$&&g?.runPreview&&g?.autoplay:g?.autoplay;e?c.autoplay.start():c.autoplay.stop()}},[c,g?.autoplay,U,$,g?.runPreview]),a(()=>{let e=e=>{if(b?.uid!==e?.detail.componentUid)return;let t=e?.detail.index||0;c?.slideToLoop(t)};return window.addEventListener("move-to-idx",e),()=>window.removeEventListener("move-to-idx",e)},[c,b?.uid]),a(()=>{if(!c)return;let e=c.el;e?.classList?.remove("swiper-horizontal","swiper-vertical");let t=u(g?.vertical,q)?"swiper-vertical":"swiper-horizontal";e?.classList?.add(t),c?.slides?.forEach(e=>{e.style.width="",e.style.height=""}),c?.update()},[q,g?.vertical,c,c?.params]),a(()=>{if(!c||!v)return;let e=()=>{let e=c?.slides?.slice(0,k)||[],t=Number(eh?.spaceBetween||0),r=e.reduce((e,t)=>e+t.offsetHeight,0)+t*(e.length-1),i=e.reduce((e,t)=>e+t.offsetWidth,0)+t*(e.length-1),n=c.params?.direction==="horizontal"?i>(c.width||0):r>(c.height||0);O(n)};return e(),c.on("resize",e),c.on("update",e),c.on("slidesLengthChange",e),c.on("orientationchange",e),()=>{c.off("resize",e),c.off("update",e),c.off("slidesLengthChange",e),c.off("orientationchange",e)}},[c]),{isInfinity:Q,sliderSettings:eh,totalSlideItem:j,currentSlide:H,localRef:A,isRenderDots:ec,showNavigation:ee,isScrollToStart:E,isScrollToEnd:M,handleDotClick:el,getItemsPerPage:ei,handleNextAndPrevSlide:ey,dispatchEventSelectSlide:es,getNumberOfFullWidthShow:er,setCurrentSlide:R,shouldDuplicateSlides:eb,setIsScrollToStart:L,setIsScrollToEnd:I,isHideNavigation:_}};export{useCarousel};
1
+ import{useState as e,useRef as t,useMemo as r,useCallback as i,useImperativeHandle as n,useEffect as a}from"react";import{useCurrentDevice as l,useEditorMode as s,useInteraction as o,getResponsiveValueByScreen as u,DEVICES as d}from"@gem-sdk/core";import p from"./useTrackPreviewPause.js";let useCarousel=(f,m,c,k)=>{let h;let{builderProps:b,moveToIdx:y,styles:P,setting:g,isHiddenArrowWhenDisabled:w=!0,elmRef:T,isEnableCheckHasScrollableContent:v,onClickArrow:N,onHandleChangeSlideByInteraction:x,onChangeActive:S}=f,[C,O]=e(!0),[E,L]=e(!0),[M,I]=e(!1),{loop:z,navigationEnable:V={desktop:!0},navigationStyle:B}=g??{},[j,F]=e(k),[H,R]=e(g?.defaultCurrentSlider??0),{isFirstPreviewClicked:$}=p(g?.runPreview),A=t(),D=t(y??0),q=l(),U=s(),{onListener:W,saveToElementInteractionData:G,getInteractionPreviousData:J,trigger:K}=o(),Q=r(()=>u(z,q,!1),[z,q]),X=i(()=>{if(!g?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=u(g?.slidesToShow,t);e[t]=r?"auto"===r?4:Math.floor(r):0}),e},[g?.slidesToShow]),Y=i(()=>{if(!g?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=u(g?.slidesToShow,t);e[t]=r?"auto"===r?4:r:0}),e},[g?.slidesToShow]),Z=r(()=>{let e=Y();if(e)return e;let t={};return d.forEach(e=>{let r=u(g?.sneakPeak,e),i=r?"center"===u(g?.sneakPeakType,e)?u(g?.sneakPeakOffsetCenter,e)??0:u(g?.sneakPeakOffsetForward,e)??0:0,n="center"===u(g?.sneakPeakType,e)?-2:-1,a=u(g?.itemNumber,e);t[e]="number"==typeof a?a+i/100*n:"auto"}),t},[Y,g?.itemNumber,g?.sneakPeak,g?.sneakPeakOffsetCenter,g?.sneakPeakOffsetForward,g?.sneakPeakType]),_=r(()=>{let e=u(Z,q),t=u(z,q,!1);return t&&Number(e??0)>k||!t&&Number(e??0)>=k},[Z,q,z,k]),ee=r(()=>{let e=u(V,q),t=u(B,q);return c&&e&&"none"!==t&&C&&!_},[V,q,B,c,C,_]),et=r(()=>{let e=X();return e||g?.itemNumber},[X,g?.itemNumber]),er=i(e=>{let t="center"===u(g?.sneakPeakType,e)?2:1;return"number"==typeof u(et,e,4)?u(et,e,4)-t:void 0},[g?.sneakPeakType,et]),ei=()=>{let e="auto"===u(Z,q,1)?1:u(Z,q,1);return e??1},en=e=>{let t=e*ei();return t>=j-ei()&&(t=j-ei()),t},ea=e=>{let t="edit"===U?{[e]:!1}:g?.enableDrag;return u(t,e)},el=(e,t)=>{let r=g?.sneakPeak?.[q]?e:t?e:en(e);if(t){if(k<em){c?.slideTo(r);return}if(c?.realIndex===r)return;if(r===Number(c?.realIndex)+1||0===r&&c?.realIndex===k-1)return c?.slideNext();if(r===Number(c?.realIndex)-1||r===k-1&&c?.realIndex===0)return c?.slidePrev();let e="center"===u(g?.sneakPeakType,q)&&"number"==typeof u(g?.itemNumber,q)&&Number(u(g?.itemNumber,q))%2==0;e?c?.slideToLoopCenterSneakPeek(r):c?.slideToLoop(r)}else c?.slideTo(r);D.current=r};n(m,()=>({nextSlideInteraction:ed,previousSlideInteraction:ep,moveToSlideInteraction:ef,getSwiper:()=>c}));let es=e=>{K({event:"gp:rollback:select-slide",selector:`[data-id="${b?.uid}"]`,element:T?.current}),K({event:"gp:select-slide",selector:`[data-id="${b?.uid}"]`,data:e,element:T?.current})},eo=e=>{c?.slideTo(e),x&&x(e)},eu=(e,t)=>{let{key:r,data:i,isRollback:n,element:a}=e,l=Math.max(c?.activeIndex??0,0);if(n&&void 0===i)return;if(n){if("specific"===t){let{previousData:e}=J(a,r);eo(Number(e))}else{let e="next"===t?l-1:l+1;eo(e)}return}let s="specific"===t?Math.max(D.current,0):l;G(a,r,s.toString());let o="specific"===t?Number(i):"next"===t?l+1:l-1;eo(o)},ed=e=>{eu(e,"next")},ep=e=>{eu(e,"previous")},ef=e=>{eu(e,"specific")},em=ei(),ec=r(()=>!!j&&c&&u(g?.dot,q)&&!_&&k>1,[j,c,g?.dot,q,_,k]),ek=u(g?.vertical,q,!1)?"vertical":"horizontal",eh=r(()=>{let e=u(z,q,!1),t=c?.width??0,r={0:"mobile",768:"tablet",1025:"desktop"},i=Number(Object.entries(r).find(([,e])=>e===q)?.[0]??1025),n=Object.entries(r).reduce((r,[i,n])=>{if(!r)return;let a=Number(i),l=u(g?.sneakPeak,n,!1),s=l&&"center"===u(g?.sneakPeakType,n),o=u(g?.itemNumber,n),d="number"==typeof o&&o%2==0,p=s&&d,f=ea(n),m=p?(t-t/em*(o-2))/2:0,c=p&&e?j:g?.initialSlide||y||0,k={allowTouchMove:f,slidesOffsetBefore:m,slidesOffsetAfter:m,initialSlide:c,centeredSlides:s&&!d};return r[a]=k,r},{}),a="center"===u(g?.sneakPeakType,q)&&"number"==typeof u(g?.itemNumber,q)&&Number(u(g?.itemNumber,q))>1;return{speed:P?.playSpeed??500,dir:g?.rtl?"rtl":"ltr",spaceBetween:u(P?.spacing,q)||0,loop:e,slidesPerView:"auto"===u(Z,q,1)?"auto":em,direction:ek,breakpoints:n,isSneakPeekCenter:a,slidesOffsetBefore:n?.[i]?.slidesOffsetBefore,thumbs:{slideThumbActiveClass:"gem-slider-item-active"},loopPreventsSliding:!1,autoplay:{delay:(g?.autoplayTimeout??1)*1e3,pauseOnMouseEnter:g?.pauseOnHover,stopOnLastSlide:!e}}},[P?.playSpeed,g?.rtl,P?.spacing,q,z,em,g?.sneakPeakType,g?.pauseOnHover,g?.autoplayTimeout,c?.width,j]),eb=i(e=>{let t=c&&c.params?.slidesPerView,r=t?c?.slidesPerViewDynamic():1;if(e<=1)return!1;let i="auto"===eh.slidesPerView?r:eh.slidesPerView;if(!Q||e<Number(i)||!C)return!1;let n=u(g?.sneakPeak,q,!1),a=n&&"center"===u(g?.sneakPeakType,q),l=Number.isNaN(Number(i))?1:Math.ceil(Number(i));a&&l%2==0&&(l+=1);let s=a?Math.max(1,Math.ceil(l/2)):1;return e<l+s},[c,eh.slidesPerView,Q,C,g?.sneakPeak,g?.sneakPeakType,q]);a(()=>{let e=`[data-id="${b?.uid}"]`;W({event:"gp:change-next-slide",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ed({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-previous-slide",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ep({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-image-step",selector:e,elementRef:A},e=>{let{data:t,isRollback:r,uniqueStorageKey:i}=e||{};ef({element:A.current,data:t,isRollback:r,key:i})}),W({event:"gp:change-index-slide",selector:e},t=>{let r=document.querySelector(e),{data:i,isRollback:n,uniqueStorageKey:a}=t||{};ef({element:r,data:i,isRollback:n,key:a})})},[]),a(()=>{F(k)},[k]);let ey=e=>{"next"===e?c?.slideNext():c?.slidePrev(),N&&(h&&clearTimeout(h),h=setTimeout(()=>N&&N(),500))};return a(()=>{if("number"==typeof y){if(D.current=y,c?.params?.loop){c?.slideToLoop(y);return}c?.slideTo(y)}},[c,y,w]),a(()=>{if(!c)return;let e=()=>{F(c.slides.length)},t=()=>{S&&S(c.realIndex)},r=()=>{R(c.realIndex),L(c?.translate===0),I(c?.translate<=c?.maxTranslate())};return c.on("transitionEnd",r),c.on("slideChange",e),c.on("slideChangeTransitionStart",t),()=>{c?.off("slideChange",e),c?.off("slideChangeTransitionStart",t),c?.off("transitionEnd",r)}},[eh.loop,c]),a(()=>{c?.wrapperEl&&(c.wrapperEl.style.transitionTimingFunction=g?.animationMode??"ease")},[c,g?.animationMode]),a(()=>{if(c&&c.autoplay){let e="edit"===U?!!$&&g?.runPreview&&g?.autoplay:g?.autoplay;e?c.autoplay.start():c.autoplay.stop()}},[c,g?.autoplay,U,$,g?.runPreview]),a(()=>{let e=e=>{if(b?.uid!==e?.detail.componentUid)return;let t=e?.detail.index||0;c?.slideToLoop(t)};return window.addEventListener("move-to-idx",e),()=>window.removeEventListener("move-to-idx",e)},[c,b?.uid]),a(()=>{if(!c)return;let e=c.el;e?.classList?.remove("swiper-horizontal","swiper-vertical");let t=u(g?.vertical,q)?"swiper-vertical":"swiper-horizontal";e?.classList?.add(t),c?.slides?.forEach(e=>{e.style.width="",e.style.height=""}),c?.update()},[q,g?.vertical,c,c?.params]),a(()=>{if(!c||!v)return;let e=()=>{let e=c?.slides?.slice(0,k)||[],t=Number(eh?.spaceBetween||0),r=e.reduce((e,t)=>e+t.offsetHeight,0)+t*(e.length-1),i=e.reduce((e,t)=>e+t.offsetWidth,0)+t*(e.length-1),n=c.params?.direction==="horizontal"?i>(c.width||0):r>(c.height||0);O(n)};return e(),c.on("resize",e),c.on("update",e),c.on("slidesLengthChange",e),c.on("orientationchange",e),()=>{c.off("resize",e),c.off("update",e),c.off("slidesLengthChange",e),c.off("orientationchange",e)}},[c]),{isInfinity:Q,sliderSettings:eh,totalSlideItem:j,currentSlide:H,localRef:A,isRenderDots:ec,showNavigation:ee,isScrollToStart:E,isScrollToEnd:M,handleDotClick:el,getItemsPerPage:ei,handleNextAndPrevSlide:ey,dispatchEventSelectSlide:es,getNumberOfFullWidthShow:er,setCurrentSlide:R,shouldDuplicateSlides:eb,setIsScrollToStart:L,setIsScrollToEnd:I,isHideNavigation:_}};export{useCarousel};
@@ -1,3 +1,10 @@
1
- import{template as t}from"@gem-sdk/core";import{getStaticLocale as o}from"../../../helpers.js";import r from"../../../text/components/Text.liquid.js";import{createClass as e,LiquidUnless as p,If as m}from"@gem-sdk/system";import{getTextProps as i}from"./common/helpers.js";let ProductTitle=l=>{let{setting:s}=l,d=`<p>${o("ProductTitle","product_not_found")}</p>`,c=()=>r(i(l)),u={},n=s?.linkProduct,f=e({"gp-product-title-link-wrapper":!0});return p("product",`${d}`,m(n,t`<a ${u} class="${f}">
2
- ${c()}
3
- </a>`,`${c()}`))};export{ProductTitle as default};
1
+ import{template as t,dataStringify as r,isLocalEnv as e,baseAssetURL as o}from"@gem-sdk/core";import{getStaticLocale as p,getSettingPreloadData as l}from"../../../helpers.js";import s from"../../../text/components/Text.liquid.js";import{createAttr as d,createClass as i,createStateOrContext as u,LiquidUnless as c,If as m}from"@gem-sdk/system";import{getTextProps as a}from"./common/helpers.js";let ProductTitle=n=>{let{setting:$,builderProps:f}=n,g=`<p>${p("ProductTitle","product_not_found")}</p>`,k=()=>s(a(n)),P=d({href:"{{ product.url }}",title:"{{ product.title }}"}),j=$?.linkProduct,S=i({"gp-product-title-link-wrapper":!0}),T=u({linkProduct:$?.linkProduct,uid:f?.uid}),h=()=>{let t=e?"{{ 'gp-product-title-v7-5.js' | asset_url }}":`${o}/assets-v2/gp-product-title-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${l('class="gps-link" delay',"src")}="${t}" defer="defer"></script>`};return c("product",`${g}`,t`
2
+ <gp-product-title
3
+ gp-data='${r(T)}'
4
+ >
5
+ ${m(j,t`<a ${P} class="${S}">
6
+ ${k()}
7
+ </a>`,t`${k()}`)}
8
+ </gp-product-title>
9
+ ${h()}
10
+ `)};export{ProductTitle as default};
@@ -1,14 +1,14 @@
1
- import{template as t,RenderIf as e,isLocalEnv as i,baseAssetURL as r}from"@gem-sdk/core";import o from"../../../grid/components/row/Row.liquid.js";import{LiquidIf as a,If as d}from"@gem-sdk/system";import{getSettingPreloadData as n,getStaticLocale as s}from"../../../helpers.js";import{getData as c,DYNAMIC_PRODUCT_STATUS as p,STATIC_PRODUCT_STATUS as l,PRODUCT_ID_LATEST as u}from"./common/helpers.js";let Product=f=>{let{children:m,setting:g,style:y,builderProps:v,rawChildren:_,advanced:$}=f,{isSyncProduct:I}=g??{},{rowSetting:S,rowStyles:b,formatVariantId:j,formatProductId:h,productStatus:q,preSelectedOptionIds:V,productHandle:P,advancedStyle:k}=c(f),w=()=>t`
1
+ import{template as t,RenderIf as e,isLocalEnv as r,baseAssetURL as i}from"@gem-sdk/core";import a from"../../../grid/components/row/Row.liquid.js";import{LiquidIf as o,If as d}from"@gem-sdk/system";import{getSettingPreloadData as n,getStaticLocale as s}from"../../../helpers.js";import{getData as c,DYNAMIC_PRODUCT_STATUS as p,STATIC_PRODUCT_STATUS as l,PRODUCT_ID_LATEST as u}from"./common/helpers.js";let Product=f=>{let{children:m,setting:g,style:y,builderProps:v,rawChildren:_,advanced:$}=f,{isSyncProduct:S,productSetting:I}=g??{},b=I?.hasPreSelected??!1,{rowSetting:j,rowStyles:h,formatVariantId:q,formatProductId:P,productStatus:V,preSelectedOptionIds:k,productHandle:w,advancedStyle:E}=c(f),x=()=>t`
2
2
  {%- liquid
3
3
  if request.page_type == 'product'
4
- if '${q}' == '${l}'
5
- if '${h}' == '${u}'
4
+ if '${V}' == '${l}'
5
+ if '${P}' == '${u}'
6
6
  paginate collections.all.products by 100000
7
7
  assign product = collections.all.products | sort: 'created_at' | reverse | first
8
8
  endpaginate
9
9
  else
10
- assign product = all_products['${P}']
11
- assign productId = '${h}' | times: 1
10
+ assign product = all_products['${w}']
11
+ assign productId = '${P}' | times: 1
12
12
  if product == empty or product == null
13
13
  paginate collections.all.products by 100000
14
14
  for item in collections.all.products
@@ -21,13 +21,13 @@ import{template as t,RenderIf as e,isLocalEnv as i,baseAssetURL as r}from"@gem-s
21
21
  endif
22
22
  endif
23
23
  else
24
- if '${h}' == '${u}'
24
+ if '${P}' == '${u}'
25
25
  paginate collections.all.products by 100000
26
26
  assign product = collections.all.products | sort: 'created_at'| reverse | first
27
27
  endpaginate
28
28
  else
29
- assign product = all_products['${P}']
30
- assign productId = '${h}' | times: 1
29
+ assign product = all_products['${w}']
30
+ assign productId = '${P}' | times: 1
31
31
  if product == empty or product == null
32
32
  paginate collections.all.products by 100000
33
33
  for item in collections.all.products
@@ -40,11 +40,11 @@ import{template as t,RenderIf as e,isLocalEnv as i,baseAssetURL as r}from"@gem-s
40
40
  endif
41
41
  endif
42
42
  -%}
43
- `,E=()=>t`
43
+ `,A=()=>t`
44
44
  {%- liquid
45
45
  if request.page_type != 'product'
46
- assign product = all_products['${P}']
47
- assign productId = '${h}' | times: 1
46
+ assign product = all_products['${w}']
47
+ assign productId = '${P}' | times: 1
48
48
  if product == empty or product == null
49
49
  paginate collections.all.products by 100000
50
50
  for item in collections.all.products
@@ -56,30 +56,30 @@ import{template as t,RenderIf as e,isLocalEnv as i,baseAssetURL as r}from"@gem-s
56
56
  endif
57
57
  endif
58
58
  -%}
59
- `,x=()=>t`
59
+ `,B=()=>t`
60
60
  {%- assign gpBkProduct = product -%}
61
- ${d(q==p,E(),w())}
62
- `,A=()=>t`
63
- {%- assign initVariantId = ${j} -%}
61
+ ${d(V==p,A(),x())}
62
+ `,G=()=>t`
63
+ {%- assign initVariantId = ${q} -%}
64
64
  {%- assign product_form_id = 'product-form-' | append: "${v?.uid}" -%}
65
- ${j?"{%- assign variant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign variant = product.selected_or_first_available_variant -%}"}
66
- ${j?"{%- assign productSelectedVariant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign productSelectedVariant = product.selected_or_first_available_variant -%}"}
65
+ ${q?"{%- assign variant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign variant = product.selected_or_first_available_variant -%}"}
66
+ ${q?"{%- assign productSelectedVariant = product.variants | where: 'id', initVariantId | first -%}":"{%- assign productSelectedVariant = product.selected_or_first_available_variant -%}"}
67
67
  {%-if productSelectedVariant == empty or productSelectedVariant == null -%}
68
68
  {%- assign productSelectedVariant = product.selected_or_first_available_variant -%}
69
69
  {%- endif -%}
70
70
  {%-if variant == empty or variant == null -%}
71
71
  {%- assign variant = product.selected_or_first_available_variant -%}
72
72
  {%- endif -%}
73
- `,B=()=>t`
73
+ `,H=()=>t`
74
74
  <div class="gp-text-center">${s("Product","product_not_found")}</div>
75
- `,G=()=>t`
76
- ${A()}
75
+ `,O=()=>t`
76
+ ${G()}
77
77
  <gp-product
78
78
  data-uid="${v?.uid}"
79
79
  data-id="${v?.uid}"
80
- style="${k}"
80
+ style="${E}"
81
81
  class="${$?.cssClass}"
82
- gp-context='{"productId": {{ product.id }}, "preSelectedOptionIds": [${V}], "isSyncProduct": "${I}", "variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "inventoryQuantity": {{ variant.inventory_quantity }}, "quantity": 1, "formId": "{{ product_form_id }}" }'
82
+ gp-context='{"productId": {{ product.id }}, "preSelectedOptionIds": [${k}], "isSyncProduct": "${S}", "hasPreSelected": ${b}, "variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "inventoryQuantity": {{ variant.inventory_quantity }}, "quantity": 1, "formId": "{{ product_form_id }}" }'
83
83
  gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }}}'
84
84
  >
85
85
  <product-form class="product-form">
@@ -87,13 +87,13 @@ import{template as t,RenderIf as e,isLocalEnv as i,baseAssetURL as r}from"@gem-s
87
87
  <input type="hidden" name="id" value="{{ variant.id }}" />
88
88
  <input type="hidden" name="quantity" value="{{ quantity }}" />
89
89
  <button type="submit" onclick="return false;" style="display:none;"></button>
90
- ${o({builderProps:{...v,uid:v?.uid,uidInteraction:`${v?.uid}-row`},style:y,styles:b,setting:S,children:m,rawChildren:_})}
90
+ ${a({builderProps:{...v,uid:v?.uid,uidInteraction:`${v?.uid}-row`},style:y,styles:h,setting:j,children:m,rawChildren:_})}
91
91
  {%- endform -%}
92
92
  </product-form>
93
93
  </gp-product>
94
94
  {%- assign product = gpBkProduct -%}
95
95
  `;return t`
96
- ${x()}
97
- ${a("product != empty and product != null",G(),B())}
98
- ${e(i,`<script ${n('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${n('class="gps-link" delay',"src")}="${r}/assets-v2/gp-product-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
96
+ ${B()}
97
+ ${o("product != empty and product != null",O(),H())}
98
+ ${e(r,`<script ${n('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${n('class="gps-link" delay',"src")}="${i}/assets-v2/gp-product-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
99
99
  `};export{Product as default};
@@ -1,4 +1,4 @@
1
1
  import e from"../../configs/BloyRewardsProgramLoyalty.js";import l from"./uiV2.js";import{get3rdPartyInstallLink as t}from"../../common/helpers.js";let config={tag:e.tag,label:e.label,icon:'<img class="gp-w-[24px] gp-border gp-border-[#494949] gp-rounded-[3px]" src="https://cdn.shopify.com/app-store/listing_images/eb1dd8939bb7b954d714a5344a78df08/icon/CITe8tmBxYoDEAE=.png?width=22&height=22">',editorConfigs:{component:{isThirdParty:!0}},presets:[{id:e.id,name:{en:e.label},hideTextContent:!0,icon:{desktop:`<div class="w-full flex flex-col items-center">
2
2
  <img class="w-24 border border-dark-200 rounded-medium" src="https://cdn.shopify.com/app-store/listing_images/eb1dd8939bb7b954d714a5344a78df08/icon/CITe8tmBxYoDEAE=.png?width=22&height=22">
3
3
  <span class="preset-item-title">BLOY Rewards Program & Loyalty</span>
4
- </div>`},components:[{tag:e.tag}]}],settings:[{id:"setting",controls:[{id:"appBlockId",type:"input",default:""},{id:"widgetType",label:"Choose widget",type:"select",options:[{label:"Bloy Loyalty Guide",value:"bloy-loyalty-guide"},{label:"Bloy Loyalty Points Program",value:"bloy-loyalty-points-program"},{label:"Bloy Loyalty Vip Program",value:"bloy-loyalty-vip-program"},{label:"Bloy Loyalty Ways Earn",value:"bloy-loyalty-ways-earn"},{label:"Point On Product Page",value:"product-point-preview"}],default:"bloy-loyalty-guide"},{id:"install",type:"open-link",target:"_blank",linkType:"install",href:t({handle:"bloy-loyalty"}),appName:e.label},{id:"openApp",type:"open-link",target:"_blank",linkType:"openApp",href:"https://admin.shopify.com/?redirect=/apps/bloy-loyalty",appName:e.label},{id:"align",label:"Alignment",type:"segment",options:[{label:"Left",value:"left",type:"align"},{label:"Center",value:"center",type:"align"},{label:"Right",value:"right",type:"align"}],devices:{desktop:{default:"left"}}}]}],ui:[],uiV2:l};export{config as default};
4
+ </div>`},components:[{tag:e.tag}]}],settings:[{id:"setting",controls:[{id:"appBlockId",type:"input",default:""},{id:"widgetType",label:"Choose widget",type:"select",options:[{label:"Bloy Loyalty Guide",value:"bloy-loyalty-guide"},{label:"Bloy Loyalty Points Program",value:"bloy-loyalty-points-program"},{label:"Bloy Loyalty Vip Program",value:"bloy-loyalty-vip-program"},{label:"Bloy Loyalty Ways Earn",value:"bloy-loyalty-ways-earn"},{label:"Point On Product Page",value:"bloy-point-caculator-pdp"}],default:"bloy-loyalty-guide"},{id:"install",type:"open-link",target:"_blank",linkType:"install",href:t({handle:"bloy-loyalty"}),appName:e.label},{id:"openApp",type:"open-link",target:"_blank",linkType:"openApp",href:"https://admin.shopify.com/?redirect=/apps/bloy-loyalty",appName:e.label},{id:"align",label:"Alignment",type:"segment",options:[{label:"Left",value:"left",type:"align"},{label:"Center",value:"center",type:"align"},{label:"Right",value:"right",type:"align"}],devices:{desktop:{default:"left"}}}]}],ui:[],uiV2:l};export{config as default};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gem-sdk/components",
3
- "version": "8.0.0-dev.52",
3
+ "version": "8.0.0-dev.54",
4
4
  "license": "MIT",
5
5
  "sideEffects": false,
6
6
  "main": "dist/cjs/index.js",
@@ -43,7 +43,7 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@gem-sdk/keen-slider": "^6.8.8",
46
- "@gem-sdk/swiper": "0.0.8",
46
+ "@gem-sdk/swiper": "0.0.9",
47
47
  "node-html-parser": "^6.1.13",
48
48
  "react-transition-group": "^4.4.5",
49
49
  "react-youtube": "^10.1.0"