@gem-sdk/components 4.0.0-staging.1193 → 4.0.0-staging.1195

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.
Files changed (92) hide show
  1. package/dist/cjs/article/components/ArticleList.js +1 -1
  2. package/dist/cjs/article/components/ArticleList.liquid.js +11 -10
  3. package/dist/cjs/carousel/components/arrow/common/classes.js +1 -1
  4. package/dist/cjs/carousel/components/arrow/common/helpers.js +1 -1
  5. package/dist/cjs/carousel/components/arrow/common/styles.js +11 -11
  6. package/dist/cjs/carousel/components/dot/common/helpers.js +1 -1
  7. package/dist/cjs/carousel/components/item/CarouselItem.js +1 -1
  8. package/dist/cjs/carousel/components/item/common/styles.js +1 -1
  9. package/dist/cjs/carousel/components/root/Carousel.js +1 -1
  10. package/dist/cjs/carousel/components/root/Carousel.liquid.js +8 -6
  11. package/dist/cjs/carousel/components/root/common/attrs.js +1 -1
  12. package/dist/cjs/carousel/components/root/common/classes.js +1 -1
  13. package/dist/cjs/carousel/components/root/common/styles.js +1 -1
  14. package/dist/cjs/carousel/components/swiper/Swiper.js +1 -0
  15. package/dist/cjs/carousel/components/swiper/SwiperSlide.js +1 -0
  16. package/dist/cjs/carousel/components/swiper/common/styles.js +1 -0
  17. package/dist/cjs/carousel/hooks/useCarousel.js +1 -1
  18. package/dist/cjs/carousel/hooks/useDotsSetting.js +1 -1
  19. package/dist/cjs/carousel/index.js +1 -1
  20. package/dist/cjs/carousel/plugins/animation.js +1 -1
  21. package/dist/cjs/hero-banner/common/helpers.js +1 -1
  22. package/dist/cjs/product/components/product-images-v2/ProductImagesV2.liquid.js +6 -6
  23. package/dist/cjs/product/components/product-images-v2/common/attrs.js +1 -1
  24. package/dist/cjs/product/components/product-images-v2/common/classes.js +1 -1
  25. package/dist/cjs/product/components/product-images-v2/common/getBorderActiveCss.js +5 -1
  26. package/dist/cjs/product/components/product-images-v2/common/productFeaturedImage.js +1 -1
  27. package/dist/cjs/product/components/product-images-v2/common/productGallery.js +1 -1
  28. package/dist/cjs/product/components/product-images-v2/common/styles.js +1 -1
  29. package/dist/cjs/product/components/product-images-v2/components/child/ProductFeaturedImageCarousel.js +1 -1
  30. package/dist/cjs/product/components/product-images-v2/components/child/ProductGalleryGrid.js +2 -2
  31. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  32. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +13 -13
  33. package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
  34. package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +3 -3
  35. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.js +1 -1
  36. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +4 -4
  37. package/dist/cjs/product/components/product-images-v2/components/lightbox/ProductImagesLightBox.js +1 -1
  38. package/dist/cjs/product/components/product-images-v2/hooks/useProductGalleryGrid.js +1 -1
  39. package/dist/cjs/product/components/product-list/ProductListCarouselLayout.liquid.js +4 -4
  40. package/dist/cjs/product/index.js +1 -1
  41. package/dist/cjs/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  42. package/dist/cjs/video/components/HTML5Embed.liquid.js +12 -12
  43. package/dist/esm/article/components/ArticleList.js +1 -1
  44. package/dist/esm/article/components/ArticleList.liquid.js +11 -10
  45. package/dist/esm/carousel/components/arrow/common/classes.js +1 -1
  46. package/dist/esm/carousel/components/arrow/common/helpers.js +1 -1
  47. package/dist/esm/carousel/components/arrow/common/styles.js +8 -8
  48. package/dist/esm/carousel/components/dot/common/helpers.js +1 -1
  49. package/dist/esm/carousel/components/item/CarouselItem.js +1 -1
  50. package/dist/esm/carousel/components/item/common/styles.js +1 -1
  51. package/dist/esm/carousel/components/root/Carousel.js +1 -1
  52. package/dist/esm/carousel/components/root/Carousel.liquid.js +9 -7
  53. package/dist/esm/carousel/components/root/common/attrs.js +1 -1
  54. package/dist/esm/carousel/components/root/common/classes.js +1 -1
  55. package/dist/esm/carousel/components/root/common/styles.js +1 -1
  56. package/dist/esm/carousel/components/swiper/Swiper.js +1 -0
  57. package/dist/esm/carousel/components/swiper/SwiperSlide.js +1 -0
  58. package/dist/esm/carousel/components/swiper/common/styles.js +1 -0
  59. package/dist/esm/carousel/hooks/useCarousel.js +1 -1
  60. package/dist/esm/carousel/hooks/useDotsSetting.js +1 -1
  61. package/dist/esm/carousel/index.js +1 -1
  62. package/dist/esm/carousel/plugins/animation.js +1 -1
  63. package/dist/esm/hero-banner/common/helpers.js +1 -1
  64. package/dist/esm/product/components/product-images-v2/ProductImagesV2.liquid.js +8 -8
  65. package/dist/esm/product/components/product-images-v2/common/attrs.js +1 -1
  66. package/dist/esm/product/components/product-images-v2/common/classes.js +1 -1
  67. package/dist/esm/product/components/product-images-v2/common/getBorderActiveCss.js +6 -2
  68. package/dist/esm/product/components/product-images-v2/common/productFeaturedImage.js +1 -1
  69. package/dist/esm/product/components/product-images-v2/common/productGallery.js +1 -1
  70. package/dist/esm/product/components/product-images-v2/common/styles.js +1 -1
  71. package/dist/esm/product/components/product-images-v2/components/child/ProductFeaturedImageCarousel.js +1 -1
  72. package/dist/esm/product/components/product-images-v2/components/child/ProductGalleryGrid.js +2 -2
  73. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  74. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +48 -48
  75. package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
  76. package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +2 -2
  77. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.js +1 -1
  78. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +11 -11
  79. package/dist/esm/product/components/product-images-v2/components/lightbox/ProductImagesLightBox.js +1 -1
  80. package/dist/esm/product/components/product-images-v2/hooks/useProductGalleryGrid.js +1 -1
  81. package/dist/esm/product/components/product-list/ProductListCarouselLayout.liquid.js +6 -6
  82. package/dist/esm/product/index.js +1 -1
  83. package/dist/esm/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  84. package/dist/esm/video/components/HTML5Embed.liquid.js +12 -12
  85. package/dist/types/index.d.ts +25 -0
  86. package/package.json +2 -1
  87. package/dist/cjs/carousel/plugins/auto-play.js +0 -1
  88. package/dist/cjs/carousel/plugins/fix-slider-move-backward.js +0 -1
  89. package/dist/cjs/carousel/plugins/mutation.js +0 -1
  90. package/dist/esm/carousel/plugins/auto-play.js +0 -1
  91. package/dist/esm/carousel/plugins/fix-slider-move-backward.js +0 -1
  92. package/dist/esm/carousel/plugins/mutation.js +0 -1
@@ -1,17 +1,18 @@
1
1
  'use client';
