@gem-sdk/components 4.0.0-staging.1204 → 4.0.0-staging.1205

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 (328) hide show
  1. package/dist/cjs/builder.js +1 -1
  2. package/dist/cjs/carousel/components/arrow/common/classes.js +1 -1
  3. package/dist/cjs/carousel/components/arrow/common/helpers.js +1 -1
  4. package/dist/cjs/carousel/components/arrow/common/styles.js +11 -11
  5. package/dist/cjs/carousel/components/dot/common/helpers.js +1 -1
  6. package/dist/cjs/carousel/components/item/CarouselItem.js +1 -1
  7. package/dist/cjs/carousel/components/item/common/styles.js +1 -1
  8. package/dist/cjs/carousel/components/root/Carousel.js +1 -1
  9. package/dist/cjs/carousel/components/root/Carousel.liquid.js +6 -8
  10. package/dist/cjs/carousel/components/root/common/attrs.js +1 -1
  11. package/dist/cjs/carousel/components/root/common/classes.js +1 -1
  12. package/dist/cjs/carousel/components/root/common/styles.js +1 -1
  13. package/dist/cjs/carousel/hooks/useCarousel.js +1 -1
  14. package/dist/cjs/carousel/hooks/useDotsSetting.js +1 -1
  15. package/dist/cjs/carousel/index.js +1 -1
  16. package/dist/cjs/carousel/plugins/animation.js +1 -1
  17. package/dist/cjs/carousel/plugins/auto-play.js +1 -0
  18. package/dist/cjs/carousel/plugins/fix-slider-move-backward.js +1 -0
  19. package/dist/cjs/carousel/plugins/mutation.js +1 -0
  20. package/dist/cjs/carousel/settings/configs/presets.js +4 -4
  21. package/dist/cjs/carousel/settings/configs/settings-v2.js +1 -1
  22. package/dist/cjs/carousel-v3/common/helpers.js +1 -0
  23. package/dist/cjs/carousel-v3/components/arrow/Arrow.js +10 -0
  24. package/dist/cjs/carousel-v3/components/arrow/Arrow.liquid.js +26 -0
  25. package/dist/cjs/carousel-v3/components/arrow/common/classes.js +1 -0
  26. package/dist/cjs/carousel-v3/components/arrow/common/helpers.js +1 -0
  27. package/dist/cjs/carousel-v3/components/arrow/common/styles.js +33 -0
  28. package/dist/cjs/carousel-v3/components/dot/Dots.js +2 -0
  29. package/dist/cjs/carousel-v3/components/dot/Dots.liquid.js +7 -0
  30. package/dist/cjs/carousel-v3/components/dot/common/classes.js +1 -0
  31. package/dist/cjs/carousel-v3/components/dot/common/helpers.js +1 -0
  32. package/dist/cjs/carousel-v3/components/dot/common/styles.js +1 -0
  33. package/dist/cjs/carousel-v3/components/item/CarouselItem.js +2 -0
  34. package/dist/cjs/carousel-v3/components/item/CarouselItem.liquid.js +22 -0
  35. package/dist/cjs/carousel-v3/components/item/common/classes.js +1 -0
  36. package/dist/cjs/carousel-v3/components/item/common/styles.js +1 -0
  37. package/dist/cjs/carousel-v3/components/root/Carousel.js +2 -0
  38. package/dist/cjs/carousel-v3/components/root/Carousel.liquid.js +23 -0
  39. package/dist/cjs/carousel-v3/components/root/common/attrs.js +1 -0
  40. package/dist/cjs/carousel-v3/components/root/common/classes.js +1 -0
  41. package/dist/cjs/carousel-v3/components/root/common/helpers.js +1 -0
  42. package/dist/cjs/carousel-v3/components/root/common/styles.js +1 -0
  43. package/dist/cjs/carousel-v3/components/swiper/Swiper.js +1 -0
  44. package/dist/cjs/carousel-v3/hooks/useCarouseItem.js +1 -0
  45. package/dist/cjs/carousel-v3/hooks/useCarousel.js +1 -0
  46. package/dist/cjs/carousel-v3/hooks/useDotsSetting.js +1 -0
  47. package/dist/cjs/carousel-v3/hooks/useTrackPreviewPause.js +1 -0
  48. package/dist/cjs/carousel-v3/index.js +1 -0
  49. package/dist/cjs/{carousel → carousel-v3}/next.js +1 -1
  50. package/dist/cjs/carousel-v3/plugins/animation.js +1 -0
  51. package/dist/cjs/carousel-v3/settings/Carousel.js +5 -0
  52. package/dist/cjs/carousel-v3/settings/CarouselItem.js +1 -0
  53. package/dist/cjs/carousel-v3/settings/configs/presets.js +114 -0
  54. package/dist/cjs/carousel-v3/settings/configs/settings-v2.js +3 -0
  55. package/dist/cjs/carousel-v3/settings/configs/ui-v1.js +1 -0
  56. package/dist/cjs/carousel-v3/settings/configs/ui-v2.js +1 -0
  57. package/dist/cjs/grid/components/row/common/helpers.js +1 -1
  58. package/dist/cjs/index.js +1 -1
  59. package/dist/cjs/index.liquid.js +1 -1
  60. package/dist/cjs/marquee/hooks/useMarqueeScrollToItem.js +1 -1
  61. package/dist/cjs/marquee/settings/Marquee.js +1 -1
  62. package/dist/cjs/next.js +1 -1
  63. package/dist/cjs/product/components/product-images/ProductGalleryCarousel.js +1 -1
  64. package/dist/cjs/product/components/product-images/ProductGalleryCarousel.liquid.js +1 -1
  65. package/dist/cjs/product/components/product-images/ProductImagesLightBox.js +1 -1
  66. package/dist/cjs/product/components/product-images-v2/ProductImagesV2.liquid.js +6 -6
  67. package/dist/cjs/product/components/product-images-v2/common/attrs.js +1 -1
  68. package/dist/cjs/product/components/product-images-v2/common/classes.js +1 -1
  69. package/dist/cjs/product/components/product-images-v2/common/common.js +1 -1
  70. package/dist/cjs/product/components/product-images-v2/common/getBorderActiveCss.js +1 -5
  71. package/dist/cjs/product/components/product-images-v2/common/productFeaturedImage.js +1 -1
  72. package/dist/cjs/product/components/product-images-v2/common/productGallery.js +1 -1
  73. package/dist/cjs/product/components/product-images-v2/common/styles.js +1 -1
  74. package/dist/cjs/product/components/product-images-v2/components/child/ProductFeaturedImageCarousel.js +1 -1
  75. package/dist/cjs/product/components/product-images-v2/components/child/ProductGalleryGrid.js +2 -2
  76. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  77. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +13 -13
  78. package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
  79. package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +7 -7
  80. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.js +1 -1
  81. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +4 -4
  82. package/dist/cjs/product/components/product-images-v2/components/lightbox/ProductImagesLightBox.js +1 -1
  83. package/dist/cjs/product/components/product-images-v2/hooks/useProductFeaturedImageCarousel.js +1 -1
  84. package/dist/cjs/product/components/product-images-v2/hooks/useProductGalleryGrid.js +1 -1
  85. package/dist/cjs/product/components/product-images-v3/ProductImageV2.js +26 -0
  86. package/dist/cjs/product/components/product-images-v3/ProductImagesV2.liquid.js +44 -0
  87. package/dist/cjs/product/components/product-images-v3/common/attrs.js +1 -0
  88. package/dist/cjs/product/components/product-images-v3/common/classes.js +1 -0
  89. package/dist/cjs/product/components/product-images-v3/common/common.js +1 -0
  90. package/dist/cjs/product/components/product-images-v3/common/getBorderActiveCss.js +20 -0
  91. package/dist/cjs/product/components/product-images-v3/common/hoverAction.js +1 -0
  92. package/dist/cjs/product/components/product-images-v3/common/productFeaturedImage.js +1 -0
  93. package/dist/cjs/product/components/product-images-v3/common/productGallery.js +1 -0
  94. package/dist/cjs/product/components/product-images-v3/common/styles.js +1 -0
  95. package/dist/cjs/product/components/product-images-v3/components/child/MediaIcon.js +2 -0
  96. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -0
  97. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeaturedImageCarousel.js +1 -0
  98. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +2 -0
  99. package/dist/cjs/product/components/product-images-v3/components/child/ProductGalleryGrid.js +2 -0
  100. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.js +1 -0
  101. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +118 -0
  102. package/dist/cjs/product/components/product-images-v3/components/feature-only/OnlyFeatureImage.js +2 -0
  103. package/dist/cjs/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.js +1 -0
  104. package/dist/cjs/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.liquid.js +46 -0
  105. package/dist/cjs/product/components/product-images-v3/components/gallery-grid/GalleryGrid.js +2 -0
  106. package/dist/cjs/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +93 -0
  107. package/dist/cjs/product/components/product-images-v3/components/lightbox/ButtonOpenLightBox.js +2 -0
  108. package/dist/cjs/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +2 -0
  109. package/dist/cjs/product/components/product-images-v3/composables/getProductImagesAttr.js +1 -0
  110. package/dist/cjs/product/components/product-images-v3/composables/getProductImagesClassName.js +1 -0
  111. package/dist/cjs/product/components/product-images-v3/composables/getProductImagesStyles.js +1 -0
  112. package/dist/cjs/product/components/product-images-v3/hooks/useFeatureImageWithGallery.js +1 -0
  113. package/dist/cjs/product/components/product-images-v3/hooks/useFilterImagesByVariant.js +1 -0
  114. package/dist/cjs/product/components/product-images-v3/hooks/useGalleryCarousel.js +1 -0
  115. package/dist/cjs/product/components/product-images-v3/hooks/useProductFeaturedImageCarousel.js +1 -0
  116. package/dist/cjs/product/components/product-images-v3/hooks/useProductGalleryGrid.js +1 -0
  117. package/dist/cjs/product/components/product-list/ProductListCarouselLayout.liquid.js +4 -4
  118. package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -0
  119. package/dist/cjs/product/components/product-list-v3/ProductList.liquid.js +205 -0
  120. package/dist/cjs/product/components/product-list-v3/ProductListCarouselItem.liquid.js +15 -0
  121. package/dist/cjs/product/components/product-list-v3/ProductListCarouselLayout.js +1 -0
  122. package/dist/cjs/product/components/product-list-v3/ProductListCarouselLayout.liquid.js +22 -0
  123. package/dist/cjs/product/components/product-list-v3/ProductListGridItem.liquid.js +19 -0
  124. package/dist/cjs/product/components/product-list-v3/ProductListGridLayout.js +1 -0
  125. package/dist/cjs/product/components/product-list-v3/ProductListGridLayout.liquid.js +34 -0
  126. package/dist/cjs/product/components/product-list-v3/common/attrs.js +1 -0
  127. package/dist/cjs/product/components/product-list-v3/common/classes.js +1 -0
  128. package/dist/cjs/product/components/product-list-v3/common/helpers.js +1 -0
  129. package/dist/cjs/product/components/product-list-v3/common/styles.js +1 -0
  130. package/dist/cjs/product/index.js +1 -1
  131. package/dist/cjs/product/next.js +1 -1
  132. package/dist/cjs/product/settings/ProductListV3.js +8 -0
  133. package/dist/cjs/product/settings/product/configs/product-presets/product-1-col.js +2 -2
  134. package/dist/cjs/product/settings/product/configs/product-presets/product-2-col.js +2 -2
  135. package/dist/cjs/product/settings/product/configs/product-presets/product-default.js +2 -2
  136. package/dist/cjs/product/settings/product-image-v2/ProductImages.js +2 -2
  137. package/dist/cjs/product/settings/product-image-v2/configs/setting-v2/ProductFeatureImage.js +1 -1
  138. package/dist/cjs/product/settings/product-image-v2/configs/setting-v2/ProductGalleryImage.js +3 -2
  139. package/dist/cjs/product/settings/product-image-v2/configs/ui/FeatureNavigation.js +1 -1
  140. package/dist/cjs/product/settings/product-image-v2/configs/ui/ImageListNavigation.js +1 -1
  141. package/dist/cjs/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  142. package/dist/cjs/product/settings/product-image-v3/ProductFeatureImage.js +1 -0
  143. package/dist/cjs/product/settings/product-image-v3/ProductGalleryImage.js +1 -0
  144. package/dist/cjs/product/settings/product-image-v3/ProductImages.js +21 -0
  145. package/dist/cjs/product/settings/product-image-v3/configs/setting-v2/ProductFeatureImage.js +2 -0
  146. package/dist/cjs/product/settings/product-image-v3/configs/setting-v2/ProductGalleryImage.js +2 -0
  147. package/dist/cjs/product/settings/product-image-v3/configs/setting-v2/index.js +1 -0
  148. package/dist/cjs/product/settings/product-image-v3/configs/ui/FeatureDots.js +1 -0
  149. package/dist/cjs/product/settings/product-image-v3/configs/ui/FeatureNavigation.js +1 -0
  150. package/dist/cjs/product/settings/product-image-v3/configs/ui/ImageListNavigation.js +1 -0
  151. package/dist/cjs/product/settings/product-image-v3/configs/ui-v1.js +1 -0
  152. package/dist/cjs/product/settings/product-image-v3/configs/ui-v2.js +1 -0
  153. package/dist/cjs/product/settings/product-list/configs/presets.js +2 -2
  154. package/dist/cjs/product/settings/product-list/configs/settings-v2.js +1 -1
  155. package/dist/cjs/product/settings/product-list-v3/configs/presets.js +37 -0
  156. package/dist/cjs/product/settings/product-list-v3/configs/settings-v2.js +1 -0
  157. package/dist/cjs/product/settings/product-list-v3/configs/ui-v1.js +1 -0
  158. package/dist/cjs/product/settings/product-list-v3/configs/ui-v2.js +1 -0
  159. package/dist/cjs/setting.js +1 -1
  160. package/dist/cjs/third-party/settings/KoalaBundleQuantityDiscount/index.js +1 -1
  161. package/dist/esm/builder.js +1 -1
  162. package/dist/esm/carousel/components/arrow/common/classes.js +1 -1
  163. package/dist/esm/carousel/components/arrow/common/helpers.js +1 -1
  164. package/dist/esm/carousel/components/arrow/common/styles.js +8 -8
  165. package/dist/esm/carousel/components/dot/common/helpers.js +1 -1
  166. package/dist/esm/carousel/components/item/CarouselItem.js +1 -1
  167. package/dist/esm/carousel/components/item/common/styles.js +1 -1
  168. package/dist/esm/carousel/components/root/Carousel.js +1 -1
  169. package/dist/esm/carousel/components/root/Carousel.liquid.js +7 -9
  170. package/dist/esm/carousel/components/root/common/attrs.js +1 -1
  171. package/dist/esm/carousel/components/root/common/classes.js +1 -1
  172. package/dist/esm/carousel/components/root/common/styles.js +1 -1
  173. package/dist/esm/carousel/hooks/useCarousel.js +1 -1
  174. package/dist/esm/carousel/hooks/useDotsSetting.js +1 -1
  175. package/dist/esm/carousel/index.js +1 -1
  176. package/dist/esm/carousel/plugins/animation.js +1 -1
  177. package/dist/esm/carousel/plugins/auto-play.js +1 -0
  178. package/dist/esm/carousel/plugins/fix-slider-move-backward.js +1 -0
  179. package/dist/esm/carousel/plugins/mutation.js +1 -0
  180. package/dist/esm/carousel/settings/configs/presets.js +4 -4
  181. package/dist/esm/carousel/settings/configs/settings-v2.js +1 -1
  182. package/dist/esm/carousel-v3/common/helpers.js +1 -0
  183. package/dist/esm/carousel-v3/components/arrow/Arrow.js +10 -0
  184. package/dist/esm/carousel-v3/components/arrow/Arrow.liquid.js +26 -0
  185. package/dist/esm/carousel-v3/components/arrow/common/classes.js +1 -0
  186. package/dist/esm/carousel-v3/components/arrow/common/helpers.js +1 -0
  187. package/dist/esm/carousel-v3/components/arrow/common/styles.js +33 -0
  188. package/dist/esm/carousel-v3/components/dot/Dots.js +2 -0
  189. package/dist/esm/carousel-v3/components/dot/Dots.liquid.js +7 -0
  190. package/dist/esm/carousel-v3/components/dot/common/classes.js +1 -0
  191. package/dist/esm/carousel-v3/components/dot/common/helpers.js +1 -0
  192. package/dist/esm/carousel-v3/components/dot/common/styles.js +1 -0
  193. package/dist/esm/carousel-v3/components/item/CarouselItem.js +2 -0
  194. package/dist/esm/carousel-v3/components/item/CarouselItem.liquid.js +22 -0
  195. package/dist/esm/carousel-v3/components/item/common/classes.js +1 -0
  196. package/dist/esm/carousel-v3/components/item/common/styles.js +1 -0
  197. package/dist/esm/carousel-v3/components/root/Carousel.js +2 -0
  198. package/dist/esm/carousel-v3/components/root/Carousel.liquid.js +23 -0
  199. package/dist/esm/carousel-v3/components/root/common/attrs.js +1 -0
  200. package/dist/esm/carousel-v3/components/root/common/classes.js +1 -0
  201. package/dist/esm/carousel-v3/components/root/common/helpers.js +1 -0
  202. package/dist/esm/carousel-v3/components/root/common/styles.js +1 -0
  203. package/dist/esm/carousel-v3/components/swiper/Swiper.js +1 -0
  204. package/dist/esm/carousel-v3/hooks/useCarouseItem.js +1 -0
  205. package/dist/esm/carousel-v3/hooks/useCarousel.js +1 -0
  206. package/dist/esm/carousel-v3/hooks/useDotsSetting.js +1 -0
  207. package/dist/esm/carousel-v3/hooks/useTrackPreviewPause.js +1 -0
  208. package/dist/esm/carousel-v3/index.js +1 -0
  209. package/dist/esm/{carousel → carousel-v3}/next.js +1 -1
  210. package/dist/esm/carousel-v3/plugins/animation.js +1 -0
  211. package/dist/esm/carousel-v3/settings/Carousel.js +5 -0
  212. package/dist/esm/carousel-v3/settings/CarouselItem.js +1 -0
  213. package/dist/esm/carousel-v3/settings/configs/presets.js +114 -0
  214. package/dist/esm/carousel-v3/settings/configs/settings-v2.js +3 -0
  215. package/dist/esm/carousel-v3/settings/configs/ui-v1.js +1 -0
  216. package/dist/esm/carousel-v3/settings/configs/ui-v2.js +1 -0
  217. package/dist/esm/grid/components/row/common/helpers.js +1 -1
  218. package/dist/esm/index.js +1 -1
  219. package/dist/esm/index.liquid.js +1 -1
  220. package/dist/esm/marquee/hooks/useMarqueeScrollToItem.js +1 -1
  221. package/dist/esm/marquee/settings/Marquee.js +1 -1
  222. package/dist/esm/next.js +1 -1
  223. package/dist/esm/product/components/product-images/ProductGalleryCarousel.js +1 -1
  224. package/dist/esm/product/components/product-images/ProductGalleryCarousel.liquid.js +1 -1
  225. package/dist/esm/product/components/product-images/ProductImagesLightBox.js +1 -1
  226. package/dist/esm/product/components/product-images-v2/ProductImagesV2.liquid.js +8 -8
  227. package/dist/esm/product/components/product-images-v2/common/attrs.js +1 -1
  228. package/dist/esm/product/components/product-images-v2/common/classes.js +1 -1
  229. package/dist/esm/product/components/product-images-v2/common/common.js +1 -1
  230. package/dist/esm/product/components/product-images-v2/common/getBorderActiveCss.js +2 -6
  231. package/dist/esm/product/components/product-images-v2/common/productFeaturedImage.js +1 -1
  232. package/dist/esm/product/components/product-images-v2/common/productGallery.js +1 -1
  233. package/dist/esm/product/components/product-images-v2/common/styles.js +1 -1
  234. package/dist/esm/product/components/product-images-v2/components/child/ProductFeaturedImageCarousel.js +1 -1
  235. package/dist/esm/product/components/product-images-v2/components/child/ProductGalleryGrid.js +2 -2
  236. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  237. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +48 -48
  238. package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.js +1 -1
  239. package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +14 -14
  240. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.js +1 -1
  241. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +11 -11
  242. package/dist/esm/product/components/product-images-v2/components/lightbox/ProductImagesLightBox.js +1 -1
  243. package/dist/esm/product/components/product-images-v2/hooks/useProductFeaturedImageCarousel.js +1 -1
  244. package/dist/esm/product/components/product-images-v2/hooks/useProductGalleryGrid.js +1 -1
  245. package/dist/esm/product/components/product-images-v3/ProductImageV2.js +26 -0
  246. package/dist/esm/product/components/product-images-v3/ProductImagesV2.liquid.js +44 -0
  247. package/dist/esm/product/components/product-images-v3/common/attrs.js +1 -0
  248. package/dist/esm/product/components/product-images-v3/common/classes.js +1 -0
  249. package/dist/esm/product/components/product-images-v3/common/common.js +1 -0
  250. package/dist/esm/product/components/product-images-v3/common/getBorderActiveCss.js +20 -0
  251. package/dist/esm/product/components/product-images-v3/common/hoverAction.js +1 -0
  252. package/dist/esm/product/components/product-images-v3/common/productFeaturedImage.js +1 -0
  253. package/dist/esm/product/components/product-images-v3/common/productGallery.js +1 -0
  254. package/dist/esm/product/components/product-images-v3/common/styles.js +1 -0
  255. package/dist/esm/product/components/product-images-v3/components/child/MediaIcon.js +2 -0
  256. package/dist/esm/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -0
  257. package/dist/esm/product/components/product-images-v3/components/child/ProductFeaturedImageCarousel.js +1 -0
  258. package/dist/esm/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +2 -0
  259. package/dist/esm/product/components/product-images-v3/components/child/ProductGalleryGrid.js +2 -0
  260. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.js +1 -0
  261. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +118 -0
  262. package/dist/esm/product/components/product-images-v3/components/feature-only/OnlyFeatureImage.js +2 -0
  263. package/dist/esm/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.js +1 -0
  264. package/dist/esm/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.liquid.js +46 -0
  265. package/dist/esm/product/components/product-images-v3/components/gallery-grid/GalleryGrid.js +2 -0
  266. package/dist/esm/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +93 -0
  267. package/dist/esm/product/components/product-images-v3/components/lightbox/ButtonOpenLightBox.js +2 -0
  268. package/dist/esm/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +2 -0
  269. package/dist/esm/product/components/product-images-v3/composables/getProductImagesAttr.js +1 -0
  270. package/dist/esm/product/components/product-images-v3/composables/getProductImagesClassName.js +1 -0
  271. package/dist/esm/product/components/product-images-v3/composables/getProductImagesStyles.js +1 -0
  272. package/dist/esm/product/components/product-images-v3/hooks/useFeatureImageWithGallery.js +1 -0
  273. package/dist/esm/product/components/product-images-v3/hooks/useFilterImagesByVariant.js +1 -0
  274. package/dist/esm/product/components/product-images-v3/hooks/useGalleryCarousel.js +1 -0
  275. package/dist/esm/product/components/product-images-v3/hooks/useProductFeaturedImageCarousel.js +1 -0
  276. package/dist/esm/product/components/product-images-v3/hooks/useProductGalleryGrid.js +1 -0
  277. package/dist/esm/product/components/product-list/ProductListCarouselLayout.liquid.js +6 -6
  278. package/dist/esm/product/components/product-list-v3/ProductList.js +1 -0
  279. package/dist/esm/product/components/product-list-v3/ProductList.liquid.js +205 -0
  280. package/dist/esm/product/components/product-list-v3/ProductListCarouselItem.liquid.js +15 -0
  281. package/dist/esm/product/components/product-list-v3/ProductListCarouselLayout.js +1 -0
  282. package/dist/esm/product/components/product-list-v3/ProductListCarouselLayout.liquid.js +22 -0
  283. package/dist/esm/product/components/product-list-v3/ProductListGridItem.liquid.js +19 -0
  284. package/dist/esm/product/components/product-list-v3/ProductListGridLayout.js +1 -0
  285. package/dist/esm/product/components/product-list-v3/ProductListGridLayout.liquid.js +34 -0
  286. package/dist/esm/product/components/product-list-v3/common/attrs.js +1 -0
  287. package/dist/esm/product/components/product-list-v3/common/classes.js +1 -0
  288. package/dist/esm/product/components/product-list-v3/common/helpers.js +1 -0
  289. package/dist/esm/product/components/product-list-v3/common/styles.js +1 -0
  290. package/dist/esm/product/index.js +1 -1
  291. package/dist/esm/product/next.js +1 -1
  292. package/dist/esm/product/settings/ProductListV3.js +8 -0
  293. package/dist/esm/product/settings/product/configs/product-presets/product-1-col.js +2 -2
  294. package/dist/esm/product/settings/product/configs/product-presets/product-2-col.js +2 -2
  295. package/dist/esm/product/settings/product/configs/product-presets/product-default.js +2 -2
  296. package/dist/esm/product/settings/product-image-v2/ProductImages.js +2 -2
  297. package/dist/esm/product/settings/product-image-v2/configs/setting-v2/ProductFeatureImage.js +1 -1
  298. package/dist/esm/product/settings/product-image-v2/configs/setting-v2/ProductGalleryImage.js +3 -2
  299. package/dist/esm/product/settings/product-image-v2/configs/ui/FeatureNavigation.js +1 -1
  300. package/dist/esm/product/settings/product-image-v2/configs/ui/ImageListNavigation.js +1 -1
  301. package/dist/esm/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  302. package/dist/esm/product/settings/product-image-v3/ProductFeatureImage.js +1 -0
  303. package/dist/esm/product/settings/product-image-v3/ProductGalleryImage.js +1 -0
  304. package/dist/esm/product/settings/product-image-v3/ProductImages.js +21 -0
  305. package/dist/esm/product/settings/product-image-v3/configs/setting-v2/ProductFeatureImage.js +2 -0
  306. package/dist/esm/product/settings/product-image-v3/configs/setting-v2/ProductGalleryImage.js +2 -0
  307. package/dist/esm/product/settings/product-image-v3/configs/setting-v2/index.js +1 -0
  308. package/dist/esm/product/settings/product-image-v3/configs/ui/FeatureDots.js +1 -0
  309. package/dist/esm/product/settings/product-image-v3/configs/ui/FeatureNavigation.js +1 -0
  310. package/dist/esm/product/settings/product-image-v3/configs/ui/ImageListNavigation.js +1 -0
  311. package/dist/esm/product/settings/product-image-v3/configs/ui-v1.js +1 -0
  312. package/dist/esm/product/settings/product-image-v3/configs/ui-v2.js +1 -0
  313. package/dist/esm/product/settings/product-list/configs/presets.js +2 -2
  314. package/dist/esm/product/settings/product-list/configs/settings-v2.js +1 -1
  315. package/dist/esm/product/settings/product-list-v3/configs/presets.js +37 -0
  316. package/dist/esm/product/settings/product-list-v3/configs/settings-v2.js +1 -0
  317. package/dist/esm/product/settings/product-list-v3/configs/ui-v1.js +1 -0
  318. package/dist/esm/product/settings/product-list-v3/configs/ui-v2.js +1 -0
  319. package/dist/esm/setting.js +1 -1
  320. package/dist/esm/third-party/settings/KoalaBundleQuantityDiscount/index.js +1 -1
  321. package/dist/types/index.d.ts +476 -74
  322. package/package.json +3 -3
  323. package/dist/cjs/carousel/components/swiper/Swiper.js +0 -1
  324. package/dist/esm/carousel/components/swiper/Swiper.js +0 -1
  325. /package/dist/cjs/{carousel → carousel-v3}/components/swiper/SwiperSlide.js +0 -0
  326. /package/dist/cjs/{carousel → carousel-v3}/components/swiper/common/styles.js +0 -0
  327. /package/dist/esm/{carousel → carousel-v3}/components/swiper/SwiperSlide.js +0 -0
  328. /package/dist/esm/{carousel → carousel-v3}/components/swiper/common/styles.js +0 -0
