@gem-sdk/components 17.0.0-dev.14 → 17.0.0-dev.141

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (498) hide show
  1. package/dist/cjs/accordion/components/Accordion.liquid.js +4 -5
  2. package/dist/cjs/accordion/settings/configs/ui-v2.js +1 -1
  3. package/dist/cjs/article/components/ArticleReadMore.liquid.js +4 -4
  4. package/dist/cjs/article/settings/configs/article-author/ui-v2.js +1 -1
  5. package/dist/cjs/article/settings/configs/article-category/ui-v2.js +1 -1
  6. package/dist/cjs/article/settings/configs/article-content/ui-v2.js +1 -1
  7. package/dist/cjs/article/settings/configs/article-date/ui-v2.js +1 -1
  8. package/dist/cjs/article/settings/configs/article-excerpt/ui-v2.js +1 -1
  9. package/dist/cjs/article/settings/configs/article-image/ui-v2.js +1 -1
  10. package/dist/cjs/article/settings/configs/article-list/ui-v2.js +1 -1
  11. package/dist/cjs/article/settings/configs/article-read-more/ui-v2.js +1 -1
  12. package/dist/cjs/article/settings/configs/article-tag/ui-v2.js +1 -1
  13. package/dist/cjs/article/settings/configs/article-title/ui-v2.js +1 -1
  14. package/dist/cjs/breadcrumb/settings/configs/ui-v2.js +1 -1
  15. package/dist/cjs/builder.js +1 -1
  16. package/dist/cjs/button/common/helpers.js +2 -2
  17. package/dist/cjs/button/components/Button.liquid.js +14 -14
  18. package/dist/cjs/button/settings/configs/ui-v2.js +1 -1
  19. package/dist/cjs/carousel/components/dot/Dots.js +1 -1
  20. package/dist/cjs/carousel/components/root/Carousel.liquid.js +5 -4
  21. package/dist/cjs/carousel-v3/components/arrow/Arrow.liquid.js +8 -8
  22. package/dist/cjs/carousel-v3/components/arrow/common/classes.js +1 -1
  23. package/dist/cjs/carousel-v3/components/dot/Dots.js +1 -1
  24. package/dist/cjs/carousel-v3/components/dot/common/helpers.js +1 -1
  25. package/dist/cjs/carousel-v3/components/item/CarouselItem.js +1 -1
  26. package/dist/cjs/carousel-v3/components/root/Carousel.js +1 -1
  27. package/dist/cjs/carousel-v3/components/root/Carousel.liquid.js +6 -5
  28. package/dist/cjs/carousel-v3/components/swiper/Swiper.js +1 -1
  29. package/dist/cjs/carousel-v3/hooks/useCarousel.js +1 -1
  30. package/dist/cjs/carousel-v3/index.js +1 -1
  31. package/dist/cjs/carousel-v3/settings/configs/settings-v2.js +3 -3
  32. package/dist/cjs/carousel-v3/settings/configs/ui-v2.js +1 -1
  33. package/dist/cjs/cart/components/CartList.js +1 -1
  34. package/dist/cjs/cart/components/shop-pay-button/ShopPayButton.liquid.js +2 -2
  35. package/dist/cjs/cart/index.js +1 -1
  36. package/dist/cjs/code/common/styles.js +1 -1
  37. package/dist/cjs/code/components/CSSCode.liquid.js +2 -2
  38. package/dist/cjs/code/hooks/useCSSCode.js +3 -10
  39. package/dist/cjs/collection/components/collection-description/CollectionDescription.js +1 -1
  40. package/dist/cjs/collection/components/collection-description/CollectionDescription.liquid.js +7 -8
  41. package/dist/cjs/collection/components/collection-paginator/CollectionPaginator.liquid.js +4 -3
  42. package/dist/cjs/collection/components/collection-toolbar/CollectionToolbar.liquid.js +1 -1
  43. package/dist/cjs/collection/index.js +1 -1
  44. package/dist/cjs/collection/settings/collection-banner/configs/ui-v2.js +1 -1
  45. package/dist/cjs/collection/settings/collection-description/configs/ui-v2.js +1 -1
  46. package/dist/cjs/collection/settings/collection-paginator/configs/ui-v2.js +1 -1
  47. package/dist/cjs/collection/settings/collection-title/configs/ui-v2.js +1 -1
  48. package/dist/cjs/collection/settings/collection-toolbar/configs/ui-v2.js +1 -1
  49. package/dist/cjs/countdown-timer/components/Countdown.liquid.js +16 -15
  50. package/dist/cjs/countdown-timer/settings/configs/ui-v2.js +1 -1
  51. package/dist/cjs/coupon/settings/configs/ui-v2.js +1 -1
  52. package/dist/cjs/dialog/settings/configs/ui-v2.js +1 -1
  53. package/dist/cjs/estimate-delivery/settings/configs/ui-v2.js +1 -1
  54. package/dist/cjs/form/settings/contact/configs/ui-v2.js +1 -1
  55. package/dist/cjs/form/settings/form-checkbox/configs/ui-v2.js +1 -1
  56. package/dist/cjs/form/settings/form-dropdown/configs/ui-v2.js +1 -1
  57. package/dist/cjs/form/settings/form-email/configs/ui-v2.js +1 -1
  58. package/dist/cjs/form/settings/form-textarea/configs/ui-v2.js +1 -1
  59. package/dist/cjs/form/settings/newsletter/configs/ui-v2.js +1 -1
  60. package/dist/cjs/form/settings/submit-button/configs/ui-v2.js +1 -1
  61. package/dist/cjs/form/settings/text-field/configs/ui-v2.js +1 -1
  62. package/dist/cjs/grid/components/row/Row.js +1 -1
  63. package/dist/cjs/grid/components/row/Row.liquid.js +7 -2
  64. package/dist/cjs/grid/components/section/Section.js +1 -1
  65. package/dist/cjs/grid/components/section/lazyload/LazySectionWrapper.js +1 -0
  66. package/dist/cjs/grid/components/section/lazyload/lazyInteractionTrigger.js +1 -0
  67. package/dist/cjs/grid/components/section/lazyload/lazySectionCoordinator.js +1 -0
  68. package/dist/cjs/grid/index.js +1 -1
  69. package/dist/cjs/grid/next.js +1 -1
  70. package/dist/cjs/grid/settings/configs/row/ui-v2.js +1 -1
  71. package/dist/cjs/grid/settings/configs/section/ui-v2.js +1 -1
  72. package/dist/cjs/header/components/kind/basic/index.js +1 -1
  73. package/dist/cjs/header/components/kind/modern/index.js +1 -1
  74. package/dist/cjs/header/index.js +1 -1
  75. package/dist/cjs/heading/next.js +1 -1
  76. package/dist/cjs/heading/settings/configs/ui-v2.js +1 -1
  77. package/dist/cjs/headless.js +1 -0
  78. package/dist/cjs/helpers.js +1 -1
  79. package/dist/cjs/hero-banner/common/helpers.js +1 -1
  80. package/dist/cjs/hero-banner/components/HeroBanner.liquid.js +3 -3
  81. package/dist/cjs/hero-banner/index.js +1 -1
  82. package/dist/cjs/hero-banner/settings/configs/ui-v2.js +1 -1
  83. package/dist/cjs/icon/settings/configs/ui-v2.js +1 -1
  84. package/dist/cjs/icon-list/settings/configs/ui-v2.js +1 -1
  85. package/dist/cjs/icon-list-hoz/settings/configs/uiV2.js +1 -1
  86. package/dist/cjs/icon-list-v2/components/IconList.liquid.js +5 -5
  87. package/dist/cjs/icon-list-v2/settings/configs/ui-v2.js +1 -1
  88. package/dist/cjs/image/common/const.js +1 -0
  89. package/dist/cjs/image/common/helpers.js +2 -2
  90. package/dist/cjs/image/next.js +1 -1
  91. package/dist/cjs/image/settings/configs/ui-v2.js +1 -1
  92. package/dist/cjs/image-comparison/common/classes.js +1 -1
  93. package/dist/cjs/image-comparison/components/CompareImage.liquid.js +4 -4
  94. package/dist/cjs/image-comparison/settings/configs/ui-v2.js +1 -1
  95. package/dist/cjs/index.js +1 -1
  96. package/dist/cjs/index.liquid.js +1 -1
  97. package/dist/cjs/line/settings/configs/ui-v2.js +1 -1
  98. package/dist/cjs/marquee/components/Marquee.liquid.js +21 -21
  99. package/dist/cjs/marquee/settings/configs/child-image-template.js +1 -1
  100. package/dist/cjs/marquee/settings/configs/ui-v2.js +1 -1
  101. package/dist/cjs/modal/components/Modal.js +1 -1
  102. package/dist/cjs/modal/index.js +1 -1
  103. package/dist/cjs/post-purchase/callout-banner/index.js +1 -1
  104. package/dist/cjs/post-purchase/link/components/PostPurchaseLink.js +1 -1
  105. package/dist/cjs/post-purchase/link/settings/configs/settings.js +1 -1
  106. package/dist/cjs/post-purchase/link/settings/configs/ui-v2.js +1 -1
  107. package/dist/cjs/post-purchase/product/components/ProductPrice.js +1 -1
  108. package/dist/cjs/post-purchase/product/components/ProductQuantity.js +1 -1
  109. package/dist/cjs/post-purchase/product/components/product-image/FeatureImage.js +1 -1
  110. package/dist/cjs/post-purchase/product/components/product-image/carousel-post-purchase/CarouselWrapperPostPurchase.js +1 -1
  111. package/dist/cjs/post-purchase/product/components/product-image/layouts/OnlyGalleryImage.js +1 -1
  112. package/dist/cjs/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  113. package/dist/cjs/post-purchase/product/components/product-offer/context/PrdOfferSubscriptionPresenceContext.js +2 -0
  114. package/dist/cjs/post-purchase/product/components/product-offer/helpers/scanSubscriptionBlocks.js +1 -0
  115. package/dist/cjs/post-purchase/product/components/product-offer/hooks/useProductOfferSubscriptionBlocksObserver.js +1 -0
  116. package/dist/cjs/post-purchase/product/components/product-subscription/hooks/useSubscriptionVisibility.js +1 -1
  117. package/dist/cjs/post-purchase/product/components/product-variant/components/ProductVariant.js +1 -1
  118. package/dist/cjs/post-purchase/product/components/product-variant/components/variants/Dropdown.js +1 -1
  119. package/dist/cjs/post-purchase/product/components/product-variant/components/variants/DropdownOption.js +1 -1
  120. package/dist/cjs/post-purchase/product/index.js +1 -1
  121. package/dist/cjs/post-purchase/product/settings/product-quantity/configs/settings.js +1 -1
  122. package/dist/cjs/post-purchase/product/settings/product-quantity/configs/ui-v2.js +1 -1
  123. package/dist/cjs/post-purchase/text/components/Text.js +2 -2
  124. package/dist/cjs/product/components/ProductImages.liquid.js +9 -9
  125. package/dist/cjs/product/components/dynamic-checkout/Button.liquid.js +9 -9
  126. package/dist/cjs/product/components/file-upload/UploadFile.liquid.js +2 -3
  127. package/dist/cjs/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  128. package/dist/cjs/product/components/product-badge/ProductBadge.js +1 -1
  129. package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +18 -18
  130. package/dist/cjs/product/components/product-badge/common/attrs.js +1 -1
  131. package/dist/cjs/product/components/product-badge/common/classes.js +1 -1
  132. package/dist/cjs/product/components/product-badge/utils/injectBadgeStateExtras.js +1 -0
  133. package/dist/cjs/product/components/product-badge/utils/renderBadgeILP.js +1 -1
  134. package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +3 -1
  135. package/dist/cjs/product/components/product-bundle/ProductBundleDiscount.js +1 -1
  136. package/dist/cjs/product/components/product-bundle/ProductBundleDiscount.liquid.js +4 -3
  137. package/dist/cjs/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  138. package/dist/cjs/product/components/product-button/ProductButton.liquid.js +14 -11
  139. package/dist/cjs/product/components/product-button/common/helpers.js +1 -1
  140. package/dist/cjs/product/components/product-button/hooks/useAddToCart.js +1 -1
  141. package/dist/cjs/product/components/product-description/ProductDescription.js +1 -1
  142. package/dist/cjs/product/components/product-description/ProductDescription.liquid.js +3 -4
  143. package/dist/cjs/product/components/product-description/hooks/useGpDescription.js +1 -1
  144. package/dist/cjs/product/components/product-discount-tag/ProductDiscountTag.js +1 -1
  145. package/dist/cjs/product/components/product-discount-tag/ProductDiscountTag.liquid.js +5 -5
  146. package/dist/cjs/product/components/product-images/ProductFeaturedImage.liquid.js +1 -1
  147. package/dist/cjs/product/components/product-images-v2/ProductImagesV2.liquid.js +22 -22
  148. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +1 -1
  149. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +1 -1
  150. package/dist/cjs/product/components/product-images-v3/ProductImagesV3.liquid.js +23 -23
  151. package/dist/cjs/product/components/product-images-v3/common/productFeaturedImage.js +1 -1
  152. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -1
  153. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +1 -1
  154. package/dist/cjs/product/components/product-images-v3/components/child/ProductGalleryGrid.js +2 -2
  155. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +34 -33
  156. package/dist/cjs/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +19 -16
  157. package/dist/cjs/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +1 -1
  158. package/dist/cjs/product/components/product-images-v3/composables/getProductImagesClassName.js +1 -1
  159. package/dist/cjs/product/components/product-list/ProductList.js +1 -1
  160. package/dist/cjs/product/components/product-list/ProductList.liquid.js +10 -9
  161. package/dist/cjs/product/components/product-list/ProductListCarouselItem.liquid.js +5 -6
  162. package/dist/cjs/product/components/product-list/ProductListGridItem.liquid.js +7 -8
  163. package/dist/cjs/product/components/product-list/ProductListGridLayout.liquid.js +6 -4
  164. package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -1
  165. package/dist/cjs/product/components/product-list-v3/ProductList.liquid.js +12 -11
  166. package/dist/cjs/product/components/product-list-v3/ProductListCarouselItem.liquid.js +6 -6
  167. package/dist/cjs/product/components/product-list-v3/ProductListGridItem.liquid.js +7 -8
  168. package/dist/cjs/product/components/product-list-v3/ProductListGridLayout.liquid.js +6 -4
  169. package/dist/cjs/product/components/product-list-v3/common/classes.js +1 -1
  170. package/dist/cjs/product/components/product-list-v3/common/helpers.js +1 -1
  171. package/dist/cjs/product/components/product-list-v3/constants/index.js +1 -1
  172. package/dist/cjs/product/components/product-list-v3/hooks/useCollectionQuery.js +1 -1
  173. package/dist/cjs/product/components/product-list-v3/hooks/useMainRelatedProductQuery.js +1 -1
  174. package/dist/cjs/product/components/product-list-v3/hooks/useProductRelatedQuery.js +1 -1
  175. package/dist/cjs/product/components/product-list-v3/hooks/useProductsQuery.js +1 -1
  176. package/dist/cjs/product/components/product-list-v3/hooks/useRelatedProductIDAssigned.js +1 -0
  177. package/dist/cjs/product/components/product-price/ProductPrice.liquid.js +4 -4
  178. package/dist/cjs/product/components/product-sku/Sku.js +1 -1
  179. package/dist/cjs/product/components/product-sku/Sku.liquid.js +4 -3
  180. package/dist/cjs/product/components/product-title/ProductTitle.liquid.js +7 -8
  181. package/dist/cjs/product/components/product-variants/ProductVariants.liquid.js +43 -43
  182. package/dist/cjs/product/components/product-variants/common/const.js +1 -1
  183. package/dist/cjs/product/components/product-wrap/Product.liquid.js +1 -1
  184. package/dist/cjs/product/components/product-wrap/hook/useProductQuery.js +1 -1
  185. package/dist/cjs/product/index.js +1 -1
  186. package/dist/cjs/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  187. package/dist/cjs/product/settings/product/configs/ui-v2.js +1 -1
  188. package/dist/cjs/product/settings/product-badge/configs/ui-v2.js +1 -1
  189. package/dist/cjs/product/settings/product-button/configs/ui-v2.js +1 -1
  190. package/dist/cjs/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  191. package/dist/cjs/product/settings/product-image-v3/configs/setting-v2/ProductFeatureImage.js +1 -1
  192. package/dist/cjs/product/settings/product-image-v3/configs/setting-v2/ProductGalleryImage.js +2 -2
  193. package/dist/cjs/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  194. package/dist/cjs/product/settings/product-list/configs/ui-v2.js +1 -1
  195. package/dist/cjs/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  196. package/dist/cjs/product/settings/product-properties/configs/ui-v2.js +1 -1
  197. package/dist/cjs/product/settings/product-quantity/configs/ui-v2.js +1 -1
  198. package/dist/cjs/product/settings/product-title/configs/ui-v2.js +1 -1
  199. package/dist/cjs/product/settings/product-variant/configs/ui-v2.js +1 -1
  200. package/dist/cjs/product/settings/product-vendor/configs/ui-v2.js +1 -1
  201. package/dist/cjs/product/settings/product-view-more/configs/ui-v2.js +1 -1
  202. package/dist/cjs/sticky/common/classes.js +1 -1
  203. package/dist/cjs/sticky/components/Sticky.liquid.js +4 -5
  204. package/dist/cjs/sticky/hooks/useSticky.js +1 -1
  205. package/dist/cjs/sticky/settings/configs/ui-v2.js +1 -1
  206. package/dist/cjs/stock-counter/common/classes.js +1 -1
  207. package/dist/cjs/stock-counter/components/StockCounter.liquid.js +11 -8
  208. package/dist/cjs/stock-counter/settings/configs/ui-v2.js +1 -1
  209. package/dist/cjs/tab/components/Tabs.liquid.js +7 -6
  210. package/dist/cjs/tab/settings/configs/ui-v2.js +1 -1
  211. package/dist/cjs/text/components/Text.liquid.js +3 -3
  212. package/dist/cjs/text/next.js +1 -1
  213. package/dist/cjs/text/settings/configs/ui-v2.js +1 -1
  214. package/dist/cjs/third-party/components/AppstleLoyaltyRewardProgram.js +2 -0
  215. package/dist/cjs/third-party/components/AppstleLoyaltyRewardProgram.liquid.js +16 -0
  216. package/dist/cjs/third-party/components/BonySubscriptionsApp.liquid.js +10 -3
  217. package/dist/cjs/third-party/components/EcomsendBackInStockAlert.js +1 -1
  218. package/dist/cjs/third-party/components/EssentPreorderBackInStock.js +2 -0
  219. package/dist/cjs/third-party/components/EssentPreorderBackInStock.liquid.js +8 -0
  220. package/dist/cjs/third-party/components/Stamped/LiquidTemplateByWidget.js +1 -1
  221. package/dist/cjs/third-party/components/SubscribfySubscriptionsApp.js +2 -0
  222. package/dist/cjs/third-party/components/SubscribfySubscriptionsApp.liquid.js +1 -0
  223. package/dist/cjs/third-party/components/WcWishlistBackInStock.liquid.js +19 -1
  224. package/dist/cjs/third-party/configs/AppstleLoyaltyRewardProgram.js +1 -0
  225. package/dist/cjs/third-party/configs/EcomsendBackInStockAlert.js +1 -1
  226. package/dist/cjs/third-party/configs/EssentPreorderBackInStock.js +1 -0
  227. package/dist/cjs/third-party/configs/SubscribfySubscriptionsApp.js +1 -0
  228. package/dist/cjs/third-party/configs/WcWishlistBackInStock.js +1 -1
  229. package/dist/cjs/third-party/index.js +1 -1
  230. package/dist/cjs/third-party/next.js +1 -1
  231. package/dist/cjs/third-party/settings/AppstleLoyaltyRewardProgram/index.js +4 -0
  232. package/dist/cjs/third-party/settings/AppstleLoyaltyRewardProgram/uiV2.js +1 -0
  233. package/dist/cjs/third-party/settings/EcomsendBackInStockAlert/index.js +4 -4
  234. package/dist/cjs/third-party/settings/EssentPreorderBackInStock/index.js +4 -0
  235. package/dist/cjs/third-party/settings/EssentPreorderBackInStock/uiV2.js +1 -0
  236. package/dist/cjs/third-party/settings/SubscribfySubscriptionsApp/index.js +4 -0
  237. package/dist/cjs/third-party/settings/SubscribfySubscriptionsApp/uiV2.js +1 -0
  238. package/dist/cjs/third-party/settings/WcWishlistBackInStock/index.js +5 -2
  239. package/dist/cjs/video/common/helpers.js +1 -1
  240. package/dist/cjs/video/components/LiteVimeoEmbed.liquid.js +5 -4
  241. package/dist/cjs/video/components/LiteYouTubeEmbed.liquid.js +15 -14
  242. package/dist/cjs/video/hooks/useLiteYoutubeEmbed.js +1 -1
  243. package/dist/esm/accordion/components/Accordion.liquid.js +8 -9
  244. package/dist/esm/accordion/settings/configs/ui-v2.js +1 -1
  245. package/dist/esm/article/components/ArticleReadMore.liquid.js +4 -4
  246. package/dist/esm/article/settings/configs/article-author/ui-v2.js +1 -1
  247. package/dist/esm/article/settings/configs/article-category/ui-v2.js +1 -1
  248. package/dist/esm/article/settings/configs/article-content/ui-v2.js +1 -1
  249. package/dist/esm/article/settings/configs/article-date/ui-v2.js +1 -1
  250. package/dist/esm/article/settings/configs/article-excerpt/ui-v2.js +1 -1
  251. package/dist/esm/article/settings/configs/article-image/ui-v2.js +1 -1
  252. package/dist/esm/article/settings/configs/article-list/ui-v2.js +1 -1
  253. package/dist/esm/article/settings/configs/article-read-more/ui-v2.js +1 -1
  254. package/dist/esm/article/settings/configs/article-tag/ui-v2.js +1 -1
  255. package/dist/esm/article/settings/configs/article-title/ui-v2.js +1 -1
  256. package/dist/esm/breadcrumb/settings/configs/ui-v2.js +1 -1
  257. package/dist/esm/builder.js +1 -1
  258. package/dist/esm/button/common/helpers.js +2 -2
  259. package/dist/esm/button/components/Button.liquid.js +19 -19
  260. package/dist/esm/button/settings/configs/ui-v2.js +1 -1
  261. package/dist/esm/carousel/components/dot/Dots.js +1 -1
  262. package/dist/esm/carousel/components/root/Carousel.liquid.js +4 -3
  263. package/dist/esm/carousel-v3/components/arrow/Arrow.liquid.js +6 -6
  264. package/dist/esm/carousel-v3/components/arrow/common/classes.js +1 -1
  265. package/dist/esm/carousel-v3/components/dot/Dots.js +1 -1
  266. package/dist/esm/carousel-v3/components/dot/common/helpers.js +1 -1
  267. package/dist/esm/carousel-v3/components/item/CarouselItem.js +1 -1
  268. package/dist/esm/carousel-v3/components/root/Carousel.js +1 -1
  269. package/dist/esm/carousel-v3/components/root/Carousel.liquid.js +6 -5
  270. package/dist/esm/carousel-v3/components/swiper/Swiper.js +1 -1
  271. package/dist/esm/carousel-v3/hooks/useCarousel.js +1 -1
  272. package/dist/esm/carousel-v3/index.js +1 -1
  273. package/dist/esm/carousel-v3/settings/configs/settings-v2.js +3 -3
  274. package/dist/esm/carousel-v3/settings/configs/ui-v2.js +1 -1
  275. package/dist/esm/cart/components/CartList.js +1 -1
  276. package/dist/esm/cart/components/shop-pay-button/ShopPayButton.liquid.js +2 -2
  277. package/dist/esm/cart/index.js +1 -1
  278. package/dist/esm/code/common/styles.js +1 -1
  279. package/dist/esm/code/components/CSSCode.liquid.js +6 -6
  280. package/dist/esm/code/hooks/useCSSCode.js +3 -10
  281. package/dist/esm/collection/components/collection-description/CollectionDescription.js +1 -1
  282. package/dist/esm/collection/components/collection-description/CollectionDescription.liquid.js +6 -7
  283. package/dist/esm/collection/components/collection-paginator/CollectionPaginator.liquid.js +4 -3
  284. package/dist/esm/collection/components/collection-toolbar/CollectionToolbar.liquid.js +3 -3
  285. package/dist/esm/collection/index.js +1 -1
  286. package/dist/esm/collection/settings/collection-banner/configs/ui-v2.js +1 -1
  287. package/dist/esm/collection/settings/collection-description/configs/ui-v2.js +1 -1
  288. package/dist/esm/collection/settings/collection-paginator/configs/ui-v2.js +1 -1
  289. package/dist/esm/collection/settings/collection-title/configs/ui-v2.js +1 -1
  290. package/dist/esm/collection/settings/collection-toolbar/configs/ui-v2.js +1 -1
  291. package/dist/esm/countdown-timer/components/Countdown.liquid.js +21 -20
  292. package/dist/esm/countdown-timer/settings/configs/ui-v2.js +1 -1
  293. package/dist/esm/coupon/settings/configs/ui-v2.js +1 -1
  294. package/dist/esm/dialog/settings/configs/ui-v2.js +1 -1
  295. package/dist/esm/estimate-delivery/settings/configs/ui-v2.js +1 -1
  296. package/dist/esm/form/settings/contact/configs/ui-v2.js +1 -1
  297. package/dist/esm/form/settings/form-checkbox/configs/ui-v2.js +1 -1
  298. package/dist/esm/form/settings/form-dropdown/configs/ui-v2.js +1 -1
  299. package/dist/esm/form/settings/form-email/configs/ui-v2.js +1 -1
  300. package/dist/esm/form/settings/form-textarea/configs/ui-v2.js +1 -1
  301. package/dist/esm/form/settings/newsletter/configs/ui-v2.js +1 -1
  302. package/dist/esm/form/settings/submit-button/configs/ui-v2.js +1 -1
  303. package/dist/esm/form/settings/text-field/configs/ui-v2.js +1 -1
  304. package/dist/esm/grid/components/row/Row.js +1 -1
  305. package/dist/esm/grid/components/row/Row.liquid.js +10 -5
  306. package/dist/esm/grid/components/section/Section.js +1 -1
  307. package/dist/esm/grid/components/section/lazyload/LazySectionWrapper.js +1 -0
  308. package/dist/esm/grid/components/section/lazyload/lazyInteractionTrigger.js +1 -0
  309. package/dist/esm/grid/components/section/lazyload/lazySectionCoordinator.js +1 -0
  310. package/dist/esm/grid/index.js +1 -1
  311. package/dist/esm/grid/next.js +1 -1
  312. package/dist/esm/grid/settings/configs/row/ui-v2.js +1 -1
  313. package/dist/esm/grid/settings/configs/section/ui-v2.js +1 -1
  314. package/dist/esm/header/components/kind/basic/index.js +1 -1
  315. package/dist/esm/header/components/kind/modern/index.js +1 -1
  316. package/dist/esm/header/index.js +1 -1
  317. package/dist/esm/heading/next.js +1 -1
  318. package/dist/esm/heading/settings/configs/ui-v2.js +1 -1
  319. package/dist/esm/headless.js +1 -0
  320. package/dist/esm/helpers.js +1 -1
  321. package/dist/esm/hero-banner/common/helpers.js +1 -1
  322. package/dist/esm/hero-banner/components/HeroBanner.liquid.js +5 -5
  323. package/dist/esm/hero-banner/index.js +1 -1
  324. package/dist/esm/hero-banner/settings/configs/ui-v2.js +1 -1
  325. package/dist/esm/icon/settings/configs/ui-v2.js +1 -1
  326. package/dist/esm/icon-list/settings/configs/ui-v2.js +1 -1
  327. package/dist/esm/icon-list-hoz/settings/configs/uiV2.js +1 -1
  328. package/dist/esm/icon-list-v2/components/IconList.liquid.js +3 -3
  329. package/dist/esm/icon-list-v2/settings/configs/ui-v2.js +1 -1
  330. package/dist/esm/image/common/const.js +1 -0
  331. package/dist/esm/image/common/helpers.js +2 -2
  332. package/dist/esm/image/next.js +1 -1
  333. package/dist/esm/image/settings/configs/ui-v2.js +1 -1
  334. package/dist/esm/image-comparison/common/classes.js +1 -1
  335. package/dist/esm/image-comparison/components/CompareImage.liquid.js +5 -5
  336. package/dist/esm/image-comparison/settings/configs/ui-v2.js +1 -1
  337. package/dist/esm/index.js +1 -1
  338. package/dist/esm/index.liquid.js +1 -1
  339. package/dist/esm/line/settings/configs/ui-v2.js +1 -1
  340. package/dist/esm/marquee/components/Marquee.liquid.js +21 -21
  341. package/dist/esm/marquee/settings/configs/child-image-template.js +1 -1
  342. package/dist/esm/marquee/settings/configs/ui-v2.js +1 -1
  343. package/dist/esm/modal/components/Modal.js +1 -1
  344. package/dist/esm/modal/index.js +1 -1
  345. package/dist/esm/post-purchase/callout-banner/index.js +1 -1
  346. package/dist/esm/post-purchase/link/components/PostPurchaseLink.js +1 -1
  347. package/dist/esm/post-purchase/link/settings/configs/settings.js +1 -1
  348. package/dist/esm/post-purchase/link/settings/configs/ui-v2.js +1 -1
  349. package/dist/esm/post-purchase/product/components/ProductPrice.js +1 -1
  350. package/dist/esm/post-purchase/product/components/ProductQuantity.js +1 -1
  351. package/dist/esm/post-purchase/product/components/product-image/FeatureImage.js +1 -1
  352. package/dist/esm/post-purchase/product/components/product-image/carousel-post-purchase/CarouselWrapperPostPurchase.js +1 -1
  353. package/dist/esm/post-purchase/product/components/product-image/layouts/OnlyGalleryImage.js +1 -1
  354. package/dist/esm/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  355. package/dist/esm/post-purchase/product/components/product-offer/context/PrdOfferSubscriptionPresenceContext.js +2 -0
  356. package/dist/esm/post-purchase/product/components/product-offer/helpers/scanSubscriptionBlocks.js +1 -0
  357. package/dist/esm/post-purchase/product/components/product-offer/hooks/useProductOfferSubscriptionBlocksObserver.js +1 -0
  358. package/dist/esm/post-purchase/product/components/product-subscription/hooks/useSubscriptionVisibility.js +1 -1
  359. package/dist/esm/post-purchase/product/components/product-variant/components/ProductVariant.js +1 -1
  360. package/dist/esm/post-purchase/product/components/product-variant/components/variants/Dropdown.js +1 -1
  361. package/dist/esm/post-purchase/product/components/product-variant/components/variants/DropdownOption.js +1 -1
  362. package/dist/esm/post-purchase/product/index.js +1 -1
  363. package/dist/esm/post-purchase/product/settings/product-quantity/configs/settings.js +1 -1
  364. package/dist/esm/post-purchase/product/settings/product-quantity/configs/ui-v2.js +1 -1
  365. package/dist/esm/post-purchase/text/components/Text.js +2 -2
  366. package/dist/esm/product/components/ProductImages.liquid.js +12 -12
  367. package/dist/esm/product/components/dynamic-checkout/Button.liquid.js +14 -14
  368. package/dist/esm/product/components/file-upload/UploadFile.liquid.js +3 -4
  369. package/dist/esm/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  370. package/dist/esm/product/components/product-badge/ProductBadge.js +1 -1
  371. package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +20 -20
  372. package/dist/esm/product/components/product-badge/common/attrs.js +1 -1
  373. package/dist/esm/product/components/product-badge/common/classes.js +1 -1
  374. package/dist/esm/product/components/product-badge/utils/injectBadgeStateExtras.js +1 -0
  375. package/dist/esm/product/components/product-badge/utils/renderBadgeILP.js +1 -1
  376. package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +5 -3
  377. package/dist/esm/product/components/product-bundle/ProductBundleDiscount.js +1 -1
  378. package/dist/esm/product/components/product-bundle/ProductBundleDiscount.liquid.js +8 -7
  379. package/dist/esm/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  380. package/dist/esm/product/components/product-button/ProductButton.liquid.js +14 -11
  381. package/dist/esm/product/components/product-button/common/helpers.js +1 -1
  382. package/dist/esm/product/components/product-button/hooks/useAddToCart.js +1 -1
  383. package/dist/esm/product/components/product-description/ProductDescription.js +1 -1
  384. package/dist/esm/product/components/product-description/ProductDescription.liquid.js +5 -6
  385. package/dist/esm/product/components/product-description/hooks/useGpDescription.js +1 -1
  386. package/dist/esm/product/components/product-discount-tag/ProductDiscountTag.js +1 -1
  387. package/dist/esm/product/components/product-discount-tag/ProductDiscountTag.liquid.js +8 -8
  388. package/dist/esm/product/components/product-images/ProductFeaturedImage.liquid.js +1 -1
  389. package/dist/esm/product/components/product-images-v2/ProductImagesV2.liquid.js +21 -21
  390. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +1 -1
  391. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +1 -1
  392. package/dist/esm/product/components/product-images-v3/ProductImagesV3.liquid.js +22 -22
  393. package/dist/esm/product/components/product-images-v3/common/productFeaturedImage.js +1 -1
  394. package/dist/esm/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -1
  395. package/dist/esm/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +1 -1
  396. package/dist/esm/product/components/product-images-v3/components/child/ProductGalleryGrid.js +2 -2
  397. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +17 -16
  398. package/dist/esm/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +20 -17
  399. package/dist/esm/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +1 -1
  400. package/dist/esm/product/components/product-images-v3/composables/getProductImagesClassName.js +1 -1
  401. package/dist/esm/product/components/product-list/ProductList.js +1 -1
  402. package/dist/esm/product/components/product-list/ProductList.liquid.js +18 -17
  403. package/dist/esm/product/components/product-list/ProductListCarouselItem.liquid.js +5 -6
  404. package/dist/esm/product/components/product-list/ProductListGridItem.liquid.js +7 -8
  405. package/dist/esm/product/components/product-list/ProductListGridLayout.liquid.js +9 -7
  406. package/dist/esm/product/components/product-list-v3/ProductList.js +1 -1
  407. package/dist/esm/product/components/product-list-v3/ProductList.liquid.js +20 -19
  408. package/dist/esm/product/components/product-list-v3/ProductListCarouselItem.liquid.js +6 -6
  409. package/dist/esm/product/components/product-list-v3/ProductListGridItem.liquid.js +7 -8
  410. package/dist/esm/product/components/product-list-v3/ProductListGridLayout.liquid.js +9 -7
  411. package/dist/esm/product/components/product-list-v3/common/classes.js +1 -1
  412. package/dist/esm/product/components/product-list-v3/common/helpers.js +1 -1
  413. package/dist/esm/product/components/product-list-v3/constants/index.js +1 -1
  414. package/dist/esm/product/components/product-list-v3/hooks/useCollectionQuery.js +1 -1
  415. package/dist/esm/product/components/product-list-v3/hooks/useMainRelatedProductQuery.js +1 -1
  416. package/dist/esm/product/components/product-list-v3/hooks/useProductRelatedQuery.js +1 -1
  417. package/dist/esm/product/components/product-list-v3/hooks/useProductsQuery.js +1 -1
  418. package/dist/esm/product/components/product-list-v3/hooks/useRelatedProductIDAssigned.js +1 -0
  419. package/dist/esm/product/components/product-price/ProductPrice.liquid.js +3 -3
  420. package/dist/esm/product/components/product-sku/Sku.js +1 -1
  421. package/dist/esm/product/components/product-sku/Sku.liquid.js +6 -5
  422. package/dist/esm/product/components/product-title/ProductTitle.liquid.js +5 -6
  423. package/dist/esm/product/components/product-variants/ProductVariants.liquid.js +48 -48
  424. package/dist/esm/product/components/product-variants/common/const.js +1 -1
  425. package/dist/esm/product/components/product-wrap/Product.liquid.js +5 -5
  426. package/dist/esm/product/components/product-wrap/hook/useProductQuery.js +1 -1
  427. package/dist/esm/product/index.js +1 -1
  428. package/dist/esm/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  429. package/dist/esm/product/settings/product/configs/ui-v2.js +1 -1
  430. package/dist/esm/product/settings/product-badge/configs/ui-v2.js +1 -1
  431. package/dist/esm/product/settings/product-button/configs/ui-v2.js +1 -1
  432. package/dist/esm/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  433. package/dist/esm/product/settings/product-image-v3/configs/setting-v2/ProductFeatureImage.js +1 -1
  434. package/dist/esm/product/settings/product-image-v3/configs/setting-v2/ProductGalleryImage.js +2 -2
  435. package/dist/esm/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  436. package/dist/esm/product/settings/product-list/configs/ui-v2.js +1 -1
  437. package/dist/esm/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  438. package/dist/esm/product/settings/product-properties/configs/ui-v2.js +1 -1
  439. package/dist/esm/product/settings/product-quantity/configs/ui-v2.js +1 -1
  440. package/dist/esm/product/settings/product-title/configs/ui-v2.js +1 -1
  441. package/dist/esm/product/settings/product-variant/configs/ui-v2.js +1 -1
  442. package/dist/esm/product/settings/product-vendor/configs/ui-v2.js +1 -1
  443. package/dist/esm/product/settings/product-view-more/configs/ui-v2.js +1 -1
  444. package/dist/esm/sticky/common/classes.js +1 -1
  445. package/dist/esm/sticky/components/Sticky.liquid.js +11 -12
  446. package/dist/esm/sticky/hooks/useSticky.js +1 -1
  447. package/dist/esm/sticky/settings/configs/ui-v2.js +1 -1
  448. package/dist/esm/stock-counter/common/classes.js +1 -1
  449. package/dist/esm/stock-counter/components/StockCounter.liquid.js +27 -24
  450. package/dist/esm/stock-counter/settings/configs/ui-v2.js +1 -1
  451. package/dist/esm/tab/components/Tabs.liquid.js +12 -11
  452. package/dist/esm/tab/settings/configs/ui-v2.js +1 -1
  453. package/dist/esm/text/components/Text.liquid.js +3 -3
  454. package/dist/esm/text/next.js +1 -1
  455. package/dist/esm/text/settings/configs/ui-v2.js +1 -1
  456. package/dist/esm/third-party/components/AppstleLoyaltyRewardProgram.js +2 -0
  457. package/dist/esm/third-party/components/AppstleLoyaltyRewardProgram.liquid.js +16 -0
  458. package/dist/esm/third-party/components/BonySubscriptionsApp.liquid.js +11 -4
  459. package/dist/esm/third-party/components/EcomsendBackInStockAlert.js +1 -1
  460. package/dist/esm/third-party/components/EssentPreorderBackInStock.js +2 -0
  461. package/dist/esm/third-party/components/EssentPreorderBackInStock.liquid.js +8 -0
  462. package/dist/esm/third-party/components/Stamped/LiquidTemplateByWidget.js +1 -1
  463. package/dist/esm/third-party/components/SubscribfySubscriptionsApp.js +2 -0
  464. package/dist/esm/third-party/components/SubscribfySubscriptionsApp.liquid.js +1 -0
  465. package/dist/esm/third-party/components/WcWishlistBackInStock.liquid.js +19 -1
  466. package/dist/esm/third-party/configs/AppstleLoyaltyRewardProgram.js +1 -0
  467. package/dist/esm/third-party/configs/EcomsendBackInStockAlert.js +1 -1
  468. package/dist/esm/third-party/configs/EssentPreorderBackInStock.js +1 -0
  469. package/dist/esm/third-party/configs/SubscribfySubscriptionsApp.js +1 -0
  470. package/dist/esm/third-party/configs/WcWishlistBackInStock.js +1 -1
  471. package/dist/esm/third-party/index.js +1 -1
  472. package/dist/esm/third-party/next.js +1 -1
  473. package/dist/esm/third-party/settings/AppstleLoyaltyRewardProgram/index.js +4 -0
  474. package/dist/esm/third-party/settings/AppstleLoyaltyRewardProgram/uiV2.js +1 -0
  475. package/dist/esm/third-party/settings/EcomsendBackInStockAlert/index.js +4 -4
  476. package/dist/esm/third-party/settings/EssentPreorderBackInStock/index.js +4 -0
  477. package/dist/esm/third-party/settings/EssentPreorderBackInStock/uiV2.js +1 -0
  478. package/dist/esm/third-party/settings/SubscribfySubscriptionsApp/index.js +4 -0
  479. package/dist/esm/third-party/settings/SubscribfySubscriptionsApp/uiV2.js +1 -0
  480. package/dist/esm/third-party/settings/WcWishlistBackInStock/index.js +5 -2
  481. package/dist/esm/video/common/helpers.js +1 -1
  482. package/dist/esm/video/components/LiteVimeoEmbed.liquid.js +3 -2
  483. package/dist/esm/video/components/LiteYouTubeEmbed.liquid.js +14 -13
  484. package/dist/esm/video/hooks/useLiteYoutubeEmbed.js +1 -1
  485. package/dist/types/index.d.ts +267 -30
  486. package/package.json +5 -5
  487. package/dist/cjs/modal/components/ZoomButton.js +0 -2
  488. package/dist/cjs/product/components/product-images-v3/components/child/ProductImagesLightBoxPreview.js +0 -1
  489. package/dist/cjs/product/components/product-images-v3/components/lightbox/LightBoxCarousel.js +0 -2
  490. package/dist/cjs/product/components/product-images-v3/components/lightbox/LightBoxGalleryCarousel.js +0 -2
  491. package/dist/cjs/product/components/product-images-v3/components/lightbox/LightBoxImageZoom.js +0 -2
  492. package/dist/cjs/product/components/product-images-v3/components/lightbox/constants.js +0 -1
  493. package/dist/esm/modal/components/ZoomButton.js +0 -2
  494. package/dist/esm/product/components/product-images-v3/components/child/ProductImagesLightBoxPreview.js +0 -1
  495. package/dist/esm/product/components/product-images-v3/components/lightbox/LightBoxCarousel.js +0 -2
  496. package/dist/esm/product/components/product-images-v3/components/lightbox/LightBoxGalleryCarousel.js +0 -2
  497. package/dist/esm/product/components/product-images-v3/components/lightbox/LightBoxImageZoom.js +0 -2
  498. package/dist/esm/product/components/product-images-v3/components/lightbox/constants.js +0 -1
