@gem-sdk/components 19.0.0-staging.6 → 19.0.0-staging.61

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 (216) hide show
  1. package/dist/cjs/builder.js +1 -1
  2. package/dist/cjs/carousel-v3/common/selectors.js +1 -0
  3. package/dist/cjs/carousel-v3/components/arrow/Arrow.liquid.js +8 -8
  4. package/dist/cjs/carousel-v3/components/arrow/common/classes.js +1 -1
  5. package/dist/cjs/carousel-v3/components/dot/common/helpers.js +1 -1
  6. package/dist/cjs/carousel-v3/components/item/CarouselItem.js +1 -1
  7. package/dist/cjs/carousel-v3/components/root/Carousel.js +1 -1
  8. package/dist/cjs/carousel-v3/components/root/Carousel.liquid.js +1 -1
  9. package/dist/cjs/carousel-v3/components/root/CarouselEmbla.liquid.js +24 -0
  10. package/dist/cjs/carousel-v3/components/root/common/attrs.js +1 -1
  11. package/dist/cjs/carousel-v3/components/root/common/helpers.js +1 -1
  12. package/dist/cjs/carousel-v3/components/swiper/Swiper.js +1 -1
  13. package/dist/cjs/carousel-v3/hooks/useCarousel.js +1 -1
  14. package/dist/cjs/carousel-v3/index.js +1 -1
  15. package/dist/cjs/carousel-v3/settings/configs/ui-v2.js +1 -1
  16. package/dist/cjs/code/common/helpers.js +1 -0
  17. package/dist/cjs/code/hooks/useCSSCode.js +4 -10
  18. package/dist/cjs/estimate-delivery/common/helpers.js +1 -1
  19. package/dist/cjs/grid/components/row/Row.liquid.js +12 -12
  20. package/dist/cjs/hero-banner/common/classes.js +1 -1
  21. package/dist/cjs/hero-banner/components/HeroBanner.js +1 -1
  22. package/dist/cjs/hero-banner/components/HeroBanner.liquid.js +10 -10
  23. package/dist/cjs/hero-banner/components/HeroBannerItem.js +1 -1
  24. package/dist/cjs/hero-banner/components/HeroBannerItem.liquid.js +9 -9
  25. package/dist/cjs/image/common/attrs.js +1 -1
  26. package/dist/cjs/image/components/AdaptiveImage.js +1 -1
  27. package/dist/cjs/image/components/AdaptiveImage.liquid.js +8 -8
  28. package/dist/cjs/image/components/Image.liquid.js +10 -10
  29. package/dist/cjs/image/components/NextImage.js +1 -1
  30. package/dist/cjs/image/components/NextImage.liquid.js +2 -2
  31. package/dist/cjs/image-comparison/components/CompareImage.liquid.js +10 -10
  32. package/dist/cjs/index.js +1 -1
  33. package/dist/cjs/index.liquid.js +1 -1
  34. package/dist/cjs/post-purchase/link/components/PostPurchaseLink.js +1 -1
  35. package/dist/cjs/post-purchase/link/settings/configs/settings.js +1 -1
  36. package/dist/cjs/post-purchase/link/settings/configs/ui-v2.js +1 -1
  37. package/dist/cjs/post-purchase/product/components/ProductTitle.js +1 -1
  38. package/dist/cjs/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  39. package/dist/cjs/post-purchase/product/components/product-offer/context/PrdOfferSubscriptionPresenceContext.js +2 -0
  40. package/dist/cjs/post-purchase/product/components/product-offer/helpers/scanSubscriptionBlocks.js +1 -0
  41. package/dist/cjs/post-purchase/product/components/product-offer/hooks/useProductOfferSubscriptionBlocksObserver.js +1 -0
  42. package/dist/cjs/post-purchase/product/components/product-subscription/hooks/useSubscriptionVisibility.js +1 -1
  43. package/dist/cjs/post-purchase/product/components/product-variant/components/variants/DropdownOption.js +1 -1
  44. package/dist/cjs/product/components/product-badge/ProductBadge.js +1 -1
  45. package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +12 -12
  46. package/dist/cjs/product/components/product-badge/common/classes.js +1 -1
  47. package/dist/cjs/product/components/product-badge/utils/renderBadgeILP.js +1 -1
  48. package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +7 -5
  49. package/dist/cjs/product/components/product-button/ProductButton.liquid.js +11 -8
  50. package/dist/cjs/product/components/product-button/common/helpers.js +1 -1
  51. package/dist/cjs/product/components/product-button/hooks/useAddToCart.js +1 -1
  52. package/dist/cjs/product/components/product-description/ProductDescription.js +1 -1
  53. package/dist/cjs/product/components/product-description/ProductDescription.liquid.js +2 -3
  54. package/dist/cjs/product/components/product-description/hooks/useGpDescription.js +1 -1
  55. package/dist/cjs/product/components/product-images-v2/ProductImagesV2.liquid.js +15 -15
  56. package/dist/cjs/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +5 -5
  57. package/dist/cjs/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +1 -1
  58. package/dist/cjs/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +5 -5
  59. package/dist/cjs/product/components/product-images-v3/ProductImageV3.js +2 -2
  60. package/dist/cjs/product/components/product-images-v3/ProductImagesV3.liquid.js +15 -15
  61. package/dist/cjs/product/components/product-images-v3/ProductImagesV3Embla.liquid.js +44 -0
  62. package/dist/cjs/product/components/product-images-v3/common/classes.js +1 -1
  63. package/dist/cjs/product/components/product-images-v3/common/common.js +1 -1
  64. package/dist/cjs/product/components/product-images-v3/common/getBorderActiveCss.js +3 -2
  65. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -1
  66. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeaturedImageCarousel.js +1 -1
  67. package/dist/cjs/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +1 -1
  68. package/dist/cjs/product/components/product-images-v3/components/child/ProductGalleryGrid.js +1 -2
  69. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  70. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +29 -29
  71. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGalleryEmbla.liquid.js +119 -0
  72. package/dist/cjs/product/components/product-images-v3/components/feature-only/OnlyFeatureImage.js +1 -1
  73. package/dist/cjs/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.js +1 -1
  74. package/dist/cjs/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.liquid.js +8 -8
  75. package/dist/cjs/product/components/product-images-v3/components/gallery-carousel/GalleryCarouselEmbla.liquid.js +46 -0
  76. package/dist/cjs/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +10 -10
  77. package/dist/cjs/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +1 -1
  78. package/dist/cjs/product/components/product-images-v3/hooks/useGalleryCarousel.js +1 -1
  79. package/dist/cjs/product/components/product-images-v3/hooks/useProductFeaturedImageCarousel.js +1 -1
  80. package/dist/cjs/product/components/product-images-v3/hooks/useProductGalleryGrid.js +1 -1
  81. package/dist/cjs/product/components/product-list/ProductList.js +1 -1
  82. package/dist/cjs/product/components/product-list/ProductList.liquid.js +10 -9
  83. package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -1
  84. package/dist/cjs/product/components/product-list-v3/ProductList.liquid.js +10 -9
  85. package/dist/cjs/product/components/product-list-v3/ProductListCarouselLayout.liquid.js +6 -6
  86. package/dist/cjs/product/components/product-variants/OptionVariantsNewFormat.liquid.js +11 -12
  87. package/dist/cjs/product/components/product-variants/OptionVariantsOldFormat.liquid.js +11 -10
  88. package/dist/cjs/product/components/product-wrap/Product.liquid.js +12 -9
  89. package/dist/cjs/product/index.js +1 -1
  90. package/dist/cjs/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  91. package/dist/cjs/sticky/hooks/useSticky.js +1 -1
  92. package/dist/cjs/third-party/components/AppstleLoyaltyRewardProgram.js +2 -0
  93. package/dist/cjs/third-party/components/AppstleLoyaltyRewardProgram.liquid.js +16 -0
  94. package/dist/cjs/third-party/components/EcomsendBackInStockAlert.js +1 -1
  95. package/dist/cjs/third-party/configs/AppstleLoyaltyRewardProgram.js +1 -0
  96. package/dist/cjs/third-party/configs/EcomsendBackInStockAlert.js +1 -1
  97. package/dist/cjs/third-party/index.js +1 -1
  98. package/dist/cjs/third-party/next.js +1 -1
  99. package/dist/cjs/third-party/settings/AppstleLoyaltyRewardProgram/index.js +4 -0
  100. package/dist/cjs/third-party/settings/AppstleLoyaltyRewardProgram/uiV2.js +1 -0
  101. package/dist/cjs/third-party/settings/EcomsendBackInStockAlert/index.js +4 -4
  102. package/dist/cjs/video/components/HTML5Embed.js +1 -1
  103. package/dist/cjs/video/components/HTML5Embed.liquid.js +12 -12
  104. package/dist/cjs/video/components/LiteVimeoEmbed.liquid.js +13 -13
  105. package/dist/cjs/video/components/LiteYouTubeEmbed.js +1 -1
  106. package/dist/cjs/video/components/LiteYouTubeEmbed.liquid.js +11 -11
  107. package/dist/cjs/video/components/Video.liquid.js +1 -1
  108. package/dist/esm/builder.js +1 -1
  109. package/dist/esm/carousel-v3/common/selectors.js +1 -0
  110. package/dist/esm/carousel-v3/components/arrow/Arrow.liquid.js +6 -6
  111. package/dist/esm/carousel-v3/components/arrow/common/classes.js +1 -1
  112. package/dist/esm/carousel-v3/components/dot/common/helpers.js +1 -1
  113. package/dist/esm/carousel-v3/components/item/CarouselItem.js +1 -1
  114. package/dist/esm/carousel-v3/components/root/Carousel.js +1 -1
  115. package/dist/esm/carousel-v3/components/root/Carousel.liquid.js +4 -4
  116. package/dist/esm/carousel-v3/components/root/CarouselEmbla.liquid.js +24 -0
  117. package/dist/esm/carousel-v3/components/root/common/attrs.js +1 -1
  118. package/dist/esm/carousel-v3/components/root/common/helpers.js +1 -1
  119. package/dist/esm/carousel-v3/components/swiper/Swiper.js +1 -1
  120. package/dist/esm/carousel-v3/hooks/useCarousel.js +1 -1
  121. package/dist/esm/carousel-v3/index.js +1 -1
  122. package/dist/esm/carousel-v3/settings/configs/ui-v2.js +1 -1
  123. package/dist/esm/code/common/helpers.js +1 -0
  124. package/dist/esm/code/hooks/useCSSCode.js +4 -10
  125. package/dist/esm/estimate-delivery/common/helpers.js +1 -1
  126. package/dist/esm/grid/components/row/Row.liquid.js +11 -11
  127. package/dist/esm/hero-banner/common/classes.js +1 -1
  128. package/dist/esm/hero-banner/components/HeroBanner.js +1 -1
  129. package/dist/esm/hero-banner/components/HeroBanner.liquid.js +10 -10
  130. package/dist/esm/hero-banner/components/HeroBannerItem.js +1 -1
  131. package/dist/esm/hero-banner/components/HeroBannerItem.liquid.js +10 -10
  132. package/dist/esm/image/common/attrs.js +1 -1
  133. package/dist/esm/image/components/AdaptiveImage.js +1 -1
  134. package/dist/esm/image/components/AdaptiveImage.liquid.js +11 -11
  135. package/dist/esm/image/components/Image.liquid.js +10 -10
  136. package/dist/esm/image/components/NextImage.js +1 -1
  137. package/dist/esm/image/components/NextImage.liquid.js +1 -1
  138. package/dist/esm/image-comparison/components/CompareImage.liquid.js +12 -12
  139. package/dist/esm/index.js +1 -1
  140. package/dist/esm/index.liquid.js +1 -1
  141. package/dist/esm/post-purchase/link/components/PostPurchaseLink.js +1 -1
  142. package/dist/esm/post-purchase/link/settings/configs/settings.js +1 -1
  143. package/dist/esm/post-purchase/link/settings/configs/ui-v2.js +1 -1
  144. package/dist/esm/post-purchase/product/components/ProductTitle.js +1 -1
  145. package/dist/esm/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  146. package/dist/esm/post-purchase/product/components/product-offer/context/PrdOfferSubscriptionPresenceContext.js +2 -0
  147. package/dist/esm/post-purchase/product/components/product-offer/helpers/scanSubscriptionBlocks.js +1 -0
  148. package/dist/esm/post-purchase/product/components/product-offer/hooks/useProductOfferSubscriptionBlocksObserver.js +1 -0
  149. package/dist/esm/post-purchase/product/components/product-subscription/hooks/useSubscriptionVisibility.js +1 -1
  150. package/dist/esm/post-purchase/product/components/product-variant/components/variants/DropdownOption.js +1 -1
  151. package/dist/esm/product/components/product-badge/ProductBadge.js +1 -1
  152. package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +12 -12
  153. package/dist/esm/product/components/product-badge/common/classes.js +1 -1
  154. package/dist/esm/product/components/product-badge/utils/renderBadgeILP.js +1 -1
  155. package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +5 -3
  156. package/dist/esm/product/components/product-button/ProductButton.liquid.js +11 -8
  157. package/dist/esm/product/components/product-button/common/helpers.js +1 -1
  158. package/dist/esm/product/components/product-button/hooks/useAddToCart.js +1 -1
  159. package/dist/esm/product/components/product-description/ProductDescription.js +1 -1
  160. package/dist/esm/product/components/product-description/ProductDescription.liquid.js +3 -4
  161. package/dist/esm/product/components/product-description/hooks/useGpDescription.js +1 -1
  162. package/dist/esm/product/components/product-images-v2/ProductImagesV2.liquid.js +15 -15
  163. package/dist/esm/product/components/product-images-v2/components/feature-gallery/FeatureImageWithGallery.liquid.js +5 -5
  164. package/dist/esm/product/components/product-images-v2/components/gallery-carousel/GalleryCarousel.liquid.js +1 -1
  165. package/dist/esm/product/components/product-images-v2/components/gallery-grid/GalleryGrid.liquid.js +5 -5
  166. package/dist/esm/product/components/product-images-v3/ProductImageV3.js +2 -2
  167. package/dist/esm/product/components/product-images-v3/ProductImagesV3.liquid.js +15 -15
  168. package/dist/esm/product/components/product-images-v3/ProductImagesV3Embla.liquid.js +44 -0
  169. package/dist/esm/product/components/product-images-v3/common/classes.js +1 -1
  170. package/dist/esm/product/components/product-images-v3/common/common.js +1 -1
  171. package/dist/esm/product/components/product-images-v3/common/getBorderActiveCss.js +1 -0
  172. package/dist/esm/product/components/product-images-v3/components/child/ProductFeatureVideo.js +1 -1
  173. package/dist/esm/product/components/product-images-v3/components/child/ProductFeaturedImageCarousel.js +1 -1
  174. package/dist/esm/product/components/product-images-v3/components/child/ProductFeaturedImageOnly.js +1 -1
  175. package/dist/esm/product/components/product-images-v3/components/child/ProductGalleryGrid.js +1 -2
  176. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.js +1 -1
  177. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +45 -45
  178. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGalleryEmbla.liquid.js +119 -0
  179. package/dist/esm/product/components/product-images-v3/components/feature-only/OnlyFeatureImage.js +1 -1
  180. package/dist/esm/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.js +1 -1
  181. package/dist/esm/product/components/product-images-v3/components/gallery-carousel/GalleryCarousel.liquid.js +14 -14
  182. package/dist/esm/product/components/product-images-v3/components/gallery-carousel/GalleryCarouselEmbla.liquid.js +46 -0
  183. package/dist/esm/product/components/product-images-v3/components/gallery-grid/GalleryGrid.liquid.js +10 -10
  184. package/dist/esm/product/components/product-images-v3/components/lightbox/ProductImagesLightBox.js +1 -1
  185. package/dist/esm/product/components/product-images-v3/hooks/useGalleryCarousel.js +1 -1
  186. package/dist/esm/product/components/product-images-v3/hooks/useProductFeaturedImageCarousel.js +1 -1
  187. package/dist/esm/product/components/product-images-v3/hooks/useProductGalleryGrid.js +1 -1
  188. package/dist/esm/product/components/product-list/ProductList.js +1 -1
  189. package/dist/esm/product/components/product-list/ProductList.liquid.js +18 -17
  190. package/dist/esm/product/components/product-list-v3/ProductList.js +1 -1
  191. package/dist/esm/product/components/product-list-v3/ProductList.liquid.js +18 -17
  192. package/dist/esm/product/components/product-list-v3/ProductListCarouselLayout.liquid.js +9 -9
  193. package/dist/esm/product/components/product-variants/OptionVariantsNewFormat.liquid.js +11 -12
  194. package/dist/esm/product/components/product-variants/OptionVariantsOldFormat.liquid.js +11 -10
  195. package/dist/esm/product/components/product-wrap/Product.liquid.js +16 -13
  196. package/dist/esm/product/index.js +1 -1
  197. package/dist/esm/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  198. package/dist/esm/sticky/hooks/useSticky.js +1 -1
  199. package/dist/esm/third-party/components/AppstleLoyaltyRewardProgram.js +2 -0
  200. package/dist/esm/third-party/components/AppstleLoyaltyRewardProgram.liquid.js +16 -0
  201. package/dist/esm/third-party/components/EcomsendBackInStockAlert.js +1 -1
  202. package/dist/esm/third-party/configs/AppstleLoyaltyRewardProgram.js +1 -0
  203. package/dist/esm/third-party/configs/EcomsendBackInStockAlert.js +1 -1
  204. package/dist/esm/third-party/index.js +1 -1
  205. package/dist/esm/third-party/next.js +1 -1
  206. package/dist/esm/third-party/settings/AppstleLoyaltyRewardProgram/index.js +4 -0
  207. package/dist/esm/third-party/settings/AppstleLoyaltyRewardProgram/uiV2.js +1 -0
  208. package/dist/esm/third-party/settings/EcomsendBackInStockAlert/index.js +4 -4
  209. package/dist/esm/video/components/HTML5Embed.js +1 -1
  210. package/dist/esm/video/components/HTML5Embed.liquid.js +12 -12
  211. package/dist/esm/video/components/LiteVimeoEmbed.liquid.js +14 -14
  212. package/dist/esm/video/components/LiteYouTubeEmbed.js +1 -1
  213. package/dist/esm/video/components/LiteYouTubeEmbed.liquid.js +10 -10
  214. package/dist/esm/video/components/Video.liquid.js +1 -1
  215. package/dist/types/index.d.ts +44 -14
  216. package/package.json +5 -5
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),d=require("@gem-sdk/core"),a=require("../SalePageProductListWarning.js"),s=require("next/head"),l=require("./ProductListGridLayout.js"),i=require("./ProductListCarouselLayout.js"),c=require("./common/styles.js"),n=require("@gem-sdk/system"),u=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js");const h=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:P,styles:f,builderProps:p,setting:y,builderAttrs:v}=t,{isRelatedProduct:b,productSetting:T}=g.getData(t),j=T.relatedTag&&T.relatedTag[0],{isEditMode:x,isPreviewSharePageMode:I}=d.useRenderMode(),k=d.useCurrentDevice(),S=d.usePageType(),C=d.usePageStore(e=>e.dynamicProduct),O=d.usePageStore(e=>e.dynamicCollection),[w,E]=o.useState(1),[q,M]=o.useState(!0),[N,L]=o.useState(),[W,F]=o.useState(!1),G="GP_FUNNEL_PAGE"===S;"GP_COLLECTION"==S&&(T.productSrc="DynamicCollection",T.collectionId=O?.collectionId??"latest");let Q=T?.productSrc??"Collection",B=C?.productId&&C?.productId!==T.relatedProductId?C?.productId:T.relatedProductId,D=d.useFetchHandle(),A=d.usePageStore(e=>e.publicStoreFrontData),_=o.useMemo(()=>d.hasPublicStoreFrontData(A)?d.createStoreFrontFetcher(A):D,[A]),{data:z}=d.useProductQuery(b&&B?B:void 0,{revalidateOnMount:x||I},_),H=T.relatedTag&&"tags"===T.relatedTag[0]&&(!z?.tags||z?.tags.length===0),R=T.relatedTag&&"collection"===T.relatedTag[0]&&(!z?.collections?.edges||z?.collections.edges.length===0),$=T.relatedTag&&"vendor"===T.relatedTag[0]&&!z?.vendor,V=d.useProductsQueryAll(N,{revalidateOnMount:x||I},_),U=x||I,J=d.useProductsQuery("PickProduct"===Q?T?.productIds:void 0,{revalidateOnMount:U},{defaultSelectedProductCount:T?.numOfSelectedProducts}),K=o.useMemo(()=>({id:T?.collectionId??"latest",numberOfProducts:y?.numberOfProducts??4,orderBy:y?.orderBy}),[T?.collectionId,Number(y?.numberOfProducts),y?.orderBy]),X=d.useCollectionQuery("PickProduct"!==Q?K:void 0,{revalidateOnMount:U});o.useEffect(()=>{if(b&&z&&T.relatedTag&&"recommended-product"!==T.relatedType){let e;switch(F(!1),T.hasRelatedExclude&&(e=T?.relatedExclude&&T.relatedExclude.split(",").map(e=>e.trim())),T.relatedTag[0]){case"vendor":L({first:y?.numberOfProducts,where:{vendor:T.relatedTag&&"vendor"===T.relatedTag[0]?z?.vendor:"",idNEQ:z.id}});break;case"collection":{let t=z?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:z.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:z.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]}});break}case"tags":if(!z.tags||0===z.tags.length){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:z.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:z.tags},{nameNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:z.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:z.tags}]}]}})}}},[z,T.relatedType,T.relatedTag,y?.numberOfProducts,T.relatedExclude,T.hasRelatedExclude,b]);let Y="PickProduct"===Q?J.isValidating:X.isValidating,Z="PickProduct"===Q?J.isLoading:X.isLoading,ee="PickProduct"===Q?J.error:X.error,et=X.data?.collections?.edges?.[0]?.node,er="PickProduct"===Q?d.flattenConnection(J.data?.products):d.flattenConnection(et?.products),eo=V?.data?.products?d.flattenConnection(V?.data?.products):void 0,ed=b&&eo?eo:"PickProduct"===Q&&T?.productIds?.length?T?.productIds?.map(e=>er?.find(t=>t?.baseID===e)).filter(Boolean)??er:"PickProduct"!==Q?er:er.filter((e,t)=>t<(T?.numOfSelectedProducts??4)),ea=o.useMemo(()=>W&&b&&x||!ed.length&&!Z&&q&&x,[q,Z,W,b,x,ed.length]),es=o.useMemo(()=>!ed||W&&b,[W,b,ed]),el=o.useMemo(()=>{if(!y?.sameHeight)return[];let e=0,t=Math.ceil((ed?.length??0)/+(y?.slidesToShow?.[k]??1));return Array.from(Array(ed?.length??0)).map((r,o)=>(o>=+(y?.slidesToShow?.[k]??1)*(e+1)&&++e,{gridRow:`${1+w*e}/${w+1+w*e}`,marginBottom:e+1<t?m.getPropertyByDevice(f?.horizontalGutter,k):void 0}))},[y?.sameHeight,y?.slidesToShow,w,ed?.length,k,f?.horizontalGutter]),ei=o.useMemo(()=>Y||Z||ee||!ed||W&&b,[ee,Z,W,b,Y,ed]);o.useEffect(()=>{ei||setTimeout(()=>{let{builderData:e}=p??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&E(r.childElementCount||1)},x?0:500)},[p,ei,x]);let ec=o.useMemo(()=>({collection:et,products:ed,settings:{loop:y?.loop??{desktop:!1},scrollMode:y?.scrollMode??{desktop:"snap"},slidesToShow:y?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:f?.layout,dot:y?.dot,dotStyle:y?.dotStyle,arrow:y?.arrow,controlOverContent:y?.controlOverContent},styles:{horizontalGutter:f?.horizontalGutter,verticalGutter:f?.verticalGutter,fullWidth:f?.fullWidth,spacing:f?.spacing,width:f?.width,height:f?.height}}),[et,ed,y,f]);if(p?.isPreview&&G)return e.jsx(e.Fragment,{});if(ea)return e.jsx(e.Fragment,{children:n.If(q,e.jsx(h,{builderAttrs:v,collectionHandle:et?.handle,productSrc:Q,onClose:()=>M(!1),children:P,relatedTagString:j,assignProductNoTags:H||R||$,noAssignedProduct:!B}))});let{productListWrapStyle:en,productListContentStyle:eu,productListWrapAlignStyle:eg}=c.getStyle(t),{productListWrapClass:em}=u.getClass(t);return e.jsxs("div",{...v,className:em,style:en,children:[!!f?.preloadBgImage&&e.jsxs(s,{children:[!!f.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage.desktop.image.src,as:"image"}),!!f.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.tablet?.image?.src,as:"image"}),!!f.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.mobile?.image?.src,as:"image"})]}),Y||Z?e.jsx(r.default,{}):ee?e.jsxs("div",{children:["Error: ",ee?.message]}):es?e.jsx("div",{children:"Products not found"}):e.jsx(d.ProductListProvider,{...ec,children:e.jsx("div",{className:"gp-flex gp-w-full",style:eg,children:e.jsxs("div",{style:eu,children:[G&&e.jsx(a.default,{}),e.jsx(e.Fragment,{children:n.If(f?.layout==="grid",e.jsx(l.default,{...t,productSortedById:ed,generateGridRowArray:el}),e.jsx(i.default,{...t,productSortedById:ed}))})]})})}),d.filterToolbarPreview(P,!0)]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),d=require("@gem-sdk/core"),a=require("../SalePageProductListWarning.js"),s=require("next/head"),l=require("./ProductListGridLayout.js"),i=require("./ProductListCarouselLayout.js"),c=require("./common/styles.js"),n=require("@gem-sdk/system"),u=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js");const h=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:P,styles:f,builderProps:p,setting:y,builderAttrs:v}=t,{isRelatedProduct:b,productSetting:T}=g.getData(t),j=T.relatedTag&&T.relatedTag[0],{isEditMode:x,isPreviewSharePageMode:I}=d.useRenderMode(),k=d.useCurrentDevice(),S=d.usePageType(),C=d.usePageStore(e=>e.dynamicProduct),O=d.usePageStore(e=>e.dynamicCollection),[w,E]=o.useState(1),[q,M]=o.useState(!0),[N,L]=o.useState(),[W,F]=o.useState(!1),G="GP_FUNNEL_PAGE"===S;"GP_COLLECTION"==S&&(T.productSrc="DynamicCollection",T.collectionId=O?.collectionId??"latest");let Q=T?.productSrc??"Collection",B=C?.productId&&C?.productId!==T.relatedProductId?C?.productId:T.relatedProductId,D=d.useFetchHandle(),A=d.usePageStore(e=>e.publicStoreFrontData),H=o.useMemo(()=>d.hasPublicStoreFrontData(A)?d.createStoreFrontFetcher(A):D,[A]),{data:_}=d.useProductQuery(b&&B?B:void 0,{revalidateOnMount:x||I},H),z=T.relatedTag&&"tags"===T.relatedTag[0]&&(!_?.tags||_?.tags.length===0),R=T.relatedTag&&"collection"===T.relatedTag[0]&&(!_?.collections?.edges||_?.collections.edges.length===0),$=T.relatedTag&&"vendor"===T.relatedTag[0]&&!_?.vendor,V=d.useProductsQueryAll(N,{revalidateOnMount:x||I},H),U=x||I,J=d.useProductsQuery("PickProduct"===Q?T?.productIds:void 0,{revalidateOnMount:U},{defaultSelectedProductCount:T?.numOfSelectedProducts}),K=o.useMemo(()=>({id:T?.collectionId??"latest",numberOfProducts:y?.numberOfProducts??4,orderBy:y?.orderBy}),[T?.collectionId,Number(y?.numberOfProducts),y?.orderBy]),X=d.useCollectionQuery("PickProduct"!==Q?K:void 0,{revalidateOnMount:U});o.useEffect(()=>{if(b&&_&&T.relatedTag&&"recommended-product"!==T.relatedType){let e;switch(F(!1),T.hasRelatedExclude&&(e=T?.relatedExclude&&T.relatedExclude.split(",").map(e=>e.trim())),T.relatedTag[0]){case"vendor":L({first:y?.numberOfProducts,where:{vendor:T.relatedTag&&"vendor"===T.relatedTag[0]?_?.vendor:"",idNEQ:_.id}});break;case"collection":{let t=_?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:_.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:_.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]}});break}case"tags":if(!_.tags||0===_.tags.length){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:_.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:_.tags},{nameNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:_.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:_.tags}]}]}})}}},[_,T.relatedType,T.relatedTag,y?.numberOfProducts,T.relatedExclude,T.hasRelatedExclude,b]);let Y="PickProduct"===Q?J.isValidating:X.isValidating,Z="PickProduct"===Q?J.isLoading:X.isLoading,ee="PickProduct"===Q?J.error:X.error,et=X.data?.collections?.edges?.[0]?.node,er="PickProduct"===Q?d.flattenConnection(J.data?.products):d.flattenConnection(et?.products),eo=V?.data?.products?d.flattenConnection(V?.data?.products):void 0,ed=b&&eo?eo:"PickProduct"===Q&&T?.productIds?.length?T?.productIds?.map(e=>er?.find(t=>t?.baseID===e)).filter(Boolean)??er:"PickProduct"!==Q?er:er.filter((e,t)=>t<(T?.numOfSelectedProducts??4)),ea=o.useMemo(()=>W&&b&&x||!ed.length&&!Z&&q&&x,[q,Z,W,b,x,ed.length]),es=o.useMemo(()=>!ed||W&&b,[W,b,ed]),el=o.useMemo(()=>{if(!y?.sameHeight)return[];let e=0,t=Math.ceil((ed?.length??0)/+(y?.slidesToShow?.[k]??1));return Array.from(Array(ed?.length??0)).map((r,o)=>(o>=+(y?.slidesToShow?.[k]??1)*(e+1)&&++e,{gridRow:`${1+w*e}/${w+1+w*e}`,marginBottom:e+1<t?m.getPropertyByDevice(f?.horizontalGutter,k):void 0}))},[y?.sameHeight,y?.slidesToShow,w,ed?.length,k,f?.horizontalGutter]),ei=o.useMemo(()=>Y||Z||ee||!ed||W&&b,[ee,Z,W,b,Y,ed]);o.useEffect(()=>{ei||setTimeout(()=>{let{builderData:e}=p??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&E(r.childElementCount||1)},x?0:500)},[p,ei,x]);let ec=o.useMemo(()=>({collection:et,products:ed,settings:{loop:y?.loop??{desktop:!1},scrollMode:y?.scrollMode??{desktop:"snap"},slidesToShow:y?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:f?.layout,dot:y?.dot,dotStyle:y?.dotStyle,arrow:y?.arrow,controlOverContent:y?.controlOverContent,sameHeight:y?.sameHeight},styles:{horizontalGutter:f?.horizontalGutter,verticalGutter:f?.verticalGutter,fullWidth:f?.fullWidth,spacing:f?.spacing,width:f?.width,height:f?.height}}),[et,ed,y,f]);if(p?.isPreview&&G)return e.jsx(e.Fragment,{});if(ea)return e.jsx(e.Fragment,{children:n.If(q,e.jsx(h,{builderAttrs:v,collectionHandle:et?.handle,productSrc:Q,onClose:()=>M(!1),children:P,relatedTagString:j,assignProductNoTags:z||R||$,noAssignedProduct:!B}))});let{productListWrapStyle:en,productListContentStyle:eu,productListWrapAlignStyle:eg}=c.getStyle(t),{productListWrapClass:em}=u.getClass(t);return e.jsxs("div",{...v,className:em,style:en,children:[!!f?.preloadBgImage&&e.jsxs(s,{children:[!!f.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage.desktop.image.src,as:"image"}),!!f.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.tablet?.image?.src,as:"image"}),!!f.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.mobile?.image?.src,as:"image"})]}),Y||Z?e.jsx(r.default,{}):ee?e.jsxs("div",{children:["Error: ",ee?.message]}):es?e.jsx("div",{children:"Products not found"}):e.jsx(d.ProductListProvider,{...ec,children:e.jsx("div",{className:"gp-flex gp-w-full",style:eg,children:e.jsxs("div",{style:eu,children:[G&&e.jsx(a.default,{}),e.jsx(e.Fragment,{children:n.If(f?.layout==="grid",e.jsx(l.default,{...t,productSortedById:ed,generateGridRowArray:el}),e.jsx(i.default,{...t,productSortedById:ed}))})]})})}),d.filterToolbarPreview(P,!0)]})};
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("@gem-sdk/system"),i=require("./ProductListCarouselLayout.liquid.js"),d=require("./ProductListGridLayout.liquid.js"),a=require("./common/styles.js"),r=require("./common/classes.js"),n=require("./common/helpers.js");exports.default=o=>{let{setting:l,styles:c,pageContext:u}=o,g=u?.pageType==="GP_FUNNEL_PAGE";if(g)return"";let{hasRelatedExclude:p,relatedExcludeTrim:f,collectionID:m,isLatestProducts:P,isGrid:$,numberOfProducts:_,productListId:h,productListHandles:y,sortedBy:v,isReverse:E,productSrc:S,productNumber:k,isSorted:L,relatedTag:b,collectionHandle:x}=n.getDataLiquid(o),R=()=>e.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("@gem-sdk/system"),i=require("./ProductListCarouselLayout.liquid.js"),d=require("./ProductListGridLayout.liquid.js"),a=require("./common/styles.js"),r=require("./common/classes.js"),n=require("./common/helpers.js");exports.default=o=>{let{setting:l,styles:c,pageContext:g}=o,u=g?.pageType==="GP_FUNNEL_PAGE";if(u)return"";let{hasRelatedExclude:p,relatedExcludeTrim:f,collectionID:m,isLatestProducts:P,isGrid:$,numberOfProducts:h,productListId:_,productListHandles:y,sortedBy:v,isReverse:E,productSrc:S,productNumber:k,isSorted:L,relatedTag:b,collectionHandle:x}=n.getDataLiquid(o),R=()=>e.template`
2
2
  ${e.RenderIf("RelatedProduct"===S,`
3
3
  assign relatedTag = '${b}'
4
4
  assign assignProduct = product
@@ -91,11 +91,11 @@
91
91
  endfor
92
92
  assign products = products | uniq
93
93
  endcase
94
- paginate products by ${_||4}
94
+ paginate products by ${h||4}
95
95
  assign products = products
96
96
  endpaginate
97
97
  `)}
98
- `,{productListWrapStyle:A,productListContentStyle:I,productListWrapAlignStyle:q}=a.getStyle(o),{productListWrapClass:j}=r.getClass(o);return e.template`
98
+ `,{productListWrapStyle:A,productListContentStyle:I,productListWrapAlignStyle:q}=a.getStyle(o),{productListWrapClass:H}=r.getClass(o);return e.template`
99
99
  ${e.RenderIf(e.isLocalEnv,`
100
100
  <script ${t.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>
101
101
  ${l?.sameHeight?`<script ${t.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-same-height-v7-5.js' | asset_url }}" defer="defer"></script>`:""}
@@ -106,7 +106,7 @@
106
106
 
107
107
  ${e.RenderIf(!!c?.preloadBgImage,`${e.RenderIf(!!c?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${e.RenderIf(!!c?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${e.RenderIf(!!c?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
108
108
  <div
109
- class="${j}"
109
+ class="${H}"
110
110
  style="${A}"
111
111
  >
112
112
  <div class='gp-flex gp-w-full' style="${q}">
@@ -140,6 +140,7 @@
140
140
  assign productSrc = '${S}'
141
141
  assign c = 0
142
142
  assign limit = ${k??4}
143
+ assign isSettingSameHeightProductList = ${l?.sameHeight??!1}
143
144
 
144
145
  if request.page_type == 'collection' or preview_page_type == 'collection'
145
146
  assign target_collection = collection
@@ -150,7 +151,7 @@
150
151
  ${t}
151
152
  endif
152
153
  endif
153
- paginate target_collection.products by ${_||4}
154
+ paginate target_collection.products by ${h||4}
154
155
  assign products = target_collection.products ${L?v:""} ${E?"| reverse":""}
155
156
  endpaginate
156
157
  else
@@ -165,7 +166,7 @@
165
166
  endfor
166
167
  assign limit = products.length
167
168
  else
168
- if ${h.length} == 0
169
+ if ${_.length} == 0
169
170
  paginate collections.all.products by 100000
170
171
  assign products = collections.all.products | sort : "created_at" | reverse
171
172
  endpaginate
@@ -177,7 +178,7 @@
177
178
  else
178
179
  ${t}
179
180
  endif
180
- paginate target_collection.products by ${_||4}
181
+ paginate target_collection.products by ${h||4}
181
182
  assign products = target_collection.products ${L?v:""} ${E?"| reverse":""}
182
183
  endpaginate
183
184
  endif
@@ -186,7 +187,7 @@
186
187
  `})()}
187
188
  ${e.template`
188
189
  {%- if products == null -%}
189
- {%- if count == 0 and ${h.length} == 0 -%}
190
+ {%- if count == 0 and ${_.length} == 0 -%}
190
191
  {% if '${S}' == 'RelatedProduct' -%}
191
192
  <div>${t.getStaticLocale("ProductList","no_related_products")}</div>
192
193
  {% else %}
@@ -194,7 +195,7 @@
194
195
  {%- endif -%}
195
196
  {%- endif -%}
196
197
  {%-else-%}
197
- ${s.If($,e.template`${d.default({...o,productListId:h,productSrc:S})}`,e.template`${i.default({...o,productListId:h,productSrc:S})}`)}
198
+ ${s.If($,e.template`${d.default({...o,productListId:_,productSrc:S})}`,e.template`${i.default({...o,productListId:_,productSrc:S})}`)}
198
199
  {%- endif -%}
199
200
  `}
200
201
  {%- assign product = gpBkProduct -%}
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),d=require("@gem-sdk/core"),s=require("../SalePageProductListWarning.js"),a=require("next/head"),l=require("./ProductListGridLayout.js"),i=require("./ProductListCarouselLayout.js"),c=require("./common/styles.js"),n=require("@gem-sdk/system"),u=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js");const h=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:P,styles:f,builderProps:p,setting:y,builderAttrs:b}=t,{isRelatedProduct:v,productSetting:I}=g.getData(t),T=I.relatedTag&&I.relatedTag[0],{isEditMode:j,isPreviewSharePageMode:x}=d.useRenderMode(),S=d.useCurrentDevice(),k=d.usePageType(),C=d.usePageStore(e=>e.dynamicProduct),O=d.usePageStore(e=>e.dynamicCollection),[w,E]=o.useState(1),[M,q]=o.useState(!0),[N,L]=o.useState(),[W,F]=o.useState(!1),G="GP_FUNNEL_PAGE"===k;"GP_COLLECTION"==k&&(I.productSrc="DynamicCollection",I.collectionId=O?.collectionId??"latest");let Q=I?.productSrc??"Collection",A=C?.productId&&C?.productId!==I.relatedProductId?C?.productId:I.relatedProductId,B=d.useFetchHandle(),D=d.usePageStore(e=>e.publicStoreFrontData),_=o.useMemo(()=>d.hasPublicStoreFrontData(D)?d.createStoreFrontFetcher(D):B,[D]),{data:z}=d.useProductQuery(v&&A?A:void 0,{revalidateOnMount:j||x},_),H=I.relatedTag&&"tags"===I.relatedTag[0]&&(!z?.tags||z?.tags.length===0),R=I.relatedTag&&"collection"===I.relatedTag[0]&&(!z?.collections?.edges||z?.collections.edges.length===0),$=I.relatedTag&&"vendor"===I.relatedTag[0]&&!z?.vendor,V=d.useProductsQueryAll(N,{revalidateOnMount:j||x},_),U=j||x,J=d.useProductsQuery("PickProduct"===Q?I?.productIds:void 0,{revalidateOnMount:U},{defaultSelectedProductCount:I?.numOfSelectedProducts}),K=o.useMemo(()=>({id:I?.collectionId??"latest",numberOfProducts:y?.numberOfProducts??4,orderBy:y?.orderBy}),[I?.collectionId,Number(y?.numberOfProducts),y?.orderBy]),X=d.useCollectionQuery("PickProduct"!==Q?K:void 0,{revalidateOnMount:U});o.useEffect(()=>{if(v&&z&&I.relatedTag&&"recommended-product"!==I.relatedType){let e;switch(F(!1),I.hasRelatedExclude&&(e=I?.relatedExclude&&I.relatedExclude.split(",").map(e=>e.trim())),I.relatedTag[0]){case"vendor":L({first:y?.numberOfProducts,where:{vendor:I.relatedTag&&"vendor"===I.relatedTag[0]?z?.vendor:"",idNEQ:z.id}});break;case"collection":{let t=z?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:z.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:z.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]}});break}case"tags":if(!z.tags||0===z.tags.length){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:z.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:z.tags},{nameNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:z.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:z.tags}]}]}})}}},[z,I.relatedType,I.relatedTag,y?.numberOfProducts,I.relatedExclude,I.hasRelatedExclude,v]);let Y="PickProduct"===Q?J.isValidating:X.isValidating,Z="PickProduct"===Q?J.isLoading:X.isLoading,ee="PickProduct"===Q?J.error:X.error,et=X.data?.collections?.edges?.[0]?.node,er="PickProduct"===Q?d.flattenConnection(J.data?.products):d.flattenConnection(et?.products),eo=d.usePageStore(e=>e.assignedProductIds),ed=d.usePageStore(e=>e.isApplyAllProducts),es=o.useMemo(()=>(eo??[]).length>0&&!ed||ed,[eo,ed]),ea=V?.data?.products&&es?d.flattenConnection(V?.data?.products):[],el=v?ea:"PickProduct"===Q&&I?.productIds?.length?I?.productIds?.map(e=>er?.find(t=>t?.baseID===e)).filter(Boolean)??er:"PickProduct"!==Q?er:er.filter((e,t)=>t<(I?.numOfSelectedProducts??4)),ei=o.useMemo(()=>W&&v&&j||!el.length&&!Z&&M&&j,[M,Z,W,v,j,el.length]),ec=o.useMemo(()=>!el||W&&v,[W,v,el]),en=o.useMemo(()=>{if(!y?.sameHeight)return[];let e=0,t=Math.ceil((el?.length??0)/+(y?.slidesToShow?.[S]??1));return Array.from(Array(el?.length??0)).map((r,o)=>(o>=+(y?.slidesToShow?.[S]??1)*(e+1)&&++e,{gridRow:`${1+w*e}/${w+1+w*e}`,marginBottom:e+1<t?m.getPropertyByDevice(f?.horizontalGutter,S):void 0}))},[y?.sameHeight,y?.slidesToShow,w,el?.length,S,f?.horizontalGutter]),eu=o.useMemo(()=>Y||Z||ee||!el||W&&v,[ee,Z,W,v,Y,el]),eg=z?.collections?.edges.map(e=>e.node?.id)??[];o.useEffect(()=>{eu||setTimeout(()=>{let{builderData:e}=p??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&E(r.childElementCount||1)},j?0:500)},[p,eu,j,eg]);let em=o.useMemo(()=>({collection:et,products:el,settings:{loop:y?.loop??{desktop:!1},scrollMode:y?.scrollMode??{desktop:"snap"},slidesToShow:y?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:f?.layout,dot:y?.dot,dotStyle:y?.dotStyle,arrow:y?.arrow,controlOverContent:y?.controlOverContent},styles:{horizontalGutter:f?.horizontalGutter,verticalGutter:f?.verticalGutter,fullWidth:f?.fullWidth,spacing:f?.spacing,width:f?.width,height:f?.height}}),[et,el,y,f]);if(p?.isPreview&&G)return e.jsx(e.Fragment,{});if(ei)return e.jsx(e.Fragment,{children:n.If(M,e.jsx(h,{builderAttrs:b,collectionHandle:et?.handle,productSrc:Q,onClose:()=>q(!1),children:P,relatedTagString:T,assignProductNoTags:H||R||$,noAssignedProduct:!A}))});let{productListWrapStyle:eh,productListContentStyle:eP,productListWrapAlignStyle:ef}=c.getStyle(t),{productListWrapClass:ep}=u.getClass(t);return e.jsxs("div",{...b,className:ep,style:eh,children:[!!f?.preloadBgImage&&e.jsxs(a,{children:[!!f.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage.desktop.image.src,as:"image"}),!!f.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.tablet?.image?.src,as:"image"}),!!f.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.mobile?.image?.src,as:"image"})]}),Y||Z?e.jsx(r.default,{}):ee?e.jsxs("div",{children:["Error: ",ee?.message]}):ec?e.jsx("div",{children:"Products not found"}):e.jsx(d.ProductListProvider,{...em,children:e.jsx("div",{className:"gp-flex gp-w-full",style:ef,children:e.jsxs("div",{style:eP,children:[G&&e.jsx(s.default,{}),e.jsx(e.Fragment,{children:n.If(f?.layout==="grid",e.jsx(l.default,{...t,productSortedById:el,generateGridRowArray:en}),e.jsx(i.default,{...t,productSortedById:el}))})]})})}),d.filterToolbarPreview(P,!0)]})};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("next/dynamic"),r=require("../../../common/components/Loading.js"),o=require("react"),d=require("@gem-sdk/core"),s=require("../SalePageProductListWarning.js"),a=require("next/head"),l=require("./ProductListGridLayout.js"),i=require("./ProductListCarouselLayout.js"),c=require("./common/styles.js"),n=require("@gem-sdk/system"),u=require("./common/classes.js"),g=require("./common/helpers.js"),m=require("../../../dialog/common/helpers.js");const h=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:P,styles:f,builderProps:p,setting:y,builderAttrs:b}=t,{isRelatedProduct:v,productSetting:I}=g.getData(t),T=I.relatedTag&&I.relatedTag[0],{isEditMode:j,isPreviewSharePageMode:x}=d.useRenderMode(),S=d.useCurrentDevice(),k=d.usePageType(),C=d.usePageStore(e=>e.dynamicProduct),O=d.usePageStore(e=>e.dynamicCollection),[w,E]=o.useState(1),[M,q]=o.useState(!0),[N,L]=o.useState(),[W,F]=o.useState(!1),G="GP_FUNNEL_PAGE"===k;"GP_COLLECTION"==k&&(I.productSrc="DynamicCollection",I.collectionId=O?.collectionId??"latest");let Q=I?.productSrc??"Collection",A=C?.productId&&C?.productId!==I.relatedProductId?C?.productId:I.relatedProductId,B=d.useFetchHandle(),D=d.usePageStore(e=>e.publicStoreFrontData),H=o.useMemo(()=>d.hasPublicStoreFrontData(D)?d.createStoreFrontFetcher(D):B,[D]),{data:_}=d.useProductQuery(v&&A?A:void 0,{revalidateOnMount:j||x},H),z=I.relatedTag&&"tags"===I.relatedTag[0]&&(!_?.tags||_?.tags.length===0),R=I.relatedTag&&"collection"===I.relatedTag[0]&&(!_?.collections?.edges||_?.collections.edges.length===0),$=I.relatedTag&&"vendor"===I.relatedTag[0]&&!_?.vendor,V=d.useProductsQueryAll(N,{revalidateOnMount:j||x},H),U=j||x,J=d.useProductsQuery("PickProduct"===Q?I?.productIds:void 0,{revalidateOnMount:U},{defaultSelectedProductCount:I?.numOfSelectedProducts}),K=o.useMemo(()=>({id:I?.collectionId??"latest",numberOfProducts:y?.numberOfProducts??4,orderBy:y?.orderBy}),[I?.collectionId,Number(y?.numberOfProducts),y?.orderBy]),X=d.useCollectionQuery("PickProduct"!==Q?K:void 0,{revalidateOnMount:U});o.useEffect(()=>{if(v&&_&&I.relatedTag&&"recommended-product"!==I.relatedType){let e;switch(F(!1),I.hasRelatedExclude&&(e=I?.relatedExclude&&I.relatedExclude.split(",").map(e=>e.trim())),I.relatedTag[0]){case"vendor":L({first:y?.numberOfProducts,where:{vendor:I.relatedTag&&"vendor"===I.relatedTag[0]?_?.vendor:"",idNEQ:_.id}});break;case"collection":{let t=_?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:_.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:_.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]}});break}case"tags":if(!_.tags||0===_.tags.length){F(!0);break}L(e&&e.length>0?{first:y?.numberOfProducts,where:{idNEQ:_.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:_.tags},{nameNotIn:e}]}]}}:{first:y?.numberOfProducts,where:{idNEQ:_.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:_.tags}]}]}})}}},[_,I.relatedType,I.relatedTag,y?.numberOfProducts,I.relatedExclude,I.hasRelatedExclude,v]);let Y="PickProduct"===Q?J.isValidating:X.isValidating,Z="PickProduct"===Q?J.isLoading:X.isLoading,ee="PickProduct"===Q?J.error:X.error,et=X.data?.collections?.edges?.[0]?.node,er="PickProduct"===Q?d.flattenConnection(J.data?.products):d.flattenConnection(et?.products),eo=d.usePageStore(e=>e.assignedProductIds),ed=d.usePageStore(e=>e.isApplyAllProducts),es=o.useMemo(()=>(eo??[]).length>0&&!ed||ed,[eo,ed]),ea=V?.data?.products&&es?d.flattenConnection(V?.data?.products):[],el=v?ea:"PickProduct"===Q&&I?.productIds?.length?I?.productIds?.map(e=>er?.find(t=>t?.baseID===e)).filter(Boolean)??er:"PickProduct"!==Q?er:er.filter((e,t)=>t<(I?.numOfSelectedProducts??4)),ei=o.useMemo(()=>W&&v&&j||!el.length&&!Z&&M&&j,[M,Z,W,v,j,el.length]),ec=o.useMemo(()=>!el||W&&v,[W,v,el]),en=o.useMemo(()=>{if(!y?.sameHeight)return[];let e=0,t=Math.ceil((el?.length??0)/+(y?.slidesToShow?.[S]??1));return Array.from(Array(el?.length??0)).map((r,o)=>(o>=+(y?.slidesToShow?.[S]??1)*(e+1)&&++e,{gridRow:`${1+w*e}/${w+1+w*e}`,marginBottom:e+1<t?m.getPropertyByDevice(f?.horizontalGutter,S):void 0}))},[y?.sameHeight,y?.slidesToShow,w,el?.length,S,f?.horizontalGutter]),eu=o.useMemo(()=>Y||Z||ee||!el||W&&v,[ee,Z,W,v,Y,el]),eg=_?.collections?.edges.map(e=>e.node?.id)??[];o.useEffect(()=>{eu||setTimeout(()=>{let{builderData:e}=p??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&E(r.childElementCount||1)},j?0:500)},[p,eu,j,eg]);let em=o.useMemo(()=>({collection:et,products:el,settings:{loop:y?.loop??{desktop:!1},scrollMode:y?.scrollMode??{desktop:"snap"},slidesToShow:y?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:f?.layout,dot:y?.dot,dotStyle:y?.dotStyle,arrow:y?.arrow,controlOverContent:y?.controlOverContent,sameHeight:y?.sameHeight},styles:{horizontalGutter:f?.horizontalGutter,verticalGutter:f?.verticalGutter,fullWidth:f?.fullWidth,spacing:f?.spacing,width:f?.width,height:f?.height}}),[et,el,y,f]);if(p?.isPreview&&G)return e.jsx(e.Fragment,{});if(ei)return e.jsx(e.Fragment,{children:n.If(M,e.jsx(h,{builderAttrs:b,collectionHandle:et?.handle,productSrc:Q,onClose:()=>q(!1),children:P,relatedTagString:T,assignProductNoTags:z||R||$,noAssignedProduct:!A}))});let{productListWrapStyle:eh,productListContentStyle:eP,productListWrapAlignStyle:ef}=c.getStyle(t),{productListWrapClass:ep}=u.getClass(t);return e.jsxs("div",{...b,className:ep,style:eh,children:[!!f?.preloadBgImage&&e.jsxs(a,{children:[!!f.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage.desktop.image.src,as:"image"}),!!f.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.tablet?.image?.src,as:"image"}),!!f.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:f.backgroundImage?.mobile?.image?.src,as:"image"})]}),Y||Z?e.jsx(r.default,{}):ee?e.jsxs("div",{children:["Error: ",ee?.message]}):ec?e.jsx("div",{children:"Products not found"}):e.jsx(d.ProductListProvider,{...em,children:e.jsx("div",{className:"gp-flex gp-w-full",style:ef,children:e.jsxs("div",{style:eP,children:[G&&e.jsx(s.default,{}),e.jsx(e.Fragment,{children:n.If(f?.layout==="grid",e.jsx(l.default,{...t,productSortedById:el,generateGridRowArray:en}),e.jsx(i.default,{...t,productSortedById:el}))})]})})}),d.filterToolbarPreview(P,!0)]})};
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("@gem-sdk/system"),i=require("./ProductListCarouselLayout.liquid.js"),d=require("./ProductListGridLayout.liquid.js"),a=require("./common/styles.js"),r=require("./common/classes.js"),n=require("./common/helpers.js");exports.default=o=>{let{setting:l,styles:c,pageContext:u}=o,g=u?.pageType==="GP_FUNNEL_PAGE";if(g)return"";let{hasRelatedExclude:p,relatedExcludeTrim:f,collectionID:m,isLatestProducts:P,isGrid:$,numberOfProducts:_,productListId:h,productListHandles:y,sortedBy:v,isReverse:E,productSrc:S,productNumber:k,isSorted:L,relatedTag:b,collectionHandle:x}=n.getDataLiquid(o),R=()=>e.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("@gem-sdk/system"),i=require("./ProductListCarouselLayout.liquid.js"),d=require("./ProductListGridLayout.liquid.js"),a=require("./common/styles.js"),r=require("./common/classes.js"),n=require("./common/helpers.js");exports.default=o=>{let{setting:l,styles:c,pageContext:g}=o,u=g?.pageType==="GP_FUNNEL_PAGE";if(u)return"";let{hasRelatedExclude:p,relatedExcludeTrim:f,collectionID:m,isLatestProducts:P,isGrid:$,numberOfProducts:h,productListId:_,productListHandles:y,sortedBy:v,isReverse:E,productSrc:S,productNumber:k,isSorted:L,relatedTag:b,collectionHandle:x}=n.getDataLiquid(o),R=()=>e.template`
2
2
  ${e.RenderIf("RelatedProduct"===S,`
3
3
  assign relatedTag = '${b}'
4
4
  assign assignProduct = product
@@ -91,11 +91,11 @@
91
91
  endfor
92
92
  assign products = products | uniq
93
93
  endcase
94
- paginate products by ${_||4}
94
+ paginate products by ${h||4}
95
95
  assign products = products
96
96
  endpaginate
97
97
  `)}
98
- `,{productListWrapStyle:A,productListContentStyle:I,productListWrapAlignStyle:q}=a.getStyle(o),{productListWrapClass:j}=r.getClass(o);return e.template`
98
+ `,{productListWrapStyle:A,productListContentStyle:I,productListWrapAlignStyle:q}=a.getStyle(o),{productListWrapClass:H}=r.getClass(o);return e.template`
99
99
  ${e.RenderIf(e.isLocalEnv,`
100
100
  <script ${t.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>
101
101
  ${l?.sameHeight?`<script ${t.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-same-height-v7-5.js' | asset_url }}" defer="defer"></script>`:""}
@@ -106,7 +106,7 @@
106
106
 
107
107
  ${e.RenderIf(!!c?.preloadBgImage,`${e.RenderIf(!!c?.backgroundImage?.desktop?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.desktop?.image?.src}" as="image" />`)}${e.RenderIf(!!c?.backgroundImage?.tablet?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.tablet?.image?.src}" as="image" />`)}${e.RenderIf(!!c?.backgroundImage?.mobile?.image?.src,`<link rel="preload" href="${c?.backgroundImage?.mobile?.image?.src}" as="image" />`)}`)}
108
108
  <div
109
- class="${j}"
109
+ class="${H}"
110
110
  style="${A}"
111
111
  >
112
112
  <div class='gp-flex gp-w-full' style="${q}">
@@ -140,6 +140,7 @@
140
140
  assign productSrc = '${S}'
141
141
  assign c = 0
142
142
  assign limit = ${k??4}
143
+ assign isSettingSameHeightProductList = ${l?.sameHeight??!1}
143
144
 
144
145
  if request.page_type == 'collection' or preview_page_type == 'collection'
145
146
  assign target_collection = collection
@@ -150,7 +151,7 @@
150
151
  ${t}
151
152
  endif
152
153
  endif
153
- paginate target_collection.products by ${_||4}
154
+ paginate target_collection.products by ${h||4}
154
155
  assign products = target_collection.products ${L?v:""} ${E?"| reverse":""}
155
156
  endpaginate
156
157
  else
@@ -165,7 +166,7 @@
165
166
  endfor
166
167
  assign limit = products.length
167
168
  else
168
- if ${h.length} == 0
169
+ if ${_.length} == 0
169
170
  paginate collections.all.products by 100000
170
171
  assign products = collections.all.products | sort : "created_at" | reverse
171
172
  endpaginate
@@ -177,7 +178,7 @@
177
178
  else
178
179
  ${t}
179
180
  endif
180
- paginate target_collection.products by ${_||4}
181
+ paginate target_collection.products by ${h||4}
181
182
  assign products = target_collection.products ${L?v:""} ${E?"| reverse":""}
182
183
  endpaginate
183
184
  endif
@@ -186,7 +187,7 @@
186
187
  `})()}
187
188
  ${e.template`
188
189
  {%- if products == null -%}
189
- {%- if count == 0 and ${h.length} == 0 -%}
190
+ {%- if count == 0 and ${_.length} == 0 -%}
190
191
  {% if '${S}' == 'RelatedProduct' -%}
191
192
  <div>${t.getStaticLocale("ProductList","no_related_products")}</div>
192
193
  {% else %}
@@ -194,7 +195,7 @@
194
195
  {%- endif -%}
195
196
  {%- endif -%}
196
197
  {%-else-%}
197
- ${s.If($,e.template`${d.default({...o,productListId:h,productSrc:S})}`,e.template`${i.default({...o,productListId:h,productSrc:S})}`)}
198
+ ${s.If($,e.template`${d.default({...o,productListId:_,productSrc:S})}`,e.template`${i.default({...o,productListId:_,productSrc:S})}`)}
198
199
  {%- endif -%}
199
200
  `}
200
201
  {%- assign product = gpBkProduct -%}
@@ -1,13 +1,13 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../carousel-v3/components/item/CarouselItem.liquid.js"),r=require("../../../carousel-v3/components/root/Carousel.liquid.js"),i=require("./common/helpers.js"),o=require("./common/classes.js"),s=require("./common/styles.js"),d=require("../../../helpers.js"),u=require("./ProductListCarouselItem.liquid.js");exports.default=a=>{let{builderProps:l,advanced:c,productSrc:n,productListId:p}=a,{carouselConfigSetting:m,carouselConfigStyle:f}=i.getData(a),{carouselItemStyle:g}=s.getStyle(a),{carouselClass:v}=o.getClass(a);return e.template`
2
- ${r.default({advanced:c,builderProps:{...l},rootAttrs:{"items-repeat":"true"},rootId:`product-list-carousel-${l?.uid}`,rootClass:v,setting:m,styles:f,isProductList:!0,children:`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../carousel-v3/components/item/CarouselItem.liquid.js"),r=require("../../../carousel-v3/components/root/Carousel.liquid.js"),i=require("./common/helpers.js"),o=require("./common/classes.js"),s=require("./common/styles.js"),d=require("../../../helpers.js"),u=require("./ProductListCarouselItem.liquid.js");exports.default=l=>{let{builderProps:a,advanced:c,productSrc:n,productListId:p}=l,{carouselConfigSetting:m,carouselConfigStyle:f}=i.getData(l),{carouselItemStyle:g}=s.getStyle(l),{carouselClass:_}=o.getClass(l);return e.template`
2
+ ${r.default({advanced:c,builderProps:{...a},rootAttrs:{"items-repeat":"true"},rootId:`product-list-carousel-${a?.uid}`,rootClass:_,setting:m,styles:f,isProductList:!0,children:`
3
3
  {%- assign count = 0 -%}
4
4
  {%- for product in products limit: limit -%}
5
5
  {%- if product.id != empty -%}
6
6
  {%- assign count = count | plus: 1 -%}
7
7
  {%- assign variant = product.selected_or_first_available_variant -%}
8
- {%- assign product_form_id = 'product-form-' | append: "${l?.uid}" | append: product.id -%}
9
- ${t.default({builderProps:{...l},style:g,parentId:`product-list-carousel-${l?.uid} gp-child-item-${l?.uid}`,parentStyle:f,parentSettings:m,background:m?.background,children:`
10
- ${u.default({...a})}
8
+ {%- assign product_form_id = 'product-form-' | append: "${a?.uid}" | append: product.id -%}
9
+ ${t.default({builderProps:{...a},style:g,parentId:`product-list-carousel-${a?.uid} gp-child-item-${a?.uid}`,parentStyle:f,parentSettings:m,background:m?.background,children:`
10
+ ${u.default({...l})}
11
11
  `})}
12
12
  {%- endif -%}
13
13
  {% endfor %}
@@ -18,5 +18,5 @@
18
18
  <div>${d.getStaticLocale("ProductList","no_products_found")}</div>
19
19
  {%- endif -%}
20
20
  {%- endif -%}
21
- `})}
21
+ `,carouselType:"product_list"})}
22
22
  `};
@@ -2,6 +2,16 @@
2
2
  ${i.Liquid("{%- assign optionRendered = false -%}")}
3
3
  ${i.Liquid("{%- assign swatches = shop.metafields.GEMPAGES.swatchesJSONFormat.value -%}")}
4
4
 
5
+ ${i.Liquid(`{%- assign variantPresetString = "${r}" -%}
6
+ {%- assign optionName = option.name | replace: "'", "&apos;" | replace: '"', "&quot;" -%}
7
+ {%- assign items = variantPresetString | split: '($2)' -%}
8
+ {%- assign type = 'dropdown' -%}
9
+ {% for item in items %}
10
+ {%- assign itemPreset = item | split: '($1)' -%}
11
+ {% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
12
+ {% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
13
+ {% endfor %}`)}
14
+
5
15
  ${i.Liquid(`{% for swatch in swatches %}
6
16
  {%- assign optionTitle = swatch.optionTitle -%}
7
17
  {%- assign optionType = swatch.optionType -%}
@@ -21,21 +31,10 @@
21
31
  {%- assign imageUrls = imageUrlsString | split: '${s.OPTION_VALUES_DELIMITER}' | slice: 0, imageUrlsString.size -%}
22
32
 
23
33
  {% if optionTitle == option.name %}
24
- {%- assign variantPresetString = "${r}" -%}
25
- {%- assign optionName = option.name | replace: "'", "&apos;" | replace: '"', "&quot;" -%}
26
- {%- assign items = variantPresetString | split: '($2)' -%}
27
- {%- assign type = 'dropdown' -%}
28
-
29
- {% for item in items %}
30
- {%- assign itemPreset = item | split: '($1)' -%}
31
- {% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
32
- {% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
33
- {% endfor %}
34
34
  {%- assign optionRendered = true -%}
35
-
36
35
  ${t({showDropdown:!0})}
37
36
  {% endif %}
38
37
  {% endfor %}`)}
39
38
 
40
- ${i.LiquidIf("optionRendered == false",t({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
39
+ ${i.LiquidIf("optionRendered == false",t({showDropdown:!0,isRenderDefault:!0,typeOfOption:"optionType"}))}
41
40
  `};
@@ -3,6 +3,16 @@
3
3
  ${i.Liquid("{%- assign swatches = shop.metafields.GEMPAGES.swatches -%}")}
4
4
  ${i.Liquid("{%- assign swatchesItems = swatches | split: '($1)' -%}")}
5
5
 
6
+ ${i.Liquid(`{%- assign variantPresetString = "${a}" -%}
7
+ {%- assign optionName = option.name | replace: "'", "&apos;" | replace: '"', "&quot;" -%}
8
+ {%- assign items = variantPresetString | split: '($2)' -%}
9
+ {%- assign type = 'dropdown' -%}
10
+ {% for item in items %}
11
+ {%- assign itemPreset = item | split: '($1)' -%}
12
+ {% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
13
+ {% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
14
+ {% endfor %}`)}
15
+
6
16
  ${i.LiquidFor("swatchesItem in swatchesItems",`
7
17
  ${i.Liquid('{%- assign colorArraysString = "" -%}')}
8
18
  ${i.Liquid('{%- assign labelsString = "" -%}')}
@@ -48,19 +58,10 @@
48
58
  ${i.Liquid("{%- assign imageUrls = imageUrlsString | split: '($8)' -%}")}
49
59
 
50
60
  ${i.LiquidIf("optionTitle == option.name",`
51
- ${i.Liquid(`{%- assign variantPresetString = "${a}" -%}`)}
52
- ${i.Liquid('{%- assign optionName = option.name | replace: "\'", "&apos;" | replace: \'"\', "&quot;" -%}')}
53
- ${i.Liquid("{%- assign items = variantPresetString | split:'($2)' -%}")}
54
- ${i.Liquid("{%- assign type = 'dropdown' -%}")}
55
- ${i.LiquidFor("item in items",`
56
- ${i.Liquid("{%- assign itemPreset = item | split:'($1)' -%}")}
57
- ${i.LiquidIf("itemPreset[0] == optionName",i.Liquid("{%- assign type = itemPreset[1] -%}"))}
58
- ${i.LiquidIf('itemPreset[0] == "base"',i.Liquid("{%- assign type = itemPreset[1] -%}"))}
59
- `)}
60
61
  ${i.Liquid("{%- assign optionRendered = true -%}")}
61
62
  ${t({showDropdown:!0})}
62
63
  `)}
63
64
  `)}
64
65
 
65
- ${i.LiquidIf("optionRendered == false",t({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
66
+ ${i.LiquidIf("optionRendered == false",t({showDropdown:!0,isRenderDefault:!0,typeOfOption:"optionType"}))}
66
67
  `};
@@ -1,7 +1,7 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@gem-sdk/core"),e=require("../../../grid/components/row/Row.liquid.js"),i=require("@gem-sdk/system"),r=require("../../../helpers.js"),a=require("./common/helpers.js");exports.default=d=>{let{children:o,setting:n,style:s,builderProps:c,rawChildren:l,advanced:p}=d,{isSyncProduct:u,productSetting:f}=n??{},g=f?.hasPreSelected??!1,{rowSetting:m,rowStyles:_,formatVariantId:v,formatProductId:y,productStatus:$,preSelectedOptionIds:S,productHandle:I,advancedStyle:q}=a.getData(d);return t.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("@gem-sdk/core"),e=require("../../../grid/components/row/Row.liquid.js"),i=require("@gem-sdk/system"),a=require("../../../helpers.js"),r=require("./common/helpers.js");exports.default=d=>{let{children:s,setting:n,style:o,builderProps:c,rawChildren:l,advanced:p}=d,{isSyncProduct:u,productSetting:f}=n??{},g=f?.hasPreSelected??!1,{rowSetting:m,rowStyles:_,formatVariantId:v,formatProductId:y,productStatus:$,preSelectedOptionIds:S,productHandle:I,advancedStyle:P}=r.getData(d);return t.template`
2
2
  ${t.template`
3
3
  {%- assign gpBkProduct = product -%}
4
- ${i.If($==a.DYNAMIC_PRODUCT_STATUS,t.template`
4
+ ${i.If($==r.DYNAMIC_PRODUCT_STATUS,t.template`
5
5
  {%- liquid
6
6
  if request.page_type != 'product'
7
7
  assign product = all_products['${I}']
@@ -20,8 +20,8 @@
20
20
  `,t.template`
21
21
  {%- liquid
22
22
  if request.page_type == 'product'
23
- if '${$}' == '${a.STATIC_PRODUCT_STATUS}'
24
- if '${y}' == '${a.PRODUCT_ID_LATEST}'
23
+ if '${$}' == '${r.STATIC_PRODUCT_STATUS}'
24
+ if '${y}' == '${r.PRODUCT_ID_LATEST}'
25
25
  paginate collections.all.products by 100000
26
26
  assign product = collections.all.products | sort: 'created_at' | reverse | first
27
27
  endpaginate
@@ -40,7 +40,7 @@
40
40
  endif
41
41
  endif
42
42
  else
43
- if '${y}' == '${a.PRODUCT_ID_LATEST}'
43
+ if '${y}' == '${r.PRODUCT_ID_LATEST}'
44
44
  paginate collections.all.products by 100000
45
45
  assign product = collections.all.products | sort: 'created_at'| reverse | first
46
46
  endpaginate
@@ -73,11 +73,14 @@
73
73
  {%-if variant == empty or variant == null -%}
74
74
  {%- assign variant = product.selected_or_first_available_variant -%}
75
75
  {%- endif -%}
76
+ {% unless isSettingSameHeightProductList %}
77
+ {%- assign isSettingSameHeightProductList = false -%}
78
+ {% endunless %}
76
79
  `}
77
80
  <gp-product
78
81
  data-uid="${c?.uid}"
79
82
  data-id="${c?.uid}"
80
- style="${q}"
83
+ style="${P}"
81
84
  class="${p?.cssClass}"
82
85
  gp-context='{"productId": {{ product.id }}, "preSelectedOptionIds": [${S}], "isSyncProduct": "${u}", "hasPreSelected": ${g}, "variantSelected": {{ variant | json | escape }}, "inventory_management": {{ variant.inventory_management | json | escape }}, "inventory_policy": {{ variant.inventory_policy | json | escape }}, "inventoryQuantity": {{ variant.inventory_quantity | default: 0 }}, "quantity": 1, "formId": "{{ product_form_id }}" }'
83
86
  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 }}}'
@@ -87,13 +90,13 @@
87
90
  <input type="hidden" name="id" value="{{ variant.id }}" />
88
91
  <input type="hidden" name="quantity" value="{{ quantity }}" />
89
92
  <button type="submit" onclick="return false;" style="display:none;"></button>
90
- ${e.default({builderProps:{...c,uid:c?.uid,uidInteraction:`${c?.uid}-row`},style:s,styles:_,setting:m,children:o,rawChildren:l})}
93
+ ${e.default({builderProps:{...c,uid:c?.uid,uidInteraction:`${c?.uid}-row`},style:o,styles:_,setting:m,children:s,rawChildren:l})}
91
94
  {%- endform -%}
92
95
  </product-form>
93
96
  </gp-product>
94
97
  {%- assign product = gpBkProduct -%}
95
98
  `,t.template`
96
- <div class="gp-text-center">${r.getStaticLocale("Product","product_not_found")}</div>
99
+ <div class="gp-text-center">${a.getStaticLocale("Product","product_not_found")}</div>
97
100
  `)}
98
- ${t.RenderIf(t.isLocalEnv,`<script ${r.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${r.getSettingPreloadData('class="gps-link" delay',"src")}="${t.baseAssetURL}/assets-v2/gp-product-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
101
+ ${t.RenderIf(t.isLocalEnv,`<script ${a.getSettingPreloadData('class="gps-link" delay',"src")}="{{ 'gp-product-v7-5.js' | asset_url }}" defer="defer"></script>`,`<script ${a.getSettingPreloadData('class="gps-link" delay',"src")}="${t.baseAssetURL}/assets-v2/gp-product-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}" defer="defer"></script>`)}
99
102
  `};
@@ -1 +1 @@
1
- "use strict";var e=require("./components/product-wrap/Product.js");require("react/jsx-runtime"),require("next/link"),require("@gem-sdk/core"),require("react"),require("@gem-sdk/system"),require("../notification/components/Notifications.js"),require("../notification/components/Notice.js"),require("./components/product-button/types.js"),require("./components/product-variants/components/variants/index.js"),require("next/image"),require("../modal/components/confirm.js"),require("react-dom"),require("../video/components/Video.js"),require("@gem-sdk/keen-slider/react");var t=require("./components/product-quick-view/QuickView.js");require("./components/constants/product-bundle.js");var r=require("./components/product-list-v3/ProductList.js"),u=require("./components/product-list/ProductList.js");require("./components/product-bundle/common/styles.js"),require("./components/product-bundle/common/classes.js"),require("./components/product-badge/constants.js"),require("./components/product-badge/types.js"),require("./components/product-badge/utils/shape.js");var s=require("./settings/Product.js"),o=require("./settings/ProductQuantity.js"),i=require("./settings/ProductTitle.js"),d=require("./settings/ProductButton.js"),c=require("./settings/ProductPrice.js"),n=require("./settings/ProductVariants.js"),a=require("./settings/ProductImages.js"),p=require("./settings/product-image-v3/ProductImages.js"),l=require("./settings/product-image-v2/ProductImages.js"),P=require("./settings/ProductDescription.js"),q=require("./settings/ProductProperties.js"),m=require("./settings/ProductTag.js"),g=require("./settings/ProductListV3.js"),j=require("./settings/ProductList.js"),f=require("./settings/DynamicCheckout.js"),V=require("./settings/Vendor.js"),k=require("./settings/Sku.js"),v=require("./components/product-bundle/setting/ProductBundleDiscount.js"),x=require("./components/product-bundle/setting/ProductBundleDiscountItem.js"),b=require("./settings/ProductViewMore.js"),y=require("./settings/ProductBadge.js"),B=require("./components/file-upload/settings/index.js");const D={Product:s.default,ProductQuantity:o.default,ProductTitle:i.default,ProductButton:d.default,ProductPrice:c.default,ProductVariants:n.default,ProductImages:a.default,ProductImagesV2:l.default,ProductImagesV3:p.default,ProductDescription:P.default,ProductProperties:q.default,ProductTag:m.default,ProductListV3:g.default,ProductList:j.default,DynamicCheckout:f.default,ProductVendor:V.default,ProductSku:k.default,ProductBundleDiscount:v.default,ProductBundleDiscountItem:x.default,ProductViewMore:b.default,ProductBadge:y.default,FileUpload:B.default};exports.Product=e.default,exports.ProductQuickView=t.default,exports.ProductListV3=r.default,exports.ProductList=u.default,exports.productSetting=D;
1
+ "use strict";var e=require("./components/product-wrap/Product.js");require("react/jsx-runtime"),require("next/link"),require("@gem-sdk/core"),require("react"),require("@gem-sdk/system"),require("../notification/components/Notifications.js"),require("../notification/components/Notice.js"),require("./components/product-button/types.js"),require("./components/product-variants/components/variants/index.js"),require("next/image"),require("../carousel-v3/components/swiper/Swiper.js"),require("../modal/components/confirm.js"),require("react-dom"),require("../video/components/Video.js"),require("@gem-sdk/keen-slider/react");var t=require("./components/product-quick-view/QuickView.js");require("./components/constants/product-bundle.js");var r=require("./components/product-list-v3/ProductList.js"),u=require("./components/product-list/ProductList.js");require("./components/product-bundle/common/styles.js"),require("./components/product-bundle/common/classes.js"),require("./components/product-badge/constants.js"),require("./components/product-badge/types.js"),require("./components/product-badge/utils/shape.js");var s=require("./settings/Product.js"),o=require("./settings/ProductQuantity.js"),i=require("./settings/ProductTitle.js"),c=require("./settings/ProductButton.js"),d=require("./settings/ProductPrice.js"),n=require("./settings/ProductVariants.js"),a=require("./settings/ProductImages.js"),p=require("./settings/product-image-v3/ProductImages.js"),l=require("./settings/product-image-v2/ProductImages.js"),P=require("./settings/ProductDescription.js"),q=require("./settings/ProductProperties.js"),m=require("./settings/ProductTag.js"),g=require("./settings/ProductListV3.js"),j=require("./settings/ProductList.js"),f=require("./settings/DynamicCheckout.js"),V=require("./settings/Vendor.js"),k=require("./settings/Sku.js"),v=require("./components/product-bundle/setting/ProductBundleDiscount.js"),x=require("./components/product-bundle/setting/ProductBundleDiscountItem.js"),b=require("./settings/ProductViewMore.js"),w=require("./settings/ProductBadge.js"),y=require("./components/file-upload/settings/index.js");const B={Product:s.default,ProductQuantity:o.default,ProductTitle:i.default,ProductButton:c.default,ProductPrice:d.default,ProductVariants:n.default,ProductImages:a.default,ProductImagesV2:l.default,ProductImagesV3:p.default,ProductDescription:P.default,ProductProperties:q.default,ProductTag:m.default,ProductListV3:g.default,ProductList:j.default,DynamicCheckout:f.default,ProductVendor:V.default,ProductSku:k.default,ProductBundleDiscount:v.default,ProductBundleDiscountItem:x.default,ProductViewMore:b.default,ProductBadge:w.default,FileUpload:y.default};exports.Product=e.default,exports.ProductQuickView=t.default,exports.ProductListV3=r.default,exports.ProductList=u.default,exports.productSetting=B;
@@ -1 +1 @@
1
- "use strict";var i=require("./ui/ImageListNavigation.js"),o=require("./ui/FeatureNavigation.js"),e=require("./ui/FeatureDots.js");const t='((type == "slider" || position == "left" || position == "right") && position !== "one-col" && position != "two-col")',n='(["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position))',l=[{label:"Layout",controls:[{layout:"vertical",setting:{id:"position"},options:{isComboLayout:!0},controls:[{label:"Ratio",type:"control",setting:{id:"ratioLayout"},layout:"vertical",conditionDisplay:'position == "left"'},{label:"Ratio",type:"control",setting:{id:"ratioLayoutRight"},layout:"vertical",conditionDisplay:'position == "right"'}]}]},{label:"Featured image",conditionDisplay:n,controls:[{setting:{id:"ftShape"},hiddenOnMobile:!0,layout:"vertical",controlChangeTrigger:{settings:[{condition:"ftShape.shape === 'original'",source:["ftShape"],action:{controlId:"ftLayout",newValue:"contain",groupType:"style",controlType:"style"}}],options:{noRecordHistory:!0}}},{conditionDisplay:"ftShape.shape !== 'original'",label:"Image scale",setting:{id:"ftLayout"}},{...e.FeatureDots,hiddenOnMobile:!0,conditionDisplay:`${n} && position === "only-feature"`},{...o.FeatureNavigation,hiddenOnMobile:!0,conditionDisplay:`${n}`}],moreSettings:{type:"collapse",controls:[{label:"Corner",setting:{id:"ftCorner"},hiddenOnMobile:!0},{type:"combo",label:"Hover action",conditionDisplay:n,iconName:"gp-trigger-action-hover",getValueFromSettingID:"hoverEffect",isShowSettingTitle:!0,defaultValueWhenClear:"none",compoDefaultValue:"zoom",hiddenOnMobile:!0,controls:[{label:"When hover",setting:{id:"hoverEffect"}},{label:"Zoom type",conditionDisplay:'hoverEffect == "zoom"',setting:{id:"zoomType"}},{label:"Zoom value",conditionDisplay:'hoverEffect == "zoom"',setting:{id:"zoom"}},{label:"Other image",conditionDisplay:'hoverEffect == "other"',setting:{id:"otherImage"}}]},{type:"combo",label:"Click action",hiddenOnMobile:!0,iconName:"gp-trigger-action-click",conditionDisplay:n,getValueFromSettingID:"ftClickOpenLightBox",isShowSettingTitle:!0,defaultValueWhenClear:"none",compoDefaultValue:"popup",controls:[{label:"After click",setting:{id:"ftClickOpenLightBox"}},{label:"Open new tab",setting:{id:"ftClickOpenNewTab"},conditionDisplay:'ftClickOpenLightBox === "product-link"'}]},{type:"control",label:"Slide speed",setting:{id:"ftAnimationSpeed"}},{type:"control",label:"Animation",setting:{id:"ftAnimationMode"}},{label:"Drag / swipe",setting:{id:"ftDragToScroll"}},{label:"Infinity loop",setting:{id:"ftLoop"}}]}},{label:"Image list",conditionDisplay:'(position !== "only-feature")',controls:[{label:"Display",hiddenOnMobile:!0,conditionDisplay:'position === "bottom-center" || position === "bottom-left" || position === "inside-bottom"',setting:{id:"type"}},{setting:{id:"shape"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["left", "right"].includes(position)'},{setting:{id:"shapeForBottom"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["bottom-left", "bottom-center"].includes(position)'},{setting:{id:"shapeForInsideBottom"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["inside-bottom"].includes(position)'},{setting:{id:"shapeForInside"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["inside-left", "inside-right"].includes(position)'},{setting:{id:"shapeForFtOnly"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "only-feature"'},{setting:{id:"shapeFor2Col"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "two-col"'},{setting:{id:"shapeFor1Col"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "one-col"'},{label:"Image gap",setting:{id:"itemSpacing"}},{conditionDisplay:"(position == 'one-col' && shapeFor1Col.shape !== 'original') || (position == 'two-col' && shapeFor2Col.shape !== 'original') || (position == 'only-feature' && shapeForFtOnly.shape !== 'original') || ([\"inside-left\", \"inside-right\"].includes(position) && shapeForInside.shape !== 'original') || ([\"inside-bottom\"].includes(position) && shapeForInsideBottom.shape !== 'original') || ([\"bottom-left\", \"bottom-center\"].includes(position) && shapeForBottom.shape !== 'original') || ([\"left\", \"right\"].includes(position) && shape.shape !== 'original')",label:"Image scale",setting:{id:"layout"}},{...i.ImageListNavigation,hiddenOnMobile:!0,conditionDisplay:t}],moreSettings:{type:"collapse",controls:[{label:"Corner",hiddenOnMobile:!0,setting:{id:"corner"}},{label:"Active border",hiddenOnMobile:!0,conditionDisplay:'!["one-col", "two-col"].includes(position)',setting:{id:"borderActive"}},{type:"combo",label:"Hover action",conditionDisplay:'(position == "one-col" || position == "two-col")',iconName:"gp-trigger-action-hover",getValueFromSettingID:"galleryHoverEffect",defaultValueWhenClear:"none",hiddenOnMobile:!0,compoDefaultValue:"zoom",controls:[{label:"When hover",setting:{id:"galleryHoverEffect"},conditionDisplay:'galleryHoverEffect == "none"'},{label:"Zoom type",conditionDisplay:'galleryHoverEffect == "zoom"',setting:{id:"galleryZoomType"}},{label:"Zoom value",conditionDisplay:'galleryHoverEffect == "zoom"',setting:{id:"galleryZoom"}},{label:"Other image",conditionDisplay:'galleryHoverEffect == "other"',setting:{id:"otherImage"}}]},{label:"Click action",setting:{id:"clickOpenLightBox"}},{conditionDisplay:t,label:"Drag / swipe",setting:{id:"dragToScroll"}},{conditionDisplay:t,label:"Infinity loop",setting:{id:"loop"}}]}},{label:"Item spacing",hiddenOnMobile:!0,conditionDisplay:'["bottom-center", "left", "right", "inside-bottom", "inside-left", "inside-right"].includes(position)',controls:[{label:"Gap",setting:{id:"spacing"}}]},{label:"Display condition",controls:[{conditionDisplay:'["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position)',label:"Default item",setting:{id:"preDisplay"}},{label:"Image list",setting:{id:"filterByVariant"}}],messageConfig:{type:"info",message:'Image list can display based on the selected variants. <a class="text-white" target="_blank" href="https://gempages.co/display-selected-variant">How to setup</a>'}},{label:"Optimize LCP",controls:[{label:"Preload",conditionDisplay:'["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position)',setting:{id:"preload"}},{label:"Quality",setting:{id:"qualityType"},conditionDisplay:"preload === false"},{layout:"horizontal",label:"Quality",conditionDisplay:'qualityType == "custom" && preload === false',setting:{id:"qualityPercent"}}]},{hiddenOnMobile:!0,controls:[{label:"Align",setting:{id:"align"},options:{labelVariant:"primary"}}]}];exports.SettingUIV2=l;
1
+ "use strict";var i=require("./ui/ImageListNavigation.js"),o=require("./ui/FeatureNavigation.js"),e=require("./ui/FeatureDots.js");const t='((type == "slider" || position == "left" || position == "right") && position !== "one-col" && position != "two-col")',n='(["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position))',l=[{label:"Layout",controls:[{layout:"vertical",setting:{id:"position"},options:{isComboLayout:!0},controls:[{label:"Ratio",type:"control",setting:{id:"ratioLayout"},layout:"vertical",conditionDisplay:'position == "left"'},{label:"Ratio",type:"control",setting:{id:"ratioLayoutRight"},layout:"vertical",conditionDisplay:'position == "right"'}]}]},{label:"Featured image",conditionDisplay:n,controls:[{setting:{id:"ftShape"},hiddenOnMobile:!0,layout:"vertical",controlChangeTrigger:{settings:[{condition:"ftShape.shape === 'original'",source:["ftShape"],action:{controlId:"ftLayout",newValue:"contain",groupType:"style",controlType:"style"}}],options:{noRecordHistory:!0}}},{conditionDisplay:"ftShape.shape !== 'original'",label:"Image scale",setting:{id:"ftLayout"}},{...e.FeatureDots,hiddenOnMobile:!0,conditionDisplay:`${n} && position === "only-feature"`},{...o.FeatureNavigation,hiddenOnMobile:!0,conditionDisplay:`${n}`}],moreSettings:{type:"collapse",controls:[{label:"Corner",setting:{id:"ftCorner"},hiddenOnMobile:!0},{type:"combo",label:"Hover action",conditionDisplay:n,iconName:"gp-trigger-action-hover",getValueFromSettingID:"hoverEffect",isShowSettingTitle:!0,defaultValueWhenClear:"none",compoDefaultValue:"zoom",hiddenOnMobile:!0,controls:[{label:"When hover",setting:{id:"hoverEffect"}},{label:"Zoom type",conditionDisplay:'hoverEffect == "zoom"',setting:{id:"zoomType"}},{label:"Zoom value",conditionDisplay:'hoverEffect == "zoom"',setting:{id:"zoom"}},{label:"Other image",conditionDisplay:'hoverEffect == "other"',setting:{id:"otherImage"}}]},{type:"combo",label:"Click action",hiddenOnMobile:!0,iconName:"gp-trigger-action-click",conditionDisplay:n,getValueFromSettingID:"ftClickOpenLightBox",isShowSettingTitle:!0,defaultValueWhenClear:"none",compoDefaultValue:"popup",controls:[{label:"After click",setting:{id:"ftClickOpenLightBox"}},{label:"Open new tab",setting:{id:"ftClickOpenNewTab"},conditionDisplay:'ftClickOpenLightBox === "product-link"'}]},{type:"control",label:"Slide speed",setting:{id:"ftAnimationSpeed"}},{type:"control",label:"Animation",setting:{id:"ftAnimationMode"}},{label:"Drag / swipe",setting:{id:"ftDragToScroll"}},{label:"Infinity loop",setting:{id:"ftLoop"}}]}},{label:"Image list",conditionDisplay:'(position !== "only-feature")',controls:[{label:"Display",hiddenOnMobile:!0,conditionDisplay:'position === "bottom-center" || position === "bottom-left" || position === "inside-bottom"',setting:{id:"type"}},{setting:{id:"shape"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["left", "right"].includes(position)'},{setting:{id:"shapeForBottom"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["bottom-left", "bottom-center"].includes(position)'},{setting:{id:"shapeForInsideBottom"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["inside-bottom"].includes(position)'},{setting:{id:"shapeForInside"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'["inside-left", "inside-right"].includes(position)'},{setting:{id:"shapeForFtOnly"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "only-feature"'},{setting:{id:"shapeFor2Col"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "two-col"'},{setting:{id:"shapeFor1Col"},hiddenOnMobile:!0,layout:"vertical",conditionDisplay:'position == "one-col"'},{label:"Image gap",setting:{id:"itemSpacing"}},{conditionDisplay:"(position == 'one-col' && shapeFor1Col.shape !== 'original') || (position == 'two-col' && shapeFor2Col.shape !== 'original') || (position == 'only-feature' && shapeForFtOnly.shape !== 'original') || ([\"inside-left\", \"inside-right\"].includes(position) && shapeForInside.shape !== 'original') || ([\"inside-bottom\"].includes(position) && shapeForInsideBottom.shape !== 'original') || ([\"bottom-left\", \"bottom-center\"].includes(position) && shapeForBottom.shape !== 'original') || ([\"left\", \"right\"].includes(position) && shape.shape !== 'original')",label:"Image scale",setting:{id:"layout"}},{...i.ImageListNavigation,hiddenOnMobile:!0,conditionDisplay:t}],moreSettings:{type:"collapse",controls:[{label:"Corner",hiddenOnMobile:!0,setting:{id:"corner"}},{label:"Active border",hiddenOnMobile:!0,conditionDisplay:'!["one-col", "two-col"].includes(position)',setting:{id:"borderActive"}},{type:"combo",label:"Hover action",conditionDisplay:'(position == "one-col" || position == "two-col")',iconName:"gp-trigger-action-hover",getValueFromSettingID:"galleryHoverEffect",defaultValueWhenClear:"none",hiddenOnMobile:!0,compoDefaultValue:"zoom",controls:[{label:"When hover",setting:{id:"galleryHoverEffect"},conditionDisplay:'galleryHoverEffect == "none"'},{label:"Zoom type",conditionDisplay:'galleryHoverEffect == "zoom"',setting:{id:"galleryZoomType"}},{label:"Zoom value",conditionDisplay:'galleryHoverEffect == "zoom"',setting:{id:"galleryZoom"}},{label:"Other image",conditionDisplay:'galleryHoverEffect == "other"',setting:{id:"otherImage"}}]},{label:"Click action",setting:{id:"clickOpenLightBox"}},{conditionDisplay:t,label:"Drag / swipe",setting:{id:"dragToScroll"}},{conditionDisplay:t,label:"Infinity loop",setting:{id:"loop"}}]}},{label:"Item spacing",hiddenOnMobile:!0,conditionDisplay:'["bottom-center", "left", "right", "inside-bottom", "inside-left", "inside-right"].includes(position)',controls:[{label:"Gap",setting:{id:"spacing"}}]},{label:"Display condition",controls:[{conditionDisplay:'["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position)',label:"Default item",setting:{id:"preDisplay"}},{label:"Image list",setting:{id:"filterByVariant"}}],messageConfig:{type:"info",message:'Image list can display based on the selected variants. <a class="text-white" target="_blank" href="https://gempages.co/display-selected-variant">How to setup</a>'}},{label:"Optimize LCP",controls:[{label:"Preload",conditionDisplay:'["bottom-center", "left", "right", "only-feature", "inside-bottom", "inside-left", "inside-right"].includes(position)',setting:{id:"preload"}},{label:"Quality",setting:{id:"qualityType"},conditionDisplay:'preload === false || (preload === true && (position === "one-col" || position === "two-col"))'},{layout:"horizontal",label:"Quality",conditionDisplay:'qualityType == "custom" && (preload === false || (preload === true && (position === "one-col" || position === "two-col")))',setting:{id:"qualityPercent"}}]},{hiddenOnMobile:!0,controls:[{label:"Align",setting:{id:"align"},options:{labelVariant:"primary"}}]}];exports.SettingUIV2=l;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("react");exports.default=o=>{let{width:l,position:s}=o??{},p=e.makeStyleResponsive("w",l),a=e.usePageStore(e=>"interaction"===e.sidebarMode),b=e.useCurrentDevice(),d=(e,t)=>({[`--left${t}`]:"top"==e?"0":"50%",[`--t${t}`]:"top"==e?"unset":"translateX(-50%)"}),i=t.useMemo(()=>({...d(s?.desktop,""),...d(s?.tablet??s?.desktop,"-tablet"),...d(s?.mobile??s?.tablet??s?.desktop,"-mobile")}),[s?.desktop,s?.mobile,s?.tablet]),k=t.useMemo(()=>{if(a&&s?.[b]==="top")return"40px"},[b,a,s]),r=t.useMemo(()=>({"--d":(o?.display?.desktop,"block"),"--d-tablet":(o?.display?.tablet??o?.display?.desktop,"block"),"--d-mobile":(o?.display?.mobile??o?.display?.tablet??o?.display?.desktop,"block")}),[o?.display?.desktop,o?.display?.mobile,o?.display?.tablet]),m=t.useMemo(()=>({"--top":k??"auto","--top-tablet":k??"auto","--top-mobile":k??"auto",[`--${s?.desktop}`]:k??"0px",[`--${s?.tablet??s?.desktop}-tablet`]:k??"0px",[`--${s?.mobile??s?.tablet??s?.desktop}-mobile`]:k??"0px"}),[k,s?.desktop,s?.mobile,s?.tablet]),u=e=>"top"==e?"sticky":"fixed",y=t.useMemo(()=>({"--pos":u(s?.desktop),"--pos-tablet":u(s?.tablet??s?.desktop),"--pos-mobile":u(s?.mobile??s?.tablet??s?.desktop)}),[s?.desktop,s?.mobile,s?.tablet]);return{w:p,displayStyle:m,positionStyle:y,getCSSAlign:i,makeDisplaySettingStyles:r}};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("react");exports.default=o=>{let{width:s,position:l}=o??{},{desktop:r,tablet:i,mobile:b}=o?.display||{},p=e.makeStyleResponsive("w",s),a=e.usePageStore(e=>"interaction"===e.sidebarMode),u=e.useCurrentDevice(),[d,n]=t.useState(!1),m=e.useStickyStore(e=>e.getFirstVisibleElement(u)),k=(e,t)=>({[`--left${t}`]:"top"==e?"0":"50%",[`--t${t}`]:"top"==e?"unset":"translateX(-50%)"}),c=t.useMemo(()=>({...k(l?.desktop,""),...k(l?.tablet??l?.desktop,"-tablet"),...k(l?.mobile??l?.tablet??l?.desktop,"-mobile")}),[l?.desktop,l?.mobile,l?.tablet]),f=t.useMemo(()=>{if(a&&l?.[u]==="top")return"40px"},[u,a,l]),x=t.useMemo(()=>{let e=e=>"after-first-cart-button"!==e||d?"block":"none";return{"--d":e(r),"--d-tablet":e(i??r),"--d-mobile":e(b??i??r)}},[r,i,b,d]),M=t.useMemo(()=>({"--top":f??"auto","--top-tablet":f??"auto","--top-mobile":f??"auto",[`--${l?.desktop}`]:f??"0px",[`--${l?.tablet??l?.desktop}-tablet`]:f??"0px",[`--${l?.mobile??l?.tablet??l?.desktop}-mobile`]:f??"0px"}),[f,l?.desktop,l?.mobile,l?.tablet]),v=e=>"top"==e?"sticky":"fixed",g=t.useMemo(()=>({"--pos":v(l?.desktop),"--pos-tablet":v(l?.tablet??l?.desktop),"--pos-mobile":v(l?.mobile??l?.tablet??l?.desktop)}),[l?.desktop,l?.mobile,l?.tablet]);return t.useEffect(()=>{if(!m)return;let e=new IntersectionObserver(([e])=>{e&&n(e.isIntersecting||e.boundingClientRect.top<=0)});return e.observe(m),()=>e.disconnect()},[m]),t.useEffect(()=>{n(!1)},[u]),{w:p,displayStyle:M,positionStyle:g,getCSSAlign:c,makeDisplaySettingStyles:x}};
@@ -0,0 +1,2 @@
1
+ 'use client';
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@gem-sdk/core"),s=require("./ThirdPartyPreview.js"),t=require("../configs/AppstleLoyaltyRewardProgram.js");exports.default=({setting:a})=>e.jsx("div",{style:{...r.makeStyleResponsive("ta",a?.align)},children:e.jsx("div",{className:"gp-p-2",children:e.jsx(s.default,{setting:{label:"Appstle Loyalty Reward Program",iconSvg:`<img class="gp-w-[24px] gp-border gp-border-[#494949] gp-rounded-[3px]" src="${t.default.logoUrl}">`}})})});
@@ -0,0 +1,16 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var a=require("@gem-sdk/core");exports.default=({setting:e,advanced:t})=>{let{widgetType:l,align:s}=e??{};return a.template`
2
+ <div
3
+ class="${t?.cssClass} gp-appstle-loyalty [&_*]:gp-max-w-none"
4
+ style="${{...a.makeStyleResponsive("ta",s)}}"
5
+ >
6
+ {% assign widget = '${l}' %}
7
+ {% case widget %}
8
+ {% when "loyalty_dedicated_page" %}
9
+ <div class="appstleLoyaltyPage" data-appstle-loyalty="APPSTLE_LOYALTY_PAGE" id="appstleLoyaltyPage"></div>
10
+ {% when "points_display_on_product" %}
11
+ <div class="appstle-loyalty-acquire-points-block" data-appstle-loyalty="APPSTLE_LOYALTY_ACQUIRE_POINTS" id="appstle-loyalty-acquire-points-block"></div>
12
+ {% when "points_display_on_collections" %}
13
+ <div class="appstle_loyalty_stand_alone_selector" data-product-id="{{product.id}}" data-product-handle="{{product.handle}}" data-variant-id="{{ product.selected_or_first_available_variant.id }}" data-product-data="{{product | json | escape}}"></div>
14
+ {% endcase %}
15
+ </div>
16
+ `};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@gem-sdk/core"),s=require("./ThirdPartyPreview.js"),t=require("../configs/EcomsendBackInStockAlert.js");const i=()=>e.jsx(e.Fragment,{children:e.jsx("div",{className:"gp-p-2",children:e.jsx(s.default,{setting:{label:"EcomSend Back in Stock Alert",iconSvg:`<img class="gp-w-[24px] gp-border gp-border-[#494949] gp-rounded-[3px]" src="${t.default.logoUrl}">`}})})});exports.default=({setting:s})=>e.jsx("div",{style:{...r.makeStyleResponsive("ta",s?.align)},children:e.jsx(i,{})});
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("@gem-sdk/core"),s=require("./ThirdPartyPreview.js"),t=require("../configs/EcomsendBackInStockAlert.js");const l=()=>e.jsx(e.Fragment,{children:e.jsx("div",{className:"gp-p-2",children:e.jsx(s.default,{setting:{label:t.default.label,iconSvg:`<img class="gp-w-[24px] gp-border gp-border-[#494949] gp-rounded-[3px]" src="${t.default.logoUrl}">`}})})});exports.default=({setting:s})=>e.jsx("div",{style:{...r.makeStyleResponsive("ta",s?.align)},children:e.jsx(l,{})});
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default={id:"appstle-loyalty-reward-program",label:"Appstle Loyalty Reward Program",logoUrl:"https://cdn.shopify.com/app-store/listing_images/96443d68c3eaa36c43a8b7d0afa5eada/icon/COui2tT74fwCEAE=.png?width=22&height=22",tag:"AppstleLoyaltyRewardProgram"};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default={id:"ecomsend-back-in-stock-alert",label:"EcomSend Back in Stock Alert",logoUrl:"https://cdn.shopify.com/app-store/listing_images/d4d2bcc6f71dda4f30b09bd429b37065/icon/CLeo2LeKhIsDEAE=.png?width=22&height=22",tag:"EcomsendBackInStockAlert"};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default={id:"ecomsend-back-in-stock-alert",label:"Notify Me AI Back in Stock: SW",logoUrl:"https://cdn.shopify.com/s/files/1/2005/9307/files/SendWill_logo.png?v=1780629197",tag:"EcomsendBackInStockAlert"};