@@ -0,0 +1,44 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),common=require("./common/common.js"),FeatureImageWithGallery_liquid=require("./components/feature-gallery/FeatureImageWithGallery.liquid.js"),GalleryCarousel_liquid=require("./components/gallery-carousel/GalleryCarousel.liquid.js"),GalleryGrid_liquid=require("./components/gallery-grid/GalleryGrid.liquid.js"),helpers=require("../../../helpers.js"),productGallery=require("./common/productGallery.js"),getProductImagesClassName=require("./composables/getProductImagesClassName.js"),getProductImagesStyles=require("./composables/getProductImagesStyles.js"),system=require("@gem-sdk/system"),getBorderActiveCss=require("./common/getBorderActiveCss.js"),_function=require("../../helpers/function.js");const ProductImages=e=>{let t=common.setDefaultWhenUndefineSetting(e),{setting:s,styles:r,builderProps:i,style:a}=t,{rawChildren:o,pageContext:l}=e,{enableLazyLoadImage:d}=l??{},u={...s,...r},c=`
2
+ {
3
+ "id":${JSON.stringify(i?.uid)},
4
+ "pageContext": ${JSON.stringify(l)},
5
+ "setting":${JSON.stringify(s)},
6
+ "styles":${JSON.stringify(r)},
7
+ "productUrl":{{product.url | json | escape}},
8
+ "product":{{product | json | escape}},
9
+ "collectionUrl": {{ collection.url | json | escape }},
10
+ "collection": {{ collection | json | escape}}
11
+ }
12
+ `,p=system.createAttr({"section-id":"{{section.id}}","data-id":`${i?.uid}`}),{isOnlyFeatureAllDevices:m,isRenderGalleryGrid:n}=common.getConditionRenderGalleryImages(u?.position,s?.type),g=n?{}:system.createAttr({"data-only-image":system.LiquidIf("product.media.size > 1","false","true")}),{wrapperClasses:y,productImagesGalleryClasses:f}=getProductImagesClassName.getProductImagesClassName(e),I=system.createClass({"gp-grid gp-w-full !gp-m-0 gp-relative":!0}),$=system.createClass({"gp-w-full !gp-m-0 gp-relative":!0}),{wrapContainerStyle:h,wrapContainerStyleOnlyOneImage:S,galleryImageStyle:q}=getProductImagesStyles.getProductImagesStyles(u),v=productGallery.getShapeByLayout({shape:u.shape,shapeForBottom:u.shapeForBottom,shapeFor1Col:u.shapeFor1Col,shapeFor2Col:u.shapeFor2Col,shapeForFtOnly:u.shapeForFtOnly,shapeForInsideBottom:u.shapeForInsideBottom??productGallery.sizeSettingDefaultForNewLayout,shapeForInside:u.shapeForInside??productGallery.sizeSettingDefaultForNewLayout},u.position),C=common.getStyleInsideLayout(u.position,v,u?.spacing),G=()=>core.template`
13
+ ${core.WrapRenderChildren({uid:i?.uid||"",customProps:o?.[0].customProps},o?.map(e=>{if(e)return core.template`${core.RenderChildren({...e,isInsideProductImage:!0,imageData:{imageShape:r?.ftShape,imageAlign:r?.align,imageLayout:r?.position},dotData:{dotSize:s?.ftDotSize,dotGapToCarousel:s?.ftDotGapToCarousel,dotStyle:s?.ftDotStyle}})}`}))}
14
+ `,j=()=>core.template`
15
+ <div
16
+ class="${f}"
17
+ style="${_function.getStyleOfObject(q)}"
18
+ ${{...g}}
19
+ >
20
+ ${system.LiquidIf("product.media.size > 1",GalleryCarousel_liquid.default({builderPropUID:`gp-gallery-${i?.uid}`,...u,enableLazyLoadImage:d}))}
21
+ ${system.If(n,GalleryGrid_liquid.default({builderPropUID:i?.uid,wrapperStyle:{...C},children:G(),...u,enableLazyLoadImage:d}))}
22
+ </div>
23
+ `,P=()=>s?.borderActive?.border!=="none";return core.template`
24
+ ${system.If(P(),system.LiquidIf("product.media.size > 1",`<style>${getBorderActiveCss.getBorderActiveCss({settings:u,uid:i?.uid,type:"Liquid"})}</style>`),"")}
25
+ ${system.Liquid(`
26
+ {% assign featured_image = product.featured_image %}
27
+ ${system.LiquidIf("variant != null and variant.featured_image != null","{% assign featured_image = variant.featured_image %}")}
28
+ `)}
29
+ <gp-product-images-v3
30
+ gp-data='${c}'
31
+ ${{...p}}
32
+ style="${{...a}}"
33
+ class="${y}"
34
+ >
35
+ <div
36
+ class="${system.LiquidIf("product.media.size > 1",`${I}`,`${$}`)}"
37
+ style="${system.LiquidIf("product.media.size > 1",_function.getStyleOfObject(h),_function.getStyleOfObject(S))}"
38
+ >
39
+ ${FeatureImageWithGallery_liquid.default({builderPropUID:`gp-carousel-${i?.uid}`,...u,children:G(),enableLazyLoadImage:d})}
40
+ ${system.If(!m,j())}
41
+ </div>
42
+ </gp-product-images-v3>
43
+ ${system.If(core.isLocalEnv,`<script ${helpers.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-images-v3-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${helpers.getSettingPreloadData('class="gps-link" delay',"src")}="${core.baseAssetURL}/assets-v2/gp-product-images-v3-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
44
+ `};exports.default=ProductImages;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),productGallery=require("./productGallery.js"),productFeaturedImage=require("./productFeaturedImage.js");const DEVICES=["desktop","mobile","tablet"],getGalleryCarouselSettingAttr=o=>{let t={desktop:"inside"===core.getResponsiveValueByScreen(o.navigationPosition,"desktop"),tablet:"inside"===core.getResponsiveValueByScreen(o.navigationPosition,"tablet"),mobile:"inside"===core.getResponsiveValueByScreen(o.navigationPosition,"mobile")},e=DEVICES.reduce((t,e)=>(o.navigationPosition?.[e]&&(t[e]="none"!==o.navigationPosition[e]),t),{});return{...o?.loop&&{loop:o.loop},itemNumber:{desktop:"auto",tablet:"auto",mobile:"auto"},dot:{desktop:!1,tablet:!1,mobile:!1},dotStyle:productGallery.getDotStyleConfig(),controlOverContent:t,...o?.dragToScroll&&{enableDrag:{desktop:o.dragToScroll,tablet:o.dragToScroll,mobile:o.dragToScroll}},vertical:productGallery.getCarouselVerticalConfigByPosition(o.position),...o?.arrowIcon&&{arrowCustom:o.arrowIcon},arrowIconSize:o.arrowIconSize||{desktop:24},...o?.arrowIconColor&&{arrowCustomColor:o.arrowIconColor},...o?.arrowNavColor&&{arrowBackgroundColor:o.arrowNavColor},...o?.arrowNavBorder&&{arrowBorder:{desktop:o.arrowNavBorder}},...o?.arrowNavRadius&&{roundedArrow:{desktop:o.arrowNavRadius}},...o?.arrowNavShadow&&{arrowShadow:{desktop:o.arrowNavShadow}},arrowGapToEachSide:"16",navigationStyle:o.navigationPosition,navigationEnable:e,arrowButtonSize:{desktop:{width:o.arrowNavSize?.width,height:o.arrowNavSize?.height,padding:o.arrowNavSize?.padding}},animationMode:o?.ftAnimationMode,enableAction:{desktop:!0}}},getFeaturedCarouselSettingAttr=o=>{let t={desktop:"inside"===core.getResponsiveValueByScreen(o.ftNavigationPosition,"desktop"),tablet:"inside"===core.getResponsiveValueByScreen(o.ftNavigationPosition,"tablet"),mobile:"inside"===core.getResponsiveValueByScreen(o.ftNavigationPosition,"mobile")},e=DEVICES.reduce((t,e)=>(o.ftNavigationPosition?.[e]&&(t[e]="none"!==o.ftNavigationPosition[e]),t),{});return{...o?.ftLoop&&{loop:o.ftLoop},itemNumber:{desktop:1},dot:productGallery.getAllowDotConfig(),dotStyle:productFeaturedImage.getDotStyleForOnlyFeaturedImage({position:o.position,dotStyle:o.ftDotStyle}),dotSize:o.ftDotSize??{desktop:12},dotGapToCarousel:o.ftDotGapToCarousel??{desktop:16},dotColor:o.ftDotColor??{desktop:"bg-1"},dotActiveColor:o.ftDotActiveColor??{desktop:"line-3"},controlOverContent:t,...o?.ftDragToScroll&&{enableDrag:{desktop:o.ftDragToScroll,tablet:o.ftDragToScroll,mobile:o.ftDragToScroll}},...o?.ftArrowIcon&&{arrowCustom:o.ftArrowIcon},arrowIconSize:o.ftArrowIconSize||{desktop:24},...o?.ftArrowIconColor&&{arrowCustomColor:o.ftArrowIconColor},...o?.ftArrowNavColor&&{arrowBackgroundColor:o.ftArrowNavColor},...o?.ftArrowNavBorder&&{arrowBorder:{desktop:o.ftArrowNavBorder}},...o?.ftArrowNavRadius&&{roundedArrow:{desktop:o.ftArrowNavRadius}},...o?.ftArrowNavShadow&&{arrowShadow:{desktop:o.ftArrowNavShadow}},sneakPeakType:{desktop:"center"},arrowGapToEachSide:"16",animationMode:o?.ftAnimationMode,...o?.ftNavigationPosition&&{navigationStyle:o.ftNavigationPosition},navigationEnable:e,arrowButtonSize:{desktop:{width:o.ftArrowNavSize?.width,height:o.ftArrowNavSize?.height,padding:o.ftArrowNavSize?.padding}},enableAction:{desktop:!0}}};exports.getFeaturedCarouselSettingAttr=getFeaturedCarouselSettingAttr,exports.getGalleryCarouselSettingAttr=getGalleryCarouselSettingAttr;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core");function composeClasses(e){return e.split(" ").reduce((e,s)=>(e[s]=!0,e),{})}const getWrapperClasses=({extraClass:e,isAddOverFlowClass:s=!1})=>{let l="gp-relative gp-w-full";return e&&(l+=` ${e}`),s&&(l+=" gp-overflow-hidden"),composeClasses(l)},getGalleryWrapperClasses=({extraClass:e})=>{let s="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&&(s+=` ${e}`),composeClasses(s)},getGalleryGridWrapperClasses=({extraClass:e})=>{let s="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&&(s+=` ${e}`),composeClasses(s)},getFtImageWithGalleryClasses=({extraClass:e})=>{let s="gp-flex !gp-h-fit gp-relative gp-overflow-hidden";return e&&(s+=` ${e}`),composeClasses(s)},getImageGalleryWrapperClasses=({extraClass:e})=>{let s="gp-flex gp-h-fit gp-max-w-full gp-overflow-hidden";return e&&(s+=` ${e}`),composeClasses(s)},getFeaturedImageCarouselClasses=({extraClass:e})=>{let s="`gp-flex-1 gp-w-full gp-feature-image-carousel";return e&&(s+=` ${e}`),composeClasses(s)},getFeaturedImageClasses=({setting:e,extraClass:s})=>{let l=s??"";return core.DEVICES.forEach(s=>{let r=core.getResponsiveValueByScreen(e?.ftNavigationPosition,s),a="desktop"!==s?`${s}:`:"";"outside"===r?l+=` ${a}gp-px-[16px]`:l+=` ${a}gp-px-0`}),composeClasses(l)},getFeaturedImageGalleryClasses=({settings:e,extraClass:s})=>{let l=s??"gp-flex-1 gp-w-full carousel-gallery";return core.DEVICES.forEach(s=>{let r=core.getResponsiveValueByScreen(e?.navigationPosition,s),a=core.getResponsiveValueByScreen(e?.type,s),t=core.getResponsiveValueByScreen(e?.position,s),g="desktop"!==s?`${s}:`:"";"outside"===r&&"slider"===a&&["bottom-center"].includes(t||"")?l+=` ${g}gp-px-[16px]`:l+=` ${g}gp-px-0`}),composeClasses(l)},getGalleryItemClasses=({extraClass:e})=>{let s="gp-image-item gp-flex gp-items-center gp-justify-center gp-group gp-relative gp-overflow-hidden gp-cursor-pointer";return e&&(s+=` ${e}`),composeClasses(s)},getFeaturedCarouselItemClasses=({extraClass:e})=>{let s="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&&(s+=` ${e}`),composeClasses(s)};exports.getFeaturedCarouselItemClasses=getFeaturedCarouselItemClasses,exports.getFeaturedImageCarouselClasses=getFeaturedImageCarouselClasses,exports.getFeaturedImageClasses=getFeaturedImageClasses,exports.getFeaturedImageGalleryClasses=getFeaturedImageGalleryClasses,exports.getFtImageWithGalleryClasses=getFtImageWithGalleryClasses,exports.getGalleryGridWrapperClasses=getGalleryGridWrapperClasses,exports.getGalleryItemClasses=getGalleryItemClasses,exports.getGalleryWrapperClasses=getGalleryWrapperClasses,exports.getImageGalleryWrapperClasses=getImageGalleryWrapperClasses,exports.getWrapperClasses=getWrapperClasses;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core");const getTypeWidthDevice=e=>{let t=e?.desktop,o=e?.tablet===void 0?t:e?.tablet,r=e?.mobile===void 0?o:e?.mobile;return{desktop:t,tablet:o,mobile:r}},convertUnitToNumber=(e,t)=>{if(!e)return t;if("number"==typeof e)return e;let o=e.replaceAll("px","").replaceAll("%","").replaceAll("rem","").replaceAll("em","");return isNaN(Number(o))?t:Number(o)},convertSpacing=e=>{if(!e)return{desktop:5};let t=convertUnitToNumber(e.desktop,5),o=convertUnitToNumber(e.tablet,t),r=convertUnitToNumber(e.mobile,o);return{desktop:t,tablet:o,mobile:r}},getDisplayStyle=(e,t)=>{let o={},r=["desktop","mobile","tablet"];return r.forEach(r=>{o={...o,[`--d${"desktop"===r?"":`-${r}`}`]:`${e(r)?"none":t}`}}),o},checkAddOverFlowClass=e=>{let t=e?.["--radius"],o=e?.["--bblr"]||"0px",r=e?.["--bbrr"]||"0px",i=e?.["--btlr"]||"0px",l=e?.["--btrr"]||"0px";return t&&!t.toString().includes("none")&&"0"!==t.toString()||"0px"!==o||"0px"!==r||"0px"!==i||"0px"!==l},getAspectRatio=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let r=core.getResponsiveValueByScreen(e,o)?.shapeValue;if(r)t={...t,[o]:r};else{let r=core.getResponsiveValueByScreen(e,o)?.shape;switch(r){case"square":t={...t,[o]:"1/1"};break;case"vertical":t={...t,[o]:"3/4"};break;case"horizontal":t={...t,[o]:"4/3"};break;case"original":t={...t,[o]:""}}}}),core.makeAspectRatio(t)},getStyleGridLayout=e=>{let t={"--gtc":"minmax(0, 12fr)","--gtc-tablet":"minmax(0, 12fr)","--gtc-mobile":"minmax(0, 12fr)"};if(!e.isHiddenGalleryImages){let o=!1;core.DEVICES.forEach(r=>{let i=core.getResponsiveValueByScreen(e.position,r),l=core.getResponsiveValueByScreen(e.ratioLayout,r),n=core.getResponsiveValueByScreen(e.ratioLayoutRight,r),a="desktop"===r?"--gtc":`--gtc-${r}`,s="desktop"===r?"--gtr":`--gtr-${r}`,c="left"===i?l:n,d=["left","right"].includes(i||"");d&&c?(o=!0,Object.assign(t={...t,[a]:`minmax(0, ${c[0]}fr) minmax(0, ${c[1]}fr)`},{[s]:"fit-content(0)"})):o&&Object.assign(t,{[s]:"unset"})})}return t},getStyleGridOrderForFeature=e=>{let t={"--o":"0","--o-tablet":"0","--o-mobile":"0"},o=["desktop","mobile","tablet"];return o.forEach(o=>{let r=core.getResponsiveValueByScreen(e.position,o),i="desktop"===o?"--o":`--o-${o}`;t={...t,[i]:"left"===r?"1":"0"}}),t},getStyleGridOrderForGallery=e=>{let t={"--o":"1","--o-tablet":"1","--o-mobile":"1"},o=["desktop","mobile","tablet"];return o.forEach(o=>{let r=core.getResponsiveValueByScreen(e.position,o),i="desktop"===o?"--o":`--o-${o}`;t={...t,[i]:"left"===r?"0":"1"}}),t},getSrcImage=e=>`{{${e} | image_url: width: 480}} 480w, {{${e} | image_url: width: 768}} 768w, {{${e} | image_url: width: 1024}} 1024w, {{${e} | image_url: width: 1440}} 1440w`,convertSpacingForIndisdeLayout=e=>{let t=parseInt(e)?`${2*parseInt(e)}px`:`${e} * 2`;return t},getStyleInsideLayout=(e,t,o)=>{let r=["desktop","mobile","tablet"],i={},l={},n={},a={},s={},c={};return r.forEach(r=>{let d=core.getResponsiveValueByScreen(e,r),u=core.getResponsiveValueByScreen(t,r)?.width,g=core.getResponsiveValueByScreen(o,r);if(i={...i,[r]:["inside-bottom","inside-left","inside-right"].includes(d)?"absolute":"static"},["inside-bottom"].includes(d)){let e=convertSpacingForIndisdeLayout(g);u=`calc(100% - ${e})`}["bottom-center","two-col","one-col"].includes(d)&&(u="100%"),n={...n,[r]:"inside-bottom"===d?`${g}`:"auto"},a={...a,[r]:["inside-left","inside-right"].includes(d)?`${g}`:"auto"},c={...c,[r]:["inside-bottom","inside-left"].includes(d)?`${g}`:"auto"},s={...s,[r]:"inside-right"===d?`${g}`:"auto"},l={...l,[r]:u}}),{...core.makeStyleResponsive("pos",i),...core.makeStyleResponsive("w",core.removeNullUndefined(l)),...core.makeStyleResponsive("bottom",core.removeNullUndefined(n)),...core.makeStyleResponsive("top",core.removeNullUndefined(a)),...core.makeStyleResponsive("left",core.removeNullUndefined(c)),...core.makeStyleResponsive("right",core.removeNullUndefined(s))}},getConditionRenderGalleryImages=(e,t)=>{let o=["desktop","mobile","tablet"],r=!0,i=!1;return o.forEach(o=>{let l=core.getResponsiveValueByScreen(e,o),n=core.getResponsiveValueByScreen(t,o);l&&"only-feature"!==l&&(r=!1),(["two-col","one-col"].includes(l)||"images"===n)&&(i=!0)}),{isOnlyFeatureAllDevices:r,isRenderGalleryGrid:i}},setDefaultWhenUndefineSetting=e=>({...e,setting:{...e.setting}}),getValueFromValueContainUnit=e=>{let t=e.match(/\d+/g);return t?t[0]:e},getPaddingBottomByShapeSetting=e=>{let t=getAspectRatio(e),o={desktop:"auto",mobile:"auto",tablet:"auto"},r=["desktop","mobile","tablet"];return r.forEach(r=>{let i=core.getResponsiveValueByScreen(e,r),l=i?.height,n=i?.width||"",a=getValueFromValueContainUnit(l||""),s=n.toString().match(/px/g)?getValueFromValueContainUnit(n):n;if(l&&n&&!isNaN(Number(a))&&!isNaN(Number(s))){o={...o,[r]:`${Number(a)/Number(s)*100}%`};return}if(l&&!isNaN(Number(a))){o={...o,[r]:l};return}let c=t?.[r]!=="auto"&&t?.[r]?t?.[r]?.split("/").reverse().join("/"):"{%if largestRatio == 0%} 100 / 100 {%else%} {{largestRatio}} {%endif%}";o={...o,[r]:`calc((${c})*100%)`}}),o};exports.checkAddOverFlowClass=checkAddOverFlowClass,exports.convertSpacing=convertSpacing,exports.convertSpacingForIndisdeLayout=convertSpacingForIndisdeLayout,exports.convertUnitToNumber=convertUnitToNumber,exports.getAspectRatio=getAspectRatio,exports.getConditionRenderGalleryImages=getConditionRenderGalleryImages,exports.getDisplayStyle=getDisplayStyle,exports.getPaddingBottomByShapeSetting=getPaddingBottomByShapeSetting,exports.getSrcImage=getSrcImage,exports.getStyleGridLayout=getStyleGridLayout,exports.getStyleGridOrderForFeature=getStyleGridOrderForFeature,exports.getStyleGridOrderForGallery=getStyleGridOrderForGallery,exports.getStyleInsideLayout=getStyleInsideLayout,exports.getTypeWidthDevice=getTypeWidthDevice,exports.setDefaultWhenUndefineSetting=setDefaultWhenUndefineSetting;
@@ -0,0 +1,20 @@
1
+ "use strict";var core=require("@gem-sdk/core");const getBorderActiveCss=({settings:e,uid:t,type:r})=>{let i="Liquid"===r?`.gem-slider-item-${t}-{{product.id}}.gp-gallery-image-item::after, .gem-slider-item-gp-gallery-${t}-{{product.id}}.gp-gallery-image-item.gem-slider-item-active::after`:`.gem-slider-item-active.gem-slider-item-${t}.gp-gallery-image-item::after`;return`
2
+ ${i} {
3
+ content: "";
4
+ height: 100%;
5
+ width: 100%;
6
+ position: absolute;
7
+ z-index: 999;
8
+ top: 0;
9
+ left: 0;
10
+ ${core.composeBorderCss(e?.borderActive)}
11
+ ${core.composeCornerCss(e?.corner)}
12
+ }
13
+ .gem-slider-item-${t}-{{product.id}}.gp-gallery-image-item[data-outline=active]:after, .gem-slider-item-gp-gallery-${t}-{{product.id}}.gp-gallery-image-item[data-outline=active]:after {
14
+ pointer-events: none;
15
+ }
16
+ .gem-slider-item-${t}-{{product.id}}.gp-gallery-image-item[data-outline=none]:after{
17
+ pointer-events: none;
18
+ border-color: transparent !important;
19
+ }
20
+ `};exports.getBorderActiveCss=getBorderActiveCss;
@@ -0,0 +1 @@
1
+ "use strict";var common=require("./common.js");const handleMouseMove=(e,t)=>{let o=t?.hoverEffect==="zoom"&&t?.zoomType==="default",r=t?.hoverEffect==="zoom"&&t?.zoomType==="glasses",l=t?.hoverEffect==="other",i=t?.hoverEffect!=="none";if(!i)return;let s=e.currentTarget.querySelector("img"),n=e.currentTarget.querySelector("img.hover-image"),c=e.currentTarget.querySelector(".room-len"),y=s?.getBoundingClientRect(),h=s?.clientWidth||0,a=s?.clientHeight||0,f=common.convertUnitToNumber(t?.zoom,0),p=!f||f<100?1:f/100||1,u=(h||1)*(t?.hoverEffect==="other"?1:p),m=(a||1)*(t?.hoverEffect==="other"?1:p),g=e.clientX-y?.x,d=e.clientY-y?.y;l&&displayOtherImage({featureImageHoverDom:n}),o&&e.clientX>=y?.x&&e.clientX<=y.right&&e.clientY>=y?.y&&e.clientY<=y.bottom&&displayZoomImage({featureImageDom:s,featureImageHoverDom:n,zoomSize:u,zoomSizeHeight:m,slideWidth:h,imageOffsetX:g,imageOffsetY:d,isEnableShowOtherImage:l}),r&&displayZoomLen({zoomLens:c,zoomSize:u,zoomValue:p,imagePosition:y,slideWidth:h,slideHeight:a,imageOffsetX:g,imageOffsetY:d})},displayOtherImage=({featureImageHoverDom:e})=>{e&&(e.style.opacity="1",e.style.top="0px",e.style.left="0px",e.style.width="100%",e.style.height="100%")},displayZoomLen=({zoomLens:e,zoomSize:t,zoomValue:o,slideWidth:r,slideHeight:l,imageOffsetX:i,imageOffsetY:s})=>{if(!e)return;e.style.opacity="1";let n=e.offsetWidth/2,c=e.offsetHeight/2,y=l||1;i>r-n/o&&(i=r-n/o),i<n/o&&(i=n/o),s>y-c/o&&(s=y-c/o),s<c/o&&(s=c/o),e.style.top=s-c+"px",e.style.left=i-n+"px",e.style.backgroundSize=t+"px "+y*o+"px",e.style.backgroundPosition=`-${i*o-n}px -${s*o-c}px`},displayZoomImage=({featureImageDom:e,featureImageHoverDom:t,zoomSize:o,zoomSizeHeight:r,slideWidth:l,imageOffsetX:i,imageOffsetY:s,isEnableShowOtherImage:n=!1})=>{if(!t)return;t.style.width=`${o}px`,n||(t.style.height=`${r}px`),t.style.opacity="1";let c=i/e?.offsetWidth,y=s/e?.offsetHeight;t.style.top=(e?.offsetHeight-t.offsetHeight)*y+"px",t.style.left=(l-o)*c+"px"},handleMouseOut=e=>{let t=e.currentTarget.querySelector("img.hover-image"),o=e.currentTarget.querySelector(".room-len");t&&(t.style.opacity="0"),o&&(o.style.opacity="0")};exports.handleMouseMove=handleMouseMove,exports.handleMouseOut=handleMouseOut;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core");const 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=e=>{let o={};return core.DEVICES.forEach(t=>{let r=core.getResponsiveValueByScreen(e.position,t),s=core.getResponsiveValueByScreen(e.dotStyle,t);o={...o,[t]:"only-feature"===r?s:"none"}}),o},getVideoHeight=e=>{if(!e)return null;let o={};return Object.keys(e).forEach(t=>{let r=e[t];r&&(o[t]="cover"===r?"100%":"auto")}),core.makeStyleResponsive("h",o)},checkRenderFeaturedCarousel=e=>{let o=["desktop","mobile","tablet"],t=!1;return o.forEach(o=>{let r=checkShowCarousel(e,o);checkShowCarousel(e,o)&&(t=r)}),t},checkShowCarousel=(e,o)=>"only-feature"!==core.getResponsiveValueByScreen(e.position,o)||"none"!==core.getResponsiveValueByScreen(e.ftNavigationPosition,o)||"none"!==core.getResponsiveValueByScreen(e.ftDotStyle,o)||!0===core.getResponsiveValueByScreen(e.ftLoop,o)||!0===e.ftDragToScroll;exports.checkRenderFeaturedCarousel=checkRenderFeaturedCarousel,exports.getDotStyleForOnlyFeaturedImage=getDotStyleForOnlyFeaturedImage,exports.getVideoHeight=getVideoHeight,exports.getZoomImageClass=getZoomImageClass,exports.getZoomLenClass=getZoomLenClass,exports.isFeatureMedia=isFeatureMedia;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),common=require("./common.js"),productFeaturedImage=require("../../product-images/common/productFeaturedImage.js");const getZoomDisplay=e=>common.getDisplayStyle(t=>!core.getResponsiveValueByScreen(e,t),"flex"),HORIZONTAL_LAYOUT=["right","left","inside-left","inside-right"],sizeSettingDefaultForNewLayout={desktop:{shape:"square",shapeValue:"1/1",width:"20%",height:void 0,shapeLinked:!0}},getCarouselVerticalConfigByPosition=e=>{let t=["desktop","mobile","tablet"],o={};return t.forEach(t=>{let i=core.getResponsiveValueByScreen(e,t),r=HORIZONTAL_LAYOUT.includes(i);o=r?{...o,[t]:!0}:{...o,[t]:!1}}),o},getMinHeightByPosition=(e,t)=>{let o=["desktop","mobile","tablet"],i=getCarouselVerticalConfigByPosition(e),r={};return o.forEach(e=>{let o=core.getResponsiveValueByScreen(t,e),s="desktop"===e?"":`${e}:`;r[`${s}!gp-min-h-0`]=!!i[e]&&"outside"===o,r[`${s}!gp-min-h-full`]=!(i[e]&&"outside"===o)}),core.cls({...r})},getEditorMinHeightClass=(e,t,o)=>{let i=getCarouselVerticalConfigByPosition(t),r=core.getResponsiveValueByScreen(o,e);return i[e]&&"outside"===r?"!gp-min-h-0":"!gp-min-h-full"},getAllowDotConfig=()=>({desktop:!0,tablet:!0,mobile:!0}),getDotStyleConfig=()=>({desktop:"none",tablet:"none",mobile:"none"}),getSettingWidthForGridItem=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let i=core.getResponsiveValueByScreen(e.shapeByLayout,o)?.width,r=core.getResponsiveValueByScreen(e.itemSpacing,o),s=0;i?.includes("%")&&(s=100/parseInt(i)),t={...t,[o]:s?`calc(${i} - ${r} * ${s-1} / ${s})`:i}}),t},getSettingWidthForCarouselItem=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let i=core.getResponsiveValueByScreen(e.position,o),r="bottom-center"===i,s=core.getResponsiveValueByScreen(e.shapeByLayout,o)?.width;t={...t,[o]:r&&s?.includes("px")?s:"100%"}}),t},getSettingMinWidthForCarouselItem=e=>{let t={},o=["desktop","mobile","tablet"];return o.forEach(o=>{let i=core.getResponsiveValueByScreen(e.position,o),r=productFeaturedImage.convertUnitToNumber(core.getResponsiveValueByScreen(e.spacing,o),5),s="bottom-center"===i||"inside-bottom"===i,a=core.getResponsiveValueByScreen(e.shapeByLayout,o)?.width,n="100%";if(s){let e=100/productFeaturedImage.convertUnitToNumber(a,20);n=a?.includes("px")?a:a?.includes("%")?`calc(${a} - ${(e-1)*r/e}px)`:"100%"}t={...t,[o]:n}}),t},checkDisplayGalleryByWidth=e=>{let t={desktop:!0,tablet:!0,mobile:!0},o=["desktop","mobile","tablet"];return o.forEach(o=>{let i=core.getResponsiveValueByScreen(e.shapeByLayout,o)?.width??"100%",r=0!==parseInt(i);t={...t,[o]:r}}),t},getShapeByLayout=(e,t)=>{let o={},i=["desktop","mobile","tablet"];return i.forEach(i=>{let r=core.getResponsiveValueByScreen(t,i);switch(r){case"bottom-center":case"bottom-left":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeForBottom,i)};break;case"inside-bottom":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeForInsideBottom??sizeSettingDefaultForNewLayout,i)};break;case"left":case"right":o={...o,[i]:core.getResponsiveValueByScreen(e.shape,i)};break;case"inside-left":case"inside-right":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeForInside??sizeSettingDefaultForNewLayout,i)};break;case"only-feature":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeForFtOnly,i)};break;case"one-col":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeFor1Col,i)};break;case"two-col":o={...o,[i]:core.getResponsiveValueByScreen(e.shapeFor2Col,i)}}}),o};exports.HORIZONTAL_LAYOUT=HORIZONTAL_LAYOUT,exports.checkDisplayGalleryByWidth=checkDisplayGalleryByWidth,exports.getAllowDotConfig=getAllowDotConfig,exports.getCarouselVerticalConfigByPosition=getCarouselVerticalConfigByPosition,exports.getDotStyleConfig=getDotStyleConfig,exports.getEditorMinHeightClass=getEditorMinHeightClass,exports.getMinHeightByPosition=getMinHeightByPosition,exports.getSettingMinWidthForCarouselItem=getSettingMinWidthForCarouselItem,exports.getSettingWidthForCarouselItem=getSettingWidthForCarouselItem,exports.getSettingWidthForGridItem=getSettingWidthForGridItem,exports.getShapeByLayout=getShapeByLayout,exports.getZoomDisplay=getZoomDisplay,exports.sizeSettingDefaultForNewLayout=sizeSettingDefaultForNewLayout;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),common=require("./common.js"),productGallery=require("./productGallery.js");const DEVICES=["desktop","mobile","tablet"];function filterTruthyStyles(e){return Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!!e))}const getWrapContainerStyle=(e,t)=>{let o=common.getStyleGridLayout({position:e.position,ratioLayout:e.ratioLayout,ratioLayoutRight:e.ratioLayoutRight,isHiddenGalleryImages:!!t}),r={"--gtc":"minmax(0, 12fr)"},a={...t?r:o,...core.makeStyleResponsive("gg",e?.spacing)};return filterTruthyStyles(a)},getFeatureImageStyle=(e,{enableOrder:t,enableDisplay:o})=>{let r=()=>common.getDisplayStyle(t=>!["bottom-center","left","right","only-feature","inside-bottom","inside-left","inside-right"].includes(core.getResponsiveValueByScreen(e?.position,t)||""),"flex"),a=common.getStyleGridOrderForFeature({position:e?.position}),l={...core.makeStyleResponsive("jc",e?.align),...t&&{...a},...o&&{...r()}};return filterTruthyStyles(l)},getGalleryImageStyle=(e,t)=>{let o=common.getStyleGridOrderForGallery({position:e.position}),r=()=>{let o={},r=t??0;return DEVICES.forEach(t=>{let a=core.getResponsiveValueByScreen(e?.position,t),l=["left","right"].includes(a),i=core.getResponsiveValueByScreen(e?.spacing,t),s=["inside-left","inside-right"].includes(a),n=common.convertSpacingForIndisdeLayout(i),p=`calc(${r}px - ${n})`;o={...o,[t]:l?r+"px":s?p:"auto"}}),o},a=productGallery.getShapeByLayout({shape:e.shape,shapeForBottom:e.shapeForBottom,shapeFor1Col:e.shapeFor1Col,shapeFor2Col:e.shapeFor2Col,shapeForFtOnly:e.shapeForFtOnly,shapeForInsideBottom:e.shapeForInsideBottom??productGallery.sizeSettingDefaultForNewLayout,shapeForInside:e.shapeForInside??productGallery.sizeSettingDefaultForNewLayout},e.position),l=common.getStyleInsideLayout(e.position,a,e?.spacing),i={...core.makeStyleResponsive("h",core.makeHeight(r())),...core.makeStyleResponsive("jc",e?.align),...o,...l};return filterTruthyStyles(i)},getGalleryGridStyle=(e,t)=>{let o=productGallery.getShapeByLayout({shape:e.shape,shapeForBottom:e.shapeForBottom,shapeFor1Col:e.shapeFor1Col,shapeFor2Col:e.shapeFor2Col,shapeForFtOnly:e.shapeForFtOnly,shapeForInsideBottom:e.shapeForInsideBottom,shapeForInside:e.shapeForInside},e.position),r=()=>{let t=(e,t,o)=>{let r=core.getResponsiveValueByScreen(t,o),a=core.getResponsiveValueByScreen(e,o),l="slider"!==a&&("bottom-center"===r||"inside-bottom"===r),i=["one-col","two-col"].includes(r||"");return l||i},r=productGallery.checkDisplayGalleryByWidth({shapeByLayout:o}),a={desktop:r.desktop&&t(e.type,e.position,"desktop"),tablet:r.tablet&&t(e.type,e.position,"tablet"),mobile:r.mobile&&t(e.type,e.position,"mobile")};return common.getDisplayStyle(e=>!a[e],"flex")},a={...r(),...core.makeStyleResponsive("cg",e?.itemSpacing),...core.makeStyleResponsive("rg",e?.itemSpacing),...core.makeStyleResponsive("jc",e?.align),...t};return filterTruthyStyles(a)},getGalleryGridItemStyle=e=>{let t=productGallery.getShapeByLayout({shape:e.shape,shapeForBottom:e.shapeForBottom,shapeFor1Col:e.shapeFor1Col,shapeFor2Col:e.shapeFor2Col,shapeForFtOnly:e.shapeForFtOnly,shapeForInsideBottom:e.shapeForInsideBottom,shapeForInside:e.shapeForInside},e.position),o=core.getHeightByShapeGlobalSize(t),r=productGallery.getSettingWidthForGridItem({shapeByLayout:t,itemSpacing:e.itemSpacing}),a={"max-width":"100%","outline-color":"var(--g-c-brand, brand)",...core.makeStyleResponsive("h",core.makeHeight(o)),...core.makeStyleResponsive("w",core.makeWidth(r)),...core.composeRadius({normal:e.corner})};return filterTruthyStyles(a)},getFeatureImageCarouselItemStyle=e=>{let t=core.getHeightByShapeGlobalSize(e.ftShape),o={"max-width":"100%","outline-color":"var(--g-c-brand, brand)",...core.composeRadius({normal:e?.ftCorner}),...core.makeStyleResponsive("h",core.makeHeight(t))};return filterTruthyStyles(o)},getGalleryCarouselStyle=e=>{let t=productGallery.getShapeByLayout({shape:e.shape,shapeForBottom:e.shapeForBottom,shapeFor1Col:e.shapeFor1Col,shapeFor2Col:e.shapeFor2Col,shapeForFtOnly:e.shapeForFtOnly,shapeForInsideBottom:e.shapeForInsideBottom,shapeForInside:e.shapeForInside},e.position),o=o=>{let r=core.getResponsiveValueByScreen(e?.position,o),a="bottom-center"===r||"inside-bottom"===r,l="inside-left"===r||"inside-right"===r||"left"===r||"right"===r,i=core.getResponsiveValueByScreen(t,o);return a||l||!i?.width?"100%":i.width},r={spacing:common.convertSpacing(e?.itemSpacing),sizeSetting:{desktop:{width:o("desktop"),height:"100%"},tablet:{width:o("tablet"),height:"100%"},mobile:{width:o("mobile"),height:"100%"}}};return filterTruthyStyles(r)},getGalleryCarouselItemStyle=e=>{let t=productGallery.getShapeByLayout({shape:e.shape,shapeForBottom:e.shapeForBottom,shapeFor1Col:e.shapeFor1Col,shapeFor2Col:e.shapeFor2Col,shapeForFtOnly:e.shapeForFtOnly,shapeForInsideBottom:e.shapeForInsideBottom,shapeForInside:e.shapeForInside},e.position),o=core.makeStyleResponsive("minw",core.makeWidth(productGallery.getSettingMinWidthForCarouselItem({shapeByLayout:t,position:e.position,spacing:e.itemSpacing}))),r=core.makeStyleResponsive("maxw",core.makeWidth(productGallery.getSettingMinWidthForCarouselItem({shapeByLayout:t,position:e.position,spacing:e.itemSpacing}))),a=core.makeStyleResponsive("w",core.makeWidth(productGallery.getSettingWidthForCarouselItem({shapeByLayout:t,position:e.position}))),l=core.makeStyleResponsive("h",core.makeHeight(core.getHeightByShapeGlobalSize(t))),i={"outline-color":"var(--g-c-brand, brand)",...o,...r,...a,...l,...core.composeRadius({normal:e.corner})};return filterTruthyStyles(i)},getFeaturedImageCarouselStyle=e=>{let t=t=>{let o=core.getResponsiveValueByScreen(e.ftShape,t);return o?.width??"100%"},o={playSpeed:e?.ftAnimationSpeed,sizeSetting:{desktop:{width:t("desktop"),height:"auto"},tablet:{width:t("tablet"),height:"auto"},mobile:{width:t("mobile"),height:"auto"}},align:{desktop:core.getResponsiveValueByScreen(e?.align,"desktop"),tablet:core.getResponsiveValueByScreen(e?.align,"tablet"),mobile:core.getResponsiveValueByScreen(e?.align,"mobile")},spacing:{desktop:6,tablet:6,mobile:6}};return filterTruthyStyles(o)},getFeaturedImageOnlyOneImageStyle=({setting:e,options:t})=>{let o=core.getHeightByShapeGlobalSize(e?.ftShape),r={...core.makeStyleWithDefault("w",core.getWidthByShapeGlobalSize(e?.ftShape,!1,!0),{desktop:"--g-ct-w",tablet:"--g-ct-w",mobile:"--g-ct-w"}),...t?.enableRadius&&core.composeRadius({normal:e?.ftCorner}),...t?.enableHeight&&core.makeStyleResponsive("h",core.makeHeight(o))};return filterTruthyStyles(r)};exports.getFeatureImageCarouselItemStyle=getFeatureImageCarouselItemStyle,exports.getFeatureImageStyle=getFeatureImageStyle,exports.getFeaturedImageCarouselStyle=getFeaturedImageCarouselStyle,exports.getFeaturedImageOnlyOneImageStyle=getFeaturedImageOnlyOneImageStyle,exports.getGalleryCarouselItemStyle=getGalleryCarouselItemStyle,exports.getGalleryCarouselStyle=getGalleryCarouselStyle,exports.getGalleryGridItemStyle=getGalleryGridItemStyle,exports.getGalleryGridStyle=getGalleryGridStyle,exports.getGalleryImageStyle=getGalleryImageStyle,exports.getWrapContainerStyle=getWrapContainerStyle;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime");const MediaIcon=({contentType:e})=>{let t="VIDEO"==e||"EXTERNAL_VIDEO"==e,i="MODEL_3D"==e;return jsxRuntime.jsx(jsxRuntime.Fragment,{children:(t||i)&&jsxRuntime.jsxs("div",{className:"gp-absolute gp-bottom-0 gp-right-0 gp-pb-[15px] gp-pr-[15px]",children:[t&&jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{opacity:"0.9",width:"24",height:"24",rx:"3",fill:"#212121"}),jsxRuntime.jsx("path",{d:"M17.6869 12.2646L17.6868 12.2646L6.78379 18.4464C6.78378 18.4464 6.78376 18.4464 6.78374 18.4464C6.52931 18.5903 6.1665 18.4179 6.1665 18.0416V5.95844C6.1665 5.58218 6.52917 5.40981 6.7836 5.55354C6.78366 5.55357 6.78373 5.55361 6.78379 5.55365L17.6868 11.7354L17.6869 11.7354C17.8819 11.846 17.8819 12.154 17.6869 12.2646Z",stroke:"#F9F9F9",strokeMiterlimit:"10"})]}),i&&jsxRuntime.jsxs("svg",{width:"24",height:"24",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[jsxRuntime.jsx("rect",{opacity:"0.9",width:"24",height:"24",rx:"3",fill:"#212121"}),jsxRuntime.jsx("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.7441 4.57034C11.9017 4.47655 12.098 4.47655 12.2555 4.57034L18.5889 8.33957C18.7404 8.42971 18.8332 8.59296 18.8332 8.76923V15.2308C18.8332 15.407 18.7404 15.5703 18.5889 15.6604L12.2555 19.4297C12.098 19.5234 11.9017 19.5234 11.7441 19.4297L5.41079 15.6604C5.25932 15.5703 5.1665 15.407 5.1665 15.2308V8.76923C5.1665 8.59296 5.25932 8.42971 5.41079 8.33957L11.7441 4.57034ZM6.1665 9.64865V14.9465L11.4998 18.1206V12.8227L6.1665 9.64865ZM12.4998 12.8227V18.1206L17.8332 14.9465V9.64865L12.4998 12.8227ZM17.3555 8.76923L11.9998 11.9566L6.64417 8.76923L11.9998 5.58185L17.3555 8.76923Z",fill:"#F9F9F9"})]})]})})};exports.default=MediaIcon;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),React=require("react");require("@gem-sdk/core"),require("next/link");var Video=require("../../../../../video/components/Video.js");const ProductFeatureVideo=e=>{let{url:t,aspectRatio:r}=e,u=React.useMemo(()=>t.includes("youtu.be")?"youtube":t.includes("vimeo")?"vimeo":"html5",[t]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:jsxRuntime.jsx(Video.default,{setting:{type:u,html5Url:t,youtubeUrl:t,vimeoUrl:t,preload:!0,controls:!0,aspectRatio:r}})})};var ProductFeatureVideo$1=React.memo(ProductFeatureVideo);exports.default=ProductFeatureVideo$1;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),React=require("react"),core=require("@gem-sdk/core"),hoverAction=require("../../common/hoverAction.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),system=require("@gem-sdk/system"),styles=require("../../common/styles.js"),Carousel=require("../../../../../carousel-v3/components/root/Carousel.js"),CarouselItem=require("../../../../../carousel-v3/components/item/CarouselItem.js"),ProductFeaturedImageOnly=require("./ProductFeaturedImageOnly.js"),useProductFeaturedImageCarousel=require("../../hooks/useProductFeaturedImageCarousel.js");const ProductFeaturedImageCarousel=React.forwardRef((e,t)=>{let{productImages:r,imgRef:s,onHandleClick:a,onClickArrow:o,onHandleLoaded:u,onHandleUpdateActiveIndex:l,swiperUpdateTrigger:i,builderPropUID:d,builderPropsClass:n,children:c,parentUid:m,...g}=e,I=React.useRef(null),{ref:p,imageActive:h,imageActiveIndex:j,imageShowWhenHover:v,enableOpenLightBox:y,filteredProductImages:C,isRenderFeatureCarousel:P,genRandomKey:x,getAspectRatioFinal:f,emitUpdateActiveIndex:R}=useProductFeaturedImageCarousel.useProductFeaturedImageCarousel(e);React.useImperativeHandle(t,()=>({getSwiper:()=>I.current?.getSwiper()||null}));let A=core.useCurrentDevice(),{galleryItemClasses:M,featureImageOnlyOneImageClasses:S}=getProductImagesClassName.getProductImagesClassName(g),{featuredImageCarouselStyle:q,featureImageCarouselItemStyle:F}=getProductImagesStyles.getProductImagesStyles(g),O=system.createStyle({...styles.getFeaturedImageOnlyOneImageStyle({setting:g,options:{enableRadius:!0,enableHeight:!0}})}),{featuredImageCarouselSettingAttrs:w}=getProductImagesAttr.getProductImagesAttr(g);return jsxRuntime.jsx("div",{ref:p,"data-slot":"children",className:"product-feature-image",children:P?jsxRuntime.jsxs(Carousel.default,{ref:I,parentClass:n,elmRef:s,setting:w,styles:q,builderProps:{uid:d},isHiddenArrowWhenDisabled:!0,onLoaded:e=>u&&u(e),onChangeActive:e=>R(e),onClickArrow:()=>o&&o(x()),moveToIdx:j,disableMarginAuto:!0,thumbsSwiper:`#gp-carousel-${d}-carousel`,onHandleChangeSlideByInteraction:e=>{let t=C?.length??0,r=e>=t?0:e;a(C?.[r]?.id??"",y)},children:[c,C?.map(e=>jsxRuntime.jsx(CarouselItem.default,{contentType:"productImage",className:M("gp-ft-image-item !gp-min-w-full !gp-max-w-full"),onClickItem:()=>{let t=core.getResponsiveValueByScreen(g?.ftClickOpenLightBox,A);"none"!==t&&a(e?.id??"",y)},style:F,onMouseMove:e=>hoverAction.handleMouseMove(e,g),onMouseOut:e=>hoverAction.handleMouseOut(e),children:jsxRuntime.jsx(ProductFeaturedImageOnly.default,{image:e,imageShowWhenHover:v,setting:g,aspectRatio:f()})},e?.id))]}):jsxRuntime.jsx("div",{ref:s,className:"gp-flex gp-w-full",style:{...core.makeStyleResponsive("jc",g?.align)},"data-id":d,children:jsxRuntime.jsx("div",{"aria-hidden":"true",className:S,style:O,onMouseMove:e=>hoverAction.handleMouseMove(e,g),onMouseOut:e=>hoverAction.handleMouseOut(e),onBlur:()=>void 0,onClick:()=>{a(h?.id??"",y)},children:jsxRuntime.jsx(ProductFeaturedImageOnly.default,{image:h,imageShowWhenHover:v,setting:g,aspectRatio:f(h)})})})})});var ProductFeaturedImageCarousel$1=React.memo(ProductFeaturedImageCarousel);exports.default=ProductFeaturedImageCarousel$1;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),React=require("react"),NextImage=require("../../../../../image/components/NextImage.js"),MediaIcon=require("./MediaIcon.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),ProductFeatureVideo=require("./ProductFeatureVideo.js");const defaultImage={src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",id:"noImageError",width:480,height:480,alt:"no image",contentType:"IMAGE"},ProductFeaturedImageOnly=({image:e,imageShowWhenHover:t,setting:r,aspectRatio:o})=>{let a=core.useProduct(),c=core.useCurrentDevice(),s=core.useShopStore(e=>e.storefrontUrl),{isEditMode:i,isPreviewSharePageMode:u}=core.useRenderMode(),n=React.useMemo(()=>"none"!==core.getResponsiveValueByScreen(r.ftClickOpenLightBox,c),[c,r.ftClickOpenLightBox]),d=React.useMemo(()=>!i&&["VIDEO","EXTERNAL_VIDEO"].includes(e?.contentType||"")&&!n,[i,e?.contentType,n]),m=React.useMemo(()=>e?{...e,src:d?e.src:productFeaturedImage.isFeatureMedia(e?.contentType)?e?.previewImage:e.src}:defaultImage,[e,d]),l=React.useMemo(()=>{if(u)return"javascript:void(0)";if(!s)return"#";let e=new URL(s);return a?`${e.protocol}//${e.host}/products/${a.handle}`:"#"},[s,a,u]),g=e=>"product-link"===core.getResponsiveValueByScreen(r.ftClickOpenLightBox,c)?jsxRuntime.jsx("a",{title:a?.title,href:l,className:"gp-w-full",children:e}):e,h=React.useMemo(()=>r?.hoverEffect!=="none"&&!productFeaturedImage.isFeatureMedia(m?.contentType),[m?.contentType,r?.hoverEffect]),p=React.useMemo(()=>r?.hoverEffect=="zoom"&&r?.zoomType=="glasses"&&!productFeaturedImage.isFeatureMedia(m?.contentType),[m?.contentType,r?.hoverEffect,r?.zoomType]);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:g(jsxRuntime.jsx(jsxRuntime.Fragment,{children:d?jsxRuntime.jsx(ProductFeatureVideo.default,{type:m?.contentType,url:m.src??"",aspectRatio:o}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(NextImage.default,{draggable:"false",src:m.src,width:m?.width,height:m?.height,alt:m?.alt,setting:{aspectRatio:o,layout:r?.ftLayout},priority:r?.preload,className:"featured-image-only",style:{width:"100%",height:"100%",cursor:"pointer"}}),jsxRuntime.jsx(MediaIcon.default,{contentType:m?.contentType??""}),h&&jsxRuntime.jsx(NextImage.default,{draggable:"false",src:r?.hoverEffect==="other"?t?.src:m.src,width:r?.hoverEffect==="other"?t?.width:m.width,height:r?.hoverEffect==="other"?t?.height:m.height,alt:r?.hoverEffect==="other"?t?.alt:m.alt,setting:{layout:r.ftLayout,aspectRatio:o},style:{width:"100%",height:"100%"},className:core.cls("hover-image featured-image-only !gp-max-w-none",productFeaturedImage.getZoomImageClass()),priority:r?.preload}),p&&jsxRuntime.jsx("div",{className:core.cls(productFeaturedImage.getZoomLenClass(),"room-len"),style:{...core.makeStyle({bgi:`url("${m?.src}")`})}})]})}))})};var ProductFeaturedImageOnly$1=React.memo(ProductFeaturedImageOnly);exports.default=ProductFeaturedImageOnly$1;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),React=require("react"),common=require("../../common/common.js"),NextImage=require("../../../../../image/components/NextImage.js"),ButtonOpenLightBox=require("../lightbox/ButtonOpenLightBox.js"),MediaIcon=require("./MediaIcon.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),hoverAction=require("../../common/hoverAction.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),useProductGalleryGrid=require("../../hooks/useProductGalleryGrid.js");const ProductGalleryGrid=e=>{let{builderPropUID:t,productImages:o,onHandleClick:r,activeIndexFromFeatureImage:a,children:s,isHiddenInteraction:i,...c}=e,{isDisplay:l,shapeByLayout:u,imageActiveIndex:d,enableOpenLightBox:m,isEnableBorderActive:n,filteredProductImages:g}=useProductGalleryGrid.useProductGalleryGrid(e),y=core.useCurrentDevice(),{galleryGridWrapperClasses:p,galleryItemClasses:h}=getProductImagesClassName.getProductImagesClassName(c),{galleryGridStyles:x,galleryGridItemStyles:j}=getProductImagesStyles.getProductImagesStyles(c);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:l&&jsxRuntime.jsxs("div",{"data-slot":"children","data-id":t,className:p,style:x,"gp-data-hidden":`${i}`,children:[g?.map((e,o)=>{let a=o===d,s=productFeaturedImage.isFeatureMedia(e.contentType)?e.previewImage:e.src;return jsxRuntime.jsxs("div",{"aria-hidden":!0,className:h(`gp-gallery-image-item gem-slider-item-${t}
2
+ ${a&&n?"gem-slider-item-active":""}`),onClick:()=>r(e?.id||"",m),style:j,onMouseMove:e=>hoverAction.handleMouseMove(e,{hoverEffect:c.galleryHoverEffect,zoom:c.galleryZoom,zoomType:c.galleryZoomType}),onMouseOut:e=>hoverAction.handleMouseOut(e),"data-border":a&&c?.borderActive?"active":"deactive",children:[jsxRuntime.jsx(NextImage.default,{src:s,width:e?.width,height:e?.height,alt:e?.alt,setting:{aspectRatio:common.getAspectRatio(u),layout:c?.layout},style:{width:"100%",height:"100%"}},e?.id),jsxRuntime.jsx(MediaIcon.default,{contentType:e?.contentType||""}),c?.galleryHoverEffect!=="none"&&!productFeaturedImage.isFeatureMedia(e?.contentType)&&jsxRuntime.jsx(NextImage.default,{src:s,width:e?.width,height:e?.height,alt:e?.alt,setting:{layout:c.layout,aspectRatio:common.getAspectRatio(u)},className:core.cls("hover-image !gp-max-w-none",productFeaturedImage.getZoomImageClass())}),c?.galleryHoverEffect=="zoom"&&c?.galleryZoomType=="glasses"&&["one-col","two-col"].includes(core.getResponsiveValueByScreen(c.position,y)||"")&&!productFeaturedImage.isFeatureMedia(e?.contentType)&&jsxRuntime.jsx("div",{className:core.cls(productFeaturedImage.getZoomLenClass(),"room-len"),style:{...core.makeStyle({bgi:`url("${e?.src}")`})}}),core.getResponsiveValueByScreen(c?.clickOpenLightBox,y)&&jsxRuntime.jsx(ButtonOpenLightBox.default,{})]},e?.id)}),s]})})};var ProductGalleryGrid$1=React.memo(ProductGalleryGrid);exports.default=ProductGalleryGrid$1;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),React=require("react"),GalleryCarousel=require("../gallery-carousel/GalleryCarousel.js"),ProductGalleryGrid=require("../child/ProductGalleryGrid.js"),ProductFeaturedImageCarousel=require("../child/ProductFeaturedImageCarousel.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),useFeatureImageWithGallery=require("../../hooks/useFeatureImageWithGallery.js");const FeatureImageWithGallery=e=>{let{setting:r,styles:t,builderProps:a,gallery:s,onHandleClickImage:u,priorityFeatureImage:l,children:i,noDataChildren:d}=e,o=React.useRef(null),c=core.useCurrentDevice(),m=React.useCallback(e=>{if(!o.current)return;let r=o.current.getSwiper();r&&r.thumbs.swiper?.realIndex===void 0&&e&&(r.thumbs.swiper=e,r.thumbs.init(),r.thumbs.update(!0),r.update())},[]),n={...r,...t},{isShowCarousel:g,featureImageHeight:I,featureWrapperImage:p,onClickFeatureArrow:y,activeIndexFromFeatureImage:j,setOnClickFeatureArrow:x,onHandleLoadedFeatureImage:P,setActiveIndexFromFeatureImage:h}=useFeatureImageWithGallery.useFeatureImageWithGallery(e);if(s?.[0]?.id==="noImageError")return jsxRuntime.jsx(jsxRuntime.Fragment,{children:d});let{ftImageGalleryClasses:C,imageGalleryWrapperClasses:F}=getProductImagesClassName.getProductImagesClassName(e),{wrapperFeaturedImageStyle:G,featureImageStyle:R,galleryImageStyle:b}=getProductImagesStyles.getProductImagesStyles(n,{gallery:s,featureImageHeight:I}),f=JSON.stringify(n?.position)+c+g;return jsxRuntime.jsxs("div",{className:core.cls("gp-grid gp-w-full gp-relative"),style:G,children:[jsxRuntime.jsx("div",{className:C,style:R,children:jsxRuntime.jsx(ProductFeaturedImageCarousel.default,{ref:o,imgRef:p,productImages:s,...n,onHandleClick:(e,r)=>u(e||"",r),onHandleLoaded:P,onHandleUpdateActiveIndex:h,onClickArrow:e=>x(e),builderPropUID:a?.uid,builderPropsClass:`gp-product-images-feature-${a?.uid}`,children:i})}),s.length>1&&jsxRuntime.jsx("div",{className:F,style:b,children:g?jsxRuntime.jsx(GalleryCarousel.default,{productImages:s,position:n?.position,...n,builderPropUID:a?.uid,onHandleClick:(e,r)=>u(e||"",r),onSwiperReady:m,activeIndexFormFeatureImage:j,priorityFeatureImage:l,onClickFeatureArrow:y,builderPropsClass:`gp-product-images-gallery-${a?.uid}`}):jsxRuntime.jsx(ProductGalleryGrid.default,{productImages:s,...n,builderPropUID:a?.uid,onHandleClick:(e,r)=>u(e||"",r),activeIndexFromFeatureImage:j,isHiddenInteraction:!0})})]},f)};exports.default=FeatureImageWithGallery;
@@ -0,0 +1,118 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),common=require("../../common/common.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),HTML5Embed_liquid=require("../../../../../video/components/HTML5Embed.liquid.js"),Modal3d_liquid=require("../../../../../image/components/Modal3d.liquid.js"),NextImage_liquid=require("../../../../../image/components/NextImage.liquid.js"),Video_liquid=require("../../../../../image/components/Video.liquid.js"),_function=require("../../../../helpers/function.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),system=require("@gem-sdk/system"),Carousel_liquid=require("../../../../../carousel-v3/components/root/Carousel.liquid.js"),CarouselItem_liquid=require("../../../../../carousel-v3/components/item/CarouselItem.liquid.js");const FeatureImageWithGallery=({builderPropUID:e,children:t,enableLazyLoadImage:i,...a})=>{let{featuredImageCarouselClasses:s,galleryItemClasses:r,featuredCarouselItemClasses:d}=getProductImagesClassName.getProductImagesClassName(a),{featuredImageCarouselStyle:o,featureImageStyle:u,featureImageCarouselOnlyOneImageStyle:m,featureImageOnlyOneImageStyle:l,featureImageCarouselItemStyle:g}=getProductImagesStyles.getProductImagesStyles(a),{featuredImageCarouselSettingAttrs:c}=getProductImagesAttr.getProductImagesAttr(a),n=common.getAspectRatio(a.ftShape),p=()=>`
2
+ {% case featureMedia.media_type %}
3
+ {% when 'image' %}
4
+ ${I()}
5
+ {% when 'external_video' %}
6
+ {% assign mediaSourceVideo = featureMedia | external_video_url %}
7
+ ${y()}
8
+ {% when 'video' %}
9
+ {% assign mediaSourceVideo = featureMedia.sources.last.url %}
10
+ ${h()}
11
+ {% when 'model' %}
12
+ ${f()}
13
+ {% else %}
14
+ ${_()}
15
+ {% endcase %}
16
+ `,f=()=>Modal3d_liquid.default({src:system.LiquidIf("featureMedia.sources.first.url contains '.glb'","{{ featureMedia.sources.first.url }}","{{featureMedia.sources.last.url}}"),alt:"{{featureMedia.preview_image.alt}}",poster:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",cameraControls:!0,arStatus:"not-presenting",style:{width:"100%"},aspectRatio:n}),y=()=>Video_liquid.default({src:"{{mediaSourceVideo}}",alt:"{{featureMedia.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"},aspectRatio:n}),h=()=>{let e=system.createStyle({...productFeaturedImage.getVideoHeight(a?.ftLayout),...core.makeStyleResponsive("objf",a?.ftLayout)}),t=system.createStyle({...productFeaturedImage.getVideoHeight(a?.ftLayout)});return HTML5Embed_liquid.default({src:"{{mediaSourceVideo}}",title:"{{featureMedia.alt | escape}}",autoplay:!1,controls:!0,thumbnail:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",isCheckLoaded:!0,wrapperStyles:t,style:{width:"100%","max-height":"100%",...e},className:"gp-invisible"})},I=()=>core.template`
17
+ ${q(core.cls("gp-w-full gp-transition-opacity",{"group-hover:gp-opacity-0":"other"==a.hoverEffect},"{{shouldHidden}}"))}
18
+ ${system.If(a?.hoverEffect!=="none",`<div class="${core.cls("zoom-element !gp-max-w-none",productFeaturedImage.getZoomImageClass())}">
19
+ ${q("image-zoom",!0)}
20
+ </div>`," ")}
21
+ ${system.If(a?.hoverEffect=="zoom"&&a?.zoomType=="glasses",`<div class="${core.cls("zoom-lens-element",productFeaturedImage.getZoomLenClass())}" style="opacity: 0; background-image: url('{{ featureMedia.src | img_url: "1024x1024"}}')"></div>`," ")}
22
+ `,q=(e,t)=>core.template`
23
+ {% assign src = featureMedia.src %}
24
+ ${system.If(t&&"other"==a.hoverEffect,`{% assign media_length = product.media | size %}
25
+ {% assign other_image_index = ${a.otherImage} | plus: 0 %}
26
+ {% if other_image_index >= media_length %}
27
+ {% assign other_image_index = media_length | minus: 1 %}
28
+ {% endif %}
29
+ {% assign otherImage = product.media[other_image_index] %}
30
+ ${system.LiquidIf("otherImage.media_type != 'image'","{% assign src = otherImage.preview_image.src %}","{% assign src = otherImage.src %}")}
31
+ `)}
32
+ ${NextImage_liquid.default({srcIsLiquidCode:!0,src:system.LiquidIf("src != null",common.getSrcImage("src"),"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif"),id:system.LiquidIf("featureMedia != null","{{featureMedia.id}}"),width:"{{featureMedia.width}}",height:"{{featureMedia.height}}",alt:"{{featureMedia.alt | escape}}",srcset:`${common.getSrcImage("src")}`,baseSrc:"{{src | image_url}}",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:a?.ftLayout,aspectRatio:n,qualityType:a?.qualityType,qualityPercent:a?.qualityPercent},priority:a?.preload,className:`gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none ${e}`,enableLazyLoadImage:i})}`,_=()=>core.template`
33
+ ${NextImage_liquid.default({srcIsLiquidCode:!0,src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",alt:"No Image",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:a?.ftLayout,aspectRatio:n,qualityType:a?.qualityType,qualityPercent:a?.qualityPercent},priority:a?.preload,className:"gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none",enableLazyLoadImage:i})}`,b=common.getPaddingBottomByShapeSetting(a.ftShape),M=t=>`
34
+ ${system.Liquid(`{% assign productImageWidth = 0 %}
35
+ {% case featureMedia.media_type %}
36
+ {% when 'image' %}
37
+ {% assign productImageWidth = featureMedia.width %}
38
+ {% else %}
39
+ {% assign productImageWidth = featureMedia.preview_image.width %}
40
+ {% endcase %}`)}
41
+ ${CarouselItem_liquid.default({id:"{{section.id}}-{{imageID}}",contentType:"productImage",className:`${r(`gp-ft-image-item !gp-min-w-full !gp-max-w-full' ${t}`)}`,parentId:`ft-${e}-{{section.id}}-{{product.id}}`,style:g,customStyle:{width:"{{productImageWidth}}px"},children:`
42
+ <div
43
+ class="gp-w-full gp-relative ${system.LiquidIf("featureMedia == null or featureMedia.media_type == 'image'","{{ 'gp-h-0' }}","{{ 'gp-h-full !gp-pb-0' }}")}"
44
+ style="${_function.getStyleOfObject(core.makeStyleResponsive("pb",b))} ${system.LiquidIf("featureMedia.media_type == 'video' or featureMedia.media_type == 'external_video'","{{ 'display: flex; align-items: center; justify-content: center' }}")}"
45
+ >
46
+ ${p()}
47
+ </div>
48
+ `})}`,v=productFeaturedImage.checkRenderFeaturedCarousel(a),$="gp-featured-image-wrapper",w=system.LiquidIf("product.media.size > 0",`${t||""} {% assign largestRatio = 0 %}
49
+ ${system.LiquidFor("featureMedia in product.media",`
50
+ {% assign height = featureMedia.height | times: 1.0 %}
51
+ {% assign width = featureMedia.width | times: 1.0 %}
52
+ {% assign ratio = height | divided_by: width %}
53
+ ${system.LiquidIf("ratio > largestRatio","{% assign largestRatio = ratio %}")}
54
+ `)}
55
+ ${system.LiquidFor("featureMedia in product.media",`${system.LiquidIf("featureMedia.media_type == 'image'",`${system.LiquidFor("image in product.images",system.LiquidIf("image.src == featureMedia.src","{% assign imageID = image.id %}{% break %}"))}`,"{% assign imageID = '' %}")}
56
+ ${M()}`)}
57
+ `,NextImage_liquid.default({src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",id:"noImageError",width:"480",height:"480",alt:"no image",priority:a?.preload,setting:{layout:a?.ftLayout,aspectRatio:n,qualityType:a?.qualityType,qualityPercent:a?.qualityPercent},style:{height:"100%"},className:"gp-w-full featured-image-only !gp-rounded-none",customLazyload:!0,enableLazyLoadImage:i})),L=()=>`
58
+ ${Carousel_liquid.default({builderProps:{uid:e},rootId:`ft-${e}-{{section.id}}-{{product.id}}`,conditionAppendJs:"product.media.size > 1",wrapperClass:$,rootClass:`${s}`,rootAttrs:{type:"gp-feature-image-carousel","product-id":"{{product.id}}","product-media":"{{product.media.size}}"},isHiddenArrowWhenDisabled:!0,setting:c,rootStyles:u,styles:o,style:{playSpeed:600},disableMarginAuto:!0,children:w})}
59
+ `,S=()=>{switch(a?.preDisplay){case"1st-images":return`
60
+ {% assign featureMedia = product.media.first %}
61
+ `;case"1st-3d-mode":return system.LiquidFor("media in product.media",system.LiquidIf("media.media_type == 'model'","{% assign featureMedia = media %}{% break %}"));case"1st-video":return system.LiquidFor("media in product.media",system.LiquidIf("media.media_type == 'video' or media.media_type == 'external_video'","{% assign featureMedia = media %}{% break %}"));default:return`
62
+ {% assign featureMedia = variant.featured_media %}
63
+ {% unless featureMedia %}
64
+ {% assign featureMedia = product.featured_media %}
65
+ {% endunless %}
66
+ `}},x=()=>system.Liquid(`
67
+ {% assign featureMedia = variant.featured_media %}
68
+ {% unless featureMedia %}
69
+ {% assign featureMedia = product.featured_media %}
70
+ {% endunless %}
71
+ ${system.LiquidIf("product.media.size > 1",S())}
72
+ {% assign largestRatio = 0 %}
73
+ {% assign height = featureMedia.height | times: 1.0 %}
74
+ {% assign width = featureMedia.width | times: 1.0 %}
75
+ {% assign ratio = height | divided_by: width %}
76
+ ${system.LiquidIf("ratio > largestRatio","{% assign largestRatio = ratio %}")}
77
+ {% assign productImageWidth = 0 %}
78
+ {% case featureMedia.media_type %}
79
+ {% when 'image' %}
80
+ {% assign productImageWidth = featureMedia.width %}
81
+ {% else %}
82
+ {% assign productImageWidth = featureMedia.preview_image.width %}
83
+ {% endcase %}
84
+ ${system.LiquidIf("featureMedia == null","{% assign productImageWidth = 1600 %}")}
85
+ <div
86
+ class='gp-feature-image-carousel gp-feature-image-only'
87
+ style="${_function.getStyleOfObject(u)}"
88
+ >
89
+ <div
90
+ class="gp-relative"
91
+ style="${_function.getStyleOfObject(l)}"
92
+ >
93
+ ${t}
94
+ <div
95
+ type="gp-feature-image-only"
96
+ product-id="{{product.id}}"
97
+ product-media="{{product.media.size}}"
98
+ class="${d($)}"
99
+ style="${_function.getStyleOfObject(m)}"
100
+ >
101
+ <div
102
+ class="gp-w-full gp-relative ${system.LiquidIf("featureMedia == null or featureMedia.media_type == 'image'","{{ 'gp-h-0' }}","{{ 'gp-h-full !gp-pb-0' }}")}"
103
+ style="${_function.getStyleOfObject(core.makeStyleResponsive("pb",b))} ${system.LiquidIf("featureMedia.media_type == 'video' or featureMedia.media_type == 'external_video'","{{ 'display: flex; align-items: center; justify-content: center' }}")}"
104
+ >
105
+ ${p()}
106
+ </div>
107
+ </div>
108
+ </div>
109
+ </div>
110
+ `);return system.Liquid(`
111
+ {% capture featureImageOnlyOne %}
112
+ ${x()}
113
+ {% endcapture %}
114
+ ${system.LiquidIf("product.media.size > 1",`
115
+ ${system.If(v,L()," ")}
116
+ ${system.If(!v,"{{ featureImageOnlyOne }}"," ")}
117
+ `,"{{ featureImageOnlyOne }}")}
118
+ `)};exports.default=FeatureImageWithGallery;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),ProductFeaturedImageCarousel=require("../child/ProductFeaturedImageCarousel.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js");const OnlyFeatureImage=e=>{let{setting:s,styles:r,gallery:t,builderProps:a,noDataChildren:u,onHandleClickImage:l,children:d}=e,m={...s,...r};if(t?.[0]?.id==="noImageError")return jsxRuntime.jsx(jsxRuntime.Fragment,{children:u});let{featureImageOnlyOneImageClasses:o}=getProductImagesClassName.getProductImagesClassName(m),{featureImageStyle:g}=getProductImagesStyles.getProductImagesStyles(m);return jsxRuntime.jsxs("div",{className:o,style:g,children:[jsxRuntime.jsx(ProductFeaturedImageCarousel.default,{productImages:t,...m,onHandleClick:(e,s)=>{l(e||"",s)},builderPropUID:a?.uid,builderPropsClass:`gp-product-images-gallery-${a?.uid}`}),d]})};exports.default=OnlyFeatureImage;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),common=require("../../common/common.js"),productGallery=require("../../common/productGallery.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),MediaIcon=require("../child/MediaIcon.js"),ButtonOpenLightBox=require("../lightbox/ButtonOpenLightBox.js"),NextImage=require("../../../../../image/components/NextImage.js"),Carousel=require("../../../../../carousel-v3/components/root/Carousel.js"),CarouselItem=require("../../../../../carousel-v3/components/item/CarouselItem.js"),useGalleryCarousel=require("../../hooks/useGalleryCarousel.js"),system=require("@gem-sdk/system");const ProductGalleryCarousel=e=>{let{builderPropUID:t,productImages:s,onSwiperReady:r,activeIndexFormFeatureImage:a,onClickFeatureArrow:o,builderPropsClass:u,arrow:l,priorityFeatureImage:i,...m}=e,c=core.useCurrentDevice(),{galleryItemClasses:n}=getProductImagesClassName.getProductImagesClassName(m),{galleryCarouselSettingAttrs:d}=getProductImagesAttr.getProductImagesAttr(m),{galleryCarouselStyle:g,galleryCarouselItemStyle:p}=getProductImagesStyles.getProductImagesStyles(m),{isDisplay:y,shapeByLayout:I,isShowButtonLightbox:j,filteredProductImages:x,handleClickCarouselItem:C,safeMoveToIdx:h,setSliderReady:q}=useGalleryCarousel.useGalleryCarousel(e);return jsxRuntime.jsx(jsxRuntime.Fragment,{children:y&&jsxRuntime.jsx(Carousel.default,{parentClass:u,rootClass:u,setting:d,styles:g,slidesClass:productGallery.getEditorMinHeightClass(c,m.position,m.navigationPosition),builderProps:{uid:`${t}-carousel`},moveToIdx:h,isHiddenArrowWhenDisabled:!0,disableMarginAuto:!0,isEnableCheckHasScrollableContent:!0,onLoaded:e=>{e&&q(!0)},onSwiperReady:r,children:x?.map(e=>{let s=productFeaturedImage.isFeatureMedia(e.contentType)?e.previewImage:e.src;return jsxRuntime.jsxs(CarouselItem.default,{contentType:"productImage",className:n(`gp-gallery-image-item gem-slider-item-${t}`),onClickItem:()=>C(e?.id),style:p,"data-id":e?.id,children:[jsxRuntime.jsx(NextImage.default,{draggable:"false",src:s,width:e?.width,height:e?.height,alt:e?.alt,setting:{aspectRatio:common.getAspectRatio(I),layout:m?.layout,qualityPercent:m?.qualityPercent,qualityType:m?.qualityType},style:{width:"100%",height:"100%",cursor:"pointer"},className:"product-list-image"}),jsxRuntime.jsx(MediaIcon.default,{contentType:e?.contentType||""}),system.If(j,jsxRuntime.jsx(ButtonOpenLightBox.default,{}))]},e?.id)})})})};exports.default=ProductGalleryCarousel;
@@ -0,0 +1,46 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),NextImage_liquid=require("../../../../../image/components/NextImage.liquid.js"),common=require("../../common/common.js"),productGallery=require("../../common/productGallery.js"),_function=require("../../../../helpers/function.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesAttr=require("../../composables/getProductImagesAttr.js"),system=require("@gem-sdk/system"),Carousel_liquid=require("../../../../../carousel-v3/components/root/Carousel.liquid.js"),CarouselItem_liquid=require("../../../../../carousel-v3/components/item/CarouselItem.liquid.js");const ProductGalleryCarousel=({builderPropUID:e,children:t,enableLazyLoadImage:i,...o})=>{let{featuredImageGalleryClasses:s,galleryItemClasses:r}=getProductImagesClassName.getProductImagesClassName(o),{galleryCarouselSettingAttrs:a}=getProductImagesAttr.getProductImagesAttr(o),{galleryCarouselStyle:l,galleryCarouselItemStyle:d}=getProductImagesStyles.getProductImagesStyles(o),p=()=>{let e=(e,t,i)=>{let o=core.getResponsiveValueByScreen(t,i),s=core.getResponsiveValueByScreen(e,i),r="slider"===s&&("bottom-center"===o||"inside-bottom"===o),a=["left","right","inside-left","inside-right"].includes(o??"");return a||r},t=productGallery.checkDisplayGalleryByWidth({shapeByLayout:g}),i={desktop:t.desktop&&e(o.type,o.position,"desktop"),tablet:t.tablet&&e(o.type,o.position,"tablet"),mobile:t.mobile&&e(o.type,o.position,"mobile")};return common.getDisplayStyle(e=>!i[e],"flex")},g=productGallery.getShapeByLayout({shape:o.shape,shapeForBottom:o.shapeForBottom,shapeFor1Col:o.shapeFor1Col,shapeFor2Col:o.shapeFor2Col,shapeForFtOnly:o.shapeForFtOnly,shapeForInsideBottom:o.shapeForInsideBottom,shapeForInside:o.shapeForInside},o.position),m=(e,t)=>core.template`${NextImage_liquid.default({srcIsLiquidCode:!0,src:`${common.getSrcImage("media.preview_image")}`,width:"{{media.width}}",height:"{{media.height}}",alt:"{{media.alt | escape}}",setting:e,baseSrc:"{{media.preview_image | image_url}}",style:t,className:"!gp-rounded-none gp-w-full gp-h-full gp-top-0 gp-left-0 gp-cursor-pointer",enableLazyLoadImage:i})}`,u=t=>`
2
+ ${system.LiquidIf("media.media_type == 'video'","{% assign mediaSourceUrl = media.sources.last.url %}")}
3
+ ${system.LiquidIf("media.media_type == 'external_video'","{% assign mediaSourceUrl = media | external_video_url %}")}
4
+ ${system.LiquidIf("media.media_type == 'image'","{% assign mediaSourceUrl = media.src %}")}
5
+ ${CarouselItem_liquid.default({id:"{{imageID}}",contentType:"productImage",className:`${r(`gp-gallery-image-item ${t}`)}`,parentId:`${e}-{{product.id}}`,builderAttrs:{"data-outline":t?"active":"deactive"},style:d,children:`
6
+ <div class="gp-w-full gp-relative gp-h-full"
7
+
8
+ >
9
+ ${m({aspectRatio:common.getAspectRatio(g),layout:o?.layout,qualityPercent:o?.qualityPercent,qualityType:o?.qualityType},{width:"100%",height:"100%",cursor:"pointer"})}
10
+
11
+ ${system.LiquidIf("media.media_type == 'video' or media.media_type == 'external_video'",`<div class="gp-absolute gp-pb-1 gp-pr-1 gp-right-0 gp-bottom-0" >
12
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
13
+ <rect opacity="0.9" width="24" height="24" rx="3" fill="#212121"/>
14
+ <path d="M17.6869 12.2646L17.6868 12.2646L6.78379 18.4464C6.78378 18.4464 6.78376 18.4464 6.78374 18.4464C6.52931 18.5903 6.1665 18.4179 6.1665 18.0416V5.95844C6.1665 5.58218 6.52917 5.40981 6.7836 5.55354C6.78366 5.55357 6.78373 5.55361 6.78379 5.55365L17.6868 11.7354L17.6869 11.7354C17.8819 11.846 17.8819 12.154 17.6869 12.2646Z" stroke="#F9F9F9" stroke-miterlimit="10"/>
15
+ </svg>
16
+ </div>`)}
17
+ ${system.LiquidIf("media.media_type == 'model'",`<div class="gp-absolute gp-pb-1 gp-pr-1 gp-right-0 gp-bottom-0">
18
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
19
+ <rect opacity="0.9" width="24" height="24" rx="3" fill="#212121"/>
20
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M11.7441 4.57034C11.9017 4.47655 12.098 4.47655 12.2555 4.57034L18.5889 8.33957C18.7404 8.42971 18.8332 8.59296 18.8332 8.76923V15.2308C18.8332 15.407 18.7404 15.5703 18.5889 15.6604L12.2555 19.4297C12.098 19.5234 11.9017 19.5234 11.7441 19.4297L5.41079 15.6604C5.25932 15.5703 5.1665 15.407 5.1665 15.2308V8.76923C5.1665 8.59296 5.25932 8.42971 5.41079 8.33957L11.7441 4.57034ZM6.1665 9.64865V14.9465L11.4998 18.1206V12.8227L6.1665 9.64865ZM12.4998 12.8227V18.1206L17.8332 14.9465V9.64865L12.4998 12.8227ZM17.3555 8.76923L11.9998 11.9566L6.64417 8.76923L11.9998 5.58185L17.3555 8.76923Z" fill="#F9F9F9"/>
21
+ </svg>
22
+ </div>`)}
23
+
24
+ <div class="gp-absolute gp-inset-0 gp-flex gp-cursor-pointer gp-items-center gp-justify-center gp-bg-black/50 gp-opacity-0 gp-transition-opacity gp-duration-100 group-hover:gp-opacity-100"
25
+ style="${_function.getStyleOfObject(productGallery.getZoomDisplay(o?.clickOpenLightBox))}"
26
+ >
27
+ <svg
28
+ height="100%"
29
+ width="100%"
30
+ xmlns="http://www.w3.org/2000/svg"
31
+ class="gp-h-6 gp-w-6"
32
+ viewBox="0 0 512 512"
33
+ color="#fff"
34
+ ><path
35
+ fill="currentColor"
36
+ stroke-linecap="round"
37
+ stroke-linejoin="round"
38
+ d="M62.2467 345.253C43.7072 326.714 29.1474 305.116 18.9714 281.057C8.42839 256.13 3.08301 229.671 3.08301 202.418C3.08301 175.165 8.43012 148.707 18.974 123.78C29.15 99.7213 43.7098 78.123 62.2485 59.5834C80.788 41.0439 102.386 26.4841 126.445 16.3081C151.372 5.76422 177.831 0.417969 205.084 0.417969C232.337 0.417969 258.794 5.76421 283.722 16.3064C307.78 26.4823 329.379 41.0422 347.918 59.5817C366.458 78.1212 381.017 99.7196 391.194 123.778C401.737 148.706 407.083 175.163 407.083 202.417C407.083 229.671 401.737 256.129 391.194 281.056C388.406 287.648 385.277 294.048 381.839 300.257L493.397 411.815C514.091 432.511 514.091 466.187 493.395 486.883L484.272 496.006C474.245 506.032 460.915 511.553 446.738 511.553C432.559 511.553 419.228 506.032 409.202 496.006L296.022 382.824C291.996 384.854 287.898 386.762 283.721 388.528C258.794 399.073 232.336 404.419 205.082 404.419C177.828 404.419 151.371 399.071 126.443 388.528C102.385 378.352 80.7863 363.793 62.2467 345.253ZM301.699 336.166C313.928 327.317 324.896 316.835 334.282 305.034C342.149 295.142 348.9 284.325 354.355 272.775C364.433 251.432 370.076 227.586 370.076 202.419C370.076 111.296 296.206 37.4253 205.083 37.4253C113.96 37.4253 40.0895 111.294 40.0895 202.418C40.0895 293.541 113.96 367.411 205.084 367.411C227.413 367.411 248.701 362.967 268.126 354.928C280.091 349.976 291.347 343.658 301.699 336.166ZM467.229 460.716C473.507 454.439 473.507 444.26 467.229 437.982L360.595 331.348C356.601 336.153 352.378 340.794 347.919 345.253C341.671 351.502 335.068 357.286 328.147 362.615L435.371 469.839C438.511 472.977 442.624 474.547 446.739 474.547C450.853 474.547 454.967 472.978 458.106 469.839L467.229 460.716ZM223.582 183.91H281.071C291.292 183.91 299.574 192.194 299.575 202.414C299.575 206.778 298.062 210.786 295.533 213.951C292.143 218.195 286.926 220.916 281.072 220.916H228.303H223.583V225.63V278.406C223.583 287.081 217.613 294.358 209.559 296.361C208.124 296.717 206.625 296.909 205.08 296.909C194.861 296.909 186.577 288.625 186.577 278.406V220.917H129.087C118.868 220.917 110.584 212.633 110.584 202.414C110.584 192.195 118.868 183.911 129.087 183.911H186.576V126.421C186.576 116.202 194.86 107.918 205.079 107.918C215.298 107.918 223.582 116.202 223.582 126.421V183.91Z"
39
+ />
40
+ </svg>
41
+ </div>
42
+ </div>
43
+ `})}`,c=()=>{let e=productGallery.getCarouselVerticalConfigByPosition(o.position),t=[e.desktop?"gp-px-0":"gp-py-0",e.tablet?"tablet:gp-px-0":"tablet:gp-py-0",e.mobile?"mobile:gp-px-0":"mobile:gp-py-0"];return` ${t.join(" ")}`},n=system.LiquidIf("product.media.size > 1",system.LiquidFor("media in product.media",`${system.LiquidIf("media.media_type == 'image'",system.LiquidFor("image in product.images",system.LiquidIf("image.src == media.src","{% assign imageID = image.id %}{% break %}")),"{% assign imageID = '' %}")}
44
+ ${system.LiquidIf("media.id == product.featured_media.id ",u(o?.borderActive?.border!=="none"?"active":""),u())}`));return core.template`
45
+ ${Carousel_liquid.default({builderProps:{uid:e},rootId:`${e}-{{product.id}}`,rootClass:`${s}`,rootAttrs:{type:"grid-carousel","product-media":"{{product.media.size}}"},wrapperClass:c(),slidesClass:productGallery.getMinHeightByPosition(o.position,o.navigationPosition),isHiddenArrowWhenDisabled:!0,setting:a,rootStyles:{...p()},styles:l,disableMarginAuto:!0,children:n})}
46
+ `};exports.default=ProductGalleryCarousel;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),ProductGalleryGrid=require("../child/ProductGalleryGrid.js");const GalleryGrid=e=>{let{setting:r,styles:t,gallery:i,builderProps:d,noDataChildren:l,onHandleClickImage:o,children:u}=e,n={...r,...t,borderActive:{...r?.borderActive,border:"none"}};return i?.[0]?.id==="noImageError"?jsxRuntime.jsx(jsxRuntime.Fragment,{children:l}):jsxRuntime.jsx(ProductGalleryGrid.default,{productImages:i,enableHoverAction:!0,...n,builderPropUID:d?.uid,onHandleClick:(e,r)=>o(e||"",r),children:u})};exports.default=GalleryGrid;
@@ -0,0 +1,93 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var core=require("@gem-sdk/core"),system=require("@gem-sdk/system"),Modal3d_liquid=require("../../../../../image/components/Modal3d.liquid.js"),NextImage_liquid=require("../../../../../image/components/NextImage.liquid.js"),Video_liquid=require("../../../../../image/components/Video.liquid.js"),HTML5Embed_liquid=require("../../../../../video/components/HTML5Embed.liquid.js"),_function=require("../../../../helpers/function.js"),common=require("../../common/common.js"),productFeaturedImage=require("../../common/productFeaturedImage.js"),productGallery=require("../../common/productGallery.js"),getProductImagesClassName=require("../../composables/getProductImagesClassName.js"),getProductImagesStyles=require("../../composables/getProductImagesStyles.js");const ProductGalleryGrid=({builderPropUID:e,wrapperStyle:i,children:t,enableLazyLoadImage:a,...s})=>{let{galleryItemClasses:o,galleryGridWrapperClasses:d}=getProductImagesClassName.getProductImagesClassName(s),{galleryGridStyles:r,galleryGridItemStyles:l}=getProductImagesStyles.getProductImagesStyles(s),m=productGallery.getShapeByLayout({shape:s.shape,shapeForBottom:s.shapeForBottom,shapeFor1Col:s.shapeFor1Col,shapeFor2Col:s.shapeFor2Col,shapeForFtOnly:s.shapeForFtOnly,shapeForInsideBottom:s.shapeForInsideBottom,shapeForInside:s.shapeForInside},s.position),u=(e=!1)=>{let i=["desktop","mobile","tablet"],t={desktop:"none",tablet:"none",mobile:"none"};return i.forEach(i=>{let a=core.getResponsiveValueByScreen(s?.position,i)||"",o="one-col"===a||"two-col"===a,d=e?!o:o;t[i]=d?"block":"none"}),core.makeStyleResponsive("d",t)},c=()=>u(),g=()=>u(!0),p=(e,i)=>core.template`
2
+ ${NextImage_liquid.default({srcIsLiquidCode:!0,src:`${common.getSrcImage("media.preview_image")}`,width:"{{media.width}}",height:"{{media.height}}",alt:"{{media.alt | escape}}",baseSrc:"{{media.preview_image | image_url}}",setting:e,style:i,className:"!gp-rounded-none",customLazyload:!1,enableLazyLoadImage:a})}
3
+ ${system.If(s?.galleryHoverEffect!=="none",`<div class="${core.cls("zoom-element !gp-max-w-none gp-w-full gp-h-full",productFeaturedImage.getZoomImageClass())}">
4
+ ${NextImage_liquid.default({srcIsLiquidCode:!0,src:`${common.getSrcImage("media.preview_image")}`,width:"{{media.width}}",height:"{{media.height}}",baseSrc:"{{media.preview_image | image_url}}",alt:"{{media.alt | escape}}",setting:e,style:i,className:"!gp-rounded-none gp-w-full gp-h-full",customLazyload:!1,enableLazyLoadImage:a})}
5
+ </div>`," ")}
6
+ ${system.If(s?.galleryHoverEffect=="zoom"&&s?.galleryZoomType=="glasses",`<div class="${core.cls("zoom-lens-element",productFeaturedImage.getZoomLenClass())}" style="opacity: 0; background-image: url('{{media.preview_image | product_img_url: '1024x1024'}}')">
7
+ </div>
8
+ `," ")}
9
+ `,n=()=>Modal3d_liquid.default({src:system.LiquidIf("media.sources.first.url contains '.glb'","{{ media.sources.first.url }}","{{media.sources.last.url}}"),alt:"{{media.preview_image.alt}}",poster:"{{media.preview_image.src | product_img_url: '1024x1024'}}",cameraControls:!0,arStatus:"not-presenting",style:{width:"100%",height:"100%"},aspectRatio:common.getAspectRatio(m)}),y=()=>Video_liquid.default({src:"{{mediaSourceVideo}}",alt:"{{media.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"}}),f=()=>HTML5Embed_liquid.default({src:"{{mediaSourceVideo}}",title:"{{media.alt | escape}}",autoplay:!1,controls:!0,style:{width:"100%","max-height":"100%"}}),h=()=>core.template`
10
+ ${system.LiquidIf("media.media_type == 'video' or media.media_type == 'external_video'",`<div class="gp-absolute gp-pb-1 gp-pr-1 gp-right-0 gp-bottom-0" >
11
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
12
+ <rect opacity="0.9" width="24" height="24" rx="3" fill="#212121"/>
13
+ <path d="M17.6869 12.2646L17.6868 12.2646L6.78379 18.4464C6.78378 18.4464 6.78376 18.4464 6.78374 18.4464C6.52931 18.5903 6.1665 18.4179 6.1665 18.0416V5.95844C6.1665 5.58218 6.52917 5.40981 6.7836 5.55354C6.78366 5.55357 6.78373 5.55361 6.78379 5.55365L17.6868 11.7354L17.6869 11.7354C17.8819 11.846 17.8819 12.154 17.6869 12.2646Z" stroke="#F9F9F9" stroke-miterlimit="10"/>
14
+ </svg>
15
+ </div>`)}
16
+ ${system.LiquidIf("media.media_type == 'model'",`<div class="gp-absolute gp-pb-1 gp-pr-1 gp-right-0 gp-bottom-0">
17
+ <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
18
+ <rect opacity="0.9" width="24" height="24" rx="3" fill="#212121"/>
19
+ <path fill-rule="evenodd" clip-rule="evenodd" d="M11.7441 4.57034C11.9017 4.47655 12.098 4.47655 12.2555 4.57034L18.5889 8.33957C18.7404 8.42971 18.8332 8.59296 18.8332 8.76923V15.2308C18.8332 15.407 18.7404 15.5703 18.5889 15.6604L12.2555 19.4297C12.098 19.5234 11.9017 19.5234 11.7441 19.4297L5.41079 15.6604C5.25932 15.5703 5.1665 15.407 5.1665 15.2308V8.76923C5.1665 8.59296 5.25932 8.42971 5.41079 8.33957L11.7441 4.57034ZM6.1665 9.64865V14.9465L11.4998 18.1206V12.8227L6.1665 9.64865ZM12.4998 12.8227V18.1206L17.8332 14.9465V9.64865L12.4998 12.8227ZM17.3555 8.76923L11.9998 11.9566L6.64417 8.76923L11.9998 5.58185L17.3555 8.76923Z" fill="#F9F9F9"/>
20
+ </svg>
21
+ </div>`)}
22
+ ${p({aspectRatio:common.getAspectRatio(m),layout:s?.layout,qualityType:s?.qualityType,qualityPercent:s?.qualityPercent},{width:"100%",height:"100%"})}
23
+
24
+ <div class="gp-absolute gp-inset-0 gp-flex gp-cursor-pointer gp-items-center gp-justify-center gp-bg-black/50 gp-opacity-0 gp-transition-opacity gp-duration-100 group-hover:gp-opacity-100"
25
+ style="${_function.getStyleOfObject(productGallery.getZoomDisplay(s?.clickOpenLightBox))}" >
26
+ <svg
27
+ height="100%"
28
+ width="100%"
29
+ xmlns="http://www.w3.org/2000/svg"
30
+ class="gp-h-6 gp-w-6"
31
+ viewBox="0 0 512 512"
32
+ color="#fff"
33
+ >
34
+ <path
35
+ fill="currentColor"
36
+ stroke-linecap="round"
37
+ stroke-linejoin="round"
38
+ d="M62.2467 345.253C43.7072 326.714 29.1474 305.116 18.9714 281.057C8.42839 256.13 3.08301 229.671 3.08301 202.418C3.08301 175.165 8.43012 148.707 18.974 123.78C29.15 99.7213 43.7098 78.123 62.2485 59.5834C80.788 41.0439 102.386 26.4841 126.445 16.3081C151.372 5.76422 177.831 0.417969 205.084 0.417969C232.337 0.417969 258.794 5.76421 283.722 16.3064C307.78 26.4823 329.379 41.0422 347.918 59.5817C366.458 78.1212 381.017 99.7196 391.194 123.778C401.737 148.706 407.083 175.163 407.083 202.417C407.083 229.671 401.737 256.129 391.194 281.056C388.406 287.648 385.277 294.048 381.839 300.257L493.397 411.815C514.091 432.511 514.091 466.187 493.395 486.883L484.272 496.006C474.245 506.032 460.915 511.553 446.738 511.553C432.559 511.553 419.228 506.032 409.202 496.006L296.022 382.824C291.996 384.854 287.898 386.762 283.721 388.528C258.794 399.073 232.336 404.419 205.082 404.419C177.828 404.419 151.371 399.071 126.443 388.528C102.385 378.352 80.7863 363.793 62.2467 345.253ZM301.699 336.166C313.928 327.317 324.896 316.835 334.282 305.034C342.149 295.142 348.9 284.325 354.355 272.775C364.433 251.432 370.076 227.586 370.076 202.419C370.076 111.296 296.206 37.4253 205.083 37.4253C113.96 37.4253 40.0895 111.294 40.0895 202.418C40.0895 293.541 113.96 367.411 205.084 367.411C227.413 367.411 248.701 362.967 268.126 354.928C280.091 349.976 291.347 343.658 301.699 336.166ZM467.229 460.716C473.507 454.439 473.507 444.26 467.229 437.982L360.595 331.348C356.601 336.153 352.378 340.794 347.919 345.253C341.671 351.502 335.068 357.286 328.147 362.615L435.371 469.839C438.511 472.977 442.624 474.547 446.739 474.547C450.853 474.547 454.967 472.978 458.106 469.839L467.229 460.716ZM223.582 183.91H281.071C291.292 183.91 299.574 192.194 299.575 202.414C299.575 206.778 298.062 210.786 295.533 213.951C292.143 218.195 286.926 220.916 281.072 220.916H228.303H223.583V225.63V278.406C223.583 287.081 217.613 294.358 209.559 296.361C208.124 296.717 206.625 296.909 205.08 296.909C194.861 296.909 186.577 288.625 186.577 278.406V220.917H129.087C118.868 220.917 110.584 212.633 110.584 202.414C110.584 192.195 118.868 183.911 129.087 183.911H186.576V126.421C186.576 116.202 194.86 107.918 205.079 107.918C215.298 107.918 223.582 116.202 223.582 126.421V183.91Z"
39
+ />
40
+ </svg>
41
+ </div>
42
+ `,C=i=>`
43
+ ${system.LiquidIf("media.media_type == 'video'","{% assign mediaSourceUrl = media.sources.last.url %}")}
44
+ ${system.LiquidIf("media.media_type == 'external_video'","{% assign mediaSourceUrl = media | external_video_url %}{% assign mediaSource = media | json %}")}
45
+ ${system.LiquidIf("media.media_type == 'image'","{% assign mediaSourceUrl = media.src %}")}
46
+ <div
47
+ aria-hidden
48
+ id="{{imageID}}"
49
+ media-type="{{media.media_type}}"
50
+ media-poster="{{media.preview_image.src}}"
51
+ media-source-url="{{media.sources.first.url}}"
52
+ media-last-source-url="{{mediaSourceUrl}}"
53
+ external-id="{{media.external_id}}"
54
+ grid-index="{{forloop.index}}"
55
+ data-outline="none"
56
+ class="${o(`gem-slider-item-${e}-{{product.id}} gp-gallery-image-item ${i} data-[outline=deactive]:after:!gp-border-transparent`)}"
57
+ style="${_function.getStyleOfObject(l)}"
58
+ >
59
+ ${system.LiquidIf("media.media_type == 'external_video' or media.media_type == 'video' or media.media_type == 'model'","{% assign isMedia = true %}")}
60
+
61
+ ${system.LiquidIf("media.media_type == 'external_video' or media.media_type == 'video'","{% assign isVideo = true %}")}
62
+
63
+ <div class="gp-h-full gp-w-full" style="${system.LiquidIf("media == null or media.media_type == 'image'","display: block !important;")} ${system.LiquidIf("isVideo == true",_function.getStyleOfObject({...g()}))}">
64
+ ${system.LiquidIf("media != null",h(),v())}
65
+ </div>
66
+
67
+ <div class="${system.LiquidIf("isMedia","gp-flex gp-justify-center gp-items-center")}"
68
+ style="${system.LiquidIf("isMedia",_function.getStyleOfObject({...core.makeStyleResponsive("aspect",common.getAspectRatio(m))}))} ${_function.getStyleOfObject({...c()})}"
69
+ >
70
+ {% case media.media_type %}
71
+ {% when 'external_video' %}
72
+ {% assign mediaSourceVideo = media | external_video_url %}
73
+ ${y()}
74
+ {% when 'video' %}
75
+ {% assign mediaSourceVideo = media.sources.last.url %}
76
+ ${f()}
77
+ {% when 'model' %}
78
+ ${n()}
79
+ {% endcase %}
80
+ </div>
81
+ {% assign isVideo= false %}
82
+ {% assign isMedia= false %}
83
+ </div>`,v=()=>core.template`
84
+ ${NextImage_liquid.default({srcIsLiquidCode:!0,src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",alt:"No Image",sizes:"(max-width: 768px) 50vw, 100vw",setting:{aspectRatio:common.getAspectRatio(m),layout:s?.layout,qualityType:s?.qualityType,qualityPercent:s?.qualityPercent},className:"!gp-rounded-none",customLazyload:!1,enableLazyLoadImage:a})}`;return system.Liquid(`
85
+ <div type="grid-gallery"
86
+ class="${d}"
87
+ style="${_function.getStyleOfObject(r)}}"
88
+ >
89
+ ${system.LiquidFor("media in product.media",`${system.LiquidIf("media.media_type == 'image'",system.LiquidFor("image in product.images",system.LiquidIf("image.src == media.src","{% assign imageID = image.id %}{% break %}")),"{% assign imageID = '' %}")}
90
+ ${system.LiquidIf("media.id == product.featured_media.id ",C(s?.borderActive?.border!=="none"?"active":""),C())}`)}
91
+ ${system.LiquidIf("product.media.size > 0",t)}
92
+ ${system.LiquidIf("product.media.size < 1",C())}
93
+ </div>`)};exports.default=ProductGalleryGrid;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime");const ButtonOpenLightBox=()=>jsxRuntime.jsx("div",{className:"gp-absolute gp-inset-0 gp-flex gp-cursor-pointer gp-items-center gp-justify-center gp-bg-black/50 gp-opacity-0 gp-transition-all gp-duration-100 group-hover:gp-opacity-100",children:jsxRuntime.jsx("svg",{height:"100%",width:"100%",xmlns:"http://www.w3.org/2000/svg",className:"gp-h-6 gp-w-6",viewBox:"0 0 512 512",color:"#fff",children:jsxRuntime.jsx("path",{fill:"currentColor",strokeLinecap:"round",strokeLinejoin:"round",d:"M62.2467 345.253C43.7072 326.714 29.1474 305.116 18.9714 281.057C8.42839 256.13 3.08301 229.671 3.08301 202.418C3.08301 175.165 8.43012 148.707 18.974 123.78C29.15 99.7213 43.7098 78.123 62.2485 59.5834C80.788 41.0439 102.386 26.4841 126.445 16.3081C151.372 5.76422 177.831 0.417969 205.084 0.417969C232.337 0.417969 258.794 5.76421 283.722 16.3064C307.78 26.4823 329.379 41.0422 347.918 59.5817C366.458 78.1212 381.017 99.7196 391.194 123.778C401.737 148.706 407.083 175.163 407.083 202.417C407.083 229.671 401.737 256.129 391.194 281.056C388.406 287.648 385.277 294.048 381.839 300.257L493.397 411.815C514.091 432.511 514.091 466.187 493.395 486.883L484.272 496.006C474.245 506.032 460.915 511.553 446.738 511.553C432.559 511.553 419.228 506.032 409.202 496.006L296.022 382.824C291.996 384.854 287.898 386.762 283.721 388.528C258.794 399.073 232.336 404.419 205.082 404.419C177.828 404.419 151.371 399.071 126.443 388.528C102.385 378.352 80.7863 363.793 62.2467 345.253ZM301.699 336.166C313.928 327.317 324.896 316.835 334.282 305.034C342.149 295.142 348.9 284.325 354.355 272.775C364.433 251.432 370.076 227.586 370.076 202.419C370.076 111.296 296.206 37.4253 205.083 37.4253C113.96 37.4253 40.0895 111.294 40.0895 202.418C40.0895 293.541 113.96 367.411 205.084 367.411C227.413 367.411 248.701 362.967 268.126 354.928C280.091 349.976 291.347 343.658 301.699 336.166ZM467.229 460.716C473.507 454.439 473.507 444.26 467.229 437.982L360.595 331.348C356.601 336.153 352.378 340.794 347.919 345.253C341.671 351.502 335.068 357.286 328.147 362.615L435.371 469.839C438.511 472.977 442.624 474.547 446.739 474.547C450.853 474.547 454.967 472.978 458.106 469.839L467.229 460.716ZM223.582 183.91H281.071C291.292 183.91 299.574 192.194 299.575 202.414C299.575 206.778 298.062 210.786 295.533 213.951C292.143 218.195 286.926 220.916 281.072 220.916H228.303H223.583V225.63V278.406C223.583 287.081 217.613 294.358 209.559 296.361C208.124 296.717 206.625 296.909 205.08 296.909C194.861 296.909 186.577 288.625 186.577 278.406V220.917H129.087C118.868 220.917 110.584 212.633 110.584 202.414C110.584 192.195 118.868 183.911 129.087 183.911H186.576V126.421C186.576 116.202 194.86 107.918 205.079 107.918C215.298 107.918 223.582 116.202 223.582 126.421V183.91Z"})})});exports.default=ButtonOpenLightBox;
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var jsxRuntime=require("react/jsx-runtime"),core=require("@gem-sdk/core"),Carousel=require("../../../../../carousel-v3/components/root/Carousel.js"),CarouselItem=require("../../../../../carousel-v3/components/item/CarouselItem.js"),NextImage=require("../../../../../image/components/NextImage.js");require("../../../../../modal/components/confirm.js");var Modal=require("../../../../../modal/components/Modal.js"),React=require("react"),productFeaturedImage=require("../../common/productFeaturedImage.js"),ProductFeatureVideo=require("../child/ProductFeatureVideo.js"),MediaIcon=require("../child/MediaIcon.js");const ProductImagesLightBox=({builderPropUID:e,productImages:t,open:o,imageRatio:i,onHandleClose:s})=>{let l=core.useFeaturedImageGlobal(),r=React.useMemo(()=>{let e=t?.findIndex(e=>e.id===l?.id);return e&&e>0?e:0},[t,l]),d={desktop:t&&t.length>1,mobile:t&&t?.length>1,tablet:t&&t?.length>1},a={desktop:!1,mobile:!1,tablet:!1},n=core.useEditorMode(),u=e=>"edit"!==n&&["VIDEO","EXTERNAL_VIDEO"].includes(e?.contentType||"");return jsxRuntime.jsx(Modal.default,{setting:{open:o},styles:{width:"80%"},closeOnClickOutside:!0,onClose:()=>{s(),console.log("onHandleClose")},disableIframeClickEvent:!0,contentClass:"mobile:!gp-w-[100%] gp-px-2 gp-pb-10",children:jsxRuntime.jsx(Carousel.default,{setting:{loop:a,slidesToShow:{desktop:1,tablet:1,mobile:1},defaultCurrentSlider:r,dot:{desktop:!0,mobile:!0,tablet:!0},dotStyle:{desktop:"outside",mobile:"outside",tablet:"outside"},dotColor:{desktop:"#E2E2E2",mobile:"#E2E2E2",tablet:"#E2E2E2"},dotActiveColor:{desktop:"#121212",mobile:"#121212",tablet:"#121212"},dotSize:{desktop:12},dotGapToCarousel:{desktop:12},navigationEnable:d,navigationStyle:{desktop:"outside"},arrowIconSize:{desktop:24},initialSlide:r},styles:{sizeSetting:{desktop:{height:"80vh"},tablet:{height:"80vh"},mobile:{height:"60vh"}},playSpeed:0},moveToIdx:r,hiddenDotWhenOnlyOne:!0,isHiddenArrowWhenDisabled:!0,isDisableResetSlide:!0,builderProps:{uid:e},fullHeight:!0,children:t?.map(t=>jsxRuntime.jsx(CarouselItem.default,{className:`gem-slider-item gem-slider-item-${e} gp-flex gp-items-center gp-justify-center gp-px-4`,children:u(t)?jsxRuntime.jsx(ProductFeatureVideo.default,{type:t?.contentType,url:t.src??"",aspectRatio:i}):jsxRuntime.jsxs(jsxRuntime.Fragment,{children:[jsxRuntime.jsx(NextImage.default,{src:productFeaturedImage.isFeatureMedia(t?.contentType)?t?.previewImage:t?.src,width:t?.width,height:t?.height,alt:t?.alt,"content-type":t?.contentType,setting:{aspectRatio:i},className:core.cls("gp-h-full gp-w-full gp-object-contain")},t?.id),jsxRuntime.jsx(MediaIcon.default,{contentType:t?.contentType??""})]})},t?.id))})})};exports.default=ProductImagesLightBox;
@@ -0,0 +1 @@
1
+ "use strict";var attrs=require("../common/attrs.js");const getProductImagesAttr=t=>{let r=attrs.getGalleryCarouselSettingAttr(t),e=attrs.getFeaturedCarouselSettingAttr(t);return{galleryCarouselSettingAttrs:r,featuredImageCarouselSettingAttrs:e}};exports.getProductImagesAttr=getProductImagesAttr;
@@ -0,0 +1 @@
1
+ "use strict";var system=require("@gem-sdk/system"),classes=require("../common/classes.js"),common=require("../common/common.js");const getProductImagesClassName=s=>{let{setting:e,style:a}=s,l=common.setDefaultWhenUndefineSetting(s),{builderProps:t,advanced:r}=l,m=r?.cssClass,c=system.createClass(classes.getWrapperClasses({extraClass:`${t?.uid} ${m??""} `,isAddOverFlowClass:common.checkAddOverFlowClass(a)})),g=system.createClass(classes.getGalleryWrapperClasses({})),C=system.createClass(classes.getGalleryGridWrapperClasses({})),o=s=>system.createClass(classes.getGalleryItemClasses({extraClass:`${s??""}`})),u=system.createClass(classes.getFtImageWithGalleryClasses({extraClass:`gp-product-images-feature--${t?.uid}`})),d=system.createClass(classes.getImageGalleryWrapperClasses({extraClass:`gp-product-images-gallery-${t?.uid}`})),p=system.createClass(classes.getFeaturedImageCarouselClasses({extraClass:`gp-product-images-gallery-${t?.uid}`})),i=system.createClass(classes.getFeaturedImageGalleryClasses({settings:e})),y=system.createClass(classes.getFeaturedImageClasses({setting:e,extraClass:`gp-flex gp-relative gp-product-images-gallery-${t?.uid} gp-overflow-hidden gp-flex gp-w-full gp-items-center gp-justify-center `})),n=s=>system.createClass(classes.getFeaturedCarouselItemClasses({extraClass:`${s??""}`}));return{wrapperClasses:c,productImagesGalleryClasses:g,galleryGridWrapperClasses:C,galleryItemClasses:o,ftImageGalleryClasses:u,imageGalleryWrapperClasses:d,featuredImageCarouselClasses:p,featuredImageGalleryClasses:i,featureImageOnlyOneImageClasses:y,featuredCarouselItemClasses:n}};exports.getProductImagesClassName=getProductImagesClassName;
@@ -0,0 +1 @@
1
+ "use strict";var system=require("@gem-sdk/system"),styles=require("../common/styles.js");const getProductImagesStyles=(e,t)=>{let s=system.createStyle(styles.getWrapContainerStyle(e)),l=system.createStyle(styles.getWrapContainerStyle(e,!0)),y=system.createStyle(styles.getWrapContainerStyle(e,t?.gallery&&t?.gallery?.length<2)),a=system.createStyle(styles.getFeatureImageStyle(e,{enableOrder:!0,enableDisplay:!0})),r=system.createStyle(styles.getFeaturedImageOnlyOneImageStyle({setting:e,options:{enableRadius:!0,enableHeight:!0}})),g=system.createStyle(styles.getGalleryImageStyle(e,t?.featureImageHeight)),m=system.createStyle(styles.getFeaturedImageCarouselStyle(e)),S=system.createStyle({...styles.getFeatureImageCarouselItemStyle(e)}),c=system.createStyle({...styles.getFeatureImageCarouselItemStyle(e),width:"{{productImageWidth}}px"}),u=system.createStyle(styles.getGalleryGridStyle(e)),n=system.createStyle(styles.getGalleryGridItemStyle(e)),o=system.createStyle(styles.getGalleryCarouselStyle(e)),i=system.createStyle(styles.getGalleryCarouselItemStyle(e));return{wrapContainerStyle:s,wrapContainerStyleOnlyOneImage:l,wrapperFeaturedImageStyle:y,featureImageStyle:a,featureImageOnlyOneImageStyle:r,galleryImageStyle:g,featuredImageCarouselStyle:m,featureImageCarouselItemStyle:S,featureImageCarouselOnlyOneImageStyle:c,galleryGridStyles:u,galleryGridItemStyles:n,galleryCarouselStyle:o,galleryCarouselItemStyle:i}};exports.getProductImagesStyles=getProductImagesStyles;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),React=require("react"),common=require("../common/common.js");const useFeatureImageWithGallery=e=>{let{setting:t,styles:r}=e,u={...t,...r},c=core.useCurrentDevice(),s=React.useRef(null),i=React.useRef(null),[n,a]=React.useState(""),[o,l]=React.useState(100),[m,f]=React.useState(),R=core.getResponsiveValueByScreen(u?.position,c),g="slider"===common.getTypeWidthDevice(u?.type)[c]||["left","right","inside-left","inside-right"].includes(R),h=(e,t=200)=>{e&&(s.current&&clearTimeout(s.current),s.current=setTimeout(()=>l(i?.current?.offsetHeight||200),t))};return React.useEffect(()=>{let e=i?.current;if(!e)return;let t=new ResizeObserver(()=>{l(e.offsetHeight||200)});return t.observe(e),()=>{t.disconnect()}}),{isShowCarousel:g,featureImageHeight:o,featureWrapperImage:i,onClickFeatureArrow:n,activeIndexFromFeatureImage:m,setOnClickFeatureArrow:a,onHandleLoadedFeatureImage:h,setActiveIndexFromFeatureImage:f}};exports.useFeatureImageWithGallery=useFeatureImageWithGallery;
@@ -0,0 +1 @@
1
+ "use strict";var core=require("@gem-sdk/core"),React=require("react");const useFilterImagesByVariant=({productImages:e,displayByVariant:t,variantSelect:r})=>{let a=core.useCurrentVariant(),s=React.useCallback(()=>{let e=a?.selectedOptions??[],t=e.find(e=>e.name===r);return t?.value?.toLowerCase()??""},[a?.selectedOptions,r]),l=React.useMemo(()=>{if(!t||!r||!e)return e;let a=s();if(!a)return e;let l=e.filter(e=>{let t=(e.alt||"").toLowerCase();return t.includes(a)});return l.length>0?l:e},[t,r,e,s]);return{filteredProductImages:l,selectedVariantValue:s()}};exports.useFilterImagesByVariant=useFilterImagesByVariant;