@@ -1,12 +1,12 @@
1
- import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cls as t}from"@gem-sdk/core";import{Liquid as o,LiquidFor as s,LiquidIf as d,If as r}from"@gem-sdk/system";import l from"../../../../../image/components/Modal3d.liquid.js";import m from"../../../../../image/components/NextImage.liquid.js";import p from"../../../../../image/components/Video.liquid.js";import n from"../../../../../video/components/HTML5Embed.liquid.js";import{getStyleOfObject as g}from"../../../../helpers/function.js";import{getAspectRatio as c,getSrcImage as u}from"../../common/common.js";import{getZoomImageClass as h,getZoomLenClass as y}from"../../common/productFeaturedImage.js";import{getShapeByLayout as C,getZoomDisplay as v}from"../../common/productGallery.js";import{getProductImagesClassName as f}from"../../composables/getProductImagesClassName.js";import{getProductImagesStyles as w}from"../../composables/getProductImagesStyles.js";let _=({builderPropUID:_,wrapperStyle:$,children:b,enableLazyLoadImage:x,...L})=>{let{galleryItemClasses:F,galleryGridWrapperClasses:V}=f(L),{galleryGridStyles:q,galleryGridItemStyles:I}=w(L),M=C({shape:L.shape,shapeForBottom:L.shapeForBottom,shapeFor1Col:L.shapeFor1Col,shapeFor2Col:L.shapeFor2Col,shapeForFtOnly:L.shapeForFtOnly,shapeForInsideBottom:L.shapeForInsideBottom,shapeForInside:L.shapeForInside},L.position),j=(i=!1)=>{let t={desktop:"none",tablet:"none",mobile:"none"};return["desktop","mobile","tablet"].forEach(e=>{let o=a(L?.position,e)||"",s="one-col"===o||"two-col"===o;t[e]=(i?!s:s)?"block":"none"}),e("d",t)},k=()=>j(),S=()=>j(!0),Z=(e,a)=>i`
1
+ import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cls as t}from"@gem-sdk/core";import{Liquid as o,LiquidFor as s,LiquidIf as d,If as r}from"@gem-sdk/system";import l from"../../../../../image/components/Modal3d.liquid.js";import m from"../../../../../image/components/NextImage.liquid.js";import p from"../../../../../image/components/Video.liquid.js";import g from"../../../../../video/components/HTML5Embed.liquid.js";import{getStyleOfObject as n}from"../../../../helpers/function.js";import{getAspectRatio as c,getSrcImage as u}from"../../common/common.js";import{getZoomImageClass as h,getZoomLenClass as y}from"../../common/productFeaturedImage.js";import{getShapeByLayout as C,getZoomDisplay as v}from"../../common/productGallery.js";import{getProductImagesClassName as f}from"../../composables/getProductImagesClassName.js";import{getProductImagesStyles as w}from"../../composables/getProductImagesStyles.js";let _=({builderPropUID:_,wrapperStyle:$,children:b,enableLazyLoadImage:x,...L})=>{let{galleryItemClasses:F,galleryGridWrapperClasses:M}=f(L),{galleryGridStyles:V,galleryGridItemStyles:q}=w(L),I=C({shape:L.shape,shapeForBottom:L.shapeForBottom,shapeFor1Col:L.shapeFor1Col,shapeFor2Col:L.shapeFor2Col,shapeForFtOnly:L.shapeForFtOnly,shapeForInsideBottom:L.shapeForInsideBottom,shapeForInside:L.shapeForInside},L.position),j=(i=!1)=>{let t={desktop:"none",tablet:"none",mobile:"none"};return["desktop","mobile","tablet"].forEach(e=>{let o=a(L?.position,e)||"",s="one-col"===o||"two-col"===o;t[e]=(i?!s:s)?"block":"none"}),e("d",t)},k=()=>j(),S=()=>j(!0),Z=(e,a)=>i`
2
2
  ${m({srcIsLiquidCode:!0,src:`${u("media.preview_image")}`,width:"{{media.width}}",height:"{{media.height}}",alt:"{{media.alt | escape}}",baseSrc:"{{media.preview_image | image_url}}",setting:e,style:a,className:"!gp-rounded-none",customLazyload:!1,enableLazyLoadImage:x})}
3
3
  ${r(L?.galleryHoverEffect!=="none",`<div class="${t("zoom-element !gp-max-w-none gp-w-full gp-h-full",h())}">
4
4
  ${m({srcIsLiquidCode:!0,src:`${u("media.preview_image")}`,width:"{{media.width}}",height:"{{media.height}}",baseSrc:"{{media.preview_image | image_url}}",alt:"{{media.alt | escape}}",setting:e,style:a,className:"!gp-rounded-none gp-w-full gp-h-full",customLazyload:!1,enableLazyLoadImage:x})}
5
5
  </div>`," ")}
6
- ${r(L?.galleryHoverEffect=="zoom"&&L?.galleryZoomType=="glasses",`<div class="${t("zoom-lens-element",y())}" style="opacity: 0; background-image: url('{{media.preview_image | product_img_url: '1024x1024'}}')">
6
+ ${r(L?.galleryHoverEffect=="zoom"&&L?.galleryZoomType=="glasses",`<div class="${t("zoom-lens-element",y())}" style="opacity: 0; background-image: url({{media.preview_image | product_img_url: '1024x1024'}})">
7
7
  </div>
8
8
  `," ")}
9
- `,z=()=>l({src:d("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:c(M)}),B=()=>p({src:"{{mediaSourceVideo}}",alt:"{{media.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"}}),H=()=>n({src:"{{mediaSourceVideo}}",title:"{{media.alt | escape}}",autoplay:!1,controls:!0,style:{width:"100%","max-height":"100%"}}),P=()=>i`
9
+ `,z=()=>l({src:d("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:c(I)}),B=()=>p({src:"{{mediaSourceVideo}}",alt:"{{media.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"}}),H=()=>g({src:"{{mediaSourceVideo}}",title:"{{media.alt | escape}}",autoplay:!1,controls:!0,thumbnail:"{{media.preview_image.src | product_img_url: '1024x1024'}}",poster:{altText:"{{media.alt | escape}}"},style:{width:"100%","max-height":"100%"}}),P=()=>i`
10
10
  ${d("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
11
  <svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
12
12
  <rect opacity="0.9" width="24" height="24" rx="3" fill="#212121"/>
@@ -19,10 +19,10 @@ import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cl
19
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
20
  </svg>
21
21
  </div>`)}
22
- ${Z({aspectRatio:c(M),layout:L?.layout,qualityType:L?.qualityType,qualityPercent:L?.qualityPercent},{width:"100%",height:"100%"})}
22
+ ${Z({aspectRatio:c(I),layout:L?.layout,qualityType:L?.qualityType,qualityPercent:L?.qualityPercent},{width:"100%",height:"100%"})}
23
23
 
24
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="${g(v(L?.clickOpenLightBox))}" >
25
+ style="${n(v(L?.clickOpenLightBox))}" >
26
26
  <svg
27
27
  height="100%"
28
28
  width="100%"
@@ -39,7 +39,7 @@ import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cl
39
39
  />
40
40
  </svg>
41
41
  </div>
42
- `,N=i=>`
42
+ `,T=i=>`
43
43
  ${d("media.media_type == 'video'","{% assign mediaSourceUrl = media.sources.last.url %}")}
44
44
  ${d("media.media_type == 'external_video'","{% assign mediaSourceUrl = media | external_video_url %}{% assign mediaSource = media | json %}")}
45
45
  ${d("media.media_type == 'image'","{% assign mediaSourceUrl = media.src %}")}
@@ -54,18 +54,20 @@ import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cl
54
54
  grid-index="{{forloop.index}}"
55
55
  data-outline="none"
56
56
  class="${F(`gem-slider-item-${_}-{{product.id}} gp-gallery-image-item ${i??""} data-[outline=deactive]:after:!gp-border-transparent`)}"
57
- style="${g(I)}"
57
+ style="${n(q)}"
58
58
  >
59
59
  ${d("media.media_type == 'external_video' or media.media_type == 'video' or media.media_type == 'model'","{% assign isMedia = true %}")}
60
60
 
61
61
  ${d("media.media_type == 'external_video' or media.media_type == 'video'","{% assign isVideo = true %}")}
62
62
 
63
- <div class="gp-h-full gp-w-full" style="${d("media == null or media.media_type == 'image'","display: block !important;")} ${d("isVideo == true",g({...S()}))}">
64
- ${d("media != null",P(),T())}
63
+ ${d("media.media_type == 'model'","{% assign isModel = true %}")}
64
+
65
+ <div class="gp-w-full" style="${d("media == null or media.media_type == 'image'","display: block !important;")} ${d("isMedia",n({...S()}))}">
66
+ ${d("media != null",P(),N())}
65
67
  </div>
66
68
 
67
- <div class="${d("isMedia","gp-flex gp-justify-center gp-items-center")}"
68
- style="${d("isMedia",g({...e("aspect",c(M))}))} ${g({...k()})}"
69
+ <div class="${d("isMedia","gp-flex gp-justify-center gp-items-center")} ${d("isModel","gp-w-full")}"
70
+ style="${d("isMedia",n({...e("aspect",c(I))}))} ${n({...k()})}"
69
71
  >
70
72
  {% case media.media_type %}
71
73
  {% when 'external_video' %}
@@ -80,14 +82,15 @@ import{makeStyleResponsive as e,template as i,getResponsiveValueByScreen as a,cl
80
82
  </div>
81
83
  {% assign isVideo= false %}
82
84
  {% assign isMedia= false %}
83
- </div>`,T=()=>i`
84
- ${m({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:c(M),layout:L?.layout,qualityType:L?.qualityType,qualityPercent:L?.qualityPercent},className:"!gp-rounded-none",customLazyload:!1,enableLazyLoadImage:x})}`;return o(`
85
+ {% assign isModel= false %}
86
+ </div>`,N=()=>i`
87
+ ${m({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:c(I),layout:L?.layout,qualityType:L?.qualityType,qualityPercent:L?.qualityPercent},className:"!gp-rounded-none",customLazyload:!1,enableLazyLoadImage:x})}`;return o(`
85
88
  <div type="grid-gallery"
86
- class="${V}"
87
- style="${g(q)}}"
89
+ class="${M}"
90
+ style="${n(V)}}"
88
91
  >
89
92
  ${s("media in product.media",`${d("media.media_type == 'image'",s("image in product.images",d("image.src == media.src","{% assign imageID = image.id %}{% break %}")),"{% assign imageID = '' %}")}
90
- ${d("media.id == product.featured_media.id ",N(L?.borderActive?.border!=="none"?"active":""),N())}`)}
93
+ ${d("media.id == product.featured_media.id ",T(L?.borderActive?.border!=="none"?"active":""),T())}`)}
91
94
  ${d("product.media.size > 0",b)}
92
- ${d("product.media.size < 1",N())}
95
+ ${d("product.media.size < 1",T())}
93
96
  </div>`)};export{_ as default};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsx as e,jsxs as o,Fragment as p}from"react/jsx-runtime";import{useFeaturedImageGlobal as t}from"@gem-sdk/core";import{useState as l,useMemo as i,useEffect as g}from"react";import"../../../../../modal/components/confirm.js";import n from"../../../../../modal/components/Modal.js";import s from"./LightBoxCarousel.js";import r from"./LightBoxGalleryCarousel.js";import m from"./LightBoxImageZoom.js";let a=({builderPropUID:a,productImages:c,open:d,onHandleClose:x})=>{let f=t(),[u,h]=l(!1),[I,y]=l(0),w=i(()=>(c||[]).map((e,o)=>({...e,id:e.id||`gp-lightbox-${o}`,src:e.src||e.previewImage,alt:e.alt||"Product image"})),[c]),C=i(()=>!["VIDEO","EXTERNAL_VIDEO","MODEL_3D"].includes(w[I]?.contentType||""),[w,I]),b=i(()=>{let e=w.findIndex(e=>e.id===f?.id);return e&&e>0?e:0},[w,f]);g(()=>{d&&(h(!1),y(b))},[d]);let j=()=>{h(e=>!e)};return e(n,{setting:{open:d},styles:{width:"calc(100% + 2rem)"},closeOnClickOutside:!0,closeOnEscape:!0,onKeypressEscape:()=>x(),onClose:()=>{x()},lockBodyScroll:!0,disableIframeClickEvent:!0,contentClass:"!gp--mx-4 !gp-my-auto !gp-h-screen !gp-max-w-none !gp-rounded-none !gp-bg-[#0F0F10] !gp-px-0 !gp-py-0 !gp-text-white",zoomButton:{isShowButton:C,isZoomIn:u,onToggleZoom:j},closeButtonClassName:"gp-top-[34px] gp-text-[#AAAAAA] gp-scale-125",wrapperContentClasses:"gp-size-full",children:e("div",{className:"gp-flex gp-gap-2 gp-size-full gp-min-w-0 gp-flex-col gp-items-center gp-justify-center",children:u?e(m,{image:w[I],onExitZoom:j}):o(p,{children:[e("div",{className:"gp-flex gp-w-full gp-min-w-0 gp-flex-1 gp-items-center gp-justify-center gp-overflow-hidden gp-px-[52px] gp-mt-[52px] mobile:gp-px-0",children:e(s,{builderPropUID:a,displayImages:w,activeIndex:I,imageActiveIndex:b,onChangeSlide:y,onToggleZoom:j})}),e("div",{className:"gp-flex gp-justify-center gp-w-full gp-pb-2 mobile:gp-pb-5 gp-px-[52px] mobile:gp-px-0",children:e(r,{builderPropUID:a,displayImages:w,activeIndex:I,onChangeSlide:y})})]})})})};export{a as default};
2
+ import{jsx as e,jsxs as t,Fragment as o}from"react/jsx-runtime";import{useFeaturedImageGlobal as i,useEditorMode as l,cls as s}from"@gem-sdk/core";import d from"../../../../../carousel-v3/components/root/Carousel.js";import n from"../../../../../carousel-v3/components/item/CarouselItem.js";import r from"../../../../../image/components/NextImage.js";import"../../../../../modal/components/confirm.js";import p from"../../../../../modal/components/Modal.js";import{useMemo as m}from"react";import{isFeatureMedia as a}from"../../common/productFeaturedImage.js";import c from"../child/ProductFeatureVideo.js";import g from"../child/MediaIcon.js";let h=({builderPropUID:h,productImages:u,open:b,imageRatio:f,onHandleClose:k})=>{let y=i(),E=m(()=>{let e=u?.findIndex(e=>e.id===y?.id);return e&&e>0?e:0},[u,y]),I={desktop:u&&u.length>1,mobile:u&&u?.length>1,tablet:u&&u?.length>1},j=l(),v=e=>"edit"!==j&&["VIDEO","EXTERNAL_VIDEO"].includes(e?.contentType||"");return e(p,{setting:{open:b},styles:{width:"80%"},closeOnClickOutside:!0,onClose:()=>{k(),console.log("onHandleClose")},disableIframeClickEvent:!0,contentClass:"mobile:!gp-w-[100%] gp-px-2 gp-pb-10",children:e(d,{setting:{loop:{desktop:!1,mobile:!1,tablet:!1},slidesToShow:{desktop:1,tablet:1,mobile:1},defaultCurrentSlider:E,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:I,navigationStyle:{desktop:"outside"},arrowIconSize:{desktop:24},initialSlide:E},styles:{sizeSetting:{desktop:{height:"80vh"},tablet:{height:"80vh"},mobile:{height:"60vh"}},playSpeed:0},moveToIdx:E,hiddenDotWhenOnlyOne:!0,isHiddenArrowWhenDisabled:!0,isDisableResetSlide:!0,builderProps:{uid:h},fullHeight:!0,children:u?.map(i=>e(n,{className:`gem-slider-item gem-slider-item-${h} gp-flex gp-items-center gp-justify-center gp-px-4`,children:v(i)?e(c,{type:i?.contentType,url:i.src??"",thumbnail:i?.previewImage,aspectRatio:f}):t(o,{children:[e(r,{src:a(i?.contentType)?i?.previewImage:i?.src,width:i?.width,height:i?.height,alt:i?.alt,"content-type":i?.contentType,setting:{aspectRatio:f},className:s("gp-h-full gp-w-full gp-object-contain")},i?.id),e(g,{contentType:i?.contentType??""})]})},i?.id))})})};export{h as default};
@@ -1 +1 @@
1
- import{createClass as e}from"@gem-sdk/system";import{getWrapperClasses as s,getGalleryWrapperClasses as r,getGalleryGridWrapperClasses as a,getFtImageWithGalleryClasses as t,getImageGalleryWrapperClasses as l,getFeaturedImageCarouselClasses as g,getFeaturedImageGalleryClasses as o,getFeaturedImageClasses as m,getFeaturedCarouselItemClasses as p,getGalleryItemClasses as d}from"../common/classes.js";import{checkAddOverFlowClass as i,setDefaultWhenUndefineSetting as u}from"../common/common.js";let C=C=>{let{setting:c,style:x}=C,f=u(C),{builderProps:$,advanced:n}=f,y=n?.cssClass,w=e(s({extraClass:`${$?.uid} ${y??""} `,isAddOverFlowClass:i(x)})),b=e(r({})),h=e(a({})),v=e(t({extraClass:`gp-product-images-feature--${$?.uid}`})),I=e(l({extraClass:`gp-product-images-gallery-${$?.uid}`})),j=e(g({extraClass:`gp-product-images-gallery-${$?.uid}`})),F=e(o({settings:c})),A=e(m({setting:c,extraClass:`gp-flex gp-relative gp-product-images-gallery-${$?.uid} gp-overflow-hidden gp-flex gp-w-full gp-items-center gp-justify-center `}));return{wrapperClasses:w,productImagesGalleryClasses:b,galleryGridWrapperClasses:h,galleryItemClasses:s=>e(d({extraClass:`${s??""}`})),ftImageGalleryClasses:v,imageGalleryWrapperClasses:I,featuredImageCarouselClasses:j,featuredImageGalleryClasses:F,featureImageOnlyOneImageClasses:A,featuredCarouselItemClasses:s=>e(p({extraClass:`${s??""}`}))}},c=(s,r,a)=>e(d({extraClass:`${a} ${s===r?"gp-border-[#5EA2FF] gp-border-[3px]":"gp-border-white/20 hover:gp-border-white/60"}`}));export{c as galleryItemClasses,C as getProductImagesClassName};
1
+ import{createClass as e}from"@gem-sdk/system";import{getWrapperClasses as s,getGalleryWrapperClasses as a,getGalleryGridWrapperClasses as r,getFtImageWithGalleryClasses as t,getImageGalleryWrapperClasses as l,getFeaturedImageCarouselClasses as g,getFeaturedImageGalleryClasses as m,getFeaturedImageClasses as o,getFeaturedCarouselItemClasses as p,getGalleryItemClasses as i}from"../common/classes.js";import{checkAddOverFlowClass as d,setDefaultWhenUndefineSetting as u}from"../common/common.js";let C=C=>{let{setting:c,style:f}=C,x=u(C),{builderProps:n,advanced:$}=x,y=$?.cssClass,j=e(s({extraClass:`${n?.uid} ${y??""} `,isAddOverFlowClass:d(f)})),v=e(a({})),w=e(r({})),I=e(t({extraClass:`gp-product-images-feature--${n?.uid}`})),h=e(l({extraClass:`gp-product-images-gallery-${n?.uid}`})),k=e(g({extraClass:`gp-product-images-gallery-${n?.uid}`})),A=e(m({settings:c})),F=e(o({setting:c,extraClass:`gp-flex gp-relative gp-product-images-gallery-${n?.uid} gp-overflow-hidden gp-flex gp-w-full gp-items-center gp-justify-center `}));return{wrapperClasses:j,productImagesGalleryClasses:v,galleryGridWrapperClasses:w,galleryItemClasses:s=>e(i({extraClass:`${s??""}`})),ftImageGalleryClasses:I,imageGalleryWrapperClasses:h,featuredImageCarouselClasses:k,featuredImageGalleryClasses:A,featureImageOnlyOneImageClasses:F,featuredCarouselItemClasses:s=>e(p({extraClass:`${s??""}`}))}};export{C as getProductImagesClassName};
@@ -1 +1 @@
1
- import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import o from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as a,useMemo as l,useEffect as i}from"react";import{useRenderMode as c,useCurrentDevice as s,usePageType as n,usePageStore as u,useFetchHandle as m,hasPublicStoreFrontData as g,createStoreFrontFetcher as h,useProductQuery as p,useProductsQueryAll as f,useProductsQuery as P,useCollectionQuery as b,flattenConnection as k,ProductListProvider as T,filterToolbarPreview as I}from"@gem-sdk/core";import v from"../SalePageProductListWarning.js";import y from"next/head";import O from"./ProductListGridLayout.js";import S from"./ProductListCarouselLayout.js";import{getStyle as C}from"./common/styles.js";import{If as E}from"@gem-sdk/system";import{getClass as N}from"./common/classes.js";import{getData as w}from"./common/helpers.js";import{getPropertyByDevice as L}from"../../../dialog/common/helpers.js";let W=o(()=>import("../ProductNotFound.js"),{loading:d}),j=o=>{let{children:j,styles:x,builderProps:G,setting:M,builderAttrs:B}=o,{isRelatedProduct:A,productSetting:Q}=w(o),z=Q.relatedTag&&Q.relatedTag[0],{isEditMode:D,isPreviewSharePageMode:F}=c(),H=s(),R=n(),$=u(e=>e.dynamicProduct),_=u(e=>e.dynamicCollection),[V,q]=a(1),[U,J]=a(!0),[K,X]=a(),[Y,Z]=a(!1),ee="GP_FUNNEL_PAGE"===R;"GP_COLLECTION"==R&&(Q.productSrc="DynamicCollection",Q.collectionId=_?.collectionId??"latest");let et=Q?.productSrc??"Collection",er=$?.productId&&$?.productId!==Q.relatedProductId?$?.productId:Q.relatedProductId,eo=m(),ed=u(e=>e.publicStoreFrontData),ea=l(()=>g(ed)?h(ed):eo,[ed]),{data:el}=p(A&&er?er:void 0,{revalidateOnMount:D||F},ea),ei=Q.relatedTag&&"tags"===Q.relatedTag[0]&&(!el?.tags||el?.tags.length===0),ec=Q.relatedTag&&"collection"===Q.relatedTag[0]&&(!el?.collections?.edges||el?.collections.edges.length===0),es=Q.relatedTag&&"vendor"===Q.relatedTag[0]&&!el?.vendor,en=f(K,{revalidateOnMount:D||F},ea),eu=D||F,em=P("PickProduct"===et?Q?.productIds:void 0,{revalidateOnMount:eu},{defaultSelectedProductCount:Q?.numOfSelectedProducts}),eg=l(()=>({id:Q?.collectionId??"latest",numberOfProducts:M?.numberOfProducts??4,orderBy:M?.orderBy}),[Q?.collectionId,Number(M?.numberOfProducts),M?.orderBy]),eh=b("PickProduct"!==et?eg:void 0,{revalidateOnMount:eu});i(()=>{if(A&&el&&Q.relatedTag&&"recommended-product"!==Q.relatedType){let e;switch(Z(!1),Q.hasRelatedExclude&&(e=Q?.relatedExclude&&Q.relatedExclude.split(",").map(e=>e.trim())),Q.relatedTag[0]){case"vendor":X({first:M?.numberOfProducts,vendor:Q.relatedTag&&"vendor"===Q.relatedTag[0]?el?.vendor:"",idNEQ:el.id});break;case"collection":{let t=el?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){Z(!0);break}X(e&&e.length>0?{first:M?.numberOfProducts,idNEQ:el.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}:{first:M?.numberOfProducts,idNEQ:el.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]});break}case"tags":if(!el.tags||0===el.tags.length){Z(!0);break}X(e&&e.length>0?{first:M?.numberOfProducts,idNEQ:el.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:el.tags},{nameNotIn:e}]}]}:{first:M?.numberOfProducts,idNEQ:el.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:el.tags}]}]})}}},[el,Q.relatedType,Q.relatedTag,M?.numberOfProducts,Q.relatedExclude,Q.hasRelatedExclude,A]);let ep="PickProduct"===et?em.isValidating:eh.isValidating,ef="PickProduct"===et?em.isLoading:eh.isLoading,eP="PickProduct"===et?em.error:eh.error,eb=eh.data?.collections?.edges?.[0]?.node,ek="PickProduct"===et?k(em.data?.products):k(eb?.products),eT=en?.data?.products?k(en?.data?.products):void 0,eI=A&&eT?eT:"PickProduct"===et&&Q?.productIds?.length?Q?.productIds?.map(e=>ek?.find(t=>t?.baseID===e)).filter(Boolean)??ek:"PickProduct"!==et?ek:ek.filter((e,t)=>t<(Q?.numOfSelectedProducts??4)),ev=l(()=>Y&&A&&D||!eI.length&&!ef&&U&&D,[U,ef,Y,A,D,eI.length]),ey=l(()=>!eI||Y&&A,[Y,A,eI]),eO=l(()=>{if(!M?.sameHeight)return[];let e=0,t=Math.ceil((eI?.length??0)/+(M?.slidesToShow?.[H]??1));return Array.from(Array(eI?.length??0)).map((r,o)=>(o>=+(M?.slidesToShow?.[H]??1)*(e+1)&&++e,{gridRow:`${1+V*e}/${V+1+V*e}`,marginBottom:e+1<t?L(x?.horizontalGutter,H):void 0}))},[M?.sameHeight,M?.slidesToShow,V,eI?.length,H,x?.horizontalGutter]),eS=l(()=>ep||ef||eP||!eI||Y&&A,[eP,ef,Y,A,ep,eI]);i(()=>{eS||setTimeout(()=>{let{builderData:e}=G??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&q(r.childElementCount||1)},D?0:500)},[G,eS,D]);let eC=l(()=>({collection:eb,products:eI,settings:{loop:M?.loop??{desktop:!1},scrollMode:M?.scrollMode??{desktop:"snap"},slidesToShow:M?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:x?.layout,dot:M?.dot,dotStyle:M?.dotStyle,arrow:M?.arrow,controlOverContent:M?.controlOverContent},styles:{horizontalGutter:x?.horizontalGutter,verticalGutter:x?.verticalGutter,fullWidth:x?.fullWidth,spacing:x?.spacing,width:x?.width,height:x?.height}}),[eb,eI,M,x]);if(G?.isPreview&&ee)return e(t,{});if(ev)return e(t,{children:E(U,e(W,{builderAttrs:B,collectionHandle:eb?.handle,productSrc:et,onClose:()=>J(!1),children:j,relatedTagString:z,assignProductNoTags:ei||ec||es,noAssignedProduct:!er}))});let{productListWrapStyle:eE,productListContentStyle:eN,productListWrapAlignStyle:ew}=C(o),{productListWrapClass:eL}=N(o);return r("div",{...B,className:eL,style:eE,children:[!!x?.preloadBgImage&&r(y,{children:[!!x.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:x.backgroundImage.desktop.image.src,as:"image"}),!!x.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:x.backgroundImage?.tablet?.image?.src,as:"image"}),!!x.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:x.backgroundImage?.mobile?.image?.src,as:"image"})]}),ep||ef?e(d,{}):eP?r("div",{children:["Error: ",eP?.message]}):ey?e("div",{children:"Products not found"}):e(T,{...eC,children:e("div",{className:"gp-flex gp-w-full",style:ew,children:r("div",{style:eN,children:[ee&&e(v,{}),e(t,{children:E(x?.layout==="grid",e(O,{...o,productSortedById:eI,generateGridRowArray:eO}),e(S,{...o,productSortedById:eI}))})]})})}),I(j,!0)]})};export{j as default};
1
+ import{jsx as e,Fragment as t,jsxs as o}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useMemo as i,useEffect as a}from"react";import{useRenderMode as c,useCurrentDevice as s,usePageType as n,usePageStore as u,useFetchHandle as m,hasPublicStoreFrontData as g,createStoreFrontFetcher as h,useProductQuery as p,useProductsQueryAll as f,useProductsQuery as P,useCollectionQuery as b,flattenConnection as k,ProductListProvider as T,filterToolbarPreview as v}from"@gem-sdk/core";import y from"../SalePageProductListWarning.js";import I from"next/head";import O from"./ProductListGridLayout.js";import C from"./ProductListCarouselLayout.js";import{getStyle as S}from"./common/styles.js";import{If as E}from"@gem-sdk/system";import{getClass as N}from"./common/classes.js";import{getData as w}from"./common/helpers.js";import{getPropertyByDevice as L}from"../../../dialog/common/helpers.js";import{PRODUCT_SOURCE as j}from"../product-list-v3/constants/index.js";let x=r(()=>import("../ProductNotFound.js"),{loading:d}),W=r=>{let{children:W,styles:G,builderProps:M,setting:B,builderAttrs:A}=r,{isRelatedProduct:D,productSetting:H}=w(r),Q=H.relatedTag&&H.relatedTag[0],{isEditMode:z,isPreviewSharePageMode:F}=c(),R=s(),$=n(),_=u(e=>e.dynamicProduct),V=u(e=>e.dynamicCollection),[q,U]=l(1),[J,K]=l(!0),[X,Y]=l(),[Z,ee]=l(!1),et="GP_FUNNEL_PAGE"===$;"GP_COLLECTION"!=$||[j.Collection,j.DynamicCollection].includes(H?.productSrc)||(H.productSrc=j.DynamicCollection);let eo=H?.productSrc??j.Collection;eo===j.DynamicCollection&&(H.collectionId=V?.collectionId||"latest");let er=_?.productId&&_?.productId!==H.relatedProductId?_?.productId:H.relatedProductId,ed=m(),el=u(e=>e.publicStoreFrontData),ei=i(()=>g(el)?h(el):ed,[el]),{data:ea}=p(D&&er?er:void 0,{revalidateOnMount:z||F},ei),ec=H.relatedTag&&"tags"===H.relatedTag[0]&&(!ea?.tags||ea?.tags.length===0),es=H.relatedTag&&"collection"===H.relatedTag[0]&&(!ea?.collections?.edges||ea?.collections.edges.length===0),en=H.relatedTag&&"vendor"===H.relatedTag[0]&&!ea?.vendor,eu=f(X,{revalidateOnMount:z||F},ei),em=z||F,eg=P(eo===j.PickProduct?H?.productIds:void 0,{revalidateOnMount:em},{defaultSelectedProductCount:H?.numOfSelectedProducts}),eh=i(()=>({id:H?.collectionId??"latest",numberOfProducts:B?.numberOfProducts??4,orderBy:B?.orderBy}),[H?.collectionId,Number(B?.numberOfProducts),B?.orderBy]),ep=b(eo!==j.PickProduct?eh:void 0,{revalidateOnMount:em});a(()=>{if(D&&ea&&H.relatedTag&&"recommended-product"!==H.relatedType){let e;switch(ee(!1),H.hasRelatedExclude&&(e=H?.relatedExclude&&H.relatedExclude.split(",").map(e=>e.trim())),H.relatedTag[0]){case"vendor":Y({first:B?.numberOfProducts,vendor:H.relatedTag&&"vendor"===H.relatedTag[0]?ea?.vendor:"",idNEQ:ea.id});break;case"collection":{let t=ea?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){ee(!0);break}Y(e&&e.length>0?{first:B?.numberOfProducts,idNEQ:ea.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}:{first:B?.numberOfProducts,idNEQ:ea.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]});break}case"tags":if(!ea.tags||0===ea.tags.length){ee(!0);break}Y(e&&e.length>0?{first:B?.numberOfProducts,idNEQ:ea.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ea.tags},{nameNotIn:e}]}]}:{first:B?.numberOfProducts,idNEQ:ea.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ea.tags}]}]})}}},[ea,H.relatedType,H.relatedTag,B?.numberOfProducts,H.relatedExclude,H.hasRelatedExclude,D]);let ef=eo===j.PickProduct?eg.isValidating:ep.isValidating,eP=eo===j.PickProduct?eg.isLoading:ep.isLoading,eb=eo===j.PickProduct?eg.error:ep.error,ek=ep.data?.collections?.edges?.[0]?.node,eT=eo===j.PickProduct?k(eg.data?.products):k(ek?.products),ev=eu?.data?.products?k(eu?.data?.products):void 0,ey=D&&ev?ev:eo===j.PickProduct&&H?.productIds?.length?H?.productIds?.map(e=>eT?.find(t=>t?.baseID===e)).filter(Boolean)??eT:eo!==j.PickProduct?eT:eT.filter((e,t)=>t<(H?.numOfSelectedProducts??4)),eI=i(()=>Z&&D&&z||!ey.length&&!eP&&J&&z,[J,eP,Z,D,z,ey.length]),eO=i(()=>!ey||Z&&D,[Z,D,ey]),eC=i(()=>{if(!B?.sameHeight)return[];let e=0,t=Math.ceil((ey?.length??0)/+(B?.slidesToShow?.[R]??1));return Array.from(Array(ey?.length??0)).map((o,r)=>(r>=+(B?.slidesToShow?.[R]??1)*(e+1)&&++e,{gridRow:`${1+q*e}/${q+1+q*e}`,marginBottom:e+1<t?L(G?.horizontalGutter,R):void 0}))},[B?.sameHeight,B?.slidesToShow,q,ey?.length,R,G?.horizontalGutter]),eS=i(()=>ef||eP||eb||!ey||Z&&D,[eb,eP,Z,D,ef,ey]);a(()=>{eS||setTimeout(()=>{let{builderData:e}=M??{},t=e?.childrens?.[0];if(!t)return;let o=document.querySelector(`[data-id=${t}] div`);o&&U(o.childElementCount||1)},z?0:500)},[M,eS,z]);let eE=i(()=>({collection:ek,products:ey,settings:{loop:B?.loop??{desktop:!1},scrollMode:B?.scrollMode??{desktop:"snap"},slidesToShow:B?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:G?.layout,dot:B?.dot,dotStyle:B?.dotStyle,arrow:B?.arrow,controlOverContent:B?.controlOverContent,sameHeight:B?.sameHeight},styles:{horizontalGutter:G?.horizontalGutter,verticalGutter:G?.verticalGutter,fullWidth:G?.fullWidth,spacing:G?.spacing,width:G?.width,height:G?.height}}),[ek,ey,B,G]);if(M?.isPreview&&et)return e(t,{});if(eI)return e(t,{children:E(J,e(x,{builderAttrs:A,collectionHandle:ek?.handle,productSrc:eo,onClose:()=>K(!1),children:W,relatedTagString:Q,assignProductNoTags:ec||es||en,noAssignedProduct:!er}))});let{productListWrapStyle:eN,productListContentStyle:ew,productListWrapAlignStyle:eL}=S(r),{productListWrapClass:ej}=N(r);return o("div",{...A,className:ej,style:eN,children:[!!G?.preloadBgImage&&o(I,{children:[!!G.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:G.backgroundImage.desktop.image.src,as:"image"}),!!G.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:G.backgroundImage?.tablet?.image?.src,as:"image"}),!!G.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:G.backgroundImage?.mobile?.image?.src,as:"image"})]}),ef||eP?e(d,{}):eb?o("div",{children:["Error: ",eb?.message]}):eO?e("div",{children:"Products not found"}):e(T,{...eE,children:e("div",{className:"gp-flex gp-w-full",style:eL,children:o("div",{style:ew,children:[et&&e(y,{}),e(t,{children:E(G?.layout==="grid",e(O,{...r,productSortedById:ey,generateGridRowArray:eC}),e(C,{...r,productSortedById:ey}))})]})})}),v(W,!0)]})};export{W as default};
@@ -1,6 +1,6 @@
1
- import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import a from"./ProductListCarouselLayout.liquid.js";import n from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as u}from"./common/helpers.js";let g=g=>{let{setting:p,styles:f,pageContext:m}=g,$=m?.pageType==="GP_FUNNEL_PAGE";if($)return"";let{hasRelatedExclude:P,relatedExcludeTrim:h,collectionID:_,isLatestProducts:y,isGrid:v,numberOfProducts:E,productListId:k,productListHandles:x,sortedBy:S,isReverse:b,productSrc:A,productNumber:L,isSorted:R,relatedTag:I,collectionHandle:F}=u(g),j=()=>i`
2
- ${e("RelatedProduct"===A,`
3
- assign relatedTag = '${I}'
1
+ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import a from"./ProductListCarouselLayout.liquid.js";import n from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as g}from"./common/helpers.js";let u=u=>{let{setting:p,styles:f,pageContext:m}=u,$=m?.pageType==="GP_FUNNEL_PAGE";if($)return"";let{hasRelatedExclude:P,relatedExcludeTrim:h,collectionID:_,isLatestProducts:y,isGrid:v,numberOfProducts:E,productListId:k,productListHandles:S,sortedBy:x,isReverse:b,productSrc:L,productNumber:A,isSorted:R,relatedTag:H,collectionHandle:I}=g(u),F=()=>i`
2
+ ${e("RelatedProduct"===L,`
3
+ assign relatedTag = '${H}'
4
4
  assign assignProduct = product
5
5
  assign idAssignProduct = assignProduct.id
6
6
  paginate collections.all.products by 10000
@@ -95,7 +95,7 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
95
95
  assign products = products
96
96
  endpaginate
97
97
  `)}
98
- `,{productListWrapStyle:w,productListContentStyle:H,productListWrapAlignStyle:q}=c(g),{productListWrapClass:G}=l(g);return i`
98
+ `,{productListWrapStyle:j,productListContentStyle:w,productListWrapAlignStyle:q}=c(u),{productListWrapClass:G}=l(u);return i`
99
99
  ${e(s,`
100
100
  <script ${d('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>
101
101
  ${p?.sameHeight?`<script ${d('class="gps-link" delay',"src")}="{{ 'gp-same-height-v7-5.js' | asset_url }}" defer="defer"></script>`:""}
@@ -107,16 +107,16 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
107
107
  ${e(!!f?.preloadBgImage,`${e(!!f?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${e(!!f?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${e(!!f?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
108
108
  <div
109
109
  class="${G}"
110
- style="${w}"
110
+ style="${j}"
111
111
  >
112
112
  <div class='gp-flex gp-w-full' style="${q}">
113
113
  <div
114
- style="${H}"
114
+ style="${w}"
115
115
  >
116
116
  {%- assign gpBkProduct = product -%}
117
117
  {%- assign gpBkProducts = products -%}
118
- ${(()=>{let e=F?`
119
- assign target_collection = collections['${F}']
118
+ ${(()=>{let e=I?`
119
+ assign target_collection = collections['${I}']
120
120
  if target_collection == empty
121
121
  for collection in collections
122
122
  if collection.id == ${_}
@@ -134,12 +134,13 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
134
134
  endfor
135
135
  `;return i`
136
136
  {%- liquid
137
- assign productHandles = '${x.toString()}'| split: ','
137
+ assign productHandles = '${S.toString()}'| split: ','
138
138
  assign products = null
139
139
  assign target_collection = null
140
- assign productSrc = '${A}'
140
+ assign productSrc = '${L}'
141
141
  assign c = 0
142
- assign limit = ${L??4}
142
+ assign limit = ${A??4}
143
+ assign isSettingSameHeightProductList = ${p?.sameHeight??!1}
143
144
 
144
145
  if request.page_type == 'collection' or preview_page_type == 'collection'
145
146
  assign target_collection = collection
@@ -151,11 +152,11 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
151
152
  endif
152
153
  endif
153
154
  paginate target_collection.products by ${E||4}
154
- assign products = target_collection.products ${R?S:""} ${b?"| reverse":""}
155
+ assign products = target_collection.products ${R?x:""} ${b?"| reverse":""}
155
156
  endpaginate
156
157
  else
157
158
  if productSrc == 'RelatedProduct'
158
- ${j()}
159
+ ${F()}
159
160
  elsif productSrc == 'PickProduct'
160
161
  unless ${y}
161
162
  assign products = null | sort
@@ -178,7 +179,7 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
178
179
  ${e}
179
180
  endif
180
181
  paginate target_collection.products by ${E||4}
181
- assign products = target_collection.products ${R?S:""} ${b?"| reverse":""}
182
+ assign products = target_collection.products ${R?x:""} ${b?"| reverse":""}
182
183
  endpaginate
183
184
  endif
184
185
  endif
@@ -187,14 +188,14 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
187
188
  ${i`
188
189
  {%- if products == null -%}
189
190
  {%- if count == 0 and ${k.length} == 0 -%}
190
- {% if '${A}' == 'RelatedProduct' -%}
191
+ {% if '${L}' == 'RelatedProduct' -%}
191
192
  <div>${o("ProductList","no_related_products")}</div>
192
193
  {% else %}
193
194
  <div>${o("ProductList","no_products_found")}</div>
194
195
  {%- endif -%}
195
196
  {%- endif -%}
196
197
  {%-else-%}
197
- ${r(v,i`${n({...g,productListId:k,productSrc:A})}`,i`${a({...g,productListId:k,productSrc:A})}`)}
198
+ ${r(v,i`${n({...u,productListId:k,productSrc:L})}`,i`${a({...u,productListId:k,productSrc:L})}`)}
198
199
  {%- endif -%}
199
200
  `}
200
201
  {%- assign product = gpBkProduct -%}
@@ -202,4 +203,4 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
202
203
  </div>
203
204
  </div>
204
205
  </div>
205
- `};export{g as default};
206
+ `};export{u as default};
@@ -1,15 +1,14 @@
1
- import{template as t}from"@gem-sdk/core";import{getClass as e}from"./common/classes.js";import{filterPageContext as n}from"../../../helpers.js";let o=o=>{let{pageContext:a,children:r}=o,{productItemClass:i,gpProductClass:c}=e(o);return t`
1
+ import{template as t}from"@gem-sdk/core";import{getClass as n}from"./common/classes.js";let o=o=>{let{pageContext:e,children:a}=o,{productItemClass:r,gpProductClass:i}=n(o);return t`
2
2
  <gp-product
3
3
  gp-context='{"variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "quantity": 1 , "inventoryQuantity": {{ variant.inventory_quantity | default: 0 }}, "formId": "{{ product_form_id }}"}'
4
- gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }},"pageContext" : ${JSON.stringify(n(a))}}'
5
- class="${c}"
6
-
4
+ class="${i}"
7
5
  >
8
- {%- form 'product', product, id: product_form_id, class: 'form contents ${i}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
6
+ <script gp-data type="application/json">{"variantSelected": {{ variant | json }}, "quantity": 1, "productUrl":{{ product.url | json }}, "productHandle":{{ product.handle | json }}, "collectionUrl": {{ collection.url | json }}, "collectionHandle": {{ collection.handle | json }},"pageContext" : ${JSON.stringify(e)}}</script>
7
+ {%- form 'product', product, id: product_form_id, class: 'form contents ${r}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
9
8
  <input type="hidden" name="id" value="{{ variant.id }}" />
10
9
  <input type="hidden" min="1" name="quantity" value="{{ quantity }}" />
11
10
  <button type="submit" onclick="return false;" style="display:none;"></button>
12
- ${r}
11
+ ${a}
13
12
  {%- endform -%}
14
13
  </gp-product>
15
14
  `};export{o as default};
@@ -1,19 +1,18 @@
1
- import{template as t,RenderChildren as e}from"@gem-sdk/core";import{getClass as n}from"./common/classes.js";import{filterPageContext as o}from"../../../helpers.js";let a=a=>{let{pageContext:r,rawChildren:i}=a,{productItemClass:c,gpProductClass:p}=n(a);return t`
1
+ import{template as t,RenderChildren as n}from"@gem-sdk/core";import{getClass as e}from"./common/classes.js";let o=o=>{let{pageContext:a,rawChildren:r}=o,{productItemClass:i,gpProductClass:c}=e(o);return t`
2
2
  <gp-product
3
3
  gp-context='{"variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "quantity": 1 , "inventoryQuantity": {{ variant.inventory_quantity | default: 0 }}, "formId": "{{ product_form_id }}"}'
4
- gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }},"pageContext" : ${JSON.stringify(o(r))}}'
5
- class="${p}"
6
-
4
+ class="${c}"
7
5
  >
8
- {%- form 'product', product, id: product_form_id, class: 'form contents ${c}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
6
+ <script gp-data type="application/json">{"variantSelected": {{ variant | json }}, "quantity": 1, "productUrl":{{ product.url | json }}, "productHandle":{{ product.handle | json }}, "collectionUrl": {{ collection.url | json }}, "collectionHandle": {{ collection.handle | json }},"pageContext" : ${JSON.stringify(a)}}</script>
7
+ {%- form 'product', product, id: product_form_id, class: 'form contents ${i}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
9
8
  <input type="hidden" name="id" value="{{ variant.id }}" />
10
9
  <input type="hidden" min="1" name="quantity" value="{{ quantity }}" />
11
10
  <button type="submit" onclick="return false;" style="display:none;"></button>
12
11
  ${t`
13
- ${i?.map((n,o)=>{if(n)return t`
14
- ${e({...n,index:o})}
12
+ ${r?.map((e,o)=>{if(e)return t`
13
+ ${n({...e,index:o})}
15
14
  `}).join("")}
16
15
  `}
17
16
  {%- endform -%}
18
17
  </gp-product>
19
- `};export{a as default};
18
+ `};export{o as default};
@@ -1,18 +1,18 @@
1
- import{RenderIf as t,template as i}from"@gem-sdk/core";import{getStyle as o}from"./common/styles.js";import{getClass as s}from"./common/classes.js";import{getAttr as r}from"./common/attrs.js";import d from"./ProductListGridItem.liquid.js";import{getStaticLocale as e}from"../../../helpers.js";let a=a=>{let{setting:n,builderProps:m,styles:c,productListId:p,productSrc:l}=a,{gridLayoutStyle:u}=o(a),{gridLayoutClass:f}=s(a),{productListAttr:g}=r(a),$=()=>i`
1
+ import{RenderIf as t,template as i}from"@gem-sdk/core";import{getStyle as o}from"./common/styles.js";import{getClass as s}from"./common/classes.js";import{getAttr as r}from"./common/attrs.js";import e from"./ProductListGridItem.liquid.js";import{getStaticLocale as d}from"../../../helpers.js";let a=a=>{let{setting:n,builderProps:p,styles:c,productListId:m,productSrc:l}=a,{gridLayoutStyle:u}=o(a),{gridLayoutClass:f}=s(a),{productListAttr:g}=r(a),$=()=>i`
2
2
  {%- assign count = 0 -%}
3
3
  {%- for product in products limit: limit -%}
4
4
  {%- if product.id != empty -%}
5
5
  {%- assign count = count | plus: 1 -%}
6
6
  {%- assign variant = product.selected_or_first_available_variant -%}
7
- {%- assign product_form_id = 'product-form-' | append: "${m?.uid}" | append: product.id -%}
8
- ${d({...a})}
7
+ {%- assign product_form_id = 'product-form-' | append: "${p?.uid}" | append: product.id -%}
8
+ ${e({...a})}
9
9
  {%- endif -%}
10
10
  {% endfor %}
11
- {%- if count == 0 and ${p?.length} == 0 -%}
11
+ {%- if count == 0 and ${m?.length} == 0 -%}
12
12
  {% if '${l}' == 'RelatedProduct' -%}
13
- <div>${e("ProductList","no_related_products")}</div>
13
+ <div>${d("ProductList","no_related_products")}</div>
14
14
  {% else %}
15
- <div>${e("ProductList","no_products_found")}</div>
15
+ <div>${d("ProductList","no_products_found")}</div>
16
16
  {%- endif -%}
17
17
  {%- endif -%}
18
18
  `;return i`
@@ -25,7 +25,9 @@ import{RenderIf as t,template as i}from"@gem-sdk/core";import{getStyle as o}from
25
25
  <gp-same-height
26
26
  class="gp-contents"
27
27
  style="visibility: hidden"
28
- gp-data='${JSON.stringify({targetUid:m?.builderData?.childrens?.[0],slidesToShow:n?.slidesToShow,rowGap:c?.horizontalGutter})}'>
28
+ >
29
+ <script gp-data type="application/json">${JSON.stringify({targetUid:p?.builderData?.childrens?.[0],slidesToShow:n?.slidesToShow,rowGap:c?.horizontalGutter})}
30
+ </script>
29
31
  ${`${$()}`}
30
32
  </gp-same-height>
31
33
  `)}
@@ -1 +1 @@
1
- import{jsx as e,Fragment as o,jsxs as t}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useRef as i,useMemo as a,useEffect as s}from"react";import{useRenderMode as c,useCurrentDevice as n,usePageType as m,usePageStore as u,flattenConnection as g,ProductListProvider as p,filterToolbarPreview as h}from"@gem-sdk/core";import f from"../SalePageProductListWarning.js";import P from"next/head";import k from"./ProductListGridLayout.js";import y from"./ProductListCarouselLayout.js";import{getStyle as I}from"./common/styles.js";import{If as T}from"@gem-sdk/system";import{getClass as b}from"./common/classes.js";import{getData as S}from"./common/helpers.js";import{getPropertyByDevice as j}from"../../../dialog/common/helpers.js";import{useProductsQuery as v}from"./hooks/useProductsQuery.js";import{useCollectionQuery as w}from"./hooks/useCollectionQuery.js";import C from"./hooks/useProductRelatedQuery.js";import L from"./hooks/useMainRelatedProductQuery.js";let G=r(()=>import("../ProductNotFound.js"),{loading:d}),O=r=>{let{children:O,styles:A,builderProps:N,setting:x,builderAttrs:B}=r,{isRelatedProduct:E,productSetting:z}=S(r),{isEditMode:M}=c(),Q=n(),D=m(),H=u(e=>e.dynamicCollection),[R,W]=l(1),[$,_]=l(!0),F=i(),V="GP_FUNNEL_PAGE"===D;"GP_COLLECTION"==D&&(z.productSrc="DynamicCollection",z.collectionId=H?.collectionId??"latest");let q=z?.productSrc??"Collection",{mainRelatedProduct:U,relatedProductIdAssigned:J}=L({productSrc:q,relatedProductId:z.relatedProductId}),K=z.relatedTag&&z.relatedTag[0],X=z.relatedTag&&"tags"===z.relatedTag[0]&&(!U?.tags||U?.tags.length===0),Y=z.relatedTag&&"collection"===z.relatedTag[0]&&(!U?.collections?.edges||U?.collections.edges.length===0),Z=z.relatedTag&&"vendor"===z.relatedTag[0]&&!U?.vendor,{isNotFoundRelatedProduct:ee,relatedProducts:eo}=C({isRelatedProduct:E,productSetting:z,setting:x,mainRelatedProduct:U,productSrc:q}),et=v({productIds:z?.productIds,defaultSelectedProductCount:z?.numOfSelectedProducts,productSrc:q}),er=w({productSrc:q,collectionID:z?.collectionId??"latest",numberOfProducts:x?.numberOfProducts??4,orderBy:x?.orderBy??"none"}),ed="PickProduct"===q?et.isLoading:er.isLoading,el="PickProduct"===q?et.error:er.error,ei="PickProduct"===q?et.isValidating:er.isValidating,ea=er.data?.collections?.edges?.[0]?.node,es="PickProduct"===q?g(et.data?.products):g(ea?.products),ec=u(e=>e.assignedProductIds),en=u(e=>e.isApplyAllProducts),em=a(()=>(ec??[]).length>0&&!en||en,[ec,en]),eu=eo?.data?.products&&em?g(eo?.data?.products):[],eg=E?eu:"PickProduct"===q&&z?.productIds?.length?z?.productIds?.map(e=>es?.find(o=>o?.baseID===e)).filter(Boolean)??es:"PickProduct"!==q?es:es.filter((e,o)=>o<(z?.numOfSelectedProducts??4)),ep=a(()=>ee&&E&&M||!eg.length&&!ed&&$&&M,[$,ed,ee,E,M,eg.length]),eh=a(()=>!eg||ee&&E,[ee,E,eg]),ef=a(()=>{if(!x?.sameHeight)return[];let e=0,o=Math.ceil((eg?.length??0)/+(x?.slidesToShow?.[Q]??1));return Array.from(Array(eg?.length??0)).map((t,r)=>(r>=+(x?.slidesToShow?.[Q]??1)*(e+1)&&++e,{gridRow:`${1+R*e}/${R+1+R*e}`,marginBottom:e+1<o?j(A?.horizontalGutter,Q):void 0}))},[x?.sameHeight,x?.slidesToShow,R,eg?.length,Q,A?.horizontalGutter]),eP=a(()=>ei||ed||el||!eg||ee&&E,[el,ed,ee,E,ei,eg]);s(()=>{if(!eP&&!ed&&!ei)return F.current=setTimeout(()=>{let{builderData:e}=N??{},o=e?.childrens?.[0];if(!o)return;let t=document.querySelector(`[data-id=${o}] div`);t&&W(t.childElementCount||1)},M?0:500),()=>{clearTimeout(F.current)}},[N,eP,M,ed,ei,eg]);let ek=a(()=>({collection:ea,products:eg,settings:{loop:x?.loop??{desktop:!1},scrollMode:x?.scrollMode??{desktop:"snap"},slidesToShow:x?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:A?.layout,dot:x?.dot,dotStyle:x?.dotStyle,arrow:x?.arrow,controlOverContent:x?.controlOverContent},styles:{horizontalGutter:A?.horizontalGutter,verticalGutter:A?.verticalGutter,fullWidth:A?.fullWidth,spacing:A?.spacing,width:A?.width,height:A?.height}}),[ea,eg,x,A]);if(N?.isPreview&&V)return e(o,{});if(ep)return e(o,{children:T($,e(G,{builderAttrs:B,collectionHandle:ea?.handle,productSrc:q,onClose:()=>_(!1),children:O,relatedTagString:K,assignProductNoTags:X||Y||Z,noAssignedProduct:!J}))});let{productListWrapStyle:ey,productListContentStyle:eI,productListWrapAlignStyle:eT}=I(r),{productListWrapClass:eb}=b(r);return t("div",{...B,className:eb,style:ey,children:[!!A?.preloadBgImage&&t(P,{children:[!!A.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:A.backgroundImage.desktop.image.src,as:"image"}),!!A.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:A.backgroundImage?.tablet?.image?.src,as:"image"}),!!A.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:A.backgroundImage?.mobile?.image?.src,as:"image"})]}),ed||ei?e(d,{}):el?t("div",{children:["Error: ",el?.message]}):eh?e("div",{children:"Products not found"}):e(p,{...ek,children:e("div",{className:"gp-flex gp-w-full",style:eT,children:t("div",{style:eI,children:[V&&e(f,{}),e(o,{children:T(A?.layout==="grid",e(k,{...r,productSortedById:eg,generateGridRowArray:ef}),e(y,{...r,productSortedById:eg}))})]})})}),h(O,!0)]})};export{O as default};
1
+ import{jsx as o,Fragment as e,jsxs as t}from"react/jsx-runtime";import r from"next/dynamic";import i from"../../../common/components/Loading.js";import{useState as l,useRef as d,useMemo as s,useEffect as c}from"react";import{useRenderMode as n,useCurrentDevice as a,usePageType as m,usePageStore as u,flattenConnection as g,ProductListProvider as p,filterToolbarPreview as h}from"@gem-sdk/core";import f from"../SalePageProductListWarning.js";import P from"next/head";import y from"./ProductListGridLayout.js";import k from"./ProductListCarouselLayout.js";import{getStyle as I}from"./common/styles.js";import{If as b}from"@gem-sdk/system";import{getClass as S}from"./common/classes.js";import{getData as j}from"./common/helpers.js";import{getPropertyByDevice as C}from"../../../dialog/common/helpers.js";import{useProductsQuery as L}from"./hooks/useProductsQuery.js";import{useCollectionQuery as v}from"./hooks/useCollectionQuery.js";import w from"./hooks/useProductRelatedQuery.js";import{PRODUCT_SOURCE as N,DEFAULT_COLLECTION_NUMBER_OF_PRODUCTS as G}from"./constants/index.js";import T from"./hooks/useRelatedProductIDAssigned.js";let A=r(()=>import("../ProductNotFound.js"),{loading:i}),O=r=>{let{children:O,styles:x,builderProps:D,setting:B,builderAttrs:E}=r,{isRelatedProduct:H,productSetting:z}=j(r),{isEditMode:M}=n(),Q=a(),R=m(),W=u(o=>o.dynamicCollection),[$,_]=l(1),[F,V]=l(!0),q=d(),U="GP_FUNNEL_PAGE"===R;"GP_COLLECTION"!=R||[N.Collection,N.DynamicCollection].includes(z?.productSrc)||(z.productSrc=N.DynamicCollection);let J=z?.productSrc??N.Collection;J===N.DynamicCollection&&(z.collectionId=W?.collectionId||"latest");let{relatedProductIdAssigned:K}=T({productSetting:z}),{isNotFoundRelatedProduct:X,relatedProducts:Y,isNoRelatedProductData:Z,relatedTagString:oo,isLoading:oe}=w({setting:B,productSetting:z,isRelatedProduct:H,relatedProductIdAssigned:K}),ot=L({productIds:z?.productIds,defaultSelectedProductCount:z?.numOfSelectedProducts,productSrc:J}),or=Number(B?.numberOfProducts),oi=v({productSrc:J,collectionID:z?.collectionId??"latest",numberOfProducts:Number.isNaN(or)?G:or,orderBy:B?.orderBy??"none"}),ol=oe||(J===N.PickProduct?ot.isLoading:oi.isLoading),od=J===N.PickProduct?ot.error:oi.error,os=J===N.PickProduct?ot.isValidating:oi.isValidating,oc=oi.data?.collections?.edges?.[0]?.node,on=J===N.PickProduct?g(ot.data?.products):g(oc?.products),oa=u(o=>o.assignedProductIds),om=u(o=>o.isApplyAllProducts),ou=s(()=>(oa??[]).length>0&&!om||om,[oa,om]),og=Y?.data?.products&&ou?g(Y?.data?.products):[],op=H?og:J===N.PickProduct&&z?.productIds?.length?z?.productIds?.map(o=>on?.find(e=>e?.baseID===o)).filter(Boolean)??on:J!==N.PickProduct?on:on.filter((o,e)=>e<(z?.numOfSelectedProducts??4)),oh=s(()=>X&&H&&M||!op.length&&!ol&&F&&M,[F,ol,X,H,M,op.length]),of=s(()=>!op||X&&H,[X,H,op]),oP=s(()=>{if(!B?.sameHeight)return[];let o=0,e=Math.ceil((op?.length??0)/+(B?.slidesToShow?.[Q]??1));return Array.from(Array(op?.length??0)).map((t,r)=>(r>=+(B?.slidesToShow?.[Q]??1)*(o+1)&&++o,{gridRow:`${1+$*o}/${$+1+$*o}`,marginBottom:o+1<e?C(x?.horizontalGutter,Q):void 0}))},[B?.sameHeight,B?.slidesToShow,$,op?.length,Q,x?.horizontalGutter]),oy=s(()=>os||ol||od||!op||X&&H,[od,ol,X,H,os,op]);c(()=>{if(!oy&&!ol&&!os)return q.current=setTimeout(()=>{let{builderData:o}=D??{},e=o?.childrens?.[0];if(!e)return;let t=document.querySelector(`[data-id=${e}] div`);t&&_(t.childElementCount||1)},M?0:500),()=>{clearTimeout(q.current)}},[D,oy,M,ol,os,op]);let ok=s(()=>({collection:oc,products:op,settings:{loop:B?.loop??{desktop:!1},scrollMode:B?.scrollMode??{desktop:"snap"},slidesToShow:B?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:x?.layout,dot:B?.dot,dotStyle:B?.dotStyle,arrow:B?.arrow,controlOverContent:B?.controlOverContent,sameHeight:B?.sameHeight},styles:{horizontalGutter:x?.horizontalGutter,verticalGutter:x?.verticalGutter,fullWidth:x?.fullWidth,spacing:x?.spacing,width:x?.width,height:x?.height}}),[oc,op,B,x]);if(D?.isPreview&&U)return o(e,{});if(oh)return o(e,{children:b(F,o(A,{builderAttrs:E,collectionHandle:oc?.handle,productSrc:J,onClose:()=>V(!1),children:O,relatedTagString:oo,assignProductNoTags:Z,noAssignedProduct:!K}))});let{productListWrapStyle:oI,productListContentStyle:ob,productListWrapAlignStyle:oS}=I(r),{productListWrapClass:oj}=S(r);return t("div",{...E,className:oj,style:oI,children:[!!x?.preloadBgImage&&t(P,{children:[!!x.backgroundImage?.desktop?.image?.src&&o("link",{rel:"preload",href:x.backgroundImage.desktop.image.src,as:"image"}),!!x.backgroundImage?.tablet?.image?.src&&o("link",{rel:"preload",href:x.backgroundImage?.tablet?.image?.src,as:"image"}),!!x.backgroundImage?.mobile?.image?.src&&o("link",{rel:"preload",href:x.backgroundImage?.mobile?.image?.src,as:"image"})]}),ol||os?o(i,{}):od?t("div",{children:["Error: ",od?.message]}):of?o("div",{children:"Products not found"}):o(p,{...ok,children:o("div",{className:"gp-flex gp-w-full",style:oS,children:t("div",{style:ob,children:[U&&o(f,{}),o(e,{children:b(x?.layout==="grid",o(y,{...r,productSortedById:op,generateGridRowArray:oP}),o(k,{...r,productSortedById:op}))})]})})}),h(O,!0)]})};export{O as default};
@@ -1,6 +1,6 @@
1
- import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import n from"./ProductListCarouselLayout.liquid.js";import a from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as u}from"./common/helpers.js";let g=g=>{let{setting:p,styles:f,pageContext:m}=g,$=m?.pageType==="GP_FUNNEL_PAGE";if($)return"";let{hasRelatedExclude:P,relatedExcludeTrim:h,collectionID:_,isLatestProducts:y,isGrid:v,numberOfProducts:E,productListId:k,productListHandles:x,sortedBy:S,isReverse:b,productSrc:A,productNumber:L,isSorted:R,relatedTag:I,collectionHandle:F}=u(g),j=()=>i`
2
- ${e("RelatedProduct"===A,`
3
- assign relatedTag = '${I}'
1
+ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-sdk/core";import{getSettingPreloadData as d,getStaticLocale as o}from"../../../helpers.js";import{If as r}from"@gem-sdk/system";import n from"./ProductListCarouselLayout.liquid.js";import a from"./ProductListGridLayout.liquid.js";import{getStyle as c}from"./common/styles.js";import{getClass as l}from"./common/classes.js";import{getDataLiquid as g}from"./common/helpers.js";let u=u=>{let{setting:p,styles:f,pageContext:m}=u,$=m?.pageType==="GP_FUNNEL_PAGE";if($)return"";let{hasRelatedExclude:P,relatedExcludeTrim:h,collectionID:_,isLatestProducts:y,isGrid:v,numberOfProducts:E,productListId:k,productListHandles:S,sortedBy:x,isReverse:b,productSrc:L,productNumber:A,isSorted:R,relatedTag:H,collectionHandle:I}=g(u),F=()=>i`
2
+ ${e("RelatedProduct"===L,`
3
+ assign relatedTag = '${H}'
4
4
  assign assignProduct = product
5
5
  assign idAssignProduct = assignProduct.id
6
6
  paginate collections.all.products by 10000
@@ -95,7 +95,7 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
95
95
  assign products = products
96
96
  endpaginate
97
97
  `)}
98
- `,{productListWrapStyle:w,productListContentStyle:H,productListWrapAlignStyle:q}=c(g),{productListWrapClass:G}=l(g);return i`
98
+ `,{productListWrapStyle:j,productListContentStyle:w,productListWrapAlignStyle:q}=c(u),{productListWrapClass:G}=l(u);return i`
99
99
  ${e(s,`
100
100
  <script ${d('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>
101
101
  ${p?.sameHeight?`<script ${d('class="gps-link" delay',"src")}="{{ 'gp-same-height-v7-5.js' | asset_url }}" defer="defer"></script>`:""}
@@ -107,16 +107,16 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
107
107
  ${e(!!f?.preloadBgImage,`${e(!!f?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${e(!!f?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${e(!!f?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${f?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
108
108
  <div
109
109
  class="${G}"
110
- style="${w}"
110
+ style="${j}"
111
111
  >
112
112
  <div class='gp-flex gp-w-full' style="${q}">
113
113
  <div
114
- style="${H}"
114
+ style="${w}"
115
115
  >
116
116
  {%- assign gpBkProduct = product -%}
117
117
  {%- assign gpBkProducts = products -%}
118
- ${(()=>{let e=F?`
119
- assign target_collection = collections['${F}']
118
+ ${(()=>{let e=I?`
119
+ assign target_collection = collections['${I}']
120
120
  if target_collection == empty
121
121
  for collection in collections
122
122
  if collection.id == ${_}
@@ -134,17 +134,18 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
134
134
  endfor
135
135
  `;return i`
136
136
  {%- liquid
137
- assign productHandles = '${x.toString()}'| split: ','
138
- assign collection_handle = ${F}
137
+ assign productHandles = '${S.toString()}'| split: ','
138
+ assign collection_handle = '${I}'
139
139
  assign products = null
140
140
  assign target_collection = null
141
- assign productSrc = '${A}'
141
+ assign productSrc = '${L}'
142
142
  assign c = 0
143
- assign limit = ${L??4}
143
+ assign limit = ${A??4}
144
+ assign isSettingSameHeightProductList = ${p?.sameHeight??!1}
144
145
 
145
146
  if request.page_type == 'collection' or preview_page_type == 'collection'
146
147
  assign target_collection = collection
147
- if productSrc == 'Collection' and collection_handle != empty
148
+ if productSrc == 'Collection' and collection_handle != blank
148
149
  ${e}
149
150
  elsif target_collection == empty or target_collection == null
150
151
  if '${_.toLowerCase()}' == 'latest'
@@ -154,11 +155,11 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
154
155
  endif
155
156
  endif
156
157
  paginate target_collection.products by ${E||4}
157
- assign products = target_collection.products ${R?S:""} ${b?"| reverse":""}
158
+ assign products = target_collection.products ${R?x:""} ${b?"| reverse":""}
158
159
  endpaginate
159
160
  else
160
161
  if productSrc == 'RelatedProduct'
161
- ${j()}
162
+ ${F()}
162
163
  elsif productSrc == 'PickProduct'
163
164
  unless ${y}
164
165
  assign products = null | sort
@@ -181,7 +182,7 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
181
182
  ${e}
182
183
  endif
183
184
  paginate target_collection.products by ${E||4}
184
- assign products = target_collection.products ${R?S:""} ${b?"| reverse":""}
185
+ assign products = target_collection.products ${R?x:""} ${b?"| reverse":""}
185
186
  endpaginate
186
187
  endif
187
188
  endif
@@ -190,14 +191,14 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
190
191
  ${i`
191
192
  {%- if products == null -%}
192
193
  {%- if count == 0 and ${k.length} == 0 -%}
193
- {% if '${A}' == 'RelatedProduct' -%}
194
+ {% if '${L}' == 'RelatedProduct' -%}
194
195
  <div>${o("ProductList","no_related_products")}</div>
195
196
  {% else %}
196
197
  <div>${o("ProductList","no_products_found")}</div>
197
198
  {%- endif -%}
198
199
  {%- endif -%}
199
200
  {%-else-%}
200
- ${r(v,i`${a({...g,productListId:k,productSrc:A})}`,i`${n({...g,productListId:k,productSrc:A})}`)}
201
+ ${r(v,i`${a({...u,productListId:k,productSrc:L})}`,i`${n({...u,productListId:k,productSrc:L})}`)}
201
202
  {%- endif -%}
202
203
  `}
203
204
  {%- assign product = gpBkProduct -%}
@@ -205,4 +206,4 @@ import{RenderIf as e,isLocalEnv as s,baseAssetURL as t,template as i}from"@gem-s
205
206
  </div>
206
207
  </div>
207
208
  </div>
208
- `};export{g as default};
209
+ `};export{u as default};
@@ -1,15 +1,15 @@
1
- import{template as t}from"@gem-sdk/core";import{getClass as e}from"./common/classes.js";import{filterPageContext as n}from"../../../helpers.js";let o=o=>{let{pageContext:a,children:r}=o,{productItemClass:i,gpProductClass:c}=e(o);return t`
1
+ import{template as t}from"@gem-sdk/core";import{getClass as n}from"./common/classes.js";let e=e=>{let{pageContext:o,children:a}=e,{productItemClass:i,gpProductClass:r}=n(e);return t`
2
2
  <gp-product
3
3
  gp-context='{"variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "quantity": 1 ,"inventoryQuantity": {{ variant.inventory_quantity | default: 0 }}, "formId": "{{ product_form_id }}"}'
4
- gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }},"pageContext" : ${JSON.stringify(n(a))}}'
5
- class="${c}"
6
-
4
+ gp-context='{"variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "quantity": 1 ,"inventoryQuantity": {{ variant.inventory_quantity }}, "formId": "{{ product_form_id }}"}'
5
+ class="${r}"
7
6
  >
7
+ <script gp-data type="application/json">{"variantSelected": {{ variant | json }}, "quantity": 1, "productUrl":{{ product.url | json }}, "productHandle":{{ product.handle | json }}, "collectionUrl": {{ collection.url | json }}, "collectionHandle": {{ collection.handle | json }},"pageContext" : ${JSON.stringify(o)}}</script>
8
8
  {%- form 'product', product, id: product_form_id, class: 'form contents ${i}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
9
9
  <input type="hidden" name="id" value="{{ variant.id }}" />
10
10
  <input type="hidden" min="1" name="quantity" value="{{ quantity }}" />
11
11
  <button type="submit" onclick="return false;" style="display:none;"></button>
12
- ${r}
12
+ ${a}
13
13
  {%- endform -%}
14
14
  </gp-product>
15
- `};export{o as default};
15
+ `};export{e as default};
@@ -1,19 +1,18 @@
1
- import{template as t,RenderChildren as e}from"@gem-sdk/core";import{getClass as n}from"./common/classes.js";import{filterPageContext as o}from"../../../helpers.js";let a=a=>{let{pageContext:r,rawChildren:i}=a,{productItemClass:c,gpProductClass:p}=n(a);return t`
1
+ import{template as t,RenderChildren as n}from"@gem-sdk/core";import{getClass as e}from"./common/classes.js";let o=o=>{let{pageContext:a,rawChildren:r}=o,{productItemClass:i,gpProductClass:c}=e(o);return t`
2
2
  <gp-product
3
3
  gp-context='{"variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "quantity": 1 ,"inventoryQuantity": {{ variant.inventory_quantity | default: 0 }}, "formId": "{{ product_form_id }}"}'
4
- gp-data='{"variantSelected": {{ variant | json | escape }}, "quantity": 1, "productUrl":{{ product.url | json | escape }}, "productHandle":{{ product.handle | json | escape }}, "collectionUrl": {{ collection.url | json | escape }}, "collectionHandle": {{ collection.handle | json | escape }},"pageContext" : ${JSON.stringify(o(r))}}'
5
- class="${p}"
6
-
4
+ class="${c}"
7
5
  >
8
- {%- form 'product', product, id: product_form_id, class: 'form contents ${c}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
6
+ <script gp-data type="application/json">{"variantSelected": {{ variant | json }}, "quantity": 1, "productUrl":{{ product.url | json }}, "productHandle":{{ product.handle | json }}, "collectionUrl": {{ collection.url | json }}, "collectionHandle": {{ collection.handle | json }},"pageContext" : ${JSON.stringify(a)}}</script>
7
+ {%- form 'product', product, id: product_form_id, class: 'form contents ${i}', data-type: 'add-to-cart-form', autocomplete: 'off' -%}
9
8
  <input type="hidden" name="id" value="{{ variant.id }}" />
10
9
  <input type="hidden" min="1" name="quantity" value="{{ quantity }}" />
11
10
  <button type="submit" onclick="return false;" style="display:none;"></button>
12
11
  ${t`
13
- ${i?.map((n,o)=>{if(n)return t`
14
- ${e({...n,index:o})}
12
+ ${r?.map((e,o)=>{if(e)return t`
13
+ ${n({...e,index:o})}
15
14
  `}).join("")}
16
15
  `}
17
16
  {%- endform -%}
18
17
  </gp-product>
19
- `};export{a as default};
18
+ `};export{o as default};