2
- import{composeAdvanceStyle as l,template as e,makeStyleWithDefault as i,makeWidth as t,makeStyleResponsive as a,getStyleBackgroundByDevice as r,getGradientBgrStyleByDevice as s,getResponsiveValueByScreen as n,cls as o}from"@gem-sdk/core";import{convertSpecialCharacter as c}from"../common/helpers.js";import{convertUnitToNumber as g}from"../../helpers.js";let ArticleList=d=>{let{styles:m,setting:p,className:u,children:b,builderProps:_,advanced:f}=d??{},{border:h,rounded:T,hasBoxShadow:y,boxShadow:$}=f??{},w=l({border:h,rounded:T,hasBoxShadow:y,boxShadow:$,"spacing-setting":f?.["spacing-setting"]}),S=p?.articleSetting,k=p?.articleOrderBy??"UPDATED_AT_REVERSE",E=S?.articlePickType??"manually",v="manually"===E&&S?.articleHandles?.length?S?.articleHandles:[],B="manually"===E&&S?.articleBlogTitles?.length?S?.articleBlogTitles:[],H=S?.blogHandle??"",R=g(p?.numberOfArticle,4);return e`
2
+ import{splitStyle as l,composeAdvanceStyle as e,template as i,makeStyleWithDefault as t,makeWidth as a,makeStyleResponsive as r,getStyleBackgroundByDevice as s,getGradientBgrStyleByDevice as n,getResponsiveValueByScreen as o,cls as c}from"@gem-sdk/core";import{convertSpecialCharacter as g}from"../common/helpers.js";import{convertUnitToNumber as d}from"../../helpers.js";let ArticleList=m=>{let{styles:p,setting:b,className:u,children:f,builderProps:_,advanced:h,style:T}=m??{},{border:y,rounded:$,hasBoxShadow:w,boxShadow:S}=h??{},[k]=l(["pos","top","left","bottom","right","z","d"],T),E=e({border:y,rounded:$,hasBoxShadow:w,boxShadow:S,"spacing-setting":h?.["spacing-setting"]}),v=b?.articleSetting,B=b?.articleOrderBy??"UPDATED_AT_REVERSE",H=v?.articlePickType??"manually",R="manually"===H&&v?.articleHandles?.length?v?.articleHandles:[],x="manually"===H&&v?.articleBlogTitles?.length?v?.articleBlogTitles:[],A=v?.blogHandle??"",P=d(b?.numberOfArticle,4);return i`
3
3
  <div
4
+ style="${k}"
4
5
  data-id="${_?.uid}"
5
6
  items-repeat
6
7
  >
7
- <div style="${{...w,...i("w",t(m?.width),{desktop:"--g-ct-w",tablet:"--g-ct-w",mobile:"--g-ct-w"}),...a("rg",m?.horizontalGutter),...a("cg",m?.verticalGutter),...r(p?.background),...s(p?.background),...a("gtc",{desktop:`repeat(${n(p?.slideToShow,"desktop")}, minmax(0, 1fr))`,tablet:p?.slideToShow?.tablet&&`repeat(${n(p?.slideToShow,"tablet")}, minmax(0, 1fr))`,mobile:p?.slideToShow?.mobile&&`repeat(${n(p?.slideToShow,"mobile")}, minmax(0, 1fr))`})}}"
8
- class="${o(u,"gp-grid !gp-m-auto gp-w-full",f?.cssClass)}"
8
+ <div style="${{...E,...t("w",a(p?.width),{desktop:"--g-ct-w",tablet:"--g-ct-w",mobile:"--g-ct-w"}),...r("rg",p?.horizontalGutter),...r("cg",p?.verticalGutter),...s(b?.background),...n(b?.background),...r("gtc",{desktop:`repeat(${o(b?.slideToShow,"desktop")}, minmax(0, 1fr))`,tablet:b?.slideToShow?.tablet&&`repeat(${o(b?.slideToShow,"tablet")}, minmax(0, 1fr))`,mobile:b?.slideToShow?.mobile&&`repeat(${o(b?.slideToShow,"mobile")}, minmax(0, 1fr))`})}}"
9
+ class="${c(u,"gp-grid !gp-m-auto gp-w-full",h?.cssClass)}"
9
10
  >
10
11
  {% liquid
11
- assign articlePickType = '${E}'
12
- assign articleHandles = '${v.toString()}'| split: ","
13
- assign articleBlogTitle = "${c(B.toString())}" | split: ","
14
- assign limit = "${"manually"===E?S?.articleIds?.length:R}"
12
+ assign articlePickType = '${H}'
13
+ assign articleHandles = '${R.toString()}'| split: ","
14
+ assign articleBlogTitle = "${g(x.toString())}" | split: ","
15
+ assign limit = "${"manually"===H?v?.articleIds?.length:P}"
15
16
  assign blogTitle = ''
16
17
  assign all_articles = null | sort
17
18
 
@@ -21,11 +22,11 @@ import{composeAdvanceStyle as l,template as e,makeStyleWithDefault as i,makeWidt
21
22
  assign all_articles = all_articles | concat: articleByHandle
22
23
  endfor
23
24
  else
24
- assign current_blog_handle = blogs['${H}']
25
+ assign current_blog_handle = blogs['${A}']
25
26
  if gp_enable_custom_dynamic_blog == true
26
27
  assign current_blog_handle = blogs[blog.handle]
27
28
  endif
28
- assign all_articles = current_blog_handle.articles | limit: limit | sort: "${k.replace("_REVERSE","").toLowerCase()}" ${k.includes("_REVERSE")?"| reverse":""}
29
+ assign all_articles = current_blog_handle.articles | limit: limit | sort: "${B.replace("_REVERSE","").toLowerCase()}" ${B.includes("_REVERSE")?"| reverse":""}
29
30
  assign blogTitle = current_blog_handle.title
30
31
  endif
31
32
 
@@ -34,7 +35,7 @@ import{composeAdvanceStyle as l,template as e,makeStyleWithDefault as i,makeWidt
34
35
  {% if articlePickType == 'manually' %}
35
36
  {% assign blogTitle = articleBlogTitle[forloop.index0] %}
36
37
  {% endif %}
37
- <div>${b??""}</div>
38
+ <div>${f??""}</div>
38
39
  {% endfor %}
39
40
  </div>
40
41
  </div>
@@ -1 +1 @@
1
- import{createClass as e}from"@gem-sdk/system";import{getClassArrowDisplay as r,getClassArrowRotate as g,getResponsiveSetting as s}from"./helpers.js";let getClass=p=>{let{className:t,componentId:i,rootId:l,left:o,uid:n,isHiddenWhenDisabled:u,disabled:a,showWhenHover:c,showArrow:m,vertical:f}=p,v="gp-carousel-arrow-"+n,d=s(m||{}),x=o?"gp-carousel-action-back gem-slider-previous":"gp-carousel-action-next gem-slider-next",h=e({"gp-z-1 gp-items-center gp-justify-center gp-overflow-hidden gp-shrink-0":!0,[v]:!0,...t&&{[t]:!0},...i&&{[i]:!0},...l&&{[l]:!0},...x&&{[x]:!0},...{"gp-invisible":u&&a,"gp-cursor-default gp-text-gray-300":a,"gp-cursor-pointer gp-text-gray-500":!a,"!gp-invisible group-hover/carousel:!gp-visible":c,...r(d)}}),y=e({"gp-flex gp-items-center gp-justify-center [&>svg]:gp-h-full [&>svg]:gp-w-full":!0,...g(!!o,f)});return{buttonClass:h,buttonContentClass:y}};export{getClass};
1
+ import{createClass as e}from"@gem-sdk/system";import{getClassArrowDisplay as r,getClassArrowRotate as g,getResponsiveSetting as p}from"./helpers.js";let getClass=t=>{let{className:s,componentId:o,rootId:i,left:l,uid:n,isHiddenWhenDisabled:u,disabled:a,showWhenHover:c,showArrow:f,vertical:m}=t,v="gp-carousel-arrow-"+n,b=p(f||{}),d=l?"gp-carousel-action-back gem-slider-previous":"gp-carousel-action-next gem-slider-next",x=e({"gp-z-1 gp-items-center gp-justify-center gp-overflow-hidden gp-shrink-0 before:gp-left-0 before:gp-top-0":!0,[v]:!0,...s&&{[s]:!0},...o&&{[o]:!0},...i&&{[i]:!0},...d&&{[d]:!0},...{"gp-invisible":u&&a,"gp-cursor-default gp-text-gray-300":a,"gp-cursor-pointer gp-text-gray-500":!a,"!gp-invisible group-hover/carousel:!gp-visible":c,...r(b)}}),h=e({"gp-flex gp-items-center gp-justify-center [&>svg]:gp-h-full [&>svg]:gp-w-full":!0,...g(!!l,m)});return{buttonClass:x,buttonContentClass:h}};export{getClass};
@@ -1 +1 @@
1
- import{DEVICES as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";let getResponsiveSetting=t=>{let e=t.desktop,l=t.tablet?t.tablet:e,i=t.mobile?t.mobile:l;return{desktop:e,tablet:l,mobile:i}},getArrowPositionStyle=({vertical:l,arrowType:i,gapToEachSize:o,left:a})=>{let r={};return t.forEach(t=>{let p=e(l,t,!1),g="desktop"===t?"":`-${t}`;p?(r[`top${g}`]="inside"===i[t]&&a?o+"px":"initial",r[`left${g}`]=a?"initial":"",r[`bottom${g}`]="inside"!==i[t]||a?"initial":o+"px",r[`right${g}`]=a?"":"initial"):(a?(r[`left${g}`]="inside"===i[t]?o+"px":"3px",r[`right${g}`]="initial"):(r[`right${g}`]="inside"===i[t]?o+"px":"3px",r[`left${g}`]="initial"),r[`top${g}`]=a?"initial":"",r[`bottom${g}`]=a?"":"initial")}),r},getClassArrowRotate=(l,i)=>{let o={},a={vertical:{left:{desktop:"gp-rotate-[-90deg]",tablet:"tablet:gp-rotate-[-90deg]",mobile:"mobile:gp-rotate-[-90deg]"},right:{desktop:"gp-rotate-90",tablet:"tablet:gp-rotate-90",mobile:"mobile:gp-rotate-90"}},horizontal:{left:{desktop:"gp-rotate-180",tablet:"tablet:gp-rotate-180",mobile:"mobile:gp-rotate-180"},right:{desktop:"gp-rotate-0",tablet:"tablet:gp-rotate-0",mobile:"mobile:gp-rotate-0"}}};return t.forEach(t=>{let r=e(i,t,!1),p=r?"vertical":"horizontal",g=l?"left":"right",n=a[p][g][t];o[n]=!0}),o},getClassArrowDisplay=e=>{let l={inside:{desktop:"!gp-flex !gp-absolute gp-z-2",tablet:"tablet:!gp-flex tablet:!gp-absolute tablet:gp-z-2",mobile:"mobile:!gp-flex mobile:!gp-absolute mobile:gp-z-2"},outside:{desktop:"!gp-flex !gp-relative",tablet:"tablet:!gp-flex tablet:!gp-relative",mobile:"mobile:!gp-flex mobile:!gp-relative"},none:{desktop:"!gp-hidden",tablet:"tablet:!gp-hidden",mobile:"mobile:!gp-hidden"}},i={};return t.forEach(t=>{let o=e[t];o||(o="none");let a=l[o][t];i[a]=!0}),i},getArrowDisplayStyle=l=>{let i={};return t.forEach(t=>{let o=e(l,t,"none");i={...i,[t]:"none"===o?"none":"flex"}}),i},mappingNavigationCarousel=e=>{let l=e=>{let l={...e},i=t.filter(t=>!Object.keys(l).includes(t));return i.forEach(t=>{"tablet"===t&&(l[t]=l.desktop),"mobile"===t&&(l[t]=l.tablet)}),l};if(e?.layout==="vertical"){let{controlOverContent:i,arrow:o}=e,a=l(o),r=l(i),p={};return t.forEach(t=>{a[t]?a[t]&&r[t]?p[t]="inside":p[t]="outside":p[t]="none"}),{...e,navigationStyle:p}}return e},getData=t=>{let e=!!t.custom&&""!==t.custom;return{isRenderCustomIcon:e}};export{getArrowDisplayStyle,getArrowPositionStyle,getClassArrowDisplay,getClassArrowRotate,getData,getResponsiveSetting,mappingNavigationCarousel};
1
+ import{DEVICES as e,getResponsiveValueByScreen as t}from"@gem-sdk/core";let getResponsiveSetting=e=>{let t=e.desktop,i=e.tablet?e.tablet:t,l=e.mobile?e.mobile:i;return{desktop:t,tablet:i,mobile:l}},getArrowPositionStyle=({vertical:i,arrowType:l,gapToEachSize:o,left:a})=>{let r={};return e.forEach(e=>{let p=t(i,e,!1),g="desktop"===e?"":`-${e}`;p?(r[`top${g}`]="inside"===l[e]&&a?o+"px":"initial",r[`left${g}`]=a?"initial":"",r[`bottom${g}`]="inside"!==l[e]||a?"initial":o+"px",r[`right${g}`]=a?"":"initial"):(a?(r[`left${g}`]="inside"===l[e]?o+"px":"3px",r[`right${g}`]="initial"):(r[`right${g}`]="inside"===l[e]?o+"px":"3px",r[`left${g}`]="initial"),r[`top${g}`]=a?"initial":"",r[`bottom${g}`]=a?"":"initial")}),r},getClassArrowRotate=(i,l)=>{let o={},a={vertical:{left:{desktop:"gp-rotate-[-90deg]",tablet:"tablet:gp-rotate-[-90deg]",mobile:"mobile:gp-rotate-[-90deg]"},right:{desktop:"gp-rotate-90",tablet:"tablet:gp-rotate-90",mobile:"mobile:gp-rotate-90"}},horizontal:{left:{desktop:"gp-rotate-180",tablet:"tablet:gp-rotate-180",mobile:"mobile:gp-rotate-180"},right:{desktop:"gp-rotate-0",tablet:"tablet:gp-rotate-0",mobile:"mobile:gp-rotate-0"}}};return e.forEach(e=>{let r=t(l,e,!1),p=r?"vertical":"horizontal",g=i?"left":"right",s=a[p][g][e];o[s]=!0}),o},getClassArrowDisplay=t=>{let i={inside:{desktop:"!gp-flex !gp-absolute gp-z-2",tablet:"tablet:!gp-flex tablet:!gp-absolute tablet:gp-z-2",mobile:"mobile:!gp-flex mobile:!gp-absolute mobile:gp-z-2"},outside:{desktop:"!gp-flex !gp-relative",tablet:"tablet:!gp-flex tablet:!gp-relative",mobile:"mobile:!gp-flex mobile:!gp-relative"},none:{desktop:"!gp-hidden",tablet:"tablet:!gp-hidden",mobile:"mobile:!gp-hidden"}},l={};return e.forEach(e=>{let o=t[e];o||(o="none");let a=i[o][e];l[a]=!0}),l},getArrowDisplayStyle=i=>{let l={};return e.forEach(e=>{let o=t(i,e,"none");l={...l,[e]:"none"===o?"none":"flex"}}),l},mappingNavigationCarousel=t=>{let i=t=>{let i={...t},l=e.filter(e=>!Object.keys(i).includes(e));return l.forEach(e=>{"tablet"===e&&(i[e]=i.desktop),"mobile"===e&&(i[e]=i.tablet)}),i};if(t?.layout==="vertical"){let{controlOverContent:l,arrow:o}=t,a=i(o),r=i(l),p={};return e.forEach(e=>{a[e]?a[e]&&r[e]?p[e]="inside":p[e]="outside":p[e]="none"}),{...t,navigationStyle:p}}return t},getData=e=>{let t=!!e.custom&&""!==e.custom;return{isRenderCustomIcon:t}},getResponsiveSizeValue=(e,t,i)=>{for(let l of({mobile:["mobile","tablet","desktop"],tablet:["tablet","desktop"],desktop:["desktop"]})[t]){let t=e?.[l]?.[i];if(void 0!==t)return""===t?"auto":t}return"auto"},getResponsiveWidth=e=>({"--w":getResponsiveSizeValue(e,"desktop","width"),"--w-tablet":getResponsiveSizeValue(e,"tablet","width"),"--w-mobile":getResponsiveSizeValue(e,"mobile","width")}),getResponsiveHeight=e=>({"--h":getResponsiveSizeValue(e,"desktop","height"),"--h-tablet":getResponsiveSizeValue(e,"tablet","height"),"--h-mobile":getResponsiveSizeValue(e,"mobile","height")});export{getArrowDisplayStyle,getArrowPositionStyle,getClassArrowDisplay,getClassArrowRotate,getData,getResponsiveHeight,getResponsiveSetting,getResponsiveWidth,mappingNavigationCarousel};
@@ -1,6 +1,6 @@
1
- import{createStyleReact as e,createStyle as o}from"@gem-sdk/system";import{makeStyle as r,getSingleColorVariable as t,getResponsiveStyleShadowWithoutState as a,getPaddingGlobalSize as l,makeGlobalSizeWidthResponsive as p,makeGlobalSizeHeightResponsive as i,makeStyleResponsive as s,composeCornerCss as $,composeBorderCss as d}from"@gem-sdk/core";import{getArrowDisplayStyle as m,getArrowPositionStyle as n,getResponsiveSetting as c}from"./helpers.js";let getStyle=(g,b="liquid")=>{let{uid:w,vertical:h,showArrow:x,gapToEachSize:u,left:f,arrowBackgroundColor:k,arrowButtonSize:y,rootId:S,arrowBorder:z,arrowCorner:j,arrowCustomColor:q,arrowIconSize:v,arrowShadow:E}=g,T=r({bg:t(k)}),A=r({c:t(q)}),B=a(E,"box-shadow",E),C=c(z||{}),D=c(j||{}),F=l(y),G=c(v||{}),H=c(x||{}),I=p(y),J=i(y),K=s("w",G,"px"),L=s("h",G,"px"),M=s("d",m(H)),N=r(n({vertical:h,arrowType:H,gapToEachSize:u??"",left:!!f})),O={...T,...M,...N,...I,...J,...F,...B},P={...A,...K,...L},Q="react"===b?e(O):o(O),R="react"===b?e(P):o(P),U=`
1
+ import{createStyleReact as e,createStyle as o}from"@gem-sdk/system";import{makeStyle as r,getSingleColorVariable as t,getResponsiveStyleShadowWithoutState as a,getPaddingGlobalSize as i,makeStyleResponsive as l,composeCornerCss as p,composeBorderCss as d}from"@gem-sdk/core";import{getResponsiveWidth as s,getResponsiveHeight as $,getArrowDisplayStyle as n,getArrowPositionStyle as m,getResponsiveSetting as c}from"./helpers.js";let getStyle=(g,b="liquid")=>{let{uid:w,vertical:h,showArrow:u,gapToEachSize:x,left:f,arrowBackgroundColor:k,arrowButtonSize:y,rootId:S,arrowBorder:q,arrowCorner:v,arrowCustomColor:z,arrowIconSize:j,arrowShadow:E}=g,T=r({bg:t(k)}),A=r({c:t(z)}),B=a(E,"box-shadow",E),C=c(q||{}),D=c(v||{}),F=i(y),G=c(j||{}),H=c(u||{}),I=r({v:"hidden"}),J=s(y),K=$(y),L=l("w",G,"px"),M=l("h",G,"px"),N=l("d",n(H)),O=r(m({vertical:h,arrowType:H,gapToEachSize:x??"",left:!!f})),P={...T,...N,...O,...J,...K,...F,...B,..."liquid"===b?I:{}},Q={...A,...L,...M},R="react"===b?e(P):o(P),U="react"===b?e(Q):o(Q),V=`
2
2
  ${S?"."+S:""}.gp-carousel-arrow-${w} {
3
- ${$(D.desktop)}
3
+ ${p(D.desktop)}
4
4
  }
5
5
  ${S?"."+S:""}.gp-carousel-arrow-${w}::before {
6
6
  content: '';
@@ -10,24 +10,24 @@ import{createStyleReact as e,createStyle as o}from"@gem-sdk/system";import{makeS
10
10
  pointer-events: none;
11
11
  z-index: 10;
12
12
  ${d(C.desktop)}
13
- ${$(D.desktop)}
13
+ ${p(D.desktop)}
14
14
  }
15
15
  @media only screen and (max-width: 1024px) and (min-width: 768px) {
16
16
  ${S?"."+S:""}.gp-carousel-arrow-${w} {
17
- ${$(D.tablet)}
17
+ ${p(D.tablet)}
18
18
  }
19
19
  ${S?"."+S:""}.gp-carousel-arrow-${w}::before {
20
20
  ${d(C.tablet)}
21
- ${$(D.tablet)}
21
+ ${p(D.tablet)}
22
22
  }
23
23
  }
24
24
  @media only screen and (max-width: 768px) {
25
25
  ${S?"."+S:""}.gp-carousel-arrow-${w} {
26
- ${$(D.mobile)}
26
+ ${p(D.mobile)}
27
27
  }
28
28
  ${S?"."+S:""}.gp-carousel-arrow-${w}::before {
29
29
  ${d(C.mobile)}
30
- ${$(D.mobile)}
30
+ ${p(D.mobile)}
31
31
  }
32
32
  }
33
- `;return{buttonStyle:Q,buttonContentStyle:R,innerBorderCss:U}};export{getStyle};
33
+ `;return{buttonStyle:R,buttonContentStyle:U,innerBorderCss:V}};export{getStyle};
@@ -1 +1 @@
1
- import{DEVICES as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";let getData=t=>{let{hiddenWhenOnlyOne:e}=t,r=e=>{let{enabledSneakPeak:r,totalSlideItem:l=0,numberOfFullWidthShow:a=0,slideItemsPerPage:o=0}=t;return r?Array.from({length:e?l:l-a+1},(t,e)=>e):Array.from({length:e?l:Math.ceil(l/o)},(t,e)=>e)},l=t=>e&&t?.length<2;return{checkHidden:l,getDotItems:r}},getUpdatedDotStyle=(r,l)=>{let a={};return t.forEach(t=>{let o=e(r,t),g=e(l,t);a={...a,[t]:o?g:"none"}}),a};export{getData,getUpdatedDotStyle};
1
+ import{DEVICES as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";let getData=t=>{let{hiddenWhenOnlyOne:e,slideDuplicated:r}=t,l=e=>{let{enabledSneakPeak:l,totalSlideItem:a=0,numberOfFullWidthShow:o=0,slideItemsPerPage:g=0}=t,n=0;return Array.from({length:n=e?r?a/2:a:l?a-o+1:Math.ceil(a/g)},(t,e)=>e)},a=t=>e&&t?.length<2;return{checkHidden:a,getDotItems:l}},getUpdatedDotStyle=(r,l)=>{let a={};return t.forEach(t=>{let o=e(r,t),g=e(l,t);a={...a,[t]:o?g:"none"}}),a};export{getData,getUpdatedDotStyle};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e}from"react/jsx-runtime";import{isEmptyChildren as o}from"@gem-sdk/core";import{getStyle as r}from"./common/styles.js";import{getClass as s}from"./common/classes.js";import{useCarouselItem as m}from"../../hooks/useCarouseItem.js";import t from"../../../grid/components/ChildrenDroppable.js";let CarouselItem=i=>{let{children:l,builderAttrs:a}=i,{handleClick:n,handleMouseMove:c,handleMouseOut:d}=m(i),{carouselItemStyle:p,carouselItemInnerStyle:u}=r(i),{carouselItemClass:f,carouselItemInnerClass:h}=s(i);return e("div",{...a,"aria-hidden":!0,className:f,style:p,onClick:n,onMouseMove:c,onMouseLeave:d,children:e("div",{className:h,style:u,children:o(l)?e(t,{}):l})})};export{CarouselItem as default};
2
+ import{jsx as e}from"react/jsx-runtime";import{useEditorMode as r,isEmptyChildren as o}from"@gem-sdk/core";import"react";import"@gem-sdk/system";import{SwiperSlide as s}from"../swiper/SwiperSlide.js";import{getStyle as m}from"./common/styles.js";import{getClass as t}from"./common/classes.js";import{useCarouselItem as i}from"../../hooks/useCarouseItem.js";import l from"../../../grid/components/ChildrenDroppable.js";let CarouselItem=a=>{let{children:d,builderAttrs:p,parentSettings:c,builderProps:n}=a,{handleClick:u,handleMouseMove:f,handleMouseOut:j}=i(a),{indexKey:h}=a,k=n?.uid?`${n?.uid}-${h}`:h,y=r(),{carouselItemStyle:C,carouselItemInnerStyle:g}=m(a,y),{carouselItemClass:v,carouselItemInnerClass:I}=t(a);return e(s,{...p,"aria-hidden":!0,className:v,style:C,onClick:u,onMouseMove:f,onMouseLeave:j,dir:c?.rtl?"rtl":"ltr","data-carousel-item-key":k,children:e("div",{className:I,style:g,children:o(d)?e(l,{}):d})})};export{CarouselItem as default};
@@ -1 +1 @@
1
- import{makeGlobalSize as e,getStyleBackgroundByDevice as t,getGradientBgrStyleByDevice as o,getStyleShadow as r,makeStyle as a,getSingleColorVariable as s,getRadiusStyleActiveState as n}from"@gem-sdk/core";import{createStyle as d}from"@gem-sdk/system";import{getInitialWidthForCarouselItem as i}from"../../../common/helpers.js";let getStyle=k=>{let{style:l,contentType:m,parentStyle:p,parentSettings:c,background:b,customStyle:f}=k,u=e(p?.itemPadding),h=()=>{let e=["--radius"];return(e.forEach(e=>{delete l?.[e]}),"productImage"===m)?l:{...l,...a({bs:p?.borderContent?.border,bw:p?.borderContent?.width,bc:s(p?.borderContent?.color)}),...n({...p?.roundedContent,active:{...p?.roundedContent||{},radiusType:"custom"}})}},w={...f,...u&&u.padding,...i({spacing:p?.spacing,slidesToShow:c?.itemNumber??c?.slidesToShow,sneakPeak:c?.sneakPeak,sneakPeakType:c?.sneakPeakType,sneakPeakOffsetCenter:c?.sneakPeakOffsetCenter,sneakPeakOffsetForward:c?.sneakPeakOffsetForward,vertical:c?.vertical}),...t(b),...o(b,{desktop:!0,tablet:!0,mobile:!0})},g=d({...r({value:p?.carouselShadow,styleAppliedFor:"box-shadow",isEnableShadow:p?.hasActiveShadow})}),P=d({...w,...h()});return{carouselItemStyle:P,carouselItemInnerStyle:g}};export{getStyle};
1
+ import{makeGlobalSize as e,DEVICES as t,getResponsiveValueByScreen as r,getStyleBackgroundByDevice as o,getGradientBgrStyleByDevice as a,getStyleShadow as s,makeStyle as n,getSingleColorVariable as d,getRadiusStyleActiveState as i}from"@gem-sdk/core";import{createStyle as l}from"@gem-sdk/system";import{getInitialWidthForCarouselItem as k}from"../../../common/helpers.js";let getStyle=(m,p)=>{let{style:c,contentType:u,parentStyle:f,parentSettings:b,background:g,customStyle:h}=m,w=e(f?.itemPadding),P=t.reduce((e,t)=>{if("edit"===p)return{};let o=b?.rtl,a=o?"ml":"mr",s=r(f?.spacing,t);return{...e,[`--${a}${"desktop"!==t?`-${t}`:""}`]:s+"px"}},{}),y=()=>{let e=["--radius"];return(e.forEach(e=>{delete c?.[e]}),"productImage"===u)?c:{...c,...n({bs:f?.borderContent?.border,bw:f?.borderContent?.width,bc:d(f?.borderContent?.color)}),...i({...f?.roundedContent,active:{...f?.roundedContent||{},radiusType:"custom"}})}},C={...h,...w&&w.padding,...k({spacing:f?.spacing,slidesToShow:b?.itemNumber??b?.slidesToShow,sneakPeak:b?.sneakPeak,sneakPeakType:b?.sneakPeakType,sneakPeakOffsetCenter:b?.sneakPeakOffsetCenter,sneakPeakOffsetForward:b?.sneakPeakOffsetForward,vertical:b?.vertical}),...o(g),...a(g,{desktop:!0,tablet:!0,mobile:!0})},S=l({...s({value:f?.carouselShadow,styleAppliedFor:"box-shadow",isEnableShadow:f?.hasActiveShadow})}),v=l({...C,...y(),...P});return{carouselItemStyle:v,carouselItemInnerStyle:S}};export{getStyle};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as o,jsxs as e,Fragment as r}from"react/jsx-runtime";import{useCurrentDevice as t,filterToolbarPreview as a,isEmptyChildren as s}from"@gem-sdk/core";import{forwardRef as l,Children as i,isValidElement as d}from"react";import n from"../dot/Dots.js";import m from"../arrow/Arrow.js";import{mappingNavigationCarousel as c}from"../arrow/common/helpers.js";import{useCarousel as p}from"../../hooks/useCarousel.js";import{getClass as u}from"./common/classes.js";import{getStyle as h}from"./common/styles.js";import{getAttr as f}from"./common/attrs.js";import{getData as k}from"./common/helpers.js";let Carousel=l((l,w)=>{let{children:C,builderAttrs:S,builderProps:v,styles:y,isHiddenArrowWhenDisabled:g=!0,hiddenDotWhenOnlyOne:j,elmRef:b}=l,P=c(l.setting),x={...l,setting:P},{arrowButtonSize:z,arrowBackgroundColor:N,arrowGapToEachSide:T="16",roundedArrow:A,arrowIconSize:I,arrowCustomColor:W,arrowBorder:B,arrowShadow:D,showWhenHover:H}=P??{},{totalSlideItem:O,isInfinity:E,slider:G,currentSlide:F,localRef:U,showNavigation:q,isRenderDots:J,slideMaxIndex:K,handleDotClick:L,getItemsPerPage:M,sliderRef:Q,handleNextAndPrevSlide:R,dispatchEventSelectSlide:V,getNumberOfFullWidthShow:X}=p(x,w),{loopConfig:Y,arrowShowConfig:Z}=k(x),{rootClassRender:$,wrapperClassRender:_,wrapperInnerClass:oo,sliderClass:oe}=u(x),{rootStyleRender:or,wrapperStyleRender:ot,wrapperInnerStyle:oa}=h(x),{rootAttrRender:os,sliderAttr:ol}=f(x),oi=t(),od=P?.sneakPeak?.[oi],on=e=>{let r="next"===e,t=r?!E&&G?.track?.details?.abs===K:!E&&G?.track?.details?.abs===0;return o(m,{uid:v?.uid,custom:P?.arrowCustom??"",showArrow:Z,arrowButtonSize:z||{},arrowIconSize:I||{},arrowBackgroundColor:N||"",arrowCustomColor:W,gapToEachSize:T,showWhenHover:H,arrowBorder:B||{},arrowCorner:A||{},arrowShadow:D||{},onClick:o=>{o.stopPropagation(),R(e)},left:!r,disabled:t,vertical:P?.vertical,isHiddenWhenDisabled:g,rootId:l?.parentClass})},om=()=>o(r,{children:s(C)?o("div",{children:"No Slider"}):i.map(a(C),(e,r)=>d(e)?o(e.type,{...e.props,index:r,parentSettings:P,parentStyle:y,background:P?.background,parentUid:v?.uid,dispatchEventSelectSlide:V}):null)});return o("div",{ref:b,...os,className:$,style:or,children:e("div",{ref:U,...S,className:_,style:ot,children:[e("div",{className:oo,style:oa,children:[q&&on("prev"),o("div",{ref:Q,...ol,className:oe,children:om()}),q&&on("next")]}),J&&o(n,{showDots:P?.dot,dotStyle:P?.dotStyle,totalSlideItem:O,slideItemsPerPage:M(),currentSlide:F,enabledSneakPeak:od,vertical:P?.vertical,loop:Y,dotColor:P?.dotColor,dotGapToCarousel:P?.dotGapToCarousel,dotSize:P?.dotSize,dotActiveColor:P?.dotActiveColor,hiddenWhenOnlyOne:j,sneakPeakType:P?.sneakPeakType,numberOfFullWidthShow:X(oi),onHandleClick:L}),a(C,!0)]})})});export{Carousel as default};
2
+ import{jsx as e,jsxs as r,Fragment as o}from"react/jsx-runtime";import{forwardRef as t,Children as i,useState as l,useRef as s,useMemo as n,useCallback as a,isValidElement as d,cloneElement as m,createElement as p}from"react";import{filterToolbarPreview as c,useCurrentDevice as u,isEmptyChildren as h}from"@gem-sdk/core";import{mappingNavigationCarousel as S}from"../arrow/common/helpers.js";import{useCarousel as v}from"../../hooks/useCarousel.js";import{getData as w}from"./common/helpers.js";import{getClass as f}from"./common/classes.js";import{getStyle as C}from"./common/styles.js";import{getAttr as k}from"./common/attrs.js";import y from"../arrow/Arrow.js";import g from"../dot/Dots.js";import{Swiper as j}from"../swiper/Swiper.js";import"@gem-sdk/system";let Carousel=t((t,b)=>{let{children:O,builderAttrs:$,builderProps:P,styles:D,isHiddenArrowWhenDisabled:I=!0,hiddenDotWhenOnlyOne:x,elmRef:z,isEnableCheckHasScrollableContent:A,onSwiperReady:T}=t,B=S(t.setting),N={...t,setting:B},R=i.count(c(O))??0,[W,E]=l(null),{arrowButtonSize:H,arrowBackgroundColor:G,arrowGapToEachSide:F="16",roundedArrow:K,arrowIconSize:U,arrowCustomColor:q,arrowBorder:J,arrowShadow:L,showWhenHover:M}=B??{},Q=s({prevOrder:"",prevContent:"",version:0}),V=n(()=>{let e=B?.childItem||[],r=e.join("|"),o=[...e].sort().join("|"),t=Q.current;return t.prevOrder&&t.prevContent&&o===t.prevContent&&r!==t.prevOrder&&t.version++,t.prevOrder=r,t.prevContent=o,`reorder-${t.version}`},[B?.childItem]),{isInfinity:X,localRef:Y,sliderSettings:Z,totalSlideItem:_,currentSlide:ee,isRenderDots:er,showNavigation:eo,isScrollToStart:et,isScrollToEnd:ei,handleDotClick:el,getItemsPerPage:es,handleNextAndPrevSlide:en,dispatchEventSelectSlide:ea,getNumberOfFullWidthShow:ed,setCurrentSlide:em,shouldDuplicateSlides:ep,setIsScrollToStart:ec,setIsScrollToEnd:eu}=v(N,b,W,R),{loopConfig:eh,arrowShowConfig:eS}=w(N),{rootClassRender:ev,wrapperClassRender:ew,wrapperInnerClass:ef,sliderClass:eC}=f(N),{rootStyleRender:ek,wrapperStyleRender:ey,wrapperInnerStyle:eg}=C(N),{rootAttrRender:ej,sliderAttr:eb}=k(N),eO=u(),e$=B?.sneakPeak?.[eO],eP=r=>{let o="next"===r;if(R<=1)return null;let i=o?!X&&W?.isEnd:!X&&W?.isBeginning,l=o?!X&&ei:!X&&et;return e(y,{uid:P?.uid,custom:B?.arrowCustom??"",showArrow:eS,arrowButtonSize:H||{},arrowIconSize:U||{},arrowBackgroundColor:G||"",arrowCustomColor:q,gapToEachSize:F,showWhenHover:M,arrowBorder:J||{},arrowCorner:K||{},arrowShadow:L||{},onClick:e=>{e.stopPropagation(),en(r)},left:!o,disabled:A?l:i,vertical:B?.vertical,isHiddenWhenDisabled:I,rootId:t?.parentClass})},eD=a(e=>{E(e),T?.(e)},[]),eI=a(()=>{t?.isDisableResetSlide||(em(0),ec(!0),eu(!1))},[t?.isDisableResetSlide,em,eu,ec]),ex=i.toArray(c(O)).filter(d),ez=ep(R),eA=ez?2*R:R,eT=n(()=>{if(!ez)return ex;let e=ex.map((e,r)=>{if(!d(e))return e;let o=e.key,t=o?`${o}-duplicate-${r}`:`duplicate-${r}`;return m(e,{...e.props||{},key:t})});return[...ex,...e]},[ez,ex]),eB=n(()=>`${R}-${V}-${eT.length}-${Z?.direction}`,[R,V,eT.length,Z?.direction]);return e("div",{ref:z,...ej,className:ev,style:ek,children:r("div",{ref:Y,...$,className:ew,style:ey,children:[r("div",{className:ef,style:eg,children:[eo&&eP("prev"),p(j,{...eb,...Z,sliderClass:eC,thumbsSwiper:t?.thumbsSwiper,onSwiperReady:eD,totalSlides:_,key:eB,sliderOrder:V,onSwiperReset:eI},h(O)?e("div",{children:"No Slider"}):e(o,{children:eT.map((e,r)=>{if(!d(e))return null;let o=e.props??{};return p(e.type,{...o,key:e.key,indexKey:r.toString(),parentSettings:B,parentStyle:D,background:B?.background,parentUid:P?.uid,dispatchEventSelectSlide:ea})})})),eo&&eP("next")]}),er&&e(g,{dotStyle:B?.dotStyle,dotGapToCarousel:B?.dotGapToCarousel,vertical:B?.vertical,showDots:B?.dot,slideItemsPerPage:es(),enabledSneakPeak:e$,dotColor:B?.dotColor,dotActiveColor:B?.dotActiveColor,dotSize:B?.dotSize,sneakPeakType:B?.sneakPeakType,totalSlideItem:eA,hiddenWhenOnlyOne:x,currentSlide:ee,loop:eh,numberOfFullWidthShow:ed(eO),onHandleClick:el,slideDuplicated:ez}),c(O,!0)]})})});export{Carousel as default};
@@ -1,15 +1,17 @@
1
- import{template as o,RenderIf as r,isLocalEnv as e,baseAssetURL as s,WrapRenderChildren as t,RenderChildren as i}from"@gem-sdk/core";import a from"../arrow/Arrow.liquid.js";import l from"../dot/Dots.liquid.js";import{mappingNavigationCarousel as d}from"../arrow/common/helpers.js";import{getData as n}from"./common/helpers.js";import{getClass as p}from"./common/classes.js";import{getStyle as m}from"./common/styles.js";import{getAttr as c}from"./common/attrs.js";import{getSettingPreloadData as u,getStaticLocale as $}from"../../../helpers.js";let Carousel=f=>{let{children:v,builderAttrs:g,builderProps:w,styles:S,isHiddenArrowWhenDisabled:h=!0,hiddenDotWhenOnlyOne:C,rootId:y,rawChildren:j,conditionAppendJs:k}=f,z=d(f.setting),E={...f,setting:z},{arrowButtonSize:I,arrowBackgroundColor:A,arrowGapToEachSide:G="16",roundedArrow:P,arrowIconSize:T,arrowCustomColor:b,arrowBorder:q,arrowShadow:x,showWhenHover:B}=z??{},{uniqueComponentId:D,loopConfig:O,arrowShowConfig:W,stateData:_}=n(E),{rootClassRender:H,wrapperClassRender:M,wrapperInnerClass:N,sliderClass:R}=p(E),{rootStyleRender:U,wrapperStyleRender:V,wrapperInnerStyle:F,sliderStyle:J}=m(E),{rootAttrRender:K,sliderAttr:L}=c(E),Q=()=>r(e,`<script ${u('class="gps-link" delay',"src")}="{{ 'gp-carousel-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${u('class="gps-link" delay',"src")}="${s}/assets-v2/gp-carousel-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`),X=o=>{let r="next"===o;return a({uid:w?.uid,componentId:D,custom:z?.arrowCustom??"",showArrow:W,arrowButtonSize:I||{},arrowIconSize:T||{},arrowBackgroundColor:A??"",arrowCustomColor:b,gapToEachSize:G,showWhenHover:B,arrowBorder:q||{},arrowCorner:P||{},arrowShadow:x||{},left:!r,onClick:o=>{o.stopPropagation()},vertical:z?.vertical,isHiddenWhenDisabled:h,rootId:y})},Y=()=>o`
2
- ${j?.length?t({uid:w?.uid??"",customProps:j[0]?.customProps},j.map((r,e)=>{if(r)return o`${i({...r,index:e,parentSettings:z,parentStyle:S,background:z?.background,parentUid:w?.uid})}`})):v??`<div>${$("Carousel","no_slider")}</div>`}`;return o`
3
- <gp-carousel gp-data='${_}' ${K} style="${U}" class="${H}">
1
+ import{template as o,RenderIf as r,isLocalEnv as e,baseAssetURL as s,WrapRenderChildren as t,RenderChildren as i}from"@gem-sdk/core";import a from"../arrow/Arrow.liquid.js";import l from"../dot/Dots.liquid.js";import{mappingNavigationCarousel as d}from"../arrow/common/helpers.js";import{getData as n}from"./common/helpers.js";import{getClass as p}from"./common/classes.js";import{getStyle as m}from"./common/styles.js";import{getAttr as c}from"./common/attrs.js";import{getSettingPreloadData as u,getStaticLocale as $}from"../../../helpers.js";let Carousel=v=>{let{children:f,builderAttrs:g,builderProps:w,styles:S,isHiddenArrowWhenDisabled:h=!0,hiddenDotWhenOnlyOne:C,rootId:y,rawChildren:j,conditionAppendJs:k}=v,z=d(v.setting),E={...v,setting:z},{arrowButtonSize:I,arrowBackgroundColor:A,arrowGapToEachSide:G="16",roundedArrow:P,arrowIconSize:T,arrowCustomColor:b,arrowBorder:q,arrowShadow:x,showWhenHover:B}=z??{},{uniqueComponentId:D,loopConfig:O,arrowShowConfig:W,stateData:_}=n(E),{rootClassRender:H,wrapperClassRender:M,wrapperInnerClass:N,sliderClass:R}=p(E),{sliderWrapperStyle:U,rootStyleRender:V,wrapperStyleRender:F,wrapperInnerStyle:J}=m(E),{rootAttrRender:K,sliderAttr:L}=c(E),Q=()=>r(e,`<script ${u('class="gps-link" delay',"src")}="{{ 'gp-carousel-v2-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${u('class="gps-link" delay',"src")}="${s}/assets-v2/gp-carousel-v2-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`),X=o=>{let r="next"===o;return a({uid:w?.uid,componentId:D,custom:z?.arrowCustom??"",showArrow:W,arrowButtonSize:I||{},arrowIconSize:T||{},arrowBackgroundColor:A??"",arrowCustomColor:b,gapToEachSize:G,showWhenHover:B,arrowBorder:q||{},arrowCorner:P||{},arrowShadow:x||{},left:!r,onClick:o=>{o.stopPropagation()},vertical:z?.vertical,isHiddenWhenDisabled:h,rootId:y})},Y=()=>o`
2
+ ${j?.length?t({uid:w?.uid??"",customProps:j[0]?.customProps},j.map((r,e)=>{if(r)return o`${i({...r,index:e,parentSettings:z,parentStyle:S,background:z?.background,parentUid:w?.uid})}`})):f??`<div>${$("Carousel","no_slider")}</div>`}`;return o`
3
+ <gp-carousel gp-data='${_}' ${K} style="${V}" class="${H}">
4
4
  <div
5
5
  ${g}
6
6
  class="${M}"
7
- style="${V}"
7
+ style="${F}"
8
8
  >
9
- <div class="${N}" style="${F}">
9
+ <div class="${N}" style="${J}">
10
10
  ${X("prev")}
11
- <div ${L} class="${R}" style="${J}">
12
- ${Y()}
11
+ <div ${L} style="${U}">
12
+ <div class="${R}">
13
+ ${Y()}
14
+ </div>
13
15
  </div>
14
16
  ${X("next")}
15
17
  </div>
@@ -1 +1 @@
1
- import{createAttr as t}from"@gem-sdk/system";import{getData as r}from"./helpers.js";let getAttr=e=>{let{rootAttrs:o,builderProps:d,rootId:i}=e,{uniqueComponentId:s}=r(e),m=t({"data-id":`${d?.uid}`,id:`gp-root-carousel-${s}`,...o}),p=t({...(d?.uid||i)&&{id:`gp-carousel-${s}`}});return{rootAttrRender:m,sliderAttr:p}};export{getAttr};
1
+ import{createAttr as t}from"@gem-sdk/system";import{getData as r}from"./helpers.js";let getAttr=e=>{let{rootAttrs:i,builderProps:o,rootId:d}=e,{uniqueComponentId:l}=r(e),s=t({"data-id":`${o?.uid}`,id:`gp-root-carousel-${l}`,...i}),g=t({...(o?.uid||d)&&{id:`gp-carousel-${l}`},dir:e.setting?.rtl?"rtl":"ltr"});return{rootAttrRender:s,sliderAttr:g}};export{getAttr};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as e}from"@gem-sdk/core";import{createClass as l}from"@gem-sdk/system";import{getData as t}from"./helpers.js";let getClass=p=>{let o=["mobile","tablet","desktop"],{setting:i,builderProps:a,wrapperClass:g,rootClass:r,advanced:b,fullHeight:f,slidesClass:m}=p,{sliderSelector:x}=t(p),s=()=>{let e={flex:{desktop:"gp-flex",tablet:"tablet:gp-flex",mobile:"mobile:gp-flex"},block:{desktop:"gp-block",tablet:"tablet:gp-block",mobile:"mobile:gp-block"}},l={};return o.forEach(t=>{let p=i?.vertical?.[t]?"flex":"block",o=e[p][t];l[o]=!0}),l},c=()=>{let e={fullHeight:{desktop:"gp-h-full",tablet:"tablet:gp-h-full",mobile:"mobile:gp-h-full"},flex1:{desktop:"gp-flex-1",tablet:"tablet:gp-flex-1",mobile:"mobile:gp-flex-1"}},l={};return o.forEach(t=>{l[e.fullHeight[t]]=i?.vertical?.[t],l[e.flex1[t]]=i?.vertical?.[t]}),l},n=()=>{let e={flexCol:{desktop:"!gp-flex-col",tablet:"tablet:!gp-flex-col",mobile:"mobile:!gp-flex-col"},flexRow:{desktop:"!gp-flex-row",tablet:"tablet:!gp-flex-row",mobile:"mobile:!gp-flex-row"}},l={};return o.forEach(t=>{let p=i?.vertical?.[t]?"flexCol":"flexRow",o=e[p][t];l[o]=!0}),l},u=()=>{let e={wrap:{desktop:"!gp-flex-wrap",tablet:"tablet:!gp-flex-wrap",mobile:"mobile:!gp-flex-wrap"},nowrap:{desktop:"!gp-flex-nowrap",tablet:"tablet:!gp-flex-nowrap",mobile:"mobile:!gp-flex-nowrap"}},l={};return o.forEach(t=>{let p=i?.vertical?.[t]?"wrap":"nowrap",o=e[p][t];l[o]=!0}),l},h=()=>{let e={minHeightNone:{desktop:"!gp-min-h-0",tablet:"tablet:!gp-min-h-0",mobile:"mobile:!gp-min-h-0"},minHeightFull:{desktop:"!gp-min-h-full",tablet:"tablet:!gp-min-h-full",mobile:"mobile:!gp-min-h-full"}},l={};return o.forEach(t=>{let p=i?.vertical?.[t]?"minHeightNone":"minHeightFull",o=e[p][t];l[o]=!0}),l},d=l({...a?.uid&&{[a.uid]:!0},...g&&{[g]:!0},"gp-relative gp-my-0 tablet:gp-px-0 gp-max-w-full mobile:gp-px-0 gp-carousel-wrapper":!0,"!gp-flex":e(i?.vertical,"desktop"),"tablet:!gp-flex":e(i?.vertical,"tablet"),"mobile:!gp-flex":e(i?.vertical,"mobile"),...s()}),k=l({"gp-relative gp-flex gp-items-center gp-justify-between":!0,"!gp-h-full":f,...c(),...n()}),w=l({"gp-group/carousel gp-w-full gp-flex":!0,"!gp-flex-col":e(i?.vertical,"desktop"),"tablet:!flex-col":e(i?.vertical,"tablet"),"mobile:!flex-col":e(i?.vertical,"mobile"),...r&&{[r]:!0},...b?.cssClass&&{[b.cssClass]:!0}}),v=l({"gem-slider gp-h-full gp-overflow-hidden gp-select-none":!0,[x]:!0,...m&&{[m]:!0},...u(),...h()});return{rootClassRender:w,wrapperClassRender:d,wrapperInnerClass:k,sliderClass:v}};export{getClass};
1
+ import{getResponsiveValueByScreen as e}from"@gem-sdk/core";import{createClass as l}from"@gem-sdk/system";import{getData as t}from"./helpers.js";let getClass=p=>{let o=["mobile","tablet","desktop"],{setting:a,builderProps:g,wrapperClass:i,rootClass:r,advanced:b,fullHeight:f,slidesClass:m}=p,{sliderSelector:x}=t(p),s=()=>{let e={flex:{desktop:"gp-flex",tablet:"tablet:gp-flex",mobile:"mobile:gp-flex"},block:{desktop:"gp-block",tablet:"tablet:gp-block",mobile:"mobile:gp-block"}},l={};return o.forEach(t=>{let p=a?.vertical?.[t]?"flex":"block",o=e[p][t];l[o]=!0}),l},c=()=>{let e={fullHeight:{desktop:"gp-h-full",tablet:"tablet:gp-h-full",mobile:"mobile:gp-h-full"},flex1:{desktop:"gp-flex-1",tablet:"tablet:gp-flex-1",mobile:"mobile:gp-flex-1"}},l={};return o.forEach(t=>{l[e.fullHeight[t]]=a?.vertical?.[t],l[e.flex1[t]]=a?.vertical?.[t]}),l},n=()=>{let e={flexCol:{desktop:"!gp-flex-col",tablet:"tablet:!gp-flex-col",mobile:"mobile:!gp-flex-col"},flexRow:{desktop:"!gp-flex-row",tablet:"tablet:!gp-flex-row",mobile:"mobile:!gp-flex-row"}},l={};return o.forEach(t=>{let p=a?.vertical?.[t]?"flexCol":"flexRow",o=e[p][t];l[o]=!0}),l},u=()=>{let e={wrap:{desktop:"!gp-flex-wrap",tablet:"tablet:!gp-flex-wrap",mobile:"mobile:!gp-flex-wrap"},nowrap:{desktop:"!gp-flex-nowrap",tablet:"tablet:!gp-flex-nowrap",mobile:"mobile:!gp-flex-nowrap"}},l={};return o.forEach(t=>{let p=a?.vertical?.[t]?"wrap":"nowrap",o=e[p][t];l[o]=!0}),l},h=()=>{let e={minHeightNone:{desktop:"!gp-min-h-0",tablet:"tablet:!gp-min-h-0",mobile:"mobile:!gp-min-h-0"},minHeightFull:{desktop:"!gp-min-h-full",tablet:"tablet:!gp-min-h-full",mobile:"mobile:!gp-min-h-full"}},l={};return o.forEach(t=>{let p=a?.vertical?.[t]?"minHeightNone":"minHeightFull",o=e[p][t];l[o]=!0}),l},w=l({...g?.uid&&{[g.uid]:!0},...i&&{[i]:!0},"gp-relative gp-my-0 tablet:gp-px-0 gp-max-w-full mobile:gp-px-0 gp-carousel-wrapper":!0,"!gp-flex":e(a?.vertical,"desktop"),"tablet:!gp-flex":e(a?.vertical,"tablet"),"mobile:!gp-flex":e(a?.vertical,"mobile"),...s()}),d=l({"gp-relative gp-overflow-hidden gp-flex gp-items-center gp-justify-between":!0,"!gp-h-full":f,...c(),...n()}),k=l({"gp-group/carousel gp-w-full gp-flex":!0,"!gp-flex-col":e(a?.vertical,"desktop"),"tablet:!flex-col":e(a?.vertical,"tablet"),"mobile:!flex-col":e(a?.vertical,"mobile"),...r&&{[r]:!0},...b?.cssClass&&{[b.cssClass]:!0}}),v=l({"gem-slider-wrapper gp-flex gp-content-start gp-h-full gp-select-none":!0,[x]:!0,...m&&{[m]:!0},...u(),...h()});return{rootClassRender:k,wrapperClassRender:w,wrapperInnerClass:d,sliderClass:v}};export{getClass};
@@ -1 +1 @@
1
- import{makeStyleResponsive as t,getHeightByShapeGlobalSize as e,makeStyleWithDefault as o,getWidthByShapeGlobalSize as r,getBgByDevice as g,makeContainerWidthOrHeight as l,getResponsiveValueByScreen as a}from"@gem-sdk/core";import{createStyle as c}from"@gem-sdk/system";let getStyle=i=>{let d=["mobile","tablet","desktop"],{styles:m,setting:p,style:s,rootStyles:k}=i,{arrowGapToEachSide:n="16"}=p??{},b=t("h",e(m?.sizeSetting)),u=o("w",r(m?.sizeSetting,!0),{desktop:"--g-ct-w",tablet:"--g-ct-w",mobile:"--g-ct-w"}),S=()=>{let t={};return d.forEach(e=>{let o=a(p?.vertical,e),r=a(m?.spacing,e),g=o?`--rg${"desktop"!==e?`-${e}`:""}`:`--cg${"desktop"!==e?`-${e}`:""}`;t={...t,[g]:`${r??0}px`}}),t},y=c({...s,...b,...u,...g({backgroundColor:m?.backgroundColor,backgroundImage:m?.backgroundImage})}),$=c({...l({vertical:p?.vertical,dotStyle:p?.dotStyle}),gap:n+"px"}),w=c({...t("jc",m?.align),...k}),f=c({...S()});return{rootStyleRender:w,wrapperStyleRender:y,wrapperInnerStyle:$,sliderStyle:f}};export{getStyle};
1
+ import{makeStyleResponsive as e,getHeightByShapeGlobalSize as t,makeStyleWithDefault as o,getWidthByShapeGlobalSize as g,getBgByDevice as r,makeContainerWidthOrHeight as l}from"@gem-sdk/core";import{createStyle as i}from"@gem-sdk/system";let getStyle=d=>{let{styles:a,setting:c,style:m,rootStyles:n}=d,{arrowGapToEachSide:k="16"}=c??{},s=e("h",t(a?.sizeSetting)),b=o("w",g(a?.sizeSetting,!0),{desktop:"--g-ct-w",tablet:"--g-ct-w",mobile:"--g-ct-w"}),p=i({...m,...s,...b,...r({backgroundColor:a?.backgroundColor,backgroundImage:a?.backgroundImage})}),w=i({...l({vertical:c?.vertical,dotStyle:c?.dotStyle}),gap:k+"px"}),S=i({...e("jc",a?.align),...n}),h=i({...b,...s}),u=i({overflow:"hidden",flex:1,width:"100%",height:"100%"});return{rootStyleRender:S,wrapperStyleRender:p,wrapperInnerStyle:w,sliderStyle:h,sliderWrapperStyle:u}};export{getStyle};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{useRef as r,useState as t,useMemo as i,useEffect as s}from"react";import{getStyleSwiperContainer as n}from"./common/styles.js";function Swiper(o){let l=r(null),{children:p,totalSlides:c,onSwiperReset:a,onSwiperReady:u,sliderClass:m,sliderOrder:w,thumbsSwiper:d,...f}=o,[y,b]=t(!1),j=i(()=>d?{"thumbs-swiper":d}:{},[d]),g=n(),O="object"==typeof o.autoplay&&null!==o.autoplay?o.autoplay.pauseOnMouseEnter:void 0;return s(()=>{let e=async()=>{let e=await import("gem-sdk-swiper/element/bundle");e.register(),b(!0)};e()},[]),s(()=>{y&&(Object.assign(l.current,f),l.current.initialize(),u?.(l.current.swiper))},[y]),s(()=>{l.current?.swiper&&(l.current.swiper.destroy(!1,!1),Object.assign(l.current,f),l.current.initialize(),u(l.current.swiper),a())},[f.dir,f.loop,O,f.slidesPerView,u,a,f.spaceBetween,f.slidesOffsetBefore]),s(()=>{let e=l.current;e&&(Object.assign(e,f),e.swiper?.update())},[f]),e("swiper-container",{init:!1,ref:l,class:m,style:{...g,display:y?"block":"none"},...j,children:p})}export{Swiper};
@@ -0,0 +1 @@
1
+ import{jsx as e}from"react/jsx-runtime";import{getStyleSwiperSlider as r}from"./common/styles.js";function SwiperSlide(i){let{children:t,className:s,dir:l,...o}=i,m=r(i);return e("swiper-slide",{class:s,...o,style:m,children:t})}export{SwiperSlide};
@@ -0,0 +1 @@
1
+ import{createStyle as e}from"@gem-sdk/system";let getStyleSwiperSlider=e=>{let{dir:t,style:r}=e;return{"--h":"auto",...r,..."rtl"===t?{marginLeft:0}:{marginRight:0}}},getStyleSwiperContainer=()=>e({overflow:"hidden",width:"100%"});export{getStyleSwiperContainer,getStyleSwiperSlider};
@@ -1 +1 @@
1
- import{useKeenSlider as e}from"@gem-sdk/keen-slider/react";import{useState as t,useRef as r,useCallback as a,useMemo as n,useImperativeHandle as l,useEffect as o}from"react";import{useCurrentDevice as i,useEditorMode as s,useInteraction as u,DEVICES as d,getResponsiveValueByScreen as m}from"@gem-sdk/core";import{getData as c}from"../components/root/common/helpers.js";import p from"./useTrackPreviewPause.js";import{AutoPlayPlugin as k}from"../plugins/auto-play.js";import{CAROUSEL_ANIMATION as f,DEFAULT_PLAY_SPEED as g,AnimationPlugin as v}from"../plugins/animation.js";import{MutationPlugin as b}from"../plugins/mutation.js";import{FixSliderMoveBackwards as y}from"../plugins/fix-slider-move-backward.js";let useCarousel=(h,E)=>{let S;let{builderProps:x,moveToIdx:T,styles:P,setting:w,isHiddenArrowWhenDisabled:A=!0,elmRef:I,onChangeActive:N,onLoaded:O,onUpdated:_,onCreated:U,onClickArrow:M,onHandleChangeSlideByInteraction:j}=h,{loop:C,navigationEnable:F={desktop:!0},navigationStyle:D}=w??{},[$,L]=t(!1),[R,V]=t(0),[W,q]=t(0),[H,z]=t(w?.defaultCurrentSlider??0),[B,G]=t(!1),[J,K]=t(),{sliderSelector:Q}=c(h),X=r(),Y=r(!1),Z=r(T??0),ee=i(),et=s(),{isFirstPreviewClicked:er}=p(w?.runPreview),{onListener:ea,saveToElementInteractionData:en,getInteractionPreviousData:el,trigger:eo}=u(),ei=a(()=>{if(!w?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=m(w?.slidesToShow,t);e[t]=r?"auto"===r?4:Math.floor(r):0}),e},[w?.slidesToShow]),es=a(()=>{if(!w?.slidesToShow)return null;let e={};return d.forEach(t=>{let r=m(w?.slidesToShow,t);e[t]=r?"auto"===r?4:r:0}),e},[w?.slidesToShow]),eu=n(()=>{let e=es();if(e)return e;let t={};return d.forEach(e=>{let r=m(w?.sneakPeak,e),a=r?"center"===m(w?.sneakPeakType,e)?m(w?.sneakPeakOffsetCenter,e)??0:m(w?.sneakPeakOffsetForward,e)??0:0,n="center"===m(w?.sneakPeakType,e)?-2:-1,l=m(w?.itemNumber,e);"object"==typeof a&&(a=0),t[e]="number"==typeof l?l+a/100*n:"auto"}),t},[es,w?.itemNumber,w?.sneakPeak,w?.sneakPeakOffsetCenter,w?.sneakPeakOffsetForward,w?.sneakPeakType]),ed=n(()=>{let e=ei();return e||w?.itemNumber},[ei,w?.itemNumber]),em=a(e=>{let t="center"===m(w?.sneakPeakType,e)?2:1;return"number"==typeof m(ed,e,4)?m(ed,e,4)-t:void 0},[w?.sneakPeakType,ed]),ec=n(()=>e=>{let t="center"===m(w?.sneakPeakType,e)&&m(w?.sneakPeak,e)?"center":"auto";return t},[w?.sneakPeak,w?.sneakPeakType]),ep=n(()=>e=>{if("center"!==ec(e))return{};let t=w?.childItem?.length||1,r=Number(m(eu,e,1))||2;w?.sneakPeak?.[ee]&&(r=Math.trunc(Number(em(e))));let a=t-r,n=m(C,e,!1);return n?{max:void 0}:{max:a}},[w?.childItem,eu,ec,C,ee,w?.sneakPeak,em]),ek=()=>{let e=document.querySelectorAll(`.${Q}`);e&&e.forEach(e=>{e?.style.removeProperty("--cg"),e?.style.removeProperty("--cg-tablet"),e?.style.removeProperty("--cg-mobile"),e?.style.removeProperty("--rg"),e?.style.removeProperty("--rg-tablet"),e?.style.removeProperty("--rg-mobile")})},[ef,eg]=e({selector:`.gem-slider-item-${x?.uid}`,optionsChanged:e=>{e?.track?.details?.maxIdx===1/0?L(!0):L(!1),V(Math.ceil(e.slides.length)),q(e?.track?.details?.maxIdx)},defaultAnimation:{duration:P?.playSpeed===0?1:P?.playSpeed??500,easing:e=>{switch(w?.animationMode){case f.EASE_IN.value:return f.EASE_IN.formula(e);case f.EASE_OUT.value:return f.EASE_OUT.formula(e);case f.EASE_IN_OUT.value:return f.EASE_IN_OUT.formula(e);default:return f.DEFAULT.formula(e)}}},dragSpeed:2,renderMode:"precision",mode:"snap",loop:m(C,"desktop",!1),vertical:m(w?.vertical,"desktop"),rtl:w?.rtl,breakpoints:{"(max-width: 9999px)":{slides:{perView:m(eu,"desktop",4)??1,spacing:m(P?.spacing,"desktop"),origin:ec("desktop"),numberOfFullWidthShow:em("desktop")},loop:m(C,"desktop",!1),vertical:m(w?.vertical,"desktop"),drag:m("edit"==et?{desktop:!1}:w?.enableDrag,"desktop"),initial:T??0,range:ep("desktop")},"(max-width: 1024px)":{slides:{perView:m(eu,"tablet",4),spacing:m(P?.spacing,"tablet"),origin:ec("tablet"),numberOfFullWidthShow:em("tablet")},loop:m(C,"tablet",!1),vertical:m(w?.vertical,"tablet"),drag:m("edit"==et?{tablet:!1}:w?.enableDrag,"tablet"),initial:T||0,range:ep("tablet")},"(max-width: 767px)":{slides:{perView:m(eu,"mobile",4),spacing:m(P?.spacing,"mobile"),origin:ec("mobile"),numberOfFullWidthShow:em("mobile")},loop:m(C,"mobile",!1),vertical:m(w?.vertical,"mobile"),drag:m("edit"==et?{mobile:!1}:w?.enableDrag,"mobile"),initial:T??0,range:ep("mobile")}},slideChanged:e=>{z(e.track.details.rel),Z.current=e.track.details.rel,N&&N(e.track.details.rel)},created:e=>{G(!0),K(e),z(e.track?.details?.rel??0),U&&U(e),ek()},updated:e=>{O&&O(!0),_&&_(e)},autoplay:{delay:(w?.autoplayTimeout??1)*1e3,pauseOnHover:w?.pauseOnHover,enable:"edit"===et?!!er&&w?.runPreview&&w?.autoplay:w?.autoplay},animation:{type:w?.animationMode,speed:P?.playSpeed===0?1:P?.playSpeed??500},dragStarted:e=>{e.container.style.cursor="grabbing"},dragEnded:e=>{e.container.style.cursor="auto"},animationStarted:e=>{Y.current?e.options.defaultAnimation={duration:g,easing:e=>f.DEFAULT.formula(e)}:Y.current=!0},animationEnded:e=>{Y.current=!1,e.options.defaultAnimation={duration:P?.playSpeed===0?1:P?.playSpeed??500,easing(e){switch(w?.animationMode){case f.EASE_IN.value:return f.EASE_IN.formula(e);case f.EASE_OUT.value:return f.EASE_OUT.formula(e);case f.EASE_IN_OUT.value:return f.EASE_IN_OUT.formula(e);default:return f.EASE_IN.formula(e)}}}}},[b,k,v,y]),ev=n(()=>B&&!!R&&eg.current&&m(w?.dot,ee),[eg,B,w?.dot,R,ee]),eb=n(()=>{let e=m(F,ee),t=m(D,ee);return B&&eg.current&&e&&"none"!==t},[ee,eg,B,F,D]),ey=()=>{let e="auto"===m(eu,ee,1)?1:m(eu,ee,1);return e??1},eh=e=>{let t=e*ey();return t>=R-ey()&&(t=R-ey()),t},eE=(e,t)=>{let r=w?.sneakPeak?.[ee]?e:t?e:eh(e);eg.current?.moveToIdx(r),Z.current=r},eS=e=>{"next"===e?eg.current?.next():eg.current?.prev(),M&&(S&&clearTimeout(S),S=setTimeout(()=>M&&M(),500))};l(E,()=>({nextSlideInteraction:ew,previousSlideInteraction:eA,moveToSlideInteraction:eI}));let ex=e=>{eo({event:"gp:rollback:select-slide",selector:`[data-id="${x?.uid}"]`,element:I?.current}),eo({event:"gp:select-slide",selector:`[data-id="${x?.uid}"]`,data:e,element:I?.current})},eT=e=>{eg.current?.moveToIdx(e),j&&j(e)},eP=(e,t)=>{let{key:r,data:a,isRollback:n,element:l}=e,o=Math.max(eg.current?.track?.details?.rel??0,0);if(n&&void 0===a)return;if(n){if("specific"===t){let{previousData:e}=el(l,r);eT(Number(e))}else{let e="next"===t?o-1:o+1;eT(e)}return}let i="specific"===t?Math.max(Z.current,0):o;en(l,r,i.toString());let s="specific"===t?Number(a):"next"===t?o+1:o-1;eT(s)},ew=e=>{eP(e,"next")},eA=e=>{eP(e,"previous")},eI=e=>{eP(e,"specific")};return o(()=>{let e=`[data-id="${x?.uid}"]`;ea({event:"gp:change-next-slide",selector:e,elementRef:X},e=>{let{data:t,isRollback:r,uniqueStorageKey:a}=e||{};ew({element:X.current,data:t,isRollback:r,key:a})}),ea({event:"gp:change-previous-slide",selector:e,elementRef:X},e=>{let{data:t,isRollback:r,uniqueStorageKey:a}=e||{};eA({element:X.current,data:t,isRollback:r,key:a})}),ea({event:"gp:change-image-step",selector:e,elementRef:X},e=>{let{data:t,isRollback:r,uniqueStorageKey:a}=e||{};eI({element:X.current,data:t,isRollback:r,key:a})}),ea({event:"gp:change-index-slide",selector:e},t=>{let r=document.querySelector(e),{data:a,isRollback:n,uniqueStorageKey:l}=t||{};eI({element:r,data:a,isRollback:n,key:l})})},[]),o(()=>{eg.current?.update(eg.current?.options)},[eg,w]),o(()=>{let e=e=>{if(x?.uid!==e?.detail.componentUid)return;let t=eg?.current?.track.details.maxIdx,r=e?.detail.index||0;t&&r>t&&(r=t),eg.current?.moveToIdx(r),Z.current=r};return window.addEventListener("move-to-idx",e),()=>window.removeEventListener("move-to-idx",e)},[eg,x?.uid]),o(()=>{"number"==typeof T&&(Z.current=T,eg?.current?.moveToIdx(T))},[eg,T,A]),{isInfinity:$,totalSlideItem:R,slideMaxIndex:W,currentSlide:H,loaded:B,slider:J,previousIndex:Z,localRef:X,instanceRef:eg,showNavigation:eb,isRenderDots:ev,sliderRef:ef,handleDotClick:eE,getItemsPerPage:ey,handleNextAndPrevSlide:eS,dispatchEventSelectSlide:ex,getNumberOfFullWidthShow:em}};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=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))%2==0;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=>{if(!c||!c.params?.slidesPerView||e<=1)return!1;let t="auto"===eh.slidesPerView?c?.slidesPerViewDynamic():eh.slidesPerView;if(!Q||e<Number(t)||!C)return!1;let r=u(g?.sneakPeak,q,!1),i=r&&"center"===u(g?.sneakPeakType,q),n=Number.isNaN(Number(t))?1:Math.ceil(Number(t));i&&n%2==0&&(n+=1);let a=i?Math.max(1,Math.ceil(n/2)):1;return e<n+a},[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 +1 @@
1
- import{useCurrentDevice as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";let useDotsSetting=o=>{let{loop:r,enabledSneakPeak:s,slideItemsPerPage:i=1,currentSlide:g=1}=o,l=t(),m=e(r,l,!1),n=t=>s?t===g:t===(m?g:Math.ceil(g/i));return{isLoop:m,checkIsActive:n}};export{useDotsSetting};
1
+ import{useCurrentDevice as t,getResponsiveValueByScreen as e}from"@gem-sdk/core";let useDotsSetting=r=>{let{loop:o,enabledSneakPeak:s,slideItemsPerPage:i=1,currentSlide:l=1,totalSlideItem:n,slideDuplicated:u}=r,g=t(),m=e(o,g,!1),c=t=>{let e=u&&n,r=e?l-n/2:l;return s||m?t===l||t===r:t===Math.ceil(l/i)};return{isLoop:m,checkIsActive:c}};export{useDotsSetting};
@@ -1 +1 @@
1
- import"react/jsx-runtime";import"@gem-sdk/core";import"react";import"@gem-sdk/system";import"next/link";import"@gem-sdk/keen-slider/react";import e from"./settings/Carousel.js";import t from"./settings/CarouselItem.js";let carouselSetting={Carousel:e,CarouselItem:t};export{carouselSetting};
1
+ import"react/jsx-runtime";import"react";import"@gem-sdk/core";import"@gem-sdk/system";import"next/link";import t from"./settings/Carousel.js";import e from"./settings/CarouselItem.js";let carouselSetting={Carousel:t,CarouselItem:e};export{carouselSetting};
@@ -1 +1 @@
1
- let CAROUSEL_ANIMATION={EASE_IN:{value:"ease-in",formula:i=>i*i*i},EASE_OUT:{value:"ease-out",formula:i=>1-Math.pow(1-i,3)},EASE_IN_OUT:{value:"ease-in-out",formula:i=>i<.5?4*i*i*i:1-Math.pow(-2*i+2,3)/2},DEFAULT:{value:"default",formula:i=>1+--i*i*i*i*i}},DEFAULT_PLAY_SPEED=500,AnimationPlugin=i=>{let o;let a=i.options.animation??{};i.on("beforeOptionsChanged",n=>{clearTimeout(o),o=setTimeout(()=>{n.options.animation&&JSON.stringify(n.options.animation)!==JSON.stringify(a)&&(a=n.options.animation,i.update(n.options))},200)})};export{AnimationPlugin,CAROUSEL_ANIMATION,DEFAULT_PLAY_SPEED,AnimationPlugin as default};
1
+ let CAROUSEL_ANIMATION={EASE_IN:{value:"ease-in",formula:a=>a*a*a},EASE_OUT:{value:"ease-out",formula:a=>1-Math.pow(1-a,3)},EASE_IN_OUT:{value:"ease-in-out",formula:a=>a<.5?4*a*a*a:1-Math.pow(-2*a+2,3)/2},DEFAULT:{value:"default",formula:a=>1+--a*a*a*a*a}};export{CAROUSEL_ANIMATION};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as e,getAspectRatioGlobalSize as t,makeStyleResponsive as o,DEVICES as l,getValueByDevice as i,GRADIENT_BGR_KEY as a,cls as n}from"@gem-sdk/core";import{getImageSrc as r,createBlurDataURL as s}from"../../image/common/helpers.js";import{HREF_TO_SALES_PAGE as g}from"../../constant.js";let getContentPosition=(t,o,i)=>{let a={};return l.map(l=>{let n=e(t,l),r=e(o,l),s=e(i,l);a={...a,[l]:1>=(n?.cols?.length||1)?r:s}}),a},getAspectRatioSettings=(t,o)=>{let l={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},i={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},a={desktop:o?.desktop==="custom"?`${e(l,"desktop")}/${e(i,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e(l,"tablet")}/${e(i,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e(l,"mobile")}/${e(i,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return a},getEnableBgImageByDevice=(t,o)=>{if(!e(getBgImage(o),t))return!1;if(!o?.[t]){if("mobile"===t)return o?.tablet?.type==="image"||o?.desktop?.type==="image"&&!o?.tablet;if("tablet"===t)return o?.desktop?.type==="image"}return o?.[t]?.type==="image"},getBgImage=e=>{if(!e)return{};let t={desktop:e?.desktop?.image,tablet:e?.tablet?.image,mobile:e?.mobile?.image};return t},imagePlaceholder=e=>{let t=getBgImage(e);return{desktop:s(t?.desktop?.width??0,t?.desktop?.height??0),tablet:s(t?.tablet?.width??t?.desktop?.width??0,t?.tablet?.height??t?.desktop?.width??0),mobile:s(t?.mobile?.width??t?.tablet?.width??t?.desktop?.width??0,t?.mobile?.height??t?.tablet?.height??t?.desktop?.width??0)}},getBgImageByScreen=(t,o,l,i)=>{if(!t)return"";let n=getBgImage(t),s=e(t,o),g=l?`url(${imagePlaceholder(t)[o]})`:`url(${r(e(n,o),o,i)})`,p=s?.color?`, ${s.color}`:"";return s?.color?.includes(a)&&s?.type==="image"?`${g}${p}`:s?.color?.includes(a)&&s?.type!=="image"?`${s.color}`:s?.type==="image"?g:"url()"},getBackgroundImageHeroBanner=(e,t=!1,i=!1)=>{if(!e)return;let a={};return l.forEach(o=>{a={...a,[o]:getBgImageByScreen(e,o,t,i)}}),o("bgi",a)},getAttachmentDevice=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let l=e?.[o]?.attachment;t={...t,[o]:"fixed"===l?"fixed":"absolute"}}),t},horizontalAlign=(e,t,o)=>mapContentPositionToHorizontal(getContentPosition(e,t,o)),scrollToContentBanner=e=>e?.target?.closest("div.gp-hero-banner-row")?.scrollTo(0,0),getDataVideoHeroBannerResponsive=(e,t)=>{switch(e){case"desktop":if(t?.desktop?.type==="video")return{device:"desktop",data:t.desktop};break;case"tablet":if(t?.tablet?.type==="video")return{device:"tablet",data:t.tablet};if(!t?.tablet&&t?.desktop?.type==="video")return{device:"desktop",data:t.desktop};break;case"mobile":if(t?.mobile?.type==="video")return{device:"mobile",data:t.mobile};if(!t?.mobile&&t?.tablet?.type==="video")return{device:"tablet",data:t.tablet};if(!t?.mobile&&!t?.tablet?.type&&t?.desktop?.type==="video")return{device:"desktop",data:t.desktop}}},getVisibilityStyle=e=>e?Object.keys(e).filter(e=>["--d","--d-tablet","--d-mobile"].includes(e)).reduce((t,o)=>({...t,[o]:e?.[o]!=="none"?"flex":e?.[o]}),{}):{},getStyleAspectRatioHeroBannerCustom=(l,i,a)=>{let n=t(i),r=["desktop","mobile","tablet"];return r.forEach(t=>{let o=e(i,t),r=!!getDataVideoHeroBannerResponsive(t,l),s=o?.shape,g=o?.height,p="original"===s&&"fit-content"!==g,b=p&&r;b&&(n={...n,[t]:"16/9"}),a&&a[t]&&getDataVideoHeroBannerResponsive(t,l)?.data?.videoType==="html5"&&(n={...n,[t]:a[t]})}),o("aspect",n)},mapContentPositionToHorizontal=e=>{let t={};for(let o in e)"top"===e[o]?t[o]="start":"bottom"===e[o]?t[o]="end":t[o]="center";return t},getDisplayStyleByFitContent=(t,l)=>{let i={desktop:"none",tablet:"none",mobile:"none"},a=["desktop","mobile","tablet"];return a.forEach(o=>{let a=e(t,o),n=!!getDataVideoHeroBannerResponsive(o,l),r=a?.shape,s=a?.height,g="original"===r&&"fit-content"!==s&&!n;i={...i,[o]:g?"block":"none"}}),o("d",i)},getWidth=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let l=e?.[o];l&&(t={...t,[o]:"default"===l?"var(--g-ct-w, 1200px)":l})}),t},getPercentageVisible=(e,t)=>{let{top:o,height:l}=e,i=-l;if(o<i)return 0;if(o>t)return 100;let a=(o-i)/(t-i)*100;return Math.min(Math.max(a,0),100)},isScaleImage=({enableParallax:e=!1,attachment:t="scroll"})=>!!e||"fixed"===t,getHeightHeroBanner=(e,t)=>{let l={},i=["desktop","mobile","tablet"];return i.forEach(o=>{let i=isScaleImage({enableParallax:t,attachment:e[o]?.attachment});l={...l,[o]:t?"150%":i?"100vh":"100%"}}),o("h",l)},getWidthHeroBanner=(e,t)=>{let l={},i=["desktop","mobile","tablet"];return i.forEach(o=>{let i=isScaleImage({enableParallax:t,attachment:e[o]?.attachment});l={...l,[o]:i?"100vw":"100%"}}),o("w",l)},getTopHeroBanner=e=>{let t={},l=["desktop","mobile","tablet"];return l.forEach(o=>{t={...t,[o]:e[o]?.attachment==="fixed"?"0px":""}}),o("top",t)},getStyleHeroBannerBg=(e,t)=>{let o=getHeightHeroBanner(e,t),l=getWidthHeroBanner(e,t),i=getTopHeroBanner(e);return{...o,...l,...i}},calcRounderClipPath=(e,t=0,o=0)=>{let l=t,i=t;if(t>o?l=o:i=o,e>=999){let t=e-l;return t>0?t:0}let a=e-i;return a>0?a:0},getClipPath=(e,t)=>{if(!t||!e)return"inset(0 0 0)";let[o,l,i,a]=e.split(" ").map(e=>parseInt(e??"0")),{btlr:n,btrr:r,bbrr:s,bblr:g}=t,p=calcRounderClipPath(parseInt(n??"0"),o,a),b=calcRounderClipPath(parseInt(r??"0"),o,l),c=calcRounderClipPath(parseInt(s??"0"),l,i),d=calcRounderClipPath(parseInt(g??"0"),i,a);return`inset(0 0 0 round ${p}px ${b}px ${c}px ${d}px)`},getClassAlignBanner=e=>({"!gp-self-start":"left"===e.desktop,"!gp-self-center":"center"===e.desktop,"!gp-self-end":"right"===e.desktop,"tablet:!gp-self-start":"left"===e.tablet,"tablet:!gp-self-center":"center"===e.tablet,"tablet:!gp-self-end":"right"===e.tablet,"mobile:!gp-self-start":"left"===e.mobile,"mobile:!gp-self-center":"center"===e.mobile,"mobile:!gp-self-end":"right"===e.mobile}),get1ColLayout=({device:e,settingLayoutRes:t,contentPosition1ColRes:o})=>{let l=t[e]?.cols??[],i=l.length<=1,a=o[e];if(!i||!a)return;let n=["space-between","top","center","bottom"];return n.includes(a)?a:void 0},getClassSpaceBetween=(e,t)=>{let o=getResponsiveSetting(e),i=getResponsiveSetting(t),a={desktop:get1ColLayout({device:"desktop",settingLayoutRes:o,contentPosition1ColRes:i}),tablet:get1ColLayout({device:"tablet",settingLayoutRes:o,contentPosition1ColRes:i}),mobile:get1ColLayout({device:"mobile",settingLayoutRes:o,contentPosition1ColRes:i})},n={"space-between":{desktop:"!gp-h-full !gp-content-stretch [&>*]:!gp-justify-between [&>*:nth-child(2)]:gp-absolute [&>*:nth-child(2)]:gp-hidden",tablet:"tablet:!gp-h-full tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-between tablet:[&>*:nth-child(2)]:gp-absolute tablet:[&>*:nth-child(2)]:gp-hidden",mobile:"mobile:!gp-h-full mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-between mobile:[&>*:nth-child(2)]:gp-absolute mobile:[&>*:nth-child(2)]:gp-hidden"},top:{desktop:"!gp-content-stretch [&>*]:!gp-justify-start",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-start",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-start"},center:{desktop:"!gp-content-stretch [&>*]:!gp-justify-center",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-center",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-center"},bottom:{desktop:"!gp-content-stretch [&>*]:!gp-justify-end",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-end",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-end"}},r={};return l.forEach(e=>{let t=a[e],o=n?.[t]?.[e];r[o]=!0}),r},getClassSpaceBetweenLeftRight=e=>{let t=getResponsiveSetting(e),o=t?.desktop?.type=="left-distributed"||t?.desktop?.type=="right-distributed",l=t?.tablet?.type=="left-distributed"||t?.tablet?.type=="right-distributed",i=t?.mobile?.type=="left-distributed"||t?.mobile?.type=="right-distributed";return{"gp-h-full tablet:gp-h-auto mobile:gp-h-auto [&>*]:!gp-justify-between":o,"tablet:!gp-h-full tablet:[&>*]:!gp-justify-between mobile:gp-h-auto":l,"mobile:!gp-h-full mobile:[&>*]:!gp-justify-between":i,"mobile:!gp-h-auto":!i}},getClassForStretchContent=t=>{let o={desktop:"none",tablet:"none",mobile:"none"},l=["desktop","mobile","tablet"];return l.forEach(l=>{let i=e(t,l);o={...o,[l]:i}}),n("space-between"===o.desktop?"[&>*>*]:!gp-justify-between":"","space-between"===o.tablet?"tablet:[&>*>*]:!gp-justify-between ":`tablet:[&>*>*]:!gp-justify-${t?.tablet}`,"space-between"===o.mobile?"mobile:[&>*>*]:!gp-justify-between ":`mobile:[&>*>*]:!gp-justify-${t?.mobile}`)},getClassForContentByFitContent=(t,o)=>{let l={desktop:!1,tablet:!1,mobile:!1},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t,i),n=!!getDataVideoHeroBannerResponsive(i,o),r=a?.shape,s=a?.height,g="original"===r&&"fit-content"!==s;l={...l,[i]:g&&!n}}),n(l.desktop?"!gp-absolute":"",l.tablet?"tablet:!gp-absolute":"tablet:!gp-relative",l.mobile?"mobile:!gp-absolute":"mobile:!gp-relative")},getClassContentPosition=e=>{let t={center:"center",top:"start",bottom:"end","space-between":"between"},o=e.desktop||"center",l=e.tablet||o,i=e.mobile||l;return{[`gp-justify-${t[o||"center"]}`]:!!o,[`tablet:gp-justify-${t[l||"center"]}`]:!!l,[`mobile:gp-justify-${t[i||"center"]}`]:!!i}},getResponsiveSetting=e=>{let t=e.desktop,o=e.tablet?e.tablet:t,l=e.mobile?e.mobile:o;return{desktop:t,tablet:o,mobile:l}},showVideoType=e=>l.some(t=>{let o=i(e,t);return o?.type!=="color"&&o?.type!=="image"&&!!o&&(o?.videoType==="html5"&&o?.videoHtml5||o?.videoType==="youtube"&&o?.video)});function debounce(e,t){let o;return function(...l){clearTimeout(o),o=setTimeout(()=>e.apply(this,l),t)}}let fallbackImg="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkyMCIgaGVpZ2h0PSI5MDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8ZGVmcz4KICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJnLTE5MjAtOTAwIj4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjIwJSIgLz4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjUwJSIgLz4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjcwJSIgLz4KICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxyZWN0IHdpZHRoPSIxOTIwIiBoZWlnaHQ9IjkwMCIgZmlsbD0icmdiYSg1MSwgNTEsIDUxLCAwKSIgLz4KICAgIDxyZWN0IGlkPSJyIiB3aWR0aD0iMTkyMCIgaGVpZ2h0PSI5MDAiIGZpbGw9InVybCgjZy0xOTIwLTkwMCkiIC8+CiAgICA8YW5pbWF0ZSB4bGluazpocmVmPSIjciIgYXR0cmlidXRlTmFtZT0ieCIgZnJvbT0iLTE5MjAiIHRvPSIxOTIwIiBkdXI9IjFzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgIC8+CiAgPC9zdmc+",getBannerLink=e=>{let t=e?.link;return t?.type==="go-to-sales-page"?{type:"go-to-sales-page",link:g,target:"_self"}:t},formatHoverScale=e=>e?String(e).includes("%")?`${e}`:`${e}%`:"100%",opacityEnabledData=e=>{let{overlayColor:t,overlayOpacity:o}=e??{},l=!t?.normal||o?.normal=="0%"||!o?.normal;return{disableOpacity:l}},getOpacityHover=e=>{let{overlayOpacity:t}=e??{},o="number"!=typeof t?.hover||isNaN(t?.hover)?"string"==typeof t?.hover?`${parseInt(t?.hover)}%`:"":`${t?.hover}%`,l="number"!=typeof t?.normal||isNaN(t?.normal)?"string"==typeof t?.normal?`${parseInt(t?.normal)}%`:"0%":`${t?.normal}%`;return o||l};export{debounce,fallbackImg,formatHoverScale,getAspectRatioSettings,getAttachmentDevice,getBackgroundImageHeroBanner,getBannerLink,getBgImage,getClassAlignBanner,getClassContentPosition,getClassForContentByFitContent,getClassForStretchContent,getClassSpaceBetween,getClassSpaceBetweenLeftRight,getClipPath,getContentPosition,getDataVideoHeroBannerResponsive,getDisplayStyleByFitContent,getEnableBgImageByDevice,getOpacityHover,getPercentageVisible,getResponsiveSetting,getStyleAspectRatioHeroBannerCustom,getStyleHeroBannerBg,getVisibilityStyle,getWidth,horizontalAlign,imagePlaceholder,isScaleImage,mapContentPositionToHorizontal,opacityEnabledData,scrollToContentBanner,showVideoType};
1
+ import{getResponsiveValueByScreen as e,getAspectRatioGlobalSize as t,makeStyleResponsive as o,DEVICES as l,getValueByDevice as i,GRADIENT_BGR_KEY as a,cls as n}from"@gem-sdk/core";import{getImageSrc as r,createBlurDataURL as s}from"../../image/common/helpers.js";import{HREF_TO_SALES_PAGE as g}from"../../constant.js";let getContentPosition=(t,o,i)=>{let a={};return l.map(l=>{let n=e(t,l),r=e(o,l),s=e(i,l);a={...a,[l]:1>=(n?.cols?.length||1)?r:s}}),a},getAspectRatioSettings=(t,o)=>{let l={desktop:t?.desktop?.width,tablet:t?.tablet?.width,mobile:t?.mobile?.width},i={desktop:t?.desktop?.height,tablet:t?.tablet?.height,mobile:t?.mobile?.height},a={desktop:o?.desktop==="custom"?`${e(l,"desktop")}/${e(i,"desktop")}`:o?.desktop==="cover"?"unset":o?.desktop,tablet:o?.tablet==="custom"?`${e(l,"tablet")}/${e(i,"tablet")}`:o?.tablet==="cover"?"unset":o?.tablet,mobile:o?.mobile==="custom"?`${e(l,"mobile")}/${e(i,"mobile")}`:o?.mobile==="cover"?"unset":o?.mobile};return a},getEnableBgImageByDevice=(t,o)=>{if(!e(getBgImage(o),t))return!1;if(!o?.[t]){if("mobile"===t)return o?.tablet?.type==="image"||o?.desktop?.type==="image"&&!o?.tablet;if("tablet"===t)return o?.desktop?.type==="image"}return o?.[t]?.type==="image"},getBgImage=e=>{if(!e)return{};let t={desktop:e?.desktop?.image,tablet:e?.tablet?.image,mobile:e?.mobile?.image};return t},imagePlaceholder=e=>{let t=getBgImage(e);return{desktop:s(t?.desktop?.width??0,t?.desktop?.height??0),tablet:s(t?.tablet?.width??t?.desktop?.width??0,t?.tablet?.height??t?.desktop?.width??0),mobile:s(t?.mobile?.width??t?.tablet?.width??t?.desktop?.width??0,t?.mobile?.height??t?.tablet?.height??t?.desktop?.width??0)}},getBgImageByScreen=(t,o,l,i)=>{if(!t)return"";let n=getBgImage(t),s=e(t,o),g=l?`url(${imagePlaceholder(t)[o]})`:`url(${r(e(n,o),o,i)})`,p=s?.color?`, ${s.color}`:"";return s?.color?.includes(a)&&s?.type==="image"?`${g}${p}`:s?.color?.includes(a)&&s?.type!=="image"?`${s.color}`:s?.type==="image"?g:"url()"},getBackgroundImageHeroBanner=(e,t=!1,i=!1)=>{if(!e)return;let a={};return l.forEach(o=>{a={...a,[o]:getBgImageByScreen(e,o,t,i)}}),o("bgi",a)},getAttachmentDevice=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let l=e?.[o]?.attachment;t={...t,[o]:"fixed"===l?"fixed":"absolute"}}),t},horizontalAlign=(e,t,o)=>mapContentPositionToHorizontal(getContentPosition(e,t,o)),scrollToContentBanner=e=>e?.target?.closest("div.gp-hero-banner-row")?.scrollTo(0,0),getDataVideoHeroBannerResponsive=(e,t)=>{switch(e){case"desktop":if(t?.desktop?.type==="video")return{device:"desktop",data:t.desktop};break;case"tablet":if(t?.tablet?.type==="video")return{device:"tablet",data:t.tablet};if(!t?.tablet&&t?.desktop?.type==="video")return{device:"desktop",data:t.desktop};break;case"mobile":if(t?.mobile?.type==="video")return{device:"mobile",data:t.mobile};if(!t?.mobile&&t?.tablet?.type==="video")return{device:"tablet",data:t.tablet};if(!t?.mobile&&!t?.tablet?.type&&t?.desktop?.type==="video")return{device:"desktop",data:t.desktop}}},getVisibilityStyle=e=>e?Object.keys(e).filter(e=>["--d","--d-tablet","--d-mobile"].includes(e)).reduce((t,o)=>({...t,[o]:e?.[o]!=="none"?"flex":e?.[o]}),{}):{},getStyleAspectRatioHeroBannerCustom=(l,i,a)=>{let n=t(i),r=["desktop","mobile","tablet"];return r.forEach(t=>{let o=e(i,t),r=!!getDataVideoHeroBannerResponsive(t,l),s=o?.shape,g=o?.height,p="original"===s&&"fit-content"!==g,b=p&&r;b&&(n={...n,[t]:"16/9"}),a&&a[t]&&getDataVideoHeroBannerResponsive(t,l)?.data?.videoType==="html5"&&(n={...n,[t]:a[t]})}),o("aspect",n)},mapContentPositionToHorizontal=e=>{let t={};for(let o in e)"top"===e[o]?t[o]="start":"bottom"===e[o]?t[o]="end":t[o]="center";return t},getDisplayStyleByFitContent=(t,l)=>{let i={desktop:"none",tablet:"none",mobile:"none"},a=["desktop","mobile","tablet"];return a.forEach(o=>{let a=e(t,o),n=!!getDataVideoHeroBannerResponsive(o,l),r=a?.shape,s=a?.height,g="original"===r&&"fit-content"!==s&&!n;i={...i,[o]:g?"block":"none"}}),o("d",i)},getWidth=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let l=e?.[o];l&&(t={...t,[o]:"default"===l?"var(--g-ct-w, 1200px)":l})}),t},getPercentageVisible=(e,t)=>{let{top:o,height:l}=e,i=-l;if(o<i)return 0;if(o>t)return 100;let a=(o-i)/(t-i)*100;return Math.min(Math.max(a,0),100)},isScaleImage=({enableParallax:e=!1,attachment:t="scroll"})=>!!e||"fixed"===t,getHeightHeroBanner=(e,t)=>{let l={},i=["desktop","mobile","tablet"];return i.forEach(o=>{let i=isScaleImage({enableParallax:t,attachment:e[o]?.attachment});l={...l,[o]:t?"150%":i?"100vh":"100%"}}),o("h",l)},getWidthHeroBanner=(e,t)=>{let l={},i=["desktop","mobile","tablet"];return i.forEach(o=>{let i=isScaleImage({enableParallax:t,attachment:e[o]?.attachment});l={...l,[o]:i?"100vw":"100%"}}),o("w",l)},getTopHeroBanner=e=>{let t={},l=["desktop","mobile","tablet"];return l.forEach(o=>{t={...t,[o]:e[o]?.attachment==="fixed"?"0px":""}}),o("top",t)},getStyleHeroBannerBg=(e,t)=>{let o=getHeightHeroBanner(e,t),l=getWidthHeroBanner(e,t),i=getTopHeroBanner(e);return{...o,...l,...i}},calcRounderClipPath=(e,t=0,o=0)=>{let l=t,i=t;if(t>o?l=o:i=o,e>=999){let t=e-l;return t>0?t:0}let a=e-i;return a>0?a:0},getClipPath=(e,t)=>{if(!t)return"";let[o,l,i,a]=(e??"0 0 0 0").split(" ").map(e=>parseInt(e??"0")||0),{btlr:n,btrr:r,bbrr:s,bblr:g}=t,p=calcRounderClipPath(parseInt(n??"0")||0,o,a),b=calcRounderClipPath(parseInt(r??"0")||0,o,l),c=calcRounderClipPath(parseInt(s??"0")||0,l,i),d=calcRounderClipPath(parseInt(g??"0")||0,i,a);return[p,b,c,d].every(e=>0===e)?"":`inset(0 0 0 round ${p}px ${b}px ${c}px ${d}px)`},getClassAlignBanner=e=>({"!gp-self-start":"left"===e.desktop,"!gp-self-center":"center"===e.desktop,"!gp-self-end":"right"===e.desktop,"tablet:!gp-self-start":"left"===e.tablet,"tablet:!gp-self-center":"center"===e.tablet,"tablet:!gp-self-end":"right"===e.tablet,"mobile:!gp-self-start":"left"===e.mobile,"mobile:!gp-self-center":"center"===e.mobile,"mobile:!gp-self-end":"right"===e.mobile}),get1ColLayout=({device:e,settingLayoutRes:t,contentPosition1ColRes:o})=>{let l=t[e]?.cols??[],i=l.length<=1,a=o[e];if(!i||!a)return;let n=["space-between","top","center","bottom"];return n.includes(a)?a:void 0},getClassSpaceBetween=(e,t)=>{let o=getResponsiveSetting(e),i=getResponsiveSetting(t),a={desktop:get1ColLayout({device:"desktop",settingLayoutRes:o,contentPosition1ColRes:i}),tablet:get1ColLayout({device:"tablet",settingLayoutRes:o,contentPosition1ColRes:i}),mobile:get1ColLayout({device:"mobile",settingLayoutRes:o,contentPosition1ColRes:i})},n={"space-between":{desktop:"!gp-h-full !gp-content-stretch [&>*]:!gp-justify-between [&>*:nth-child(2)]:gp-absolute [&>*:nth-child(2)]:gp-hidden",tablet:"tablet:!gp-h-full tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-between tablet:[&>*:nth-child(2)]:gp-absolute tablet:[&>*:nth-child(2)]:gp-hidden",mobile:"mobile:!gp-h-full mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-between mobile:[&>*:nth-child(2)]:gp-absolute mobile:[&>*:nth-child(2)]:gp-hidden"},top:{desktop:"!gp-content-stretch [&>*]:!gp-justify-start",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-start",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-start"},center:{desktop:"!gp-content-stretch [&>*]:!gp-justify-center",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-center",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-center"},bottom:{desktop:"!gp-content-stretch [&>*]:!gp-justify-end",tablet:"tablet:!gp-content-stretch tablet:[&>*]:!gp-justify-end",mobile:"mobile:!gp-content-stretch mobile:[&>*]:!gp-justify-end"}},r={};return l.forEach(e=>{let t=a[e],o=n?.[t]?.[e];r[o]=!0}),r},getClassSpaceBetweenLeftRight=e=>{let t=getResponsiveSetting(e),o=t?.desktop?.type=="left-distributed"||t?.desktop?.type=="right-distributed",l=t?.tablet?.type=="left-distributed"||t?.tablet?.type=="right-distributed",i=t?.mobile?.type=="left-distributed"||t?.mobile?.type=="right-distributed";return{"gp-h-full tablet:gp-h-auto mobile:gp-h-auto [&>*]:!gp-justify-between":o,"tablet:!gp-h-full tablet:[&>*]:!gp-justify-between mobile:gp-h-auto":l,"mobile:!gp-h-full mobile:[&>*]:!gp-justify-between":i,"mobile:!gp-h-auto":!i}},getClassForStretchContent=t=>{let o={desktop:"none",tablet:"none",mobile:"none"},l=["desktop","mobile","tablet"];return l.forEach(l=>{let i=e(t,l);o={...o,[l]:i}}),n("space-between"===o.desktop?"[&>*>*]:!gp-justify-between":"","space-between"===o.tablet?"tablet:[&>*>*]:!gp-justify-between ":`tablet:[&>*>*]:!gp-justify-${t?.tablet}`,"space-between"===o.mobile?"mobile:[&>*>*]:!gp-justify-between ":`mobile:[&>*>*]:!gp-justify-${t?.mobile}`)},getClassForContentByFitContent=(t,o)=>{let l={desktop:!1,tablet:!1,mobile:!1},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t,i),n=!!getDataVideoHeroBannerResponsive(i,o),r=a?.shape,s=a?.height,g="original"===r&&"fit-content"!==s;l={...l,[i]:g&&!n}}),n(l.desktop?"!gp-absolute":"",l.tablet?"tablet:!gp-absolute":"tablet:!gp-relative",l.mobile?"mobile:!gp-absolute":"mobile:!gp-relative")},getClassContentPosition=e=>{let t={center:"center",top:"start",bottom:"end","space-between":"between"},o=e.desktop||"center",l=e.tablet||o,i=e.mobile||l;return{[`gp-justify-${t[o||"center"]}`]:!!o,[`tablet:gp-justify-${t[l||"center"]}`]:!!l,[`mobile:gp-justify-${t[i||"center"]}`]:!!i}},getResponsiveSetting=e=>{let t=e.desktop,o=e.tablet?e.tablet:t,l=e.mobile?e.mobile:o;return{desktop:t,tablet:o,mobile:l}},showVideoType=e=>l.some(t=>{let o=i(e,t);return o?.type!=="color"&&o?.type!=="image"&&!!o&&(o?.videoType==="html5"&&o?.videoHtml5||o?.videoType==="youtube"&&o?.video)});function debounce(e,t){let o;return function(...l){clearTimeout(o),o=setTimeout(()=>e.apply(this,l),t)}}let fallbackImg="data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkyMCIgaGVpZ2h0PSI5MDAiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8ZGVmcz4KICAgICAgPGxpbmVhckdyYWRpZW50IGlkPSJnLTE5MjAtOTAwIj4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjIwJSIgLz4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjUwJSIgLz4KICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSJyZ2JhKDUxLCA1MSwgNTEsIDApIiBvZmZzZXQ9IjcwJSIgLz4KICAgICAgPC9saW5lYXJHcmFkaWVudD4KICAgIDwvZGVmcz4KICAgIDxyZWN0IHdpZHRoPSIxOTIwIiBoZWlnaHQ9IjkwMCIgZmlsbD0icmdiYSg1MSwgNTEsIDUxLCAwKSIgLz4KICAgIDxyZWN0IGlkPSJyIiB3aWR0aD0iMTkyMCIgaGVpZ2h0PSI5MDAiIGZpbGw9InVybCgjZy0xOTIwLTkwMCkiIC8+CiAgICA8YW5pbWF0ZSB4bGluazpocmVmPSIjciIgYXR0cmlidXRlTmFtZT0ieCIgZnJvbT0iLTE5MjAiIHRvPSIxOTIwIiBkdXI9IjFzIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgIC8+CiAgPC9zdmc+",getBannerLink=e=>{let t=e?.link;return t?.type==="go-to-sales-page"?{type:"go-to-sales-page",link:g,target:"_self"}:t},formatHoverScale=e=>e?String(e).includes("%")?`${e}`:`${e}%`:"100%",opacityEnabledData=e=>{let{overlayColor:t,overlayOpacity:o}=e??{},l=!t?.normal||o?.normal=="0%"||!o?.normal;return{disableOpacity:l}},getOpacityHover=e=>{let{overlayOpacity:t}=e??{},o="number"!=typeof t?.hover||isNaN(t?.hover)?"string"==typeof t?.hover?`${parseInt(t?.hover)}%`:"":`${t?.hover}%`,l="number"!=typeof t?.normal||isNaN(t?.normal)?"string"==typeof t?.normal?`${parseInt(t?.normal)}%`:"0%":`${t?.normal}%`;return o||l};export{debounce,fallbackImg,formatHoverScale,getAspectRatioSettings,getAttachmentDevice,getBackgroundImageHeroBanner,getBannerLink,getBgImage,getClassAlignBanner,getClassContentPosition,getClassForContentByFitContent,getClassForStretchContent,getClassSpaceBetween,getClassSpaceBetweenLeftRight,getClipPath,getContentPosition,getDataVideoHeroBannerResponsive,getDisplayStyleByFitContent,getEnableBgImageByDevice,getOpacityHover,getPercentageVisible,getResponsiveSetting,getStyleAspectRatioHeroBannerCustom,getStyleHeroBannerBg,getVisibilityStyle,getWidth,horizontalAlign,imagePlaceholder,isScaleImage,mapContentPositionToHorizontal,opacityEnabledData,scrollToContentBanner,showVideoType};
@@ -1,4 +1,4 @@
1
- import{template as e,isLocalEnv as o,baseAssetURL as r,WrapRenderChildren as s,RenderChildren as t}from"@gem-sdk/core";import{getConditionRenderGalleryImages as i,getStyleInsideLayout as a,setDefaultWhenUndefineSetting as p}from"./common/common.js";import l from"./components/feature-gallery/FeatureImageWithGallery.liquid.js";import d from"./components/gallery-carousel/GalleryCarousel.liquid.js";import m from"./components/gallery-grid/GalleryGrid.liquid.js";import{getSettingPreloadData as c}from"../../../helpers.js";import{getShapeByLayout as u,sizeSettingDefaultForNewLayout as n}from"./common/productGallery.js";import{getProductImagesClassName as g}from"./composables/getProductImagesClassName.js";import{getProductImagesStyles as f}from"./composables/getProductImagesStyles.js";import{createAttr as $,LiquidIf as y,createClass as h,If as S,Liquid as j}from"@gem-sdk/system";import{getBorderActiveCss as v}from"./common/getBorderActiveCss.js";import{getStyleOfObject as F}from"../../helpers/function.js";let ProductImages=I=>{let P=p(I),{setting:C,styles:G,builderProps:D,style:b}=P,{rawChildren:z,pageContext:O}=I,{enableLazyLoadImage:_}=O??{},N={...C,...G},A=`
1
+ import{template as e,isLocalEnv as o,baseAssetURL as r,WrapRenderChildren as s,RenderChildren as t}from"@gem-sdk/core";import{getConditionRenderGalleryImages as i,getStyleInsideLayout as a,setDefaultWhenUndefineSetting as p}from"./common/common.js";import l from"./components/feature-gallery/FeatureImageWithGallery.liquid.js";import d from"./components/gallery-carousel/GalleryCarousel.liquid.js";import m from"./components/gallery-grid/GalleryGrid.liquid.js";import{getSettingPreloadData as c}from"../../../helpers.js";import{getShapeByLayout as u,sizeSettingDefaultForNewLayout as n}from"./common/productGallery.js";import{getProductImagesClassName as g}from"./composables/getProductImagesClassName.js";import{getProductImagesStyles as f}from"./composables/getProductImagesStyles.js";import{createAttr as $,LiquidIf as y,createClass as h,If as v,Liquid as S}from"@gem-sdk/system";import{getBorderActiveCss as j}from"./common/getBorderActiveCss.js";import{getStyleOfObject as F}from"../../helpers/function.js";let ProductImages=I=>{let P=p(I),{setting:C,styles:G,builderProps:D,style:b}=P,{rawChildren:z,pageContext:O}=I,{enableLazyLoadImage:_}=O??{},N={...C,...G},A=`
2
2
  {
3
3
  "id":${JSON.stringify(D?.uid)},
4
4
  "pageContext": ${JSON.stringify(O)},
@@ -18,15 +18,15 @@ import{template as e,isLocalEnv as o,baseAssetURL as r,WrapRenderChildren as s,R
18
18
  ${{...q}}
19
19
  >
20
20
  ${y("product.media.size > 1",d({builderPropUID:`gp-gallery-${D?.uid}`,...N,enableLazyLoadImage:_}))}
21
- ${S(k,m({builderPropUID:D?.uid,wrapperStyle:{...V},children:W(),...N,enableLazyLoadImage:_}))}
21
+ ${v(k,m({builderPropUID:D?.uid,wrapperStyle:{...V},children:W(),...N,enableLazyLoadImage:_}))}
22
22
  </div>
23
23
  `,K=()=>C?.borderActive?.border!=="none";return e`
24
- ${S(K(),y("product.media.size > 1",`<style>${v({settings:N,uid:D?.uid,type:"Liquid"})}</style>`),"")}
25
- ${j(`
24
+ ${v(K(),y("product.media.size > 1",`<style>${j({settings:N,uid:D?.uid,type:"Liquid"})}</style>`),"")}
25
+ ${S(`
26
26
  {% assign featured_image = product.featured_image %}
27
27
  ${y("variant != null and variant.featured_image != null","{% assign featured_image = variant.featured_image %}")}
28
28
  `)}
29
- <gp-product-images
29
+ <gp-product-images-v3
30
30
  gp-data='${A}'
31
31
  ${{...B}}
32
32
  style="${{...b}}"
@@ -37,8 +37,8 @@ import{template as e,isLocalEnv as o,baseAssetURL as r,WrapRenderChildren as s,R
37
37
  style="${y("product.media.size > 1",F(x),F(L))}"
38
38
  >
39
39
  ${l({builderPropUID:`gp-carousel-${D?.uid}`,...N,children:W(),enableLazyLoadImage:_})}
40
- ${S(!U,H())}
40
+ ${v(!U,H())}
41
41
  </div>
42
- </gp-product-images>
43
- ${S(o,`<script ${c('class="gps-link" delay',"src")}="{{ 'gp-product-images-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${c('class="gps-link" delay',"src")}="${r}/assets-v2/gp-product-images-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
42
+ </gp-product-images-v3>
43
+ ${v(o,`<script ${c('class="gps-link" delay',"src")}="{{ 'gp-product-images-v3-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${c('class="gps-link" delay',"src")}="${r}/assets-v2/gp-product-images-v3-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
44
44
  `};export{ProductImages as default};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as o}from"@gem-sdk/core";import{getShapeByLayout as t,getSliderPerShowConfig as r,getDotStyleConfig as e,getCarouselVerticalConfigByPosition as a,getAllowDotConfig as i}from"./productGallery.js";import{getDotStyleForOnlyFeaturedImage as n}from"./productFeaturedImage.js";let DEVICES=["desktop","mobile","tablet"],getGalleryCarouselSettingAttr=i=>{let n=t({shape:i.shape,shapeForBottom:i.shapeForBottom,shapeFor1Col:i.shapeFor1Col,shapeFor2Col:i.shapeFor2Col,shapeForFtOnly:i.shapeForFtOnly,shapeForInsideBottom:i.shapeForInsideBottom,shapeForInside:i.shapeForInside},i.position),d=r(n,i.position),l={desktop:"inside"===o(i.navigationPosition,"desktop"),tablet:"inside"===o(i.navigationPosition,"tablet"),mobile:"inside"===o(i.navigationPosition,"mobile")},s=DEVICES.reduce((o,t)=>(i.navigationPosition?.[t]&&(o[t]="none"!==i.navigationPosition[t]),o),{});return{...i?.loop&&{loop:i.loop},itemNumber:d,dot:{desktop:!1,tablet:!1,mobile:!1},dotStyle:e(),controlOverContent:l,...i?.dragToScroll&&{enableDrag:{desktop:i.dragToScroll,tablet:i.dragToScroll,mobile:i.dragToScroll}},vertical:a(i.position),...i?.arrowIcon&&{arrowCustom:i.arrowIcon},arrowIconSize:i.arrowIconSize||{desktop:24},...i?.arrowIconColor&&{arrowCustomColor:i.arrowIconColor},...i?.arrowNavColor&&{arrowBackgroundColor:i.arrowNavColor},...i?.arrowNavBorder&&{arrowBorder:{desktop:i.arrowNavBorder}},...i?.arrowNavRadius&&{roundedArrow:{desktop:i.arrowNavRadius}},...i?.arrowNavShadow&&{arrowShadow:{desktop:i.arrowNavShadow}},sneakPeakType:{desktop:"center"},arrowGapToEachSide:"16",navigationStyle:i.navigationPosition,navigationEnable:s,arrowButtonSize:{desktop:{width:void 0,height:void 0}},animationMode:i?.ftAnimationMode,enableAction:{desktop:!0}}},getFeaturedCarouselSettingAttr=t=>{let r={desktop:"inside"===o(t.ftNavigationPosition,"desktop"),tablet:"inside"===o(t.ftNavigationPosition,"tablet"),mobile:"inside"===o(t.ftNavigationPosition,"mobile")},e=DEVICES.reduce((o,r)=>(t.ftNavigationPosition?.[r]&&(o[r]="none"!==t.ftNavigationPosition[r]),o),{});return{...t?.ftLoop&&{loop:t.ftLoop},itemNumber:{desktop:1},dot:i(),dotStyle:n({position:t.position,dotStyle:t.ftDotStyle}),dotSize:t.ftDotSize??{desktop:12},dotGapToCarousel:t.ftDotGapToCarousel??{desktop:16},dotColor:t.ftDotColor??{desktop:"bg-1"},dotActiveColor:t.ftDotActiveColor??{desktop:"line-3"},controlOverContent:r,...t?.ftDragToScroll&&{enableDrag:{desktop:t.ftDragToScroll,tablet:t.ftDragToScroll,mobile:t.ftDragToScroll}},...t?.ftArrowIcon&&{arrowCustom:t.ftArrowIcon},arrowIconSize:t.ftArrowIconSize||{desktop:24},...t?.ftArrowIconColor&&{arrowCustomColor:t.ftArrowIconColor},...t?.ftArrowNavColor&&{arrowBackgroundColor:t.ftArrowNavColor},...t?.ftArrowNavBorder&&{arrowBorder:{desktop:t.ftArrowNavBorder}},...t?.ftArrowNavRadius&&{roundedArrow:{desktop:t.ftArrowNavRadius}},...t?.ftArrowNavShadow&&{arrowShadow:{desktop:t.ftArrowNavShadow}},sneakPeakType:{desktop:"center"},arrowGapToEachSide:"16",animationMode:t?.ftAnimationMode,...t?.ftNavigationPosition&&{navigationStyle:t.ftNavigationPosition},navigationEnable:e,arrowButtonSize:{desktop:{width:void 0,height:void 0}},enableAction:{desktop:!0}}};export{getFeaturedCarouselSettingAttr,getGalleryCarouselSettingAttr};
1
+ import{getResponsiveValueByScreen as o}from"@gem-sdk/core";import{getDotStyleConfig as t,getCarouselVerticalConfigByPosition as r,getAllowDotConfig as a}from"./productGallery.js";import{getDotStyleForOnlyFeaturedImage as e}from"./productFeaturedImage.js";let DEVICES=["desktop","mobile","tablet"],getGalleryCarouselSettingAttr=a=>{let e={desktop:"inside"===o(a.navigationPosition,"desktop"),tablet:"inside"===o(a.navigationPosition,"tablet"),mobile:"inside"===o(a.navigationPosition,"mobile")},i=DEVICES.reduce((o,t)=>(a.navigationPosition?.[t]&&(o[t]="none"!==a.navigationPosition[t]),o),{});return{...a?.loop&&{loop:a.loop},itemNumber:{desktop:"auto",tablet:"auto",mobile:"auto"},dot:{desktop:!1,tablet:!1,mobile:!1},dotStyle:t(),controlOverContent:e,...a?.dragToScroll&&{enableDrag:{desktop:a.dragToScroll,tablet:a.dragToScroll,mobile:a.dragToScroll}},vertical:r(a.position),...a?.arrowIcon&&{arrowCustom:a.arrowIcon},arrowIconSize:a.arrowIconSize||{desktop:24},...a?.arrowIconColor&&{arrowCustomColor:a.arrowIconColor},...a?.arrowNavColor&&{arrowBackgroundColor:a.arrowNavColor},...a?.arrowNavBorder&&{arrowBorder:{desktop:a.arrowNavBorder}},...a?.arrowNavRadius&&{roundedArrow:{desktop:a.arrowNavRadius}},...a?.arrowNavShadow&&{arrowShadow:{desktop:a.arrowNavShadow}},arrowGapToEachSide:"16",navigationStyle:a.navigationPosition,navigationEnable:i,arrowButtonSize:{desktop:{width:void 0,height:void 0}},animationMode:a?.ftAnimationMode,enableAction:{desktop:!0}}},getFeaturedCarouselSettingAttr=t=>{let r={desktop:"inside"===o(t.ftNavigationPosition,"desktop"),tablet:"inside"===o(t.ftNavigationPosition,"tablet"),mobile:"inside"===o(t.ftNavigationPosition,"mobile")},i=DEVICES.reduce((o,r)=>(t.ftNavigationPosition?.[r]&&(o[r]="none"!==t.ftNavigationPosition[r]),o),{});return{...t?.ftLoop&&{loop:t.ftLoop},itemNumber:{desktop:1},dot:a(),dotStyle:e({position:t.position,dotStyle:t.ftDotStyle}),dotSize:t.ftDotSize??{desktop:12},dotGapToCarousel:t.ftDotGapToCarousel??{desktop:16},dotColor:t.ftDotColor??{desktop:"bg-1"},dotActiveColor:t.ftDotActiveColor??{desktop:"line-3"},controlOverContent:r,...t?.ftDragToScroll&&{enableDrag:{desktop:t.ftDragToScroll,tablet:t.ftDragToScroll,mobile:t.ftDragToScroll}},...t?.ftArrowIcon&&{arrowCustom:t.ftArrowIcon},arrowIconSize:t.ftArrowIconSize||{desktop:24},...t?.ftArrowIconColor&&{arrowCustomColor:t.ftArrowIconColor},...t?.ftArrowNavColor&&{arrowBackgroundColor:t.ftArrowNavColor},...t?.ftArrowNavBorder&&{arrowBorder:{desktop:t.ftArrowNavBorder}},...t?.ftArrowNavRadius&&{roundedArrow:{desktop:t.ftArrowNavRadius}},...t?.ftArrowNavShadow&&{arrowShadow:{desktop:t.ftArrowNavShadow}},sneakPeakType:{desktop:"center"},arrowGapToEachSide:"16",animationMode:t?.ftAnimationMode,...t?.ftNavigationPosition&&{navigationStyle:t.ftNavigationPosition},navigationEnable:i,arrowButtonSize:{desktop:{width:void 0,height:void 0}},enableAction:{desktop:!0}}};export{getFeaturedCarouselSettingAttr,getGalleryCarouselSettingAttr};
@@ -1 +1 @@
1
- import{DEVICES as e,getResponsiveValueByScreen as l}from"@gem-sdk/core";function composeClasses(e){return e.split(" ").reduce((e,l)=>(e[l]=!0,e),{})}let getWrapperClasses=({extraClass:e,isAddOverFlowClass:l=!1})=>{let s="gp-relative gp-w-full";return e&&(s+=` ${e}`),l&&(s+=" gp-overflow-hidden"),composeClasses(s)},getGalleryWrapperClasses=({extraClass:e})=>{let l="gallery-wrapper gp-product-images-gallery gp-flex gp-overflow-hidden gp-max-w-full gp-max-h-full data-[only-image=true]:gp-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getGalleryGridWrapperClasses=({extraClass:e})=>{let l="product-feature-image grid-gallery gp-flex !gp-h-fit gp-w-full gp-flex-wrap scrollbar-track:gp-rounded-2xl scrollbar-thumb:gp-rounded-2xl scrollbar-thumb:gp-bg-gray-400";return e&&(l+=` ${e}`),composeClasses(l)},getFtImageWithGalleryClasses=({extraClass:e})=>{let l="gp-flex !gp-h-fit gp-relative gp-overflow-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getImageGalleryWrapperClasses=({extraClass:e})=>{let l="gp-flex gp-h-fit gp-max-w-full gp-overflow-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedImageCarouselClasses=({extraClass:e})=>{let l="`gp-flex-1 gp-w-full gp-feature-image-carousel";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedImageClasses=({setting:s,extraClass:r})=>{let a=r??"";return e.forEach(e=>{let r=l(s?.ftNavigationPosition,e),t="desktop"!==e?`${e}:`:"";"outside"===r?a+=` ${t}gp-px-[16px]`:a+=` ${t}gp-px-0`}),composeClasses(a)},getFeaturedImageGalleryClasses=({settings:s,extraClass:r})=>{let a=r??"gp-flex-1 gp-w-full carousel-gallery";return e.forEach(e=>{let r=l(s?.navigationPosition,e),t=l(s?.type,e),g=l(s?.position,e),p="desktop"!==e?`${e}:`:"";"outside"===r&&"slider"===t&&["bottom-center"].includes(g||"")?a+=` ${p}gp-px-[16px]`:a+=` ${p}gp-px-0`}),composeClasses(a)},getGalleryItemClasses=({extraClass:e})=>{let l="gp-image-item gp-flex gp-items-center gp-justify-center gp-group gp-relative gp-overflow-hidden gp-cursor-pointer data-[outline=deactive]:after:!gp-border-transparent";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedCarouselItemClasses=({extraClass:e})=>{let l="gp-group gp-z-0 gp-flex !gp-min-w-full !gp-max-w-full gp-w-full gp-relative gp-items-start gp-justify-center gp-overflow-hidden gp-outline-1 -gp-outline-offset-1 gp-image-item gp-ft-image-item data-[outline=active]:gp-outline";return e&&(l+=` ${e}`),composeClasses(l)};export{getFeaturedCarouselItemClasses,getFeaturedImageCarouselClasses,getFeaturedImageClasses,getFeaturedImageGalleryClasses,getFtImageWithGalleryClasses,getGalleryGridWrapperClasses,getGalleryItemClasses,getGalleryWrapperClasses,getImageGalleryWrapperClasses,getWrapperClasses};
1
+ import{DEVICES as e,getResponsiveValueByScreen as l}from"@gem-sdk/core";function composeClasses(e){return e.split(" ").reduce((e,l)=>(e[l]=!0,e),{})}let getWrapperClasses=({extraClass:e,isAddOverFlowClass:l=!1})=>{let s="gp-relative gp-w-full";return e&&(s+=` ${e}`),l&&(s+=" gp-overflow-hidden"),composeClasses(s)},getGalleryWrapperClasses=({extraClass:e})=>{let l="gallery-wrapper gp-product-images-gallery gp-flex gp-overflow-hidden gp-max-w-full gp-max-h-full data-[only-image=true]:gp-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getGalleryGridWrapperClasses=({extraClass:e})=>{let l="product-feature-image grid-gallery gp-flex !gp-h-fit gp-w-full gp-flex-wrap scrollbar-track:gp-rounded-2xl scrollbar-thumb:gp-rounded-2xl scrollbar-thumb:gp-bg-gray-400 gp-z-1";return e&&(l+=` ${e}`),composeClasses(l)},getFtImageWithGalleryClasses=({extraClass:e})=>{let l="gp-flex !gp-h-fit gp-relative gp-overflow-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getImageGalleryWrapperClasses=({extraClass:e})=>{let l="gp-flex gp-h-fit gp-max-w-full gp-overflow-hidden";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedImageCarouselClasses=({extraClass:e})=>{let l="`gp-flex-1 gp-w-full gp-feature-image-carousel";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedImageClasses=({setting:s,extraClass:r})=>{let a=r??"";return e.forEach(e=>{let r=l(s?.ftNavigationPosition,e),t="desktop"!==e?`${e}:`:"";"outside"===r?a+=` ${t}gp-px-[16px]`:a+=` ${t}gp-px-0`}),composeClasses(a)},getFeaturedImageGalleryClasses=({settings:s,extraClass:r})=>{let a=r??"gp-flex-1 gp-w-full carousel-gallery";return e.forEach(e=>{let r=l(s?.navigationPosition,e),t=l(s?.type,e),g=l(s?.position,e),p="desktop"!==e?`${e}:`:"";"outside"===r&&"slider"===t&&["bottom-center"].includes(g||"")?a+=` ${p}gp-px-[16px]`:a+=` ${p}gp-px-0`}),composeClasses(a)},getGalleryItemClasses=({extraClass:e})=>{let l="gp-image-item gp-flex gp-items-center gp-justify-center gp-group gp-relative gp-overflow-hidden gp-cursor-pointer";return e&&(l+=` ${e}`),composeClasses(l)},getFeaturedCarouselItemClasses=({extraClass:e})=>{let l="gp-group gp-z-0 gp-flex !gp-min-w-full !gp-max-w-full gp-w-full gp-relative gp-items-start gp-justify-center gp-overflow-hidden gp-outline-1 -gp-outline-offset-1 gp-image-item gp-ft-image-item data-[outline=active]:gp-outline";return e&&(l+=` ${e}`),composeClasses(l)};export{getFeaturedCarouselItemClasses,getFeaturedImageCarouselClasses,getFeaturedImageClasses,getFeaturedImageGalleryClasses,getFtImageWithGalleryClasses,getGalleryGridWrapperClasses,getGalleryItemClasses,getGalleryWrapperClasses,getImageGalleryWrapperClasses,getWrapperClasses};
@@ -1,5 +1,5 @@
1
- import{composeBorderCss as e,composeCornerCss as t}from"@gem-sdk/core";let getBorderActiveCss=({settings:i,uid:r,type:g})=>{let l="Liquid"===g?`.gem-slider-item-${r}-{{product.id}}.gp-gallery-image-item::after, .gem-slider-item-gp-gallery-${r}-{{product.id}}.gp-gallery-image-item::after`:`.gem-slider-item-active.gem-slider-item-${r}.gp-gallery-image-item::after`;return`
2
- ${l} {
1
+ import{composeBorderCss as e,composeCornerCss as t}from"@gem-sdk/core";let getBorderActiveCss=({settings:i,uid:r,type:a})=>{let g="Liquid"===a?`.gem-slider-item-${r}-{{product.id}}.gp-gallery-image-item::after, .gem-slider-item-gp-gallery-${r}-{{product.id}}.gp-gallery-image-item.gem-slider-item-active::after`:`.gem-slider-item-active.gem-slider-item-${r}.gp-gallery-image-item::after`;return`
2
+ ${g} {
3
3
  content: "";
4
4
  height: 100%;
5
5
  width: 100%;
@@ -13,4 +13,8 @@ import{composeBorderCss as e,composeCornerCss as t}from"@gem-sdk/core";let getBo
13
13
  .gem-slider-item-${r}-{{product.id}}.gp-gallery-image-item[data-outline=active]:after, .gem-slider-item-gp-gallery-${r}-{{product.id}}.gp-gallery-image-item[data-outline=active]:after {
14
14
  pointer-events: none;
15
15
  }
16
+ .gem-slider-item-${r}-{{product.id}}.gp-gallery-image-item[data-outline=none]:after{
17
+ pointer-events: none;
18
+ border-color: transparent !important;
19
+ }
16
20
  `};export{getBorderActiveCss};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as e,DEVICES as o}from"@gem-sdk/core";let isFeatureMedia=e=>!!e&&["EXTERNAL_VIDEO","MODEL_3D","VIDEO"].includes(e),getZoomLenClass=()=>"!gp-flex gp-absolute gp-opacity-0 gp-h-[150px] gp-w-[150px] gp-cursor-none gp-rounded-full gp-bg-no-repeat gp-shadow-glasses gp-bg-white gp-pointer-events-none",getZoomImageClass=()=>"gp-absolute gp-left-0 gp-top-0 gp-opacity-0 gp-transition-opacity gp-bg-white gp-pointer-events-none",getDotStyleForOnlyFeaturedImage=t=>{let a={};return o.forEach(o=>{let r=e(t.position,o),g=e(t.dotStyle,o);a={...a,[o]:"only-feature"===r?g:"none"}}),a},checkRenderFeaturedCarousel=e=>{let o=["desktop","mobile","tablet"],t=!1;return o.forEach(o=>{let a=checkShowCarousel(e,o);checkShowCarousel(e,o)&&(t=a)}),t},checkShowCarousel=(o,t)=>"only-feature"!==e(o.position,t)||"none"!==e(o.ftNavigationPosition,t)||"none"!==e(o.ftDotStyle,t)||!0===e(o.ftLoop,t)||!0===o.ftDragToScroll;export{checkRenderFeaturedCarousel,getDotStyleForOnlyFeaturedImage,getZoomImageClass,getZoomLenClass,isFeatureMedia};
1
+ import{getResponsiveValueByScreen as e,DEVICES as t,makeStyleResponsive as o}from"@gem-sdk/core";let isFeatureMedia=e=>!!e&&["EXTERNAL_VIDEO","MODEL_3D","VIDEO"].includes(e),getZoomLenClass=()=>"!gp-flex gp-absolute gp-opacity-0 gp-h-[150px] gp-w-[150px] gp-cursor-none gp-rounded-full gp-bg-no-repeat gp-shadow-glasses gp-bg-white gp-pointer-events-none",getZoomImageClass=()=>"gp-absolute gp-left-0 gp-top-0 gp-opacity-0 gp-transition-opacity gp-bg-white gp-pointer-events-none",getDotStyleForOnlyFeaturedImage=o=>{let r={};return t.forEach(t=>{let a=e(o.position,t),g=e(o.dotStyle,t);r={...r,[t]:"only-feature"===a?g:"none"}}),r},getVideoHeight=e=>{if(!e)return null;let t={};return Object.keys(e).forEach(o=>{let r=e[o];r&&(t[o]="cover"===r?"100%":"auto")}),o("h",t)},checkRenderFeaturedCarousel=e=>{let t=["desktop","mobile","tablet"],o=!1;return t.forEach(t=>{let r=checkShowCarousel(e,t);checkShowCarousel(e,t)&&(o=r)}),o},checkShowCarousel=(t,o)=>"only-feature"!==e(t.position,o)||"none"!==e(t.ftNavigationPosition,o)||"none"!==e(t.ftDotStyle,o)||!0===e(t.ftLoop,o)||!0===t.ftDragToScroll;export{checkRenderFeaturedCarousel,getDotStyleForOnlyFeaturedImage,getVideoHeight,getZoomImageClass,getZoomLenClass,isFeatureMedia};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as e,cls as t}from"@gem-sdk/core";import{getDisplayStyle as o}from"./common.js";import{convertUnitToNumber as i}from"../../product-images/common/productFeaturedImage.js";let getZoomDisplay=t=>o(o=>!e(t,o),"flex"),HORIZONTAL_LAYOUT=["right","left","inside-left","inside-right"],sizeSettingDefaultForNewLayout={desktop:{shape:"square",shapeValue:"1/1",width:"20%",height:void 0,shapeLinked:!0}},getCarouselVerticalConfigByPosition=t=>{let o=["desktop","mobile","tablet"],i={};return o.forEach(o=>{let a=e(t,o),l=HORIZONTAL_LAYOUT.includes(a);i=l?{...i,[o]:!0}:{...i,[o]:!1}}),i},getMinHeightByPosition=(o,i)=>{let a=["desktop","mobile","tablet"],l=getCarouselVerticalConfigByPosition(o),r={};return a.forEach(t=>{let o=e(i,t),a="desktop"===t?"":`${t}:`;r[`${a}!gp-min-h-0`]=!!l[t]&&"outside"===o,r[`${a}!gp-min-h-full`]=!(l[t]&&"outside"===o)}),t({...r})},getEditorMinHeightClass=(t,o,i)=>{let a=getCarouselVerticalConfigByPosition(o),l=e(i,t);return a[t]&&"outside"===l?"!gp-min-h-0":"!gp-min-h-full"},getAllowDotConfig=()=>({desktop:!0,tablet:!0,mobile:!0}),getDotStyleConfig=()=>({desktop:"none",tablet:"none",mobile:"none"}),getSettingWidthForGridItem=t=>{let o={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.shapeByLayout,i)?.width,l=e(t.itemSpacing,i),r=0;a?.includes("%")&&(r=100/parseInt(a)),o={...o,[i]:r?`calc(${a} - ${l} * ${r-1} / ${r})`:a}}),o},getSettingWidthForCarouselItem=t=>{let o={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.position,i),l="bottom-center"===a,r=e(t.shapeByLayout,i)?.width;o={...o,[i]:l&&r?.includes("px")?r:"100%"}}),o},getSettingMinWidthForCarouselItem=t=>{let o={},a=["desktop","mobile","tablet"];return a.forEach(a=>{let l=e(t.position,a),r=i(e(t.spacing,a),5),s="bottom-center"===l||"inside-bottom"===l,n=e(t.shapeByLayout,a)?.width,g="100%";if(s){let e=100/i(n,20);g=n?.includes("px")?n:n?.includes("%")?`calc(${n} - ${(e-1)*r/e}px)`:"100%"}o={...o,[a]:g}}),o},checkDisplayGalleryByWidth=t=>{let o={desktop:!0,tablet:!0,mobile:!0},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.shapeByLayout,i)?.width??"100%",l=0!==parseInt(a);o={...o,[i]:l}}),o},getSliderPerShowConfig=(t,o)=>{let i={desktop:"auto",tablet:"auto",mobile:"auto"},a=["desktop","mobile","tablet"];return a.forEach(a=>{let l=e(o,a),r="bottom-center"===l||"inside-bottom"===l,s=e(t,a)?.width,n="auto";s?.includes("%")&&(n=100>parseInt(s)?100/parseInt(s):"auto"),i={...i,[a]:r?n:"auto"}}),i},getShapeByLayout=(t,o)=>{let i={},a=["desktop","mobile","tablet"];return a.forEach(a=>{let l=e(o,a);switch(l){case"bottom-center":case"bottom-left":i={...i,[a]:e(t.shapeForBottom,a)};break;case"inside-bottom":i={...i,[a]:e(t.shapeForInsideBottom??sizeSettingDefaultForNewLayout,a)};break;case"left":case"right":i={...i,[a]:e(t.shape,a)};break;case"inside-left":case"inside-right":i={...i,[a]:e(t.shapeForInside??sizeSettingDefaultForNewLayout,a)};break;case"only-feature":i={...i,[a]:e(t.shapeForFtOnly,a)};break;case"one-col":i={...i,[a]:e(t.shapeFor1Col,a)};break;case"two-col":i={...i,[a]:e(t.shapeFor2Col,a)}}}),i};export{HORIZONTAL_LAYOUT,checkDisplayGalleryByWidth,getAllowDotConfig,getCarouselVerticalConfigByPosition,getDotStyleConfig,getEditorMinHeightClass,getMinHeightByPosition,getSettingMinWidthForCarouselItem,getSettingWidthForCarouselItem,getSettingWidthForGridItem,getShapeByLayout,getSliderPerShowConfig,getZoomDisplay,sizeSettingDefaultForNewLayout};
1
+ import{getResponsiveValueByScreen as e,cls as t}from"@gem-sdk/core";import{getDisplayStyle as o}from"./common.js";import{convertUnitToNumber as i}from"../../product-images/common/productFeaturedImage.js";let getZoomDisplay=t=>o(o=>!e(t,o),"flex"),HORIZONTAL_LAYOUT=["right","left","inside-left","inside-right"],sizeSettingDefaultForNewLayout={desktop:{shape:"square",shapeValue:"1/1",width:"20%",height:void 0,shapeLinked:!0}},getCarouselVerticalConfigByPosition=t=>{let o=["desktop","mobile","tablet"],i={};return o.forEach(o=>{let a=e(t,o),l=HORIZONTAL_LAYOUT.includes(a);i=l?{...i,[o]:!0}:{...i,[o]:!1}}),i},getMinHeightByPosition=(o,i)=>{let a=["desktop","mobile","tablet"],l=getCarouselVerticalConfigByPosition(o),s={};return a.forEach(t=>{let o=e(i,t),a="desktop"===t?"":`${t}:`;s[`${a}!gp-min-h-0`]=!!l[t]&&"outside"===o,s[`${a}!gp-min-h-full`]=!(l[t]&&"outside"===o)}),t({...s})},getEditorMinHeightClass=(t,o,i)=>{let a=getCarouselVerticalConfigByPosition(o),l=e(i,t);return a[t]&&"outside"===l?"!gp-min-h-0":"!gp-min-h-full"},getAllowDotConfig=()=>({desktop:!0,tablet:!0,mobile:!0}),getDotStyleConfig=()=>({desktop:"none",tablet:"none",mobile:"none"}),getSettingWidthForGridItem=t=>{let o={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.shapeByLayout,i)?.width,l=e(t.itemSpacing,i),s=0;a?.includes("%")&&(s=100/parseInt(a)),o={...o,[i]:s?`calc(${a} - ${l} * ${s-1} / ${s})`:a}}),o},getSettingWidthForCarouselItem=t=>{let o={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.position,i),l="bottom-center"===a,s=e(t.shapeByLayout,i)?.width;o={...o,[i]:l&&s?.includes("px")?s:"100%"}}),o},getSettingMinWidthForCarouselItem=t=>{let o={},a=["desktop","mobile","tablet"];return a.forEach(a=>{let l=e(t.position,a),s=i(e(t.spacing,a),5),r="bottom-center"===l||"inside-bottom"===l,n=e(t.shapeByLayout,a)?.width,g="100%";if(r){let e=100/i(n,20);g=n?.includes("px")?n:n?.includes("%")?`calc(${n} - ${(e-1)*s/e}px)`:"100%"}o={...o,[a]:g}}),o},checkDisplayGalleryByWidth=t=>{let o={desktop:!0,tablet:!0,mobile:!0},i=["desktop","mobile","tablet"];return i.forEach(i=>{let a=e(t.shapeByLayout,i)?.width??"100%",l=0!==parseInt(a);o={...o,[i]:l}}),o},getShapeByLayout=(t,o)=>{let i={},a=["desktop","mobile","tablet"];return a.forEach(a=>{let l=e(o,a);switch(l){case"bottom-center":case"bottom-left":i={...i,[a]:e(t.shapeForBottom,a)};break;case"inside-bottom":i={...i,[a]:e(t.shapeForInsideBottom??sizeSettingDefaultForNewLayout,a)};break;case"left":case"right":i={...i,[a]:e(t.shape,a)};break;case"inside-left":case"inside-right":i={...i,[a]:e(t.shapeForInside??sizeSettingDefaultForNewLayout,a)};break;case"only-feature":i={...i,[a]:e(t.shapeForFtOnly,a)};break;case"one-col":i={...i,[a]:e(t.shapeFor1Col,a)};break;case"two-col":i={...i,[a]:e(t.shapeFor2Col,a)}}}),i};export{HORIZONTAL_LAYOUT,checkDisplayGalleryByWidth,getAllowDotConfig,getCarouselVerticalConfigByPosition,getDotStyleConfig,getEditorMinHeightClass,getMinHeightByPosition,getSettingMinWidthForCarouselItem,getSettingWidthForCarouselItem,getSettingWidthForGridItem,getShapeByLayout,getZoomDisplay,sizeSettingDefaultForNewLayout};