@gem-sdk/components 19.1.0-dev.1 → 19.1.0-dev.10

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 (244) hide show
  1. package/dist/cjs/accordion/next.js +1 -1
  2. package/dist/cjs/article/components/ArticleContent.js +2 -2
  3. package/dist/cjs/article/components/ArticleExcerpt.js +1 -1
  4. package/dist/cjs/article/components/ArticleList.js +1 -1
  5. package/dist/cjs/article/index.js +1 -1
  6. package/dist/cjs/article/next.js +1 -1
  7. package/dist/cjs/breadcrumb/next.js +1 -1
  8. package/dist/cjs/button/next.js +1 -1
  9. package/dist/cjs/carousel/next.js +1 -1
  10. package/dist/cjs/carousel-v3/next.js +1 -1
  11. package/dist/cjs/cart/components/CartList.js +1 -1
  12. package/dist/cjs/cart/index.js +1 -1
  13. package/dist/cjs/cart/next.js +1 -1
  14. package/dist/cjs/code/next.js +1 -1
  15. package/dist/cjs/collection/next.js +1 -1
  16. package/dist/cjs/common/const.js +1 -1
  17. package/dist/cjs/countdown-timer/next.js +1 -1
  18. package/dist/cjs/coupon/next.js +1 -1
  19. package/dist/cjs/dialog/index.js +1 -1
  20. package/dist/cjs/dialog/next.js +1 -1
  21. package/dist/cjs/estimate-delivery/next.js +1 -1
  22. package/dist/cjs/form/next.js +1 -1
  23. package/dist/cjs/grid/components/section/Section.js +1 -1
  24. package/dist/cjs/grid/index.js +1 -1
  25. package/dist/cjs/header/components/kind/basic/index.js +1 -1
  26. package/dist/cjs/header/components/kind/modern/index.js +1 -1
  27. package/dist/cjs/header/index.js +1 -1
  28. package/dist/cjs/header/next.js +1 -1
  29. package/dist/cjs/hero-banner/components/HeroBannerItem.js +1 -1
  30. package/dist/cjs/hero-banner/index.js +1 -1
  31. package/dist/cjs/hero-banner/next.js +1 -1
  32. package/dist/cjs/icon/next.js +1 -1
  33. package/dist/cjs/icon-list/next.js +1 -1
  34. package/dist/cjs/icon-list-hoz/next.js +1 -1
  35. package/dist/cjs/icon-list-v2/next.js +1 -1
  36. package/dist/cjs/image/common/const.js +1 -1
  37. package/dist/cjs/image/common/helpers.js +2 -2
  38. package/dist/cjs/image-comparison/next.js +1 -1
  39. package/dist/cjs/image-detection/next.js +1 -1
  40. package/dist/cjs/input/next.js +1 -1
  41. package/dist/cjs/line/next.js +1 -1
  42. package/dist/cjs/link/next.js +1 -1
  43. package/dist/cjs/marquee/next.js +1 -1
  44. package/dist/cjs/menu/next.js +1 -1
  45. package/dist/cjs/modal/next.js +1 -1
  46. package/dist/cjs/pagination/next.js +1 -1
  47. package/dist/cjs/post-purchase/advanced-list/next.js +1 -1
  48. package/dist/cjs/post-purchase/button/next.js +1 -1
  49. package/dist/cjs/post-purchase/buyer-consent/next.js +1 -1
  50. package/dist/cjs/post-purchase/callout-banner/components/CalloutBox.js +1 -1
  51. package/dist/cjs/post-purchase/callout-banner/index.js +1 -1
  52. package/dist/cjs/post-purchase/callout-banner/next.js +1 -1
  53. package/dist/cjs/post-purchase/countdown-timer/next.js +1 -1
  54. package/dist/cjs/post-purchase/image/next.js +1 -1
  55. package/dist/cjs/post-purchase/line/next.js +1 -1
  56. package/dist/cjs/post-purchase/link/next.js +1 -1
  57. package/dist/cjs/post-purchase/product/components/product-image/FeatureImage.js +1 -1
  58. package/dist/cjs/post-purchase/product/components/product-image/carousel-post-purchase/Arrow.js +1 -1
  59. package/dist/cjs/post-purchase/product/components/product-image/carousel-post-purchase/CarouselWrapperPostPurchase.js +1 -1
  60. package/dist/cjs/post-purchase/product/components/product-image/layouts/OnlyGalleryImage.js +1 -1
  61. package/dist/cjs/post-purchase/product/components/product-offer/components/ProductOffer.js +1 -1
  62. package/dist/cjs/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  63. package/dist/cjs/post-purchase/product/hooks/useNavigationCarouselPostPurchase.js +1 -1
  64. package/dist/cjs/post-purchase/product/index.js +1 -1
  65. package/dist/cjs/post-purchase/product/next.js +1 -1
  66. package/dist/cjs/post-purchase/text/next.js +1 -1
  67. package/dist/cjs/product/components/product-badge/ProductBadge.js +1 -1
  68. package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +18 -18
  69. package/dist/cjs/product/components/product-badge/common/styles.js +1 -1
  70. package/dist/cjs/product/components/product-badge/utils/injectBadgeStateExtras.js +1 -0
  71. package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +5 -5
  72. package/dist/cjs/product/components/product-description/common/styles.js +7 -2
  73. package/dist/cjs/product/components/product-discount-tag/ProductDiscountTag.js +1 -1
  74. package/dist/cjs/product/components/product-images-v3/ProductImagesV3.liquid.js +13 -13
  75. package/dist/cjs/product/components/product-images-v3/ProductImagesV3Embla.liquid.js +10 -10
  76. package/dist/cjs/product/components/product-list/ProductList.js +1 -1
  77. package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -1
  78. package/dist/cjs/product/components/product-list-v3/common/helpers.js +1 -1
  79. package/dist/cjs/product/components/product-list-v3/constants/index.js +1 -0
  80. package/dist/cjs/product/components/product-list-v3/hooks/useCollectionQuery.js +1 -0
  81. package/dist/cjs/product/components/product-list-v3/hooks/useMainRelatedProductQuery.js +1 -0
  82. package/dist/cjs/product/components/product-list-v3/hooks/useProductRelatedQuery.js +1 -0
  83. package/dist/cjs/product/components/product-list-v3/hooks/useProductsQuery.js +1 -0
  84. package/dist/cjs/product/components/product-list-v3/hooks/useRelatedProductIDAssigned.js +1 -0
  85. package/dist/cjs/product/components/product-price/hooks/useGpPrice.js +1 -1
  86. package/dist/cjs/product/components/product-properties/property-select/common/styles.js +1 -1
  87. package/dist/cjs/product/components/product-quick-view/ProductQuickView.js +1 -1
  88. package/dist/cjs/product/components/product-wrap/Product.js +1 -1
  89. package/dist/cjs/product/components/product-wrap/hook/useProductQuery.js +1 -0
  90. package/dist/cjs/product/components/product-wrap/hook/useProductSetting.js +1 -1
  91. package/dist/cjs/product/helpers/product-bundle.js +1 -1
  92. package/dist/cjs/product/index.js +1 -1
  93. package/dist/cjs/product/next.js +1 -1
  94. package/dist/cjs/radio/next.js +1 -1
  95. package/dist/cjs/select/next.js +1 -1
  96. package/dist/cjs/shop-pay-installment/next.js +1 -1
  97. package/dist/cjs/sticky/hooks/useSticky.js +1 -1
  98. package/dist/cjs/sticky/index.js +1 -1
  99. package/dist/cjs/sticky/next.js +1 -1
  100. package/dist/cjs/stock-counter/next.js +1 -1
  101. package/dist/cjs/tab/next.js +1 -1
  102. package/dist/cjs/textarea/next.js +1 -1
  103. package/dist/cjs/third-party/next.js +1 -1
  104. package/dist/cjs/third-party/settings/AppstleBundlesDiscounts/index.js +2 -2
  105. package/dist/cjs/third-party/settings/BoldSubscriptions/index.js +1 -1
  106. package/dist/cjs/third-party/settings/BoldSubscriptions/uiV2.js +1 -1
  107. package/dist/cjs/third-party/settings/GloColorSwatchvariantImage/index.js +1 -1
  108. package/dist/cjs/third-party/settings/HextomCountdownTimerBar/index.js +2 -2
  109. package/dist/cjs/third-party/settings/LoopSubscriptions/index.js +1 -1
  110. package/dist/cjs/third-party/settings/LoopSubscriptions/uiV2.js +1 -1
  111. package/dist/cjs/third-party/settings/RechargeSubscriptions/index.js +1 -1
  112. package/dist/cjs/third-party/settings/SeoantTrustBadgesIcon/index.js +2 -2
  113. package/dist/cjs/third-party/settings/SeoantTrustBadgesIcon/uiV2.js +1 -1
  114. package/dist/cjs/third-party/settings/ShopifyForms/uiV2.js +1 -1
  115. package/dist/cjs/third-party/settings/SkioSubscriptionsYcS20/index.js +2 -2
  116. package/dist/cjs/third-party/settings/SproutPlantTreesGrowSales/index.js +1 -1
  117. package/dist/cjs/third-party/settings/TrustshopProductReviews/index.js +2 -2
  118. package/dist/cjs/third-party/settings/WcWishlistBackInStock/index.js +2 -2
  119. package/dist/cjs/third-party-instant/next.js +1 -1
  120. package/dist/cjs/third-party-slot/next.js +1 -1
  121. package/dist/cjs/video/next.js +1 -1
  122. package/dist/esm/accordion/next.js +1 -1
  123. package/dist/esm/article/components/ArticleContent.js +2 -2
  124. package/dist/esm/article/components/ArticleExcerpt.js +1 -1
  125. package/dist/esm/article/components/ArticleList.js +1 -1
  126. package/dist/esm/article/index.js +1 -1
  127. package/dist/esm/article/next.js +1 -1
  128. package/dist/esm/breadcrumb/next.js +1 -1
  129. package/dist/esm/button/next.js +1 -1
  130. package/dist/esm/carousel/next.js +1 -1
  131. package/dist/esm/carousel-v3/next.js +1 -1
  132. package/dist/esm/cart/components/CartList.js +1 -1
  133. package/dist/esm/cart/index.js +1 -1
  134. package/dist/esm/cart/next.js +1 -1
  135. package/dist/esm/code/next.js +1 -1
  136. package/dist/esm/collection/next.js +1 -1
  137. package/dist/esm/common/const.js +1 -1
  138. package/dist/esm/countdown-timer/next.js +1 -1
  139. package/dist/esm/coupon/next.js +1 -1
  140. package/dist/esm/dialog/index.js +1 -1
  141. package/dist/esm/dialog/next.js +1 -1
  142. package/dist/esm/estimate-delivery/next.js +1 -1
  143. package/dist/esm/form/next.js +1 -1
  144. package/dist/esm/grid/components/section/Section.js +1 -1
  145. package/dist/esm/grid/index.js +1 -1
  146. package/dist/esm/header/components/kind/basic/index.js +1 -1
  147. package/dist/esm/header/components/kind/modern/index.js +1 -1
  148. package/dist/esm/header/index.js +1 -1
  149. package/dist/esm/header/next.js +1 -1
  150. package/dist/esm/hero-banner/components/HeroBannerItem.js +1 -1
  151. package/dist/esm/hero-banner/index.js +1 -1
  152. package/dist/esm/hero-banner/next.js +1 -1
  153. package/dist/esm/icon/next.js +1 -1
  154. package/dist/esm/icon-list/next.js +1 -1
  155. package/dist/esm/icon-list-hoz/next.js +1 -1
  156. package/dist/esm/icon-list-v2/next.js +1 -1
  157. package/dist/esm/image/common/const.js +1 -1
  158. package/dist/esm/image/common/helpers.js +2 -2
  159. package/dist/esm/image-comparison/next.js +1 -1
  160. package/dist/esm/image-detection/next.js +1 -1
  161. package/dist/esm/input/next.js +1 -1
  162. package/dist/esm/line/next.js +1 -1
  163. package/dist/esm/link/next.js +1 -1
  164. package/dist/esm/marquee/next.js +1 -1
  165. package/dist/esm/menu/next.js +1 -1
  166. package/dist/esm/modal/next.js +1 -1
  167. package/dist/esm/pagination/next.js +1 -1
  168. package/dist/esm/post-purchase/advanced-list/next.js +1 -1
  169. package/dist/esm/post-purchase/button/next.js +1 -1
  170. package/dist/esm/post-purchase/buyer-consent/next.js +1 -1
  171. package/dist/esm/post-purchase/callout-banner/components/CalloutBox.js +1 -1
  172. package/dist/esm/post-purchase/callout-banner/index.js +1 -1
  173. package/dist/esm/post-purchase/callout-banner/next.js +1 -1
  174. package/dist/esm/post-purchase/countdown-timer/next.js +1 -1
  175. package/dist/esm/post-purchase/image/next.js +1 -1
  176. package/dist/esm/post-purchase/line/next.js +1 -1
  177. package/dist/esm/post-purchase/link/next.js +1 -1
  178. package/dist/esm/post-purchase/product/components/product-image/FeatureImage.js +1 -1
  179. package/dist/esm/post-purchase/product/components/product-image/carousel-post-purchase/Arrow.js +1 -1
  180. package/dist/esm/post-purchase/product/components/product-image/carousel-post-purchase/CarouselWrapperPostPurchase.js +1 -1
  181. package/dist/esm/post-purchase/product/components/product-image/layouts/OnlyGalleryImage.js +1 -1
  182. package/dist/esm/post-purchase/product/components/product-offer/components/ProductOffer.js +1 -1
  183. package/dist/esm/post-purchase/product/components/product-offer/components/ProductOfferItem.js +1 -1
  184. package/dist/esm/post-purchase/product/hooks/useNavigationCarouselPostPurchase.js +1 -1
  185. package/dist/esm/post-purchase/product/index.js +1 -1
  186. package/dist/esm/post-purchase/product/next.js +1 -1
  187. package/dist/esm/post-purchase/text/next.js +1 -1
  188. package/dist/esm/product/components/product-badge/ProductBadge.js +1 -1
  189. package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +15 -15
  190. package/dist/esm/product/components/product-badge/common/styles.js +1 -1
  191. package/dist/esm/product/components/product-badge/utils/injectBadgeStateExtras.js +1 -0
  192. package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +1 -1
  193. package/dist/esm/product/components/product-description/common/styles.js +7 -2
  194. package/dist/esm/product/components/product-discount-tag/ProductDiscountTag.js +1 -1
  195. package/dist/esm/product/components/product-images-v3/ProductImagesV3.liquid.js +12 -12
  196. package/dist/esm/product/components/product-images-v3/ProductImagesV3Embla.liquid.js +12 -12
  197. package/dist/esm/product/components/product-list/ProductList.js +1 -1
  198. package/dist/esm/product/components/product-list-v3/ProductList.js +1 -1
  199. package/dist/esm/product/components/product-list-v3/common/helpers.js +1 -1
  200. package/dist/esm/product/components/product-list-v3/constants/index.js +1 -0
  201. package/dist/esm/product/components/product-list-v3/hooks/useCollectionQuery.js +1 -0
  202. package/dist/esm/product/components/product-list-v3/hooks/useMainRelatedProductQuery.js +1 -0
  203. package/dist/esm/product/components/product-list-v3/hooks/useProductRelatedQuery.js +1 -0
  204. package/dist/esm/product/components/product-list-v3/hooks/useProductsQuery.js +1 -0
  205. package/dist/esm/product/components/product-list-v3/hooks/useRelatedProductIDAssigned.js +1 -0
  206. package/dist/esm/product/components/product-price/hooks/useGpPrice.js +1 -1
  207. package/dist/esm/product/components/product-properties/property-select/common/styles.js +1 -1
  208. package/dist/esm/product/components/product-quick-view/ProductQuickView.js +1 -1
  209. package/dist/esm/product/components/product-wrap/Product.js +1 -1
  210. package/dist/esm/product/components/product-wrap/hook/useProductQuery.js +1 -0
  211. package/dist/esm/product/components/product-wrap/hook/useProductSetting.js +1 -1
  212. package/dist/esm/product/helpers/product-bundle.js +1 -1
  213. package/dist/esm/product/index.js +1 -1
  214. package/dist/esm/product/next.js +1 -1
  215. package/dist/esm/radio/next.js +1 -1
  216. package/dist/esm/select/next.js +1 -1
  217. package/dist/esm/shop-pay-installment/next.js +1 -1
  218. package/dist/esm/sticky/hooks/useSticky.js +1 -1
  219. package/dist/esm/sticky/index.js +1 -1
  220. package/dist/esm/sticky/next.js +1 -1
  221. package/dist/esm/stock-counter/next.js +1 -1
  222. package/dist/esm/tab/next.js +1 -1
  223. package/dist/esm/textarea/next.js +1 -1
  224. package/dist/esm/third-party/next.js +1 -1
  225. package/dist/esm/third-party/settings/AppstleBundlesDiscounts/index.js +2 -2
  226. package/dist/esm/third-party/settings/BoldSubscriptions/index.js +1 -1
  227. package/dist/esm/third-party/settings/BoldSubscriptions/uiV2.js +1 -1
  228. package/dist/esm/third-party/settings/GloColorSwatchvariantImage/index.js +1 -1
  229. package/dist/esm/third-party/settings/HextomCountdownTimerBar/index.js +2 -2
  230. package/dist/esm/third-party/settings/LoopSubscriptions/index.js +1 -1
  231. package/dist/esm/third-party/settings/LoopSubscriptions/uiV2.js +1 -1
  232. package/dist/esm/third-party/settings/RechargeSubscriptions/index.js +1 -1
  233. package/dist/esm/third-party/settings/SeoantTrustBadgesIcon/index.js +2 -2
  234. package/dist/esm/third-party/settings/SeoantTrustBadgesIcon/uiV2.js +1 -1
  235. package/dist/esm/third-party/settings/ShopifyForms/uiV2.js +1 -1
  236. package/dist/esm/third-party/settings/SkioSubscriptionsYcS20/index.js +2 -2
  237. package/dist/esm/third-party/settings/SproutPlantTreesGrowSales/index.js +1 -1
  238. package/dist/esm/third-party/settings/TrustshopProductReviews/index.js +2 -2
  239. package/dist/esm/third-party/settings/WcWishlistBackInStock/index.js +2 -2
  240. package/dist/esm/third-party-instant/next.js +1 -1
  241. package/dist/esm/third-party-slot/next.js +1 -1
  242. package/dist/esm/video/next.js +1 -1
  243. package/dist/types/index.d.ts +1 -0
  244. package/package.json +2 -2
@@ -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("react"),t=require("../../../../../common/components/Loading.js");require("@gem-sdk/core");var s=require("../common/classes.js"),a=require("@gem-sdk/system"),o=require("../common/styles.js"),c=require("../hooks/useProductOfferData.js"),u=require("./ProductOfferItem.js");exports.default=l=>{let{styles:d,builderAttrs:i,builderProps:n,setting:m}=l,{isLoading:f,productSortedById:p,totalProduct:j}=c.useProductOfferData(),y=a.createClass({...s.getProductOfferContainerClasses(n?.uid)}),g=a.createClass({...s.getProductOfferWrapperClasses()}),q=a.createStyle({...o.getWrapperStyles(d)}),x=a.createStyle({...o.getContainerStyles(m)});return e.jsx(e.Fragment,{children:f?e.jsx(t.default,{}):p?.length?e.jsx("div",{...i,className:y,style:x,children:e.jsx("div",{className:g,style:q,children:p?.map((e,t)=>r.createElement(u.ProductOfferItem,{...l,product:e,index:t,key:t,totalProduct:j}))})}):e.jsx("div",{children:"You haven't set up a product yet. Please go back to the sales funnel details to add a product."})})};
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("../../../../../common/components/Loading.js");require("@gem-sdk/core"),require("../../../../../common/const.js");var s=require("../common/classes.js"),a=require("@gem-sdk/system"),o=require("../common/styles.js"),c=require("../hooks/useProductOfferData.js"),u=require("./ProductOfferItem.js");exports.default=l=>{let{styles:d,builderAttrs:i,builderProps:n,setting:m}=l,{isLoading:f,productSortedById:j,totalProduct:p}=c.useProductOfferData(),y=a.createClass({...s.getProductOfferContainerClasses(n?.uid)}),g=a.createClass({...s.getProductOfferWrapperClasses()}),q=a.createStyle({...o.getWrapperStyles(d)}),x=a.createStyle({...o.getContainerStyles(m)});return e.jsx(e.Fragment,{children:f?e.jsx(t.default,{}):j?.length?e.jsx("div",{...i,className:y,style:x,children:e.jsx("div",{className:g,style:q,children:j?.map((e,t)=>r.createElement(u.ProductOfferItem,{...l,product:e,index:t,key:t,totalProduct:p}))})}):e.jsx("div",{children:"You haven't set up a product yet. Please go back to the sales funnel details to add a product."})})};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";var e=require("react/jsx-runtime"),r=require("@gem-sdk/core"),t=require("react"),s=require("../../../../../grid/components/row/Row.js"),i=require("../../../../../grid/components/ChildrenDroppable.js"),d=require("@gem-sdk/system"),c=require("../common/attrs.js"),n=require("../common/classes.js"),u=require("../context/PrdOfferSubscriptionPresenceContext.js");exports.ProductOfferItem=o=>{let{product:l,setting:a,builderProps:f,children:m,index:j,totalProduct:x,builderAttrs:P,styles:p}=o,{isEditMode:q}=r.useRenderMode(),{variantSelected:h,productOfferLayout:g,layout:O,...b}=a??{};Object.keys(O||{}).forEach(e=>{g?.[e]==="2col"&&O?.[e]&&(O[e].display="fill")});let v=h?.[l?.baseID??""]?.variantId,y=d.createAttr({...c.getProductOfferAttrs(l,f?.uid)}),C=d.createClass({...n.getProductOfferItemClasses(j,a,x)}),I=t.useRef(null),R=e.jsx("div",{ref:I,...q&&y,children:e.jsx(s.default,{builderAttrs:P,setting:{...b,layout:O},styles:p,children:r.isEmptyChildren(m)?e.jsx(i.default,{}):m})});return e.jsx("div",{className:C,children:e.jsx(r.ProductProvider,{product:l,readOnly:!0,initialVariantId:v??"Latest",uid:f?.uid,children:e.jsx(u.ProductOfferSubscriptionPresenceProvider,{containerRef:I,children:R})})},`uid-${l?.id}`)};
2
+ "use strict";var e=require("react/jsx-runtime"),r=require("@gem-sdk/core"),t=require("react");require("../../../../../common/const.js");var s=require("../../../../../grid/components/row/Row.js"),i=require("../../../../../grid/components/ChildrenDroppable.js"),d=require("@gem-sdk/system"),c=require("../common/attrs.js"),n=require("../common/classes.js"),o=require("../context/PrdOfferSubscriptionPresenceContext.js");exports.ProductOfferItem=u=>{let{product:a,setting:l,builderProps:f,children:m,index:j,totalProduct:q,builderAttrs:x,styles:P}=u,{isEditMode:p}=r.useRenderMode(),{variantSelected:h,productOfferLayout:g,layout:v,...O}=l??{};Object.keys(v||{}).forEach(e=>{g?.[e]==="2col"&&v?.[e]&&(v[e].display="fill")});let b=h?.[a?.baseID??""]?.variantId,y=d.createAttr({...c.getProductOfferAttrs(a,f?.uid)}),C=d.createClass({...n.getProductOfferItemClasses(j,l,q)}),I=t.useRef(null),R=e.jsx("div",{ref:I,...p&&y,children:e.jsx(s.default,{builderAttrs:x,setting:{...O,layout:v},styles:P,children:r.isEmptyChildren(m)?e.jsx(i.default,{}):m})});return e.jsx("div",{className:C,children:e.jsx(r.ProductProvider,{product:a,readOnly:!0,initialVariantId:b??"Latest",uid:f?.uid,children:e.jsx(o.ProductOfferSubscriptionPresenceProvider,{containerRef:I,children:R})})},`uid-${a?.id}`)};
@@ -1 +1 @@
1
- "use strict";var e=require("react"),r=require("../constants/index.js"),s=require("./useCarousel.js");exports.useNavigationCarouselPostPurchase=t=>{let{moveToIdx:a,maxIdx:u,setMoveToIdx:i}=s.useCarousel(),{type:n,vertical:l}=t,o="next"==n?a>=u:0===a,c=e.useMemo(()=>r.BUTTON_URL_MAP_POST_PURCHASE[n][l?"vertical":"horizontal"][o?"disabled":"enabled"],[n,l,o]);return{imgSrc:c,handleClick:()=>{if("next"===n){i(a+1);return}i(a-1)},disabled:o}};
1
+ "use strict";var e=require("react"),r=require("../constants/index.js"),t=require("./useCarousel.js"),s=require("@gem-sdk/core");exports.useNavigationCarouselPostPurchase=u=>{let{moveToIdx:a,maxIdx:o,setMoveToIdx:i}=t.useCarousel(),l=s.useProductStore(e=>e.setProductFeaturedImage),{type:c,vertical:d}=u,n="next"==c?a>=o:0===a,P=e.useMemo(()=>r.BUTTON_URL_MAP_POST_PURCHASE[c][d?"vertical":"horizontal"][n?"disabled":"enabled"],[c,d,n]);return{imgSrc:P,handleClick:()=>{let e="next"===c?a+1:a-1;if(i(e),"feature-image"===u.carouselType){let r=u.productImages?.[e];r&&l(r)}},disabled:n}};
@@ -1 +1 @@
1
- "use strict";require("react/jsx-runtime"),require("@gem-sdk/core"),require("@gem-sdk/system"),require("react"),require("./components/product-subscription/types.js"),require("./constants/index.js"),require("./components/product-variant/components/variants/VariantItem.js"),require("next/link"),require("next/head"),require("next/image"),require("react-youtube"),require("./components/product-subscription/components/OneTimePurchaseTooltip.js"),require("../image/components/Img.js");var e=require("./settings/product-title/ProductTitle.js"),t=require("./settings/product-description/ProductDescription.js"),r=require("./settings/product-price/ProductPrice.js"),s=require("./settings/product-variants/ProductVariant.js"),u=require("./settings/accept-button/index.js"),i=require("./settings/product-quantity/index.js"),o=require("./settings/product-offer/index.js"),c=require("./settings/product-price-breakdown/index.js"),n=require("./settings/product-discount-tag/ProductDiscountTag.js"),a=require("./settings/product-subscription/index.js"),d=require("./settings/product-image/ProductImages.js");const P={PostPurchaseProductTitle:e.default,PostPurchaseProductDescription:t.default,PostPurchaseProductPrice:r.default,PostPurchaseProductVariants:s.default,PostPurchaseAcceptButton:u.default,PostPurchaseProductQuantity:i.default,PostPurchaseProductPriceBreakdown:c.default,PostPurchaseProductOffer:o.default,PostPurchaseProductDiscountTag:n.default,PostPurchaseProductImages:d.default,PostPurchaseProductSubscription:a.default};exports.postPurchaseProductSetting=P;
1
+ "use strict";require("react/jsx-runtime"),require("@gem-sdk/core"),require("@gem-sdk/system"),require("react"),require("./components/product-subscription/types.js"),require("./constants/index.js"),require("./components/product-variant/components/variants/VariantItem.js"),require("next/link"),require("../../common/const.js"),require("next/head"),require("next/image"),require("react-youtube"),require("./components/product-subscription/components/OneTimePurchaseTooltip.js"),require("../image/components/Img.js");var e=require("./settings/product-title/ProductTitle.js"),t=require("./settings/product-description/ProductDescription.js"),r=require("./settings/product-price/ProductPrice.js"),s=require("./settings/product-variants/ProductVariant.js"),u=require("./settings/accept-button/index.js"),i=require("./settings/product-quantity/index.js"),o=require("./settings/product-offer/index.js"),c=require("./settings/product-price-breakdown/index.js"),n=require("./settings/product-discount-tag/ProductDiscountTag.js"),a=require("./settings/product-subscription/index.js"),d=require("./settings/product-image/ProductImages.js");const P={PostPurchaseProductTitle:e.default,PostPurchaseProductDescription:t.default,PostPurchaseProductPrice:r.default,PostPurchaseProductVariants:s.default,PostPurchaseAcceptButton:u.default,PostPurchaseProductQuantity:i.default,PostPurchaseProductPriceBreakdown:c.default,PostPurchaseProductOffer:o.default,PostPurchaseProductDiscountTag:n.default,PostPurchaseProductImages:d.default,PostPurchaseProductSubscription:a.default};exports.postPurchaseProductSetting=P;
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("next/dynamic"),r=require("../../common/components/Loading.js");require("react/jsx-runtime"),require("react"),require("@gem-sdk/core");const o=e(()=>Promise.resolve().then(function(){return require("./components/ProductTitle.js")}),{loading:r.default}),n=e(()=>Promise.resolve().then(function(){return require("./components/ProductDescription.js")}),{ssr:!1,loading:r.default}),t=e(()=>Promise.resolve().then(function(){return require("./components/ProductPrice.js")}),{loading:r.default}),u=e(()=>Promise.resolve().then(function(){return require("./components/product-variant/components/ProductVariant.js")}),{loading:r.default}),i=e(()=>Promise.resolve().then(function(){return require("./components/AcceptButton.js")}),{loading:r.default}),s=e(()=>Promise.resolve().then(function(){return require("./components/ProductQuantity.js")}),{loading:r.default}),c=e(()=>Promise.resolve().then(function(){return require("./components/product-subscription/ProductSubscription.js")}),{loading:r.default}),d=e(()=>Promise.resolve().then(function(){return require("./components/ProductPriceBreakdown.js")}),{loading:r.default}),a=e(()=>Promise.resolve().then(function(){return require("./components/product-offer/components/ProductOffer.js")}),{loading:r.default}),l=e(()=>Promise.resolve().then(function(){return require("./components/ProductDiscountTag.js")}),{loading:r.default}),m=e(()=>Promise.resolve().then(function(){return require("./components/product-image/index.js")}),{loading:r.default});exports.default={PostPurchaseProductTitle:o,PostPurchaseProductDescription:n,PostPurchaseProductPrice:t,PostPurchaseProductVariants:u,PostPurchaseAcceptButton:i,PostPurchaseProductQuantity:s,PostPurchaseProductPriceBreakdown:d,PostPurchaseProductOffer:a,PostPurchaseProductDiscountTag:l,PostPurchaseProductImages:m,PostPurchaseProductSubscription:c};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("next/dynamic"),r=require("../../common/components/Loading.js");require("react/jsx-runtime"),require("react"),require("@gem-sdk/core"),require("../../common/const.js");const o=e(()=>Promise.resolve().then(function(){return require("./components/ProductTitle.js")}),{loading:r.default}),n=e(()=>Promise.resolve().then(function(){return require("./components/ProductDescription.js")}),{ssr:!1,loading:r.default}),t=e(()=>Promise.resolve().then(function(){return require("./components/ProductPrice.js")}),{loading:r.default}),u=e(()=>Promise.resolve().then(function(){return require("./components/product-variant/components/ProductVariant.js")}),{loading:r.default}),i=e(()=>Promise.resolve().then(function(){return require("./components/AcceptButton.js")}),{loading:r.default}),s=e(()=>Promise.resolve().then(function(){return require("./components/ProductQuantity.js")}),{loading:r.default}),c=e(()=>Promise.resolve().then(function(){return require("./components/product-subscription/ProductSubscription.js")}),{loading:r.default}),d=e(()=>Promise.resolve().then(function(){return require("./components/ProductPriceBreakdown.js")}),{loading:r.default}),a=e(()=>Promise.resolve().then(function(){return require("./components/product-offer/components/ProductOffer.js")}),{loading:r.default}),l=e(()=>Promise.resolve().then(function(){return require("./components/ProductDiscountTag.js")}),{loading:r.default}),m=e(()=>Promise.resolve().then(function(){return require("./components/product-image/index.js")}),{loading:r.default});exports.default={PostPurchaseProductTitle:o,PostPurchaseProductDescription:n,PostPurchaseProductPrice:t,PostPurchaseProductVariants:u,PostPurchaseAcceptButton:i,PostPurchaseProductQuantity:s,PostPurchaseProductPriceBreakdown:d,PostPurchaseProductOffer:a,PostPurchaseProductDiscountTag:l,PostPurchaseProductImages:m,PostPurchaseProductSubscription:c};
@@ -1 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("next/dynamic"),r=require("../../common/components/Loading.js");require("react/jsx-runtime"),require("react"),require("@gem-sdk/core");const t=e(()=>Promise.resolve().then(function(){return require("./components/Text.js")}),{loading:r.default}),n=e(()=>Promise.resolve().then(function(){return require("./components/Text.js")}),{loading:r.default});exports.default={PostPurchaseText:t,PostPurchaseHeading:n};
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("next/dynamic"),r=require("../../common/components/Loading.js");require("react/jsx-runtime"),require("react"),require("@gem-sdk/core"),require("../../common/const.js");const o=e(()=>Promise.resolve().then(function(){return require("./components/Text.js")}),{loading:r.default}),t=e(()=>Promise.resolve().then(function(){return require("./components/Text.js")}),{loading:r.default});exports.default={PostPurchaseText:o,PostPurchaseHeading:t};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@gem-sdk/core"),s=require("./utils/common.js");require("./constants.js");var r=require("../../../common/components/NoDataState.js"),a=require("../../../common/components/TooltipHover.js"),l=require("@gem-sdk/system"),n=require("./common/attrs.js"),o=require("./common/classes.js"),c=require("./common/styles.js");exports.default=i=>{let{t:u}=t.useI18nStore(),{setting:d,styles:m,children:g,builderAttrs:C,...y}=i,p=t.useProduct(),j=t.useCurrentVariant(),{moneyFormat:x}=t.useMoneyFormat(),S=t.useCurrentDevice(),{useProductCompareAtPrice:T}=t.useProductBundleDiscount(),v=y?.["bundle-item"],h=t.useEditorMode(),{isEditMode:A}=t.useRenderMode(),N="STATIC"===t.usePageType(),{settings:q}=t.useSafeGetProductListSettings(),I=q?.sameHeight,f=s.getBadgeContent({detail:p,currentVariant:j,bundleItem:v,useProductCompareAtPrice:T},d?.displayContent,x),b=s.getIsNoDiscountState({props:i,product:p,currentVariant:j,moneyFormat:x,useProductCompareAtPrice:T}),P=l.createClass({...o.getContainerClasses({mode:h,isInstant:N,product:p,currentVariant:j,props:i,isSameHeightInProductList:I})}),W=l.createStyle({...c.getContainerStyle(i)}),M=l.createAttr({...n.getEditTooltipAttrs(i,A)}),D=l.createClass({...o.getWrapperClasses(i)}),B=l.createClass({...o.getSubWrapperClass(i,S)}),k=l.createStyle({...c.getSubWrapperStyle({props:i,product:p,currentVariant:j,isEditMode:A})}),w=l.createAttr({...n.getSubWrapperAttrs(i,p)}),E=c.getContentStyleInternal(i),H=l.createClass({...o.getTextContainerClasses()}),_=l.createAttr({...n.getContainerAttrs(i)}),F=l.createClass({...o.getTextWrapperClasses()}),G=l.createStyle({...c.getTextBadgeWrapperStyles({setting:d,styles:m})}),L=l.createClass({...o.getTextContentClasses(m)}),O=l.createStyle({...c.getTextContentStyle({setting:d,styles:m})}),R=l.createAttr({...n.getTextContentAttrs()}),V=l.createClass({...o.getImageContainerClasses()}),z=l.createStyle({...c.getImageContainerStyles({setting:d,styles:m})}),J=l.createClass({...o.getImageClasses()}),K=l.createAttr({...n.getImageAttr({setting:d})});return p?e.jsxs("div",{..._,style:W,className:P,children:[l.If(A&&b,e.jsx(a.default,{...M,children:e.jsx(r.default,{...C,elementType:"secondary",description:u("No discount"),rawMode:!0})}),e.jsx("div",{className:D,children:e.jsxs("div",{...w,className:B,style:k,children:[e.jsx("style",{children:E}),l.If(d?.shape!=="image",e.jsx("div",{className:H,children:e.jsx("div",{className:F,style:G,children:e.jsx("pre",{...R,className:L,style:O,children:f})})}),e.jsx("div",{className:V,style:z,children:e.jsx("img",{...K,className:J,alt:""})}))]})})),t.filterToolbarPreview(g,!0)]}):null};
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@gem-sdk/core"),s=require("./utils/common.js");require("./constants.js");var r=require("../../../common/components/NoDataState.js"),a=require("../../../common/components/TooltipHover.js");require("../../../common/const.js");var l=require("@gem-sdk/system"),n=require("./common/attrs.js"),o=require("./common/classes.js"),c=require("./common/styles.js");exports.default=i=>{let{t:u}=t.useI18nStore(),{setting:d,styles:m,children:g,builderAttrs:C,...y}=i,p=t.useProduct(),j=t.useCurrentVariant(),{moneyFormat:x}=t.useMoneyFormat(),S=t.useCurrentDevice(),{useProductCompareAtPrice:v}=t.useProductBundleDiscount(),T=y?.["bundle-item"],h=t.useEditorMode(),{isEditMode:q}=t.useRenderMode(),A="STATIC"===t.usePageType(),{settings:N}=t.useSafeGetProductListSettings(),I=N?.sameHeight,f=s.getBadgeContent({detail:p,currentVariant:j,bundleItem:T,useProductCompareAtPrice:v},d?.displayContent,x),b=s.getIsNoDiscountState({props:i,product:p,currentVariant:j,moneyFormat:x,useProductCompareAtPrice:v}),P=l.createClass({...o.getContainerClasses({mode:h,isInstant:A,product:p,currentVariant:j,props:i,isSameHeightInProductList:I})}),W=l.createStyle({...c.getContainerStyle(i)}),M=l.createAttr({...n.getEditTooltipAttrs(i,q)}),D=l.createClass({...o.getWrapperClasses(i)}),B=l.createClass({...o.getSubWrapperClass(i,S)}),k=l.createStyle({...c.getSubWrapperStyle({props:i,product:p,currentVariant:j,isEditMode:q})}),w=l.createAttr({...n.getSubWrapperAttrs(i,p)}),E=c.getContentStyleInternal(i),H=l.createClass({...o.getTextContainerClasses()}),_=l.createAttr({...n.getContainerAttrs(i)}),F=l.createClass({...o.getTextWrapperClasses()}),G=l.createStyle({...c.getTextBadgeWrapperStyles({setting:d,styles:m})}),L=l.createClass({...o.getTextContentClasses(m)}),O=l.createStyle({...c.getTextContentStyle({setting:d,styles:m})}),R=l.createAttr({...n.getTextContentAttrs()}),V=l.createClass({...o.getImageContainerClasses()}),z=l.createStyle({...c.getImageContainerStyles({setting:d,styles:m})}),J=l.createClass({...o.getImageClasses()}),K=l.createAttr({...n.getImageAttr({setting:d})});return p?e.jsxs("div",{..._,style:W,className:P,children:[l.If(q&&b,e.jsx(a.default,{...M,children:e.jsx(r.default,{...C,elementType:"secondary",description:u("No discount"),rawMode:!0})}),e.jsx("div",{className:D,children:e.jsxs("div",{...w,className:B,style:k,children:[e.jsx("style",{children:E}),l.If(d?.shape!=="image",e.jsx("div",{className:H,children:e.jsx("div",{className:F,style:G,children:e.jsx("pre",{...R,className:L,style:O,children:f})})}),e.jsx("div",{className:V,style:z,children:e.jsx("img",{...K,className:J,alt:""})}))]})})),t.filterToolbarPreview(g,!0)]}):null};
@@ -1,34 +1,34 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("./utils/generateLiquidContent.js"),a=require("./utils/renderBadgeLiquid.js"),r=require("@gem-sdk/system"),i=require("./constants.js"),n=require("./common/styles.js"),c=require("./common/classes.js"),l=require("./common/attrs.js"),d=require("./utils/common.js"),p=require("../../settings/product-badge/configs/translate.js");exports.default=o=>{let{styles:u,setting:g,builderProps:y,pageContext:m}=o,C=g?.shape!=="image",S=C&&g?.displayContent?.trim()==="",v=d.checkDiscountContentProductBadge(g?.displayContent),$=r.createClass({...c.getContainerClasses({isInstant:!1,props:o})}),j=r.createStyle({...n.getContainerStyle(o,i.IS_LIQUID)}),q=r.createClass({...c.getWrapperClasses(o)}),I=r.createClass({...c.getSubWrapperClass(o)}),P=r.createStyle({...n.getSubWrapperStyle({props:o})}),f=r.createAttr({...l.getSubWrapperAttrs(o)}),D=n.getContentStyleInternal(o),A=r.createClass({...c.getTextContainerClasses()}),T=r.createAttr({...l.getContainerAttrs(o)}),b=r.createClass({...c.getTextWrapperClasses()}),L=r.createStyle({...n.getTextBadgeWrapperStyles({setting:g,styles:u})}),x=r.createClass({...c.getTextContentClasses(u)}),V=r.createStyle({...n.getTextContentStyle({setting:g,styles:u})}),_=r.createAttr({...l.getTextContentAttrs()}),h=r.createClass({...c.getImageContainerClasses()}),B=r.createStyle({...n.getImageContainerStyles({setting:g,styles:u})}),W=r.createClass({...c.getImageClasses()}),k=r.createAttr({...l.getImageAttr({setting:g})}),E=r.createStateOrContext({minPrice:"{{ minPriceValue | replace: '\"', '\\\"' | escape }}",variantIDs:'{{ product.variants | map: "id" | json | escape }}',variantInventoryQuantities:'{{ product.variants | map: "inventory_quantity" | json | escape }}',amountDiscount:"{{amountDiscountValue | replace: '\"', '\\\"' | escape }}",percentDiscount:"{{percentDiscountValue}}",price:"{{price}}",displayTrigger:JSON.parse(JSON.stringify(g?.displayTrigger).replaceAll("'","'")),uid:o.builderProps?.uid,productCreatedAt:'{{product.created_at | date: "%Y-%m-%d" }}',productTags:"{{ product.tags | join: \",\" | replace: '\"', '\\\"' | escape }}",isTextBadge:C,isSettingSameHeightProductList:"{{ isSettingSameHeightProductList }}"}),{displayContent:O}=g??{},K=t.getDynamicSourceLocales({val:O?.trim(),uid:y?.uid,settingId:p.ProductBadge?.displayContent?.id,isLiquid:!0,pageContext:m});return e.template`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("../../../helpers.js"),s=require("./utils/generateLiquidContent.js"),a=require("./utils/renderBadgeLiquid.js"),r=require("@gem-sdk/system"),i=require("./constants.js"),n=require("./common/styles.js"),c=require("./common/classes.js"),l=require("./common/attrs.js"),d=require("./utils/common.js"),o=require("./utils/injectBadgeStateExtras.js"),p=require("../../settings/product-badge/configs/translate.js");exports.default=u=>{let{styles:g,setting:y,builderProps:m,pageContext:C}=u,S=y?.shape!=="image",v=S&&y?.displayContent?.trim()==="",$=d.checkDiscountContentProductBadge(y?.displayContent),j=r.createClass({...c.getContainerClasses({isInstant:!1,props:u})}),q=r.createStyle({...n.getContainerStyle(u,i.IS_LIQUID)}),I=r.createClass({...c.getWrapperClasses(u)}),P=r.createClass({...c.getSubWrapperClass(u)}),D=r.createStyle({...n.getSubWrapperStyle({props:u})}),f=r.createAttr({...l.getSubWrapperAttrs(u)}),A=n.getContentStyleInternal(u),b=r.createClass({...c.getTextContainerClasses()}),x=r.createAttr({...l.getContainerAttrs(u)}),T=r.createClass({...c.getTextWrapperClasses()}),L=r.createStyle({...n.getTextBadgeWrapperStyles({setting:y,styles:g})}),B=r.createClass({...c.getTextContentClasses(g)}),V=r.createStyle({...n.getTextContentStyle({setting:y,styles:g})}),E=r.createAttr({...l.getTextContentAttrs()}),_=r.createClass({...c.getImageContainerClasses()}),h=r.createStyle({...n.getImageContainerStyles({setting:y,styles:g})}),W=r.createClass({...c.getImageClasses()}),k=r.createAttr({...l.getImageAttr({setting:y})}),K=r.createStateOrContext({minPrice:"{{ minPriceValue | escape }}",variantIDs:"{{ product.variants | map: 'id' | json | escape }}",variantInventoryQuantities:"{{ product.variants | map: 'inventory_quantity' | json | escape }}",amountDiscount:"{{ amountDiscountValue | escape }}",percentDiscount:"{{percentDiscountValue}}",price:"{{price}}",displayTrigger:y?.displayTrigger??[],uid:u.builderProps?.uid,productCreatedAt:"{{ product.created_at | date: '%Y-%m-%d' }}",isTextBadge:S,isSettingSameHeightProductList:"{{ isSettingSameHeightProductList }}"}),O=o.injectBadgeStateExtras(JSON.stringify(K)),{displayContent:Q}=y??{},R=t.getDynamicSourceLocales({val:Q?.trim(),uid:m?.uid,settingId:p.ProductBadge?.displayContent?.id,isLiquid:!0,pageContext:C});return e.template`
2
2
  {% if product %}
3
- ${s.generateBadgeContent(K,m?.isPreviewing)}
4
- ${a.renderBadgeInFirstTime(g?.displayTrigger,!S,v)}
3
+ ${s.generateBadgeContent(R,C?.isPreviewing)}
4
+ ${a.renderBadgeInFirstTime(y?.displayTrigger,!v,$)}
5
5
  <gp-product-badge
6
- ${{...T}}
7
- class="${$} {{ className }}"
8
- style="${j}"
9
- data-display-content="${m?.isPreviewing?K:e.sanitizeLiquid(`{{${K}}}`)}"
6
+ ${{...x}}
7
+ class="${j} {{ className }}"
8
+ style="${q}"
9
+ data-display-content="${C?.isPreviewing?R:e.sanitizeLiquid(`{{${R}}}`)}"
10
10
  >
11
- <script gp-data type="application/json">${e.dataStringify(E)}</script>
12
- <div class="${q}">
11
+ <script gp-data type="application/json">${O}</script>
12
+ <div class="${I}">
13
13
  <div
14
14
  ${{...f}}
15
- class="${I}"
16
- style="${P}"
15
+ class="${P}"
16
+ style="${D}"
17
17
  >
18
- <style>${D}</style>
19
- ${e.RenderIf(C,e.template`
20
- <div class="${A}">
18
+ <style>${A}</style>
19
+ ${e.RenderIf(S,e.template`
20
+ <div class="${b}">
21
21
  <div
22
- class="${b}"
22
+ class="${T}"
23
23
  style="${L}"
24
24
  >
25
25
  <pre
26
- ${{..._}}
27
- class="${x}"
26
+ ${{...E}}
27
+ class="${B}"
28
28
  style="${V}"
29
29
  >{{ content | replace: percentDiscountKey, percentDiscountValue | replace: amountDiscountKey, amountDiscountValue | replace: inventoryQuantityKey, inventoryQuantityValue | replace: minPriceKey, minPriceValue }}</pre>
30
30
  </div>
31
- </div>`,e.template`<div class="${h}" style="${B}">
31
+ </div>`,e.template`<div class="${_}" style="${h}">
32
32
  <img ${{...k}} class="${W}" alt="" />
33
33
  </div>`)}
34
34
  </div>
@@ -1 +1 @@
1
- "use strict";var e=require("@gem-sdk/core"),t=require("../utils/common.js"),o=require("../utils/getShapePosition.js"),r=require("../utils/getRotateShape.js"),i=require("../utils/getStyleAdvanced.js"),a=require("../utils/getWhiteSpace.js"),n=require("../utils/stylesV2.js"),s=require("../utils/shape.js"),p=require("../utils/renderBadgeILP.js");const g=e=>{let{setting:o,styles:r}=e,i=s.getShape(o?.shape),a=o?.contentType==="text",n=a?r?.textSizeV2:r?.imageSizeV2;return a?t.getSize(i,n):t.getSize(void 0,n)},l=({styles:e,setting:t})=>{let o=s.getShape(t?.shape),r=t?.contentType==="text";return o?.supportBorder?r?n.getStyleBorder(e?.textBadgeBorder):n.getStyleBorder(e?.imageBadgeBorder):{}},d=({styles:e,setting:t})=>{let o=s.getShape(t?.shape),r=t?.contentType==="text";return o?.supportCorner?r?n.getStyleCornerRadius(e?.textBadgeCorner,o?.shapeRadius):n.getStyleCornerRadius(e?.imageBadgeCorner,o?.shapeRadius):{}},u=({props:o,currentVariant:r,product:i,isEditMode:a})=>{let{"bundle-item":n,setting:s}=o;if(n)return 1;let g=s?.contentType==="text",l=g&&!s?.displayContent?.trim(),d=t.checkDiscountContentProductBadge(s?.displayContent);if(l)return a?.2:0;let u=e.convertDecimalToNumber(r?.price)??0,S=e.convertDecimalToNumber(r?.salePrice)??0,y=p.checkShowBadge(s?.displayTrigger,i,r);return(S-u>0||!d)&&y?1:a?.2:0};exports.getContainerStyle=(e,r=!1)=>{let{setting:a,styles:n,style:s,navigationPosition:p,imageData:l,dotData:d}=e,u=a?.positionWithImage==="outside",S=t.getWrapperStyle(r),y=o.getShapePosition({positionType:n?.position,navigationPosition:p,dataImage:{...l,...d}}),h=g(e),c=i.getStyleAdvanced(u?{}:{...y,...h},s);return{...!u&&{"--pos":"absolute"},...S,...c}},exports.getContentStyleInternal=e=>{let{styles:t,setting:o,builderProps:r}=e,i=o?.contentType==="text";return n.generateShadowCSS(`[id="${r?.uid}"] .product-badge-item`,i?t?.textBadgeShadow:t?.imageBadgeShadow)},exports.getImageContainerStyles=({styles:t,setting:o})=>{let r=l({setting:o,styles:t}),i=d({setting:o,styles:t}),a=e.makeGlobalSize(t?.imageSizeV2).padding;return{...r,...i,...a}},exports.getSubWrapperStyle=({props:e,product:t,currentVariant:o,isEditMode:r})=>{let{setting:i}=e,a=i?.positionWithImage==="outside",n=g(e),s=r&&o?u({props:e,currentVariant:o,product:t,isEditMode:r}):1;return{...a?{...n,"--mb":0}:{},opacity:s}},exports.getTextBadgeWrapperStyles=({styles:e,setting:o})=>{let i=s.getShape(o?.shape),a=l({setting:o,styles:e}),p=o?.positionWithImage==="outside",g=d({setting:o,styles:e}),u=t.getShapeWrapperPadding(i?.ratio);return{...a,...g,...r.composeShapeStyleByPosition(i,e?.position,p),...n.getStyleBackground(!i?.backgroundColorInText,e?.badgeColorV2),...u,height:i?.ratio===1?"0px":"100%"}},exports.getTextContentStyle=({styles:o,setting:i})=>{let p=e.makeGlobalSize(o?.textSizeV2).padding,g=s.getShape(i?.shape),l=i?.positionWithImage==="outside";return{...a.getWhiteSpaceStyle(o?.textSizeV2),...t.convertToStyle(g?.textStyle),...r.composeTextStyleByPosition(g,o?.position,l),...e.composeTypographyStyle(o?.typo),...e.getStyleShadow({value:o?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:o?.typo?.custom?.hasShadowText}),...n.getStyleBackground(!!g?.backgroundColorInText,o?.badgeColorV2),...p}};
1
+ "use strict";var e=require("@gem-sdk/core"),t=require("../../../../helpers.js"),o=require("../utils/common.js"),r=require("../utils/getShapePosition.js"),i=require("../utils/getRotateShape.js"),a=require("../utils/getStyleAdvanced.js"),s=require("../utils/getWhiteSpace.js"),n=require("../utils/stylesV2.js"),p=require("../utils/shape.js"),l=require("../utils/renderBadgeILP.js");const g=e=>{let{setting:t,styles:r}=e,i=p.getShape(t?.shape),a=t?.contentType==="text",s=a?r?.textSizeV2:r?.imageSizeV2;return a?o.getSize(i,s):o.getSize(void 0,s)},d=({styles:e,setting:t})=>{let o=p.getShape(t?.shape),r=t?.contentType==="text";return o?.supportBorder?r?n.getStyleBorder(e?.textBadgeBorder):n.getStyleBorder(e?.imageBadgeBorder):{}},u=({styles:e,setting:t})=>{let o=p.getShape(t?.shape),r=t?.contentType==="text";return o?.supportCorner?r?n.getStyleCornerRadius(e?.textBadgeCorner,o?.shapeRadius):n.getStyleCornerRadius(e?.imageBadgeCorner,o?.shapeRadius):{}},S=({props:t,currentVariant:r,product:i,isEditMode:a})=>{let{"bundle-item":s,setting:n}=t;if(s)return 1;let p=n?.contentType==="text",g=p&&!n?.displayContent?.trim(),d=o.checkDiscountContentProductBadge(n?.displayContent);if(g)return a?.2:0;let u=e.convertDecimalToNumber(r?.price)??0,S=e.convertDecimalToNumber(r?.salePrice)??0,y=l.checkShowBadge(n?.displayTrigger,i,r);return(S-u>0||!d)&&y?1:a?.2:0};exports.getContainerStyle=(i,s=!1)=>{let{setting:n,styles:p,style:l,navigationPosition:d,imageData:u,dotData:S,isInsideImageList:y}=i,c=n?.positionWithImage==="outside",h=o.getWrapperStyle(s),m=r.getShapePosition({positionType:p?.position,navigationPosition:d,dataImage:{...u,...S}}),x=g(i),B=a.getStyleAdvanced(c?{}:{...m,...x},l),C=y?t.getDisplayStyle(t=>!["one-col","two-col"].includes(e.getResponsiveValueByScreen(u?.imageLayout,t)||""),"block"):{};return{...!c&&{"--pos":"absolute"},...h,...B,...C}},exports.getContentStyleInternal=e=>{let{styles:t,setting:o,builderProps:r}=e,i=o?.contentType==="text";return n.generateShadowCSS(`[id="${r?.uid}"] .product-badge-item`,i?t?.textBadgeShadow:t?.imageBadgeShadow)},exports.getImageContainerStyles=({styles:t,setting:o})=>{let r=d({setting:o,styles:t}),i=u({setting:o,styles:t}),a=e.makeGlobalSize(t?.imageSizeV2).padding;return{...r,...i,...a}},exports.getSubWrapperStyle=({props:e,product:t,currentVariant:o,isEditMode:r})=>{let{setting:i}=e,a=i?.positionWithImage==="outside",s=g(e),n=r&&o?S({props:e,currentVariant:o,product:t,isEditMode:r}):1;return{...a?{...s,"--mb":0}:{},opacity:n}},exports.getTextBadgeWrapperStyles=({styles:e,setting:t})=>{let r=p.getShape(t?.shape),a=d({setting:t,styles:e}),s=t?.positionWithImage==="outside",l=u({setting:t,styles:e}),g=o.getShapeWrapperPadding(r?.ratio);return{...a,...l,...i.composeShapeStyleByPosition(r,e?.position,s),...n.getStyleBackground(!r?.backgroundColorInText,e?.badgeColorV2),...g,height:r?.ratio===1?"0px":"100%"}},exports.getTextContentStyle=({styles:t,setting:r})=>{let a=e.makeGlobalSize(t?.textSizeV2).padding,l=p.getShape(r?.shape),g=r?.positionWithImage==="outside";return{...s.getWhiteSpaceStyle(t?.textSizeV2),...o.convertToStyle(l?.textStyle),...i.composeTextStyleByPosition(l,t?.position,g),...e.composeTypographyStyle(t?.typo),...e.getStyleShadow({value:t?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:t?.typo?.custom?.hasShadowText}),...n.getStyleBackground(!!l?.backgroundColorInText,t?.badgeColorV2),...a}};
@@ -0,0 +1 @@
1
+ "use strict";exports.injectBadgeStateExtras=t=>{let e=t.slice(0,-1);return`${e},"productTags":{{ product.tags | json }}}`};
@@ -1,4 +1,4 @@
1
- "use strict";var e=require("../types.js");const i=i=>i===e.CompareType.ABOVE?0:i===e.CompareType.BELOW?2:1,n=e=>e?.length?e.map(e=>{switch(e?.triggerEvent){case"discount_price":return r(e);case"price_range":return t(e);case"inventory_status":return o(e);case"product_tags":return g(e);case"creation_date":return c(e);default:return""}}).join(" "):"",s=e=>e.replace(/[%$]/g,""),a=()=>`
1
+ "use strict";var e=require("../types.js");const i=i=>i===e.CompareType.ABOVE?0:i===e.CompareType.BELOW?2:1,n=e=>e?.length?e.map(e=>{switch(e?.triggerEvent){case"discount_price":return r(e);case"price_range":return t(e);case"inventory_status":return o(e);case"product_tags":return c(e);case"creation_date":return g(e);default:return""}}).join(" "):"",s=e=>e.replace(/[%$]/g,""),a=()=>`
2
2
  {% assign enabled = false %}
3
3
  {% case conditionType %}
4
4
  {% when "exact" %}
@@ -63,7 +63,7 @@
63
63
  {% assign isPriceRange = enabled %}
64
64
  {% endif %}
65
65
  {% assign conditionTriggers = conditionTriggers | append: "," | append: isPriceRange %}
66
- `},o=e=>{let{type:n,conditionType:r,from:t,to:o}=e,g=i(r);return`
66
+ `},o=e=>{let{type:n,conditionType:r,from:t,to:o}=e,c=i(r);return`
67
67
  {% assign type = "${n}" %}
68
68
  {% assign shouldContinue = false %}
69
69
  {% if variant.inventory_policy == "continue" and type != "out_of_stock" %}
@@ -79,7 +79,7 @@
79
79
  {% assign to = ${s(o??"0")} %}
80
80
  ${a()}
81
81
  {% if conditionType == "below" or conditionType == "exact_or_below" %}
82
- {% assign min = ${g} %}
82
+ {% assign min = ${c} %}
83
83
  {% assign from = 1 %}
84
84
  {% assign to = from | minus: min | plus: 1 %}
85
85
  {% if compareValue >= from and compareValue <= to %}
@@ -99,7 +99,7 @@
99
99
  {% assign conditionTriggers = conditionTriggers | append: "," | append: false %}
100
100
  {% endif %}
101
101
 
102
- `},g=e=>{let{searchTag:i}=e,n=i.map(e=>e.replaceAll("'","&#039;")).join(", ");return`
102
+ `},c=e=>{let{searchTag:i}=e,n=i.map(e=>e.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll("'","&#39;").replaceAll('"',"&quot;")).join(", ");return`
103
103
  {% assign productTags = product.tags | escape %}
104
104
  {% assign searchTag = '${n}' %}
105
105
  {% for tag in productTags %}
@@ -109,7 +109,7 @@
109
109
  {% endif %}
110
110
  {% endfor %}
111
111
  {% assign conditionTriggers = conditionTriggers | append: "," | append: isProductTag %}
112
- `},c=e=>{let{days:i,from:n,to:r,type:t,conditionType:o}=e;return`
112
+ `},g=e=>{let{days:i,from:n,to:r,type:t,conditionType:o}=e;return`
113
113
  {% assign type = "${t}" %}
114
114
  {% assign days = ${s(i)} %}
115
115
  {% assign from = "${n}" | date: "%Y-%m-%d" | date: "%s" | times: 1000 %}
@@ -1,4 +1,4 @@
1
- "use strict";var e=require("@gem-sdk/core");const t=["desktop","mobile","tablet"],o=(e,o)=>{let l={};return t.forEach(t=>{l={...l,[`--d${"desktop"===t?"":`-${t}`}`]:`${e(t)?"none":o}`}}),l},l=t=>{let o={desktop:"none"};return["desktop","mobile","tablet"].forEach(l=>{let r=e.getResponsiveValueByScreen(t?.lineClamp,l),a=e.getResponsiveValueByScreen(t?.hasLineClamp,l);a&&r?o[l]=`calc(${r} * 1lh)`:o[l]="none"}),{...e.makeStyleResponsive("maxh",o)}};exports.getButtonStyle=({setting:t})=>{let l=e.composeTypographyStyle(t?.typo,t?.typography),r={...e.makeStyleResponsive("jc",t?.textAlign),...e.makeStyle({tt:t?.transform}),...l,...e.getGlobalColorStyle(t?.showMoreColor),...o(e=>!!t?.hasLineClamp&&void 0!==t.hasLineClamp[e]&&!t.hasLineClamp[e],"inline-flex")};return e.filterTruthyStyles(r)},exports.getMaxHeightStyleDefault=l,exports.getStaticCss=()=>{let e=`
1
+ "use strict";var e=require("@gem-sdk/core");const t=["desktop","mobile","tablet"],o=(e,o)=>{let l={};return t.forEach(t=>{l={...l,[`--d${"desktop"===t?"":`-${t}`}`]:`${e(t)?"none":o}`}}),l},l=t=>{let o={desktop:"none"};return["desktop","mobile","tablet"].forEach(l=>{let p=e.getResponsiveValueByScreen(t?.lineClamp,l),r=e.getResponsiveValueByScreen(t?.hasLineClamp,l);r&&p?o[l]=`calc(${p} * 1lh)`:o[l]="none"}),{...e.makeStyleResponsive("maxh",o)}};exports.getButtonStyle=({setting:t})=>{let l=e.composeTypographyStyle(t?.typo,t?.typography),p={...e.makeStyleResponsive("jc",t?.textAlign),...e.makeStyle({tt:t?.transform}),...l,...e.getGlobalColorStyle(t?.showMoreColor),...o(e=>!!t?.hasLineClamp&&void 0!==t.hasLineClamp[e]&&!t.hasLineClamp[e],"inline-flex")};return e.filterTruthyStyles(p)},exports.getMaxHeightStyleDefault=l,exports.getStaticCss=()=>{let e=`
2
2
  .gp-p-description-text > :not(ol, ul, table, div, style, script) {
3
3
  display: inline !important;
4
4
  }
@@ -7,6 +7,11 @@
7
7
  content: "";
8
8
  display: block; /* đảm bảo xuống d\xf2ng tr\xean Safari/iOS */
9
9
  }
10
+
11
+ .gp-p-description-text > :is(p, h1, h2, h3, h4, h5, h6, blockquote):not(:last-child)::after {
12
+ height: 1lh;
13
+ }
14
+
10
15
  .gp-p-description-text > table {
11
16
  box-shadow: none;
12
17
  }
@@ -14,4 +19,4 @@
14
19
  .p-description-wrapper.gp-p-description-text * {
15
20
  color: inherit;
16
21
  line-height: inherit !important;
17
- }`;return{gpDescriptionCss:e,textDescriptionCss:t}},exports.getTextStyle=({setting:t,renderMaxHeight:o})=>{let r=e.composeTypographyStyle(t?.typo,t?.typography),a={...e.getStyleShadow({value:t?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:t?.typo?.custom?.hasShadowText}),...e.makeStyleResponsive("ta",t?.textAlign),...e.getGlobalColorStyle(t?.color),...e.makeStyle({tt:t?.transform}),...r,...o&&l(t)};return e.filterTruthyStyles(a)};
22
+ }`;return{gpDescriptionCss:e,textDescriptionCss:t}},exports.getTextStyle=({setting:t,renderMaxHeight:o})=>{let p=e.composeTypographyStyle(t?.typo,t?.typography),r={...e.getStyleShadow({value:t?.typo?.custom?.textShadow,styleAppliedFor:"text-shadow",isEnableShadow:t?.typo?.custom?.hasShadowText}),...e.makeStyleResponsive("ta",t?.textAlign),...e.getGlobalColorStyle(t?.color),...e.makeStyle({tt:t?.transform}),...p,...o&&l(t)};return e.filterTruthyStyles(r)};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@gem-sdk/core"),s=require("../../../common/components/NoDataState.js"),l=require("../../../common/components/TooltipHover.js"),i=require("../../../text/components/Text.js"),a=require("@gem-sdk/system"),r=require("./common/styles.js"),o=require("./common/classes.js"),n=require("./hooks/useGpDiscountTag.js");exports.default=({setting:d,styles:u,builderProps:c,...p})=>{let{customContent:x}=d??{},m=p["bundle-item"],{textAlign:y}=u??{},{t:f}=t.useI18nStore(),{mode:g,product:j,salePrice:b,priceSave:h,currentProductId:q,unitCustomDisplay:C,shouldPlaceholderNoDiscount:S}=n.useGpDiscountTag({setting:d,styles:u,builderProps:c,...p});if(S)return e.jsx(l.default,{enable:!0,text:f("Not be displayed when published"),position:"bottom",width:"205px",children:e.jsx(s.default,{builderAttrs:c?.builderData,elementType:"secondary",description:f("No discount"),rawMode:!0,customClass:"!gp-p-[5px]"})});let v=a.createStyle(r.getWrapperTextStyle(u)),N=a.createStyle(r.getContainerStyle(u)),T=a.createClass(o.getWrapperTextClass(u)),k=a.createClass(o.getContainerClass()),D=a.createClass(o.getRootClass({mode:g,salePrice:b,priceSave:h,bundleItem:m}));return e.jsx("div",{className:D,style:{...t.makeStyleResponsive("ta",y)},id:`shopify-text-element-${c?.uid}`,"data-id":c?.uid,"data-product-id":q,"gp-data-hidden":"false",children:a.If(!j," ",e.jsx("div",{className:k,style:N,children:e.jsx("div",{className:T,style:v,children:e.jsxs("div",{className:"gp-flex gp-break-all",children:[e.jsx(i.default,{styles:u,setting:{...d,text:x?.prefix?.replaceAll(" ","&nbsp;"),options:{useState:!0,uniqueId:`${c?.uid}-prefix`},excludeFlex:!0}}),e.jsx(i.default,{styles:u,setting:{...d,text:C,options:{isCannotEditing:!0},excludeFlex:!0}}),e.jsx(i.default,{styles:u,setting:{...d,text:x?.suffix?.replaceAll(" ","&nbsp;"),excludeFlex:!0,options:{useState:!0,uniqueId:`${c?.uid}-suffix`}}})]})})}))})};
2
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("@gem-sdk/core"),s=require("../../../common/components/NoDataState.js"),l=require("../../../common/components/TooltipHover.js");require("../../../common/const.js");var i=require("../../../text/components/Text.js"),r=require("@gem-sdk/system"),a=require("./common/styles.js"),o=require("./common/classes.js"),n=require("./hooks/useGpDiscountTag.js");exports.default=({setting:d,styles:u,builderProps:c,...p})=>{let{customContent:x}=d??{},m=p["bundle-item"],{textAlign:y}=u??{},{t:f}=t.useI18nStore(),{mode:j,product:g,salePrice:q,priceSave:b,currentProductId:h,unitCustomDisplay:C,shouldPlaceholderNoDiscount:v}=n.useGpDiscountTag({setting:d,styles:u,builderProps:c,...p});if(v)return e.jsx(l.default,{enable:!0,text:f("Not be displayed when published"),position:"bottom",width:"205px",children:e.jsx(s.default,{builderAttrs:c?.builderData,elementType:"secondary",description:f("No discount"),rawMode:!0,customClass:"!gp-p-[5px]"})});let S=r.createStyle(a.getWrapperTextStyle(u)),N=r.createStyle(a.getContainerStyle(u)),T=r.createClass(o.getWrapperTextClass(u)),k=r.createClass(o.getContainerClass()),D=r.createClass(o.getRootClass({mode:j,salePrice:q,priceSave:b,bundleItem:m}));return e.jsx("div",{className:D,style:{...t.makeStyleResponsive("ta",y)},id:`shopify-text-element-${c?.uid}`,"data-id":c?.uid,"data-product-id":h,"gp-data-hidden":"false",children:r.If(!g," ",e.jsx("div",{className:k,style:N,children:e.jsx("div",{className:T,style:S,children:e.jsxs("div",{className:"gp-flex gp-break-all",children:[e.jsx(i.default,{styles:u,setting:{...d,text:x?.prefix?.replaceAll(" ","&nbsp;"),options:{useState:!0,uniqueId:`${c?.uid}-prefix`},excludeFlex:!0}}),e.jsx(i.default,{styles:u,setting:{...d,text:C,options:{isCannotEditing:!0},excludeFlex:!0}}),e.jsx(i.default,{styles:u,setting:{...d,text:x?.suffix?.replaceAll(" ","&nbsp;"),excludeFlex:!0,options:{useState:!0,uniqueId:`${c?.uid}-suffix`}}})]})})}))})};
@@ -1,41 +1,41 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("./common/common.js"),i=require("./components/feature-gallery/FeatureImageWithGallery.liquid.js"),r=require("./components/gallery-carousel/GalleryCarousel.liquid.js"),s=require("./components/gallery-grid/GalleryGrid.liquid.js"),a=require("../../../helpers.js"),o=require("./common/productGallery.js"),l=require("./composables/getProductImagesClassName.js"),d=require("./composables/getProductImagesStyles.js"),u=require("@gem-sdk/system"),p=require("./common/getBorderActiveCss.js"),n=require("../../helpers/function.js");exports.default=g=>{let c=t.setDefaultWhenUndefineSetting(g),{setting:m,styles:f,builderProps:y,style:$}=c,{rawChildren:S,pageContext:I}=g,h={...m,...f},q=`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("./common/common.js"),i=require("./components/feature-gallery/FeatureImageWithGallery.liquid.js"),r=require("./components/gallery-carousel/GalleryCarousel.liquid.js"),s=require("./components/gallery-grid/GalleryGrid.liquid.js"),a=require("../../../helpers.js"),o=require("./common/productGallery.js"),l=require("./composables/getProductImagesClassName.js"),d=require("./composables/getProductImagesStyles.js"),u=require("@gem-sdk/system"),p=require("./common/getBorderActiveCss.js"),n=require("../../helpers/function.js");exports.default=c=>{let g=t.setDefaultWhenUndefineSetting(c),{setting:m,styles:f,builderProps:y,style:$}=g,{rawChildren:h,pageContext:S}=c,I={...m,...f},j=`
2
2
  {
3
3
  "id":${JSON.stringify(y?.uid)},
4
- "pageContext": ${JSON.stringify(a.filterPageContext(I))},
4
+ "pageContext": ${JSON.stringify(a.filterPageContext(S))},
5
5
  "setting":${JSON.stringify(m)},
6
6
  "styles":${JSON.stringify(f)},
7
7
  "productUrl":{{product.url | json }},
8
- "product":{{ product | json }},
8
+ "product":{% if product %}{"id":{{ product.id | json }},"handle":{{ product.handle | json }},"media":{{ product.media | json }}}{% else %}null{% endif %},
9
9
  "collectionUrl": {{ collection.url | json }},
10
- "collection": {{ collection | json }}
10
+ "collection": {% if collection %}{"handle":{{ collection.handle | json }}}{% else %}null{% endif %}
11
11
  }
12
- `,v=u.createAttr({"section-id":"{{section.id}}","data-id":`${y?.uid}`}),{isOnlyFeatureAllDevices:j,isRenderGalleryGrid:C}=t.getConditionRenderGalleryImages(h?.position,m?.type),F=C?{}:u.createAttr({"data-only-image":u.LiquidIf("product.media.size > 1","false","true")}),{wrapperClasses:L,productImagesGalleryClasses:P}=l.getProductImagesClassName(g),O=u.createClass({"gp-grid gp-w-full !gp-m-0 gp-relative":!0}),D=u.createClass({"gp-w-full !gp-m-0 gp-relative":!0}),{wrapContainerStyle:b,wrapContainerStyleOnlyOneImage:G,galleryImageStyle:z}=d.getProductImagesStyles(h),A=o.getShapeByLayout({shape:h.shape,shapeForBottom:h.shapeForBottom,shapeFor1Col:h.shapeFor1Col,shapeFor2Col:h.shapeFor2Col,shapeForFtOnly:h.shapeForFtOnly,shapeForInsideBottom:h.shapeForInsideBottom??o.sizeSettingDefaultForNewLayout,shapeForInside:h.shapeForInside??o.sizeSettingDefaultForNewLayout},h.position),N=t.getStyleInsideLayout(h.position,A,h?.spacing),_=()=>e.template`
13
- ${e.WrapRenderChildren({uid:y?.uid||"",customProps:S?.[0].customProps},S?.map(t=>{if(t)return e.template`${e.RenderChildren({...t,isInsideProductImage:!0,imageData:{imageShape:f?.ftShape,imageAlign:f?.align,imageLayout:f?.position},dotData:{dotSize:m?.ftDotSize,dotGapToCarousel:m?.ftDotGapToCarousel,dotStyle:m?.ftDotStyle}})}`}))}
12
+ `,q=u.createAttr({"section-id":"{{section.id}}","data-id":`${y?.uid}`}),{isOnlyFeatureAllDevices:v,isRenderGalleryGrid:C}=t.getConditionRenderGalleryImages(I?.position,m?.type),F=C?{}:u.createAttr({"data-only-image":u.LiquidIf("product.media.size > 1","false","true")}),{wrapperClasses:L,productImagesGalleryClasses:P}=l.getProductImagesClassName(c),O=u.createClass({"gp-grid gp-w-full !gp-m-0 gp-relative":!0}),D=u.createClass({"gp-w-full !gp-m-0 gp-relative":!0}),{wrapContainerStyle:b,wrapContainerStyleOnlyOneImage:G,galleryImageStyle:z}=d.getProductImagesStyles(I),A=o.getShapeByLayout({shape:I.shape,shapeForBottom:I.shapeForBottom,shapeFor1Col:I.shapeFor1Col,shapeFor2Col:I.shapeFor2Col,shapeForFtOnly:I.shapeForFtOnly,shapeForInsideBottom:I.shapeForInsideBottom??o.sizeSettingDefaultForNewLayout,shapeForInside:I.shapeForInside??o.sizeSettingDefaultForNewLayout},I.position),N=t.getStyleInsideLayout(I.position,A,I?.spacing),_=(t=!1)=>e.template`
13
+ ${e.WrapRenderChildren({uid:y?.uid||"",customProps:h?.[0].customProps},h?.map(i=>{if(i)return e.template`${e.RenderChildren({...i,isInsideProductImage:!0,isInsideImageList:t,imageData:{imageShape:f?.ftShape,imageAlign:f?.align,imageLayout:f?.position},dotData:{dotSize:m?.ftDotSize,dotGapToCarousel:m?.ftDotGapToCarousel,dotStyle:m?.ftDotStyle}})}`}))}
14
14
  `;return e.template`
15
- ${u.If(m?.borderActive?.border!=="none",u.LiquidIf("product.media.size > 1",`<style>${p.getBorderActiveCss({settings:h,uid:y?.uid,type:"Liquid"})}</style>`),"")}
15
+ ${u.If(m?.borderActive?.border!=="none",u.LiquidIf("product.media.size > 1",`<style>${p.getBorderActiveCss({settings:I,uid:y?.uid,type:"Liquid"})}</style>`),"")}
16
16
  ${u.Liquid(`
17
17
  {% assign featured_image = product.featured_image %}
18
18
  ${u.LiquidIf("variant != null and variant.featured_image != null","{% assign featured_image = variant.featured_image %}")}
19
19
  `)}
20
20
  <gp-product-images-v3
21
- ${{...v}}
21
+ ${{...q}}
22
22
  style="${{...$}}"
23
23
  class="${L}"
24
24
  >
25
- <script gp-data type="application/json">${q}</script>
25
+ <script gp-data type="application/json">${j}</script>
26
26
  <div
27
27
  class="${u.LiquidIf("product.media.size > 1",`${O}`,`${D}`)}"
28
28
  style="${u.LiquidIf("product.media.size > 1",n.getStyleOfObject(b),n.getStyleOfObject(G))}"
29
29
  >
30
- ${i.default({builderPropUID:`gp-carousel-${y?.uid}`,...h,children:_(),pageContext:I})}
31
- ${u.If(!j,e.template`
30
+ ${i.default({builderPropUID:`gp-carousel-${y?.uid}`,...I,children:_(),pageContext:S})}
31
+ ${u.If(!v,e.template`
32
32
  <div
33
33
  class="${P}"
34
34
  style="${n.getStyleOfObject(z)}"
35
35
  ${{...F}}
36
36
  >
37
- ${u.LiquidIf("product.media.size > 1",r.default({builderPropUID:`gp-gallery-${y?.uid}`,...h,pageContext:I}))}
38
- ${u.If(C,s.default({builderPropUID:y?.uid,wrapperStyle:{...N},children:_(),...h,pageContext:I}))}
37
+ ${u.LiquidIf("product.media.size > 1",r.default({builderPropUID:`gp-gallery-${y?.uid}`,...I,pageContext:S}))}
38
+ ${u.If(C,s.default({builderPropUID:y?.uid,wrapperStyle:{...N},children:_(!0),...I,pageContext:S}))}
39
39
  </div>
40
40
  `)}
41
41
  </div>
@@ -1,18 +1,18 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("./common/common.js"),r=require("./components/feature-gallery/FeatureImageWithGalleryEmbla.liquid.js"),i=require("./components/gallery-carousel/GalleryCarouselEmbla.liquid.js"),s=require("./components/gallery-grid/GalleryGrid.liquid.js"),a=require("../../../helpers.js"),o=require("./common/productGallery.js"),l=require("./composables/getProductImagesClassName.js"),d=require("./composables/getProductImagesStyles.js"),u=require("@gem-sdk/system"),p=require("./common/getBorderActiveCss.js"),n=require("../../helpers/function.js");exports.default=c=>{let g=t.setDefaultWhenUndefineSetting(c),{setting:m,styles:f,builderProps:y,style:$}=g,{rawChildren:S,pageContext:I}=c,h={...m,...f},q=`
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core"),t=require("./common/common.js"),i=require("./components/feature-gallery/FeatureImageWithGalleryEmbla.liquid.js"),r=require("./components/gallery-carousel/GalleryCarouselEmbla.liquid.js"),s=require("./components/gallery-grid/GalleryGrid.liquid.js"),a=require("../../../helpers.js"),o=require("./common/productGallery.js"),l=require("./composables/getProductImagesClassName.js"),d=require("./composables/getProductImagesStyles.js"),u=require("@gem-sdk/system"),p=require("./common/getBorderActiveCss.js"),n=require("../../helpers/function.js");exports.default=c=>{let g=t.setDefaultWhenUndefineSetting(c),{setting:m,styles:f,builderProps:y,style:$}=g,{rawChildren:h,pageContext:S}=c,I={...m,...f},q=`
2
2
  {
3
3
  "id":${JSON.stringify(y?.uid)},
4
- "pageContext": ${JSON.stringify(a.filterPageContext(I))},
4
+ "pageContext": ${JSON.stringify(a.filterPageContext(S))},
5
5
  "setting":${JSON.stringify(m)},
6
6
  "styles":${JSON.stringify(f)},
7
7
  "productUrl":{{product.url | json | escape}},
8
- "product":{{product | json | escape}},
8
+ "product":{% if product %}{"id":{{ product.id | json | escape }},"handle":{{ product.handle | json | escape }},"media":{{ product.media | json | escape }}}{% else %}null{% endif %},
9
9
  "collectionUrl": {{ collection.url | json | escape }},
10
- "collection": {{ collection | json | escape}}
10
+ "collection": {% if collection %}{"handle":{{ collection.handle | json | escape }}}{% else %}null{% endif %}
11
11
  }
12
- `,v=u.createAttr({"section-id":"{{section.id}}","data-id":`${y?.uid}`}),{isOnlyFeatureAllDevices:j,isRenderGalleryGrid:C}=t.getConditionRenderGalleryImages(h?.position,m?.type),F=C?{}:u.createAttr({"data-only-image":u.LiquidIf("product.media.size > 1","false","true")}),{wrapperClasses:L,productImagesGalleryClasses:P}=l.getProductImagesClassName(c),b=u.createClass({"gp-grid gp-w-full !gp-m-0 gp-relative":!0}),O=u.createClass({"gp-w-full !gp-m-0 gp-relative":!0}),{wrapContainerStyle:D,wrapContainerStyleOnlyOneImage:G,galleryImageStyle:z}=d.getProductImagesStyles(h),A=o.getShapeByLayout({shape:h.shape,shapeForBottom:h.shapeForBottom,shapeFor1Col:h.shapeFor1Col,shapeFor2Col:h.shapeFor2Col,shapeForFtOnly:h.shapeForFtOnly,shapeForInsideBottom:h.shapeForInsideBottom??o.sizeSettingDefaultForNewLayout,shapeForInside:h.shapeForInside??o.sizeSettingDefaultForNewLayout},h.position),N=t.getStyleInsideLayout(h.position,A,h?.spacing),_=()=>e.template`
13
- ${e.WrapRenderChildren({uid:y?.uid||"",customProps:S?.[0].customProps},S?.map(t=>{if(t)return e.template`${e.RenderChildren({...t,isInsideProductImage:!0,imageData:{imageShape:f?.ftShape,imageAlign:f?.align,imageLayout:f?.position},dotData:{dotSize:m?.ftDotSize,dotGapToCarousel:m?.ftDotGapToCarousel,dotStyle:m?.ftDotStyle}})}`}))}
12
+ `,v=u.createAttr({"section-id":"{{section.id}}","data-id":`${y?.uid}`}),{isOnlyFeatureAllDevices:j,isRenderGalleryGrid:C}=t.getConditionRenderGalleryImages(I?.position,m?.type),F=C?{}:u.createAttr({"data-only-image":u.LiquidIf("product.media.size > 1","false","true")}),{wrapperClasses:L,productImagesGalleryClasses:P}=l.getProductImagesClassName(c),b=u.createClass({"gp-grid gp-w-full !gp-m-0 gp-relative":!0}),O=u.createClass({"gp-w-full !gp-m-0 gp-relative":!0}),{wrapContainerStyle:D,wrapContainerStyleOnlyOneImage:G,galleryImageStyle:z}=d.getProductImagesStyles(I),A=o.getShapeByLayout({shape:I.shape,shapeForBottom:I.shapeForBottom,shapeFor1Col:I.shapeFor1Col,shapeFor2Col:I.shapeFor2Col,shapeForFtOnly:I.shapeForFtOnly,shapeForInsideBottom:I.shapeForInsideBottom??o.sizeSettingDefaultForNewLayout,shapeForInside:I.shapeForInside??o.sizeSettingDefaultForNewLayout},I.position),N=t.getStyleInsideLayout(I.position,A,I?.spacing),_=()=>e.template`
13
+ ${e.WrapRenderChildren({uid:y?.uid||"",customProps:h?.[0].customProps},h?.map(t=>{if(t)return e.template`${e.RenderChildren({...t,isInsideProductImage:!0,imageData:{imageShape:f?.ftShape,imageAlign:f?.align,imageLayout:f?.position},dotData:{dotSize:m?.ftDotSize,dotGapToCarousel:m?.ftDotGapToCarousel,dotStyle:m?.ftDotStyle}})}`}))}
14
14
  `;return e.template`
15
- ${u.If(m?.borderActive?.border!=="none",u.LiquidIf("product.media.size > 1",`<style>${p.getBorderActiveCss({settings:h,uid:y?.uid,type:"Liquid"})}</style>`),"")}
15
+ ${u.If(m?.borderActive?.border!=="none",u.LiquidIf("product.media.size > 1",`<style>${p.getBorderActiveCss({settings:I,uid:y?.uid,type:"Liquid"})}</style>`),"")}
16
16
  ${u.Liquid(`
17
17
  {% assign featured_image = product.featured_image %}
18
18
  ${u.LiquidIf("variant != null and variant.featured_image != null","{% assign featured_image = variant.featured_image %}")}
@@ -27,15 +27,15 @@
27
27
  class="${u.LiquidIf("product.media.size > 1",`${b}`,`${O}`)}"
28
28
  style="${u.LiquidIf("product.media.size > 1",n.getStyleOfObject(D),n.getStyleOfObject(G))}"
29
29
  >
30
- ${r.default({builderPropUID:`gp-carousel-${y?.uid}`,...h,children:_(),pageContext:I})}
30
+ ${i.default({builderPropUID:`gp-carousel-${y?.uid}`,...I,children:_(),pageContext:S})}
31
31
  ${u.If(!j,e.template`
32
32
  <div
33
33
  class="${P}"
34
34
  style="${n.getStyleOfObject(z)}"
35
35
  ${{...F}}
36
36
  >
37
- ${u.LiquidIf("product.media.size > 1",i.default({builderPropUID:`gp-gallery-${y?.uid}`,...h,pageContext:I}))}
38
- ${u.If(C,s.default({builderPropUID:y?.uid,wrapperStyle:{...N},children:_(),...h,pageContext:I}))}
37
+ ${u.LiquidIf("product.media.size > 1",r.default({builderPropUID:`gp-gallery-${y?.uid}`,...I,pageContext:S}))}
38
+ ${u.If(C,s.default({builderPropUID:y?.uid,wrapperStyle:{...N},children:_(),...I,pageContext:S}))}
39
39
  </div>
40
40
  `)}
41
41
  </div>
@@ -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),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
+ "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("../../../common/const.js"),s=require("../SalePageProductListWarning.js"),l=require("next/head"),i=require("./ProductListGridLayout.js"),c=require("./ProductListCarouselLayout.js"),n=require("./common/styles.js"),u=require("@gem-sdk/system"),g=require("./common/classes.js"),P=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:T,styles:C,builderProps:O,setting:S,builderAttrs:f}=t,{isRelatedProduct:p,productSetting:_}=P.getData(t),I=_.relatedTag&&_.relatedTag[0],{isEditMode:R,isPreviewSharePageMode:U}=d.useRenderMode(),y=d.useCurrentDevice(),D=d.usePageType(),v=d.usePageStore(e=>e.dynamicProduct),b=d.usePageStore(e=>e.dynamicCollection),[E,j]=o.useState(1),[x,k]=o.useState(!0),[L,q]=o.useState(),[M,N]=o.useState(!1),w="GP_FUNNEL_PAGE"===D;"GP_COLLECTION"!=D||[a.PRODUCT_LIST_PRODUCT_SOURCE.Collection,a.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection].includes(_?.productSrc)||(_.productSrc=a.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection);let W=_?.productSrc??a.PRODUCT_LIST_PRODUCT_SOURCE.Collection;W===a.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection&&(_.collectionId=b?.collectionId||"latest");let F=v?.productId&&v?.productId!==_.relatedProductId?v?.productId:_.relatedProductId,G=d.useFetchHandle(),Q=d.usePageStore(e=>e.publicStoreFrontData),A=o.useMemo(()=>d.hasPublicStoreFrontData(Q)?d.createStoreFrontFetcher(Q):G,[Q]),{data:B}=d.useProductQuery(p&&F?F:void 0,{revalidateOnMount:R||U},A),H=_.relatedTag&&"tags"===_.relatedTag[0]&&(!B?.tags||B?.tags.length===0),z=_.relatedTag&&"collection"===_.relatedTag[0]&&(!B?.collections?.edges||B?.collections.edges.length===0),$=_.relatedTag&&"vendor"===_.relatedTag[0]&&!B?.vendor,V=d.useProductsQueryAll(L,{revalidateOnMount:R||U},A),K=R||U,J=d.useProductsQuery(W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?_?.productIds:void 0,{revalidateOnMount:K},{defaultSelectedProductCount:_?.numOfSelectedProducts,selectedStatus:K&&_?.productIds?.length?d.PICKED_PRODUCT_STATUSES:void 0}),X=o.useMemo(()=>({id:_?.collectionId??"latest",numberOfProducts:S?.numberOfProducts??4,orderBy:S?.orderBy}),[_?.collectionId,Number(S?.numberOfProducts),S?.orderBy]),Y=d.useCollectionQuery(W!==a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?X:void 0,{revalidateOnMount:K});o.useEffect(()=>{if(p&&B&&_.relatedTag&&"recommended-product"!==_.relatedType){let e;switch(N(!1),_.hasRelatedExclude&&(e=_?.relatedExclude&&_.relatedExclude.split(",").map(e=>e.trim())),_.relatedTag[0]){case"vendor":q({first:S?.numberOfProducts,vendor:_.relatedTag&&"vendor"===_.relatedTag[0]?B?.vendor:"",idNEQ:B.id});break;case"collection":{let t=B?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){N(!0);break}q(e&&e.length>0?{first:S?.numberOfProducts,idNEQ:B.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}:{first:S?.numberOfProducts,idNEQ:B.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]});break}case"tags":if(!B.tags||0===B.tags.length){N(!0);break}q(e&&e.length>0?{first:S?.numberOfProducts,idNEQ:B.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:B.tags},{nameNotIn:e}]}]}:{first:S?.numberOfProducts,idNEQ:B.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:B.tags}]}]})}}},[B,_.relatedType,_.relatedTag,S?.numberOfProducts,_.relatedExclude,_.hasRelatedExclude,p]);let Z=W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?J.isValidating:Y.isValidating,ee=W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?J.isLoading:Y.isLoading,et=W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?J.error:Y.error,er=Y.data?.collections?.edges?.[0]?.node,eo=W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?d.flattenConnection(J.data?.products):d.flattenConnection(er?.products),ed=V?.data?.products?d.flattenConnection(V?.data?.products):void 0,ea=p&&ed?ed:W===a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct&&_?.productIds?.length?_?.productIds?.map(e=>eo?.find(t=>t?.baseID===e)).filter(Boolean)??eo:W!==a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?eo:eo.filter((e,t)=>t<(_?.numOfSelectedProducts??4)),es=o.useMemo(()=>M&&p&&R||!ea.length&&!ee&&x&&R,[x,ee,M,p,R,ea.length]),el=o.useMemo(()=>!ea||M&&p,[M,p,ea]),ei=o.useMemo(()=>{if(!S?.sameHeight)return[];let e=0,t=Math.ceil((ea?.length??0)/+(S?.slidesToShow?.[y]??1));return Array.from(Array(ea?.length??0)).map((r,o)=>(o>=+(S?.slidesToShow?.[y]??1)*(e+1)&&++e,{gridRow:`${1+E*e}/${E+1+E*e}`,marginBottom:e+1<t?m.getPropertyByDevice(C?.horizontalGutter,y):void 0}))},[S?.sameHeight,S?.slidesToShow,E,ea?.length,y,C?.horizontalGutter]),ec=o.useMemo(()=>Z||ee||et||!ea||M&&p,[et,ee,M,p,Z,ea]);o.useEffect(()=>{ec||setTimeout(()=>{let{builderData:e}=O??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&j(r.childElementCount||1)},R?0:500)},[O,ec,R]);let en=o.useMemo(()=>({collection:er,products:ea,settings:{loop:S?.loop??{desktop:!1},scrollMode:S?.scrollMode??{desktop:"snap"},slidesToShow:S?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:C?.layout,dot:S?.dot,dotStyle:S?.dotStyle,arrow:S?.arrow,controlOverContent:S?.controlOverContent,sameHeight:S?.sameHeight},styles:{horizontalGutter:C?.horizontalGutter,verticalGutter:C?.verticalGutter,fullWidth:C?.fullWidth,spacing:C?.spacing,width:C?.width,height:C?.height}}),[er,ea,S,C]);if(O?.isPreview&&w)return e.jsx(e.Fragment,{});if(es)return e.jsx(e.Fragment,{children:u.If(x,e.jsx(h,{builderAttrs:f,collectionHandle:er?.handle,productSrc:W,onClose:()=>k(!1),children:T,relatedTagString:I,assignProductNoTags:H||z||$,noAssignedProduct:!F}))});let{productListWrapStyle:eu,productListContentStyle:eg,productListWrapAlignStyle:eP}=n.getStyle(t),{productListWrapClass:em}=g.getClass(t);return e.jsxs("div",{...f,className:em,style:eu,children:[!!C?.preloadBgImage&&e.jsxs(l,{children:[!!C.backgroundImage?.desktop?.image?.src&&e.jsx("link",{rel:"preload",href:C.backgroundImage.desktop.image.src,as:"image"}),!!C.backgroundImage?.tablet?.image?.src&&e.jsx("link",{rel:"preload",href:C.backgroundImage?.tablet?.image?.src,as:"image"}),!!C.backgroundImage?.mobile?.image?.src&&e.jsx("link",{rel:"preload",href:C.backgroundImage?.mobile?.image?.src,as:"image"})]}),Z||ee?e.jsx(r.default,{}):et?e.jsxs("div",{children:["Error: ",et?.message]}):el?e.jsx("div",{children:"Products not found"}):e.jsx(d.ProductListProvider,{...en,children:e.jsx("div",{className:"gp-flex gp-w-full",style:eP,children:e.jsxs("div",{style:eg,children:[w&&e.jsx(s.default,{}),e.jsx(e.Fragment,{children:u.If(C?.layout==="grid",e.jsx(i.default,{...t,productSortedById:ea,generateGridRowArray:ei}),e.jsx(c.default,{...t,productSortedById:ea}))})]})})}),d.filterToolbarPreview(T,!0)]})};
@@ -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),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
+ "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"),s=require("@gem-sdk/core"),i=require("../../../common/const.js"),l=require("../SalePageProductListWarning.js"),d=require("next/head"),u=require("./ProductListGridLayout.js"),c=require("./ProductListCarouselLayout.js"),n=require("./common/styles.js"),a=require("@gem-sdk/system"),g=require("./common/classes.js"),m=require("./common/helpers.js"),P=require("../../../dialog/common/helpers.js"),C=require("./hooks/useCollectionQuery.js"),h=require("./hooks/useProductRelatedQuery.js"),T=require("./constants/index.js"),S=require("./hooks/useRelatedProductIDAssigned.js"),O=require("./hooks/useProductsQuery.js");const _=t(()=>Promise.resolve().then(function(){return require("../ProductNotFound.js")}),{loading:r.default});exports.default=t=>{let{children:p,styles:f,builderProps:R,setting:U,builderAttrs:j}=t,{isRelatedProduct:y,productSetting:D}=m.getData(t),{isEditMode:I,isPreviewSharePageMode:L}=s.useRenderMode(),k=s.useCurrentDevice(),x=s.usePageType(),q=s.usePageStore(e=>e.dynamicCollection),[E,b]=o.useState(1),[v,N]=o.useState(!0),w=o.useRef(),M="GP_FUNNEL_PAGE"===x;"GP_COLLECTION"!=x||[i.PRODUCT_LIST_PRODUCT_SOURCE.Collection,i.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection].includes(D?.productSrc)||(D.productSrc=i.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection);let A=D?.productSrc??i.PRODUCT_LIST_PRODUCT_SOURCE.Collection;A===i.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection&&(D.collectionId=q?.collectionId||"latest");let G=Number.isNaN(Number(U?.numberOfProducts))?T.DEFAULT_COLLECTION_NUMBER_OF_PRODUCTS:Number(U?.numberOfProducts),{relatedProductIdAssigned:B}=S.default({productSetting:D}),{isNotFoundRelatedProduct:F,relatedProducts:H,isNoRelatedProductData:Q,relatedTagString:z,isLoading:W}=h.default({productSetting:D,isRelatedProduct:y,relatedProductIdAssigned:B,numberOfProducts:G}),$=I||L,V=O.useProductsQuery({productIds:D?.productIds,defaultSelectedProductCount:D?.numOfSelectedProducts,productSrc:A,selectedStatus:$&&D?.productIds?.length?s.PICKED_PRODUCT_STATUSES:void 0}),K=C.useCollectionQuery({productSrc:A,collectionID:D?.collectionId??"latest",numberOfProducts:G,orderBy:U?.orderBy}),J=W||(A===i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?V.isLoading:K.isLoading),X=A===i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?V.error:K.error,Y=A===i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?V.isValidating:K.isValidating,Z=K.data?.collections?.edges?.[0]?.node,ee=A===i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?s.flattenConnection(V.data?.products):s.flattenConnection(Z?.products),et=s.usePageStore(e=>e.assignedProductIds),er=s.usePageStore(e=>e.isApplyAllProducts),eo=o.useMemo(()=>(et??[]).length>0&&!er||er,[et,er]),es=H?.data?.products&&eo?s.flattenConnection(H?.data?.products):[],ei=y?es:A===i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct&&D?.productIds?.length?D?.productIds?.map(e=>ee?.find(t=>t?.baseID===e)).filter(Boolean)??ee:A!==i.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?ee:ee.filter((e,t)=>t<(D?.numOfSelectedProducts??4)),el=o.useMemo(()=>F&&y&&I||!ei.length&&!J&&v&&I,[v,J,F,y,I,ei.length]),ed=o.useMemo(()=>!ei||F&&y,[F,y,ei]),eu=o.useMemo(()=>{if(!U?.sameHeight)return[];let e=0,t=Math.ceil((ei?.length??0)/+(U?.slidesToShow?.[k]??1));return Array.from(Array(ei?.length??0)).map((r,o)=>(o>=+(U?.slidesToShow?.[k]??1)*(e+1)&&++e,{gridRow:`${1+E*e}/${E+1+E*e}`,marginBottom:e+1<t?P.getPropertyByDevice(f?.horizontalGutter,k):void 0}))},[U?.sameHeight,U?.slidesToShow,E,ei?.length,k,f?.horizontalGutter]),ec=o.useMemo(()=>Y||J||X||!ei||F&&y,[X,J,F,y,Y,ei]);o.useEffect(()=>{if(!ec)return w.current=setTimeout(()=>{let{builderData:e}=R??{},t=e?.childrens?.[0];if(!t)return;let r=document.querySelector(`[data-id=${t}] div`);r&&b(r.childElementCount||1)},I?0:500),()=>{clearTimeout(w.current)}},[R,ec,I,ei]);let en=o.useMemo(()=>({collection:Z,products:ei,settings:{loop:U?.loop??{desktop:!1},scrollMode:U?.scrollMode??{desktop:"snap"},slidesToShow:U?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:f?.layout,dot:U?.dot,dotStyle:U?.dotStyle,arrow:U?.arrow,controlOverContent:U?.controlOverContent,sameHeight:U?.sameHeight},styles:{horizontalGutter:f?.horizontalGutter,verticalGutter:f?.verticalGutter,fullWidth:f?.fullWidth,spacing:f?.spacing,width:f?.width,height:f?.height}}),[Z,ei,U,f]);if(R?.isPreview&&M)return e.jsx(e.Fragment,{});if(el)return e.jsx(e.Fragment,{children:a.If(v,e.jsx(_,{builderAttrs:j,collectionHandle:Z?.handle,productSrc:A,onClose:()=>N(!1),children:p,relatedTagString:z,assignProductNoTags:Q,noAssignedProduct:!B}))});let{productListWrapStyle:ea,productListContentStyle:eg,productListWrapAlignStyle:em}=n.getStyle(t),{productListWrapClass:eP}=g.getClass(t);return e.jsxs("div",{...j,className:eP,style:ea,children:[!!f?.preloadBgImage&&e.jsxs(d,{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"})]}),J||Y?e.jsx(r.default,{}):X?e.jsxs("div",{children:["Error: ",X?.message]}):ed?e.jsx("div",{children:"Products not found"}):e.jsx(s.ProductListProvider,{...en,children:e.jsx("div",{className:"gp-flex gp-w-full",style:em,children:e.jsxs("div",{style:eg,children:[M&&e.jsx(l.default,{}),e.jsx(e.Fragment,{children:a.If(f?.layout==="grid",e.jsx(u.default,{...t,productSortedById:ei,generateGridRowArray:eu}),e.jsx(c.default,{...t,productSortedById:ei}))})]})})}),s.filterToolbarPreview(p,!0)]})};
@@ -1 +1 @@
1
- "use strict";var e=require("../../../helpers/product.js"),t=require("../../product-images/common/productFeaturedImage.js"),o=require("../../../../carousel-v3/components/dot/common/helpers.js");const r="gid://shopify/Collection/",d="gid://shopify/Product/";exports.PREFIX_COLLECTION_ID=r,exports.PREFIX_PRODUCT_ID=d,exports.getData=t=>{let{setting:r,styles:d}=t,c=r?.productSetting??{},l="RelatedProduct"===c.productSrc,i=o.getUpdatedDotStyle(r?.dot,r?.dotStyle),u={dotSize:{desktop:12},dotGapToCarousel:{desktop:16},arrowIconSize:{desktop:24},showWhenHover:!1,rtl:!1,...r};delete u.childItem;let n={...d,sizeSetting:{...e.getSizeSetting({adaptiveHeight:d?.adaptiveHeight,height:d?.height,fullWidth:{desktop:!0}})},spacing:d?.spacing};return delete n.backgroundColor,delete n.backgroundImage,{isRelatedProduct:l,productSetting:c,dotStyle:i,carouselConfigSetting:u,carouselConfigStyle:n}},exports.getDataLiquid=e=>{let{setting:o,styles:c}=e,l=o?.productSetting,i=l?.relatedTag,u=l?.hasRelatedExclude,n=(i&&"collection"===i[0]?l?.relatedCollectionExclude:l?.relatedTagsExclude)??"",a=n?.split(",").map(e=>e.trim()).toString(),p=l?.productSrc??"Collection",s=l?.collectionId?.replace(r,"")??"latest",g=l?.productSrc==="PickProduct"&&l?.productIds?.length===0,h=c?.layout==="grid",m=t.convertUnitToNumber(o?.numberOfProducts,4),S="PickProduct"===p&&l?.productIds?.length?l?.productIds.map(e=>e.replace(d,"")):[],P="PickProduct"===p&&l?.productHandles?.length?l?.productHandles:[],I=o?.orderBy&&o?.orderBy!=="none",C=(l?.productSrc==="Collection"||l?.productSrc==="DynamicCollection")&&I?o?.orderBy?.split("_"):"none",k=I&&C?.[0]==="TITLE"?"| sort: 'title'":"| sort: 'updated_at'",y=C?.[C.length-1]==="DESC";return{hasRelatedExclude:u,relatedExcludeTrim:a,collectionID:s,isLatestProducts:g,isGrid:h,numberOfProducts:m,productListId:S,productListHandles:P,sortedBy:k,isReverse:y,productSrc:p,productSetting:l,isSorted:I,relatedTag:i,productNumber:"PickProduct"===p?g?4:l?.numOfSelectedProducts??4:m,collectionHandle:l?.collectionHandle}};
1
+ "use strict";var e=require("../../../helpers/product.js"),t=require("../../product-images/common/productFeaturedImage.js"),o=require("../../../../carousel-v3/components/dot/common/helpers.js"),r=require("../constants/index.js");require("react/jsx-runtime"),require("react"),require("@gem-sdk/core");var d=require("../../../../common/const.js");const c="gid://shopify/Collection/",l="gid://shopify/Product/";exports.PREFIX_COLLECTION_ID=c,exports.PREFIX_PRODUCT_ID=l,exports.getData=t=>{let{setting:r,styles:c}=t,l=r?.productSetting??{},i=l.productSrc===d.PRODUCT_LIST_PRODUCT_SOURCE.RelatedProduct,u=o.getUpdatedDotStyle(r?.dot,r?.dotStyle),n={dotSize:{desktop:12},dotGapToCarousel:{desktop:16},arrowIconSize:{desktop:24},showWhenHover:!1,rtl:!1,...r};delete n.childItem;let a={...c,sizeSetting:{...e.getSizeSetting({adaptiveHeight:c?.adaptiveHeight,height:c?.height,fullWidth:{desktop:!0}})},spacing:c?.spacing};return delete a.backgroundColor,delete a.backgroundImage,{isRelatedProduct:i,productSetting:l,dotStyle:u,carouselConfigSetting:n,carouselConfigStyle:a}},exports.getDataLiquid=e=>{let{setting:o,styles:i}=e,u=o?.productSetting,n=u?.relatedTag,a=u?.hasRelatedExclude,s=(n&&n[0]===r.RELATED_TAG_PRODUCT_SETTING.Collection?u?.relatedCollectionExclude:u?.relatedTagsExclude)??"",p=s?.split(",").map(e=>e.trim()).toString(),C=u?.productSrc??d.PRODUCT_LIST_PRODUCT_SOURCE.Collection,T=u?.collectionId?.replace(c,"")??"latest",S=u?.productSrc===d.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct&&u?.productIds?.length===0,_=i?.layout==="grid",P=t.convertUnitToNumber(o?.numberOfProducts,4),R=C===d.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct&&u?.productIds?.length?u?.productIds.map(e=>e.replace(l,"")):[],g=C===d.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct&&u?.productHandles?.length?u?.productHandles:[],O=o?.orderBy&&o?.orderBy!=="none",U=(u?.productSrc===d.PRODUCT_LIST_PRODUCT_SOURCE.Collection||u?.productSrc===d.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection)&&O?o?.orderBy?.split("_"):"none",D=O&&U?.[0]==="TITLE"?"| sort: 'title'":"| sort: 'updated_at'",I=U?.[U.length-1]==="DESC";return{hasRelatedExclude:a,relatedExcludeTrim:p,collectionID:T,isLatestProducts:S,isGrid:_,numberOfProducts:P,productListId:R,productListHandles:g,sortedBy:D,isReverse:I,productSrc:C,productSetting:u,isSorted:O,relatedTag:n,productNumber:C===d.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?S?4:u?.numOfSelectedProducts??4:P,collectionHandle:u?.collectionHandle}};
@@ -0,0 +1 @@
1
+ "use strict";exports.RELATED_TAG_PRODUCT_SETTING=void 0,function(T){T.Tags="tags",T.Collection="collection",T.Vendor="vendor"}(exports.RELATED_TAG_PRODUCT_SETTING||(exports.RELATED_TAG_PRODUCT_SETTING={})),exports.DEFAULT_COLLECTION_NUMBER_OF_PRODUCTS=4;
@@ -0,0 +1 @@
1
+ "use strict";var e=require("@gem-sdk/core"),r=require("react"),t=require("swr");require("react/jsx-runtime");var o=require("../../../../common/const.js");exports.useCollectionQuery=({productSrc:a,numberOfProducts:i,orderBy:l,collectionID:n})=>{let u=e.useFetchHandle(),s=e.usePageStore(e=>e.publicStoreFrontData),c=r.useMemo(()=>e.hasPublicStoreFrontData(s)?e.createStoreFrontFetcher(s):u,[s]),C=e.useIsSampleProduct(),S=e.useIsStorefrontProduct(),d=r.useMemo(()=>a!==o.PRODUCT_LIST_PRODUCT_SOURCE.Collection&&a!==o.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection?null:e.generateCollectionQueryKey({id:n,numberOfProducts:i,orderBy:l,isSample:C,isStorefront:S}),[a,C,S,n,i,l]),O=t(d,([,r])=>e.getCollection(c,r),{revalidateOnMount:!1,refreshInterval:0,revalidateIfStale:!1});return r.useEffect(()=>{if(a!==o.PRODUCT_LIST_PRODUCT_SOURCE.Collection&&a!==o.PRODUCT_LIST_PRODUCT_SOURCE.DynamicCollection)return;let e=!!O.error,r=O.isLoading||O.isValidating,t=!O.data&&!r;!e&&t&&O.mutate()},[a,O.data,O.error,O.isLoading,O.isValidating]),O};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("../../product-wrap/hook/useProductQuery.js");exports.default=({isRelatedProduct:r,relatedProductIdAssigned:t})=>{let{productData:{data:u,isLoading:d}}=e.default({id:r&&t?t:void 0});return{relatedProductIdAssigned:t,mainRelatedProduct:u,isLoading:d}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("swr"),a=require("@gem-sdk/core"),r=require("./useMainRelatedProductQuery.js"),i=require("../constants/index.js");exports.default=({isRelatedProduct:d,productSetting:s,relatedProductIdAssigned:l,numberOfProducts:o})=>{let[n,u]=e.useState(!1),[c,g]=e.useState(),{mainRelatedProduct:h,isLoading:T}=r.default({isRelatedProduct:d,relatedProductIdAssigned:l}),f=a.useFetchHandle(),E=a.usePageStore(e=>e.publicStoreFrontData),m=e.useMemo(()=>a.hasPublicStoreFrontData(E)?a.createStoreFrontFetcher(E):f,[E]),P=t(c?["query/products",c]:null,async([,e])=>a.getProductQueryAll(m,e),{revalidateOnMount:!1,keepPreviousData:!0,refreshInterval:0,revalidateIfStale:!1}),p=s.relatedTag&&s.relatedTag[0],v=e.useMemo(()=>{if(!p)return!1;let e=p===i.RELATED_TAG_PRODUCT_SETTING.Tags&&!h?.tags?.length,t=p===i.RELATED_TAG_PRODUCT_SETTING.Collection&&!h?.collections?.edges.length,a=p===i.RELATED_TAG_PRODUCT_SETTING.Vendor&&!h?.vendor;return e||t||a},[p,h]),I=e.useMemo(()=>{if(!d)return!1;if(!h&&T)return!0;let e=!P.data&&!P.error&&!P.isLoading;return e||!P.error&&(P.isLoading||P.isValidating)},[d,h,T,P.error,P.isLoading,P.isValidating,P.data]);return e.useEffect(()=>{if(d&&h&&s.relatedTag&&"recommended-product"!==s.relatedType){let e;switch(u(!1),s.hasRelatedExclude&&(e=s?.relatedExclude&&s.relatedExclude.split(",").map(e=>e.trim())),s.relatedTag[0]){case"vendor":g({first:o,vendor:s.relatedTag&&"vendor"===s.relatedTag[0]?h?.vendor:"",idNEQ:h.id});break;case"collection":{let t=h?.collections?.edges.map(e=>e.node?.id);if(!t||t?.length===0){u(!0);break}g(e&&e.length>0?{first:o,idNEQ:h.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t},{titleNotIn:e}]}]}:{first:o,idNEQ:h.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:t}]}]});break}case"tags":if(!h.tags||0===h.tags.length){u(!0);break}g(e&&e.length>0?{first:o,idNEQ:h.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:h.tags},{nameNotIn:e}]}]}:{first:o,idNEQ:h.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:h.tags}]}]})}}},[h,s.relatedType,s.relatedTag,o,s.relatedExclude,s.hasRelatedExclude,d]),e.useEffect(()=>{if(!d||!c)return;let e=!!P.error,t=P.isLoading||P.isValidating,a=!P.data&&!t;!e&&a&&P.mutate()},[d,P.data,P.error,P.isLoading,P.isValidating,c]),{isNotFoundRelatedProduct:n,relatedProducts:P,isNoRelatedProductData:v,relatedTagString:p,isLoading:I}};
@@ -0,0 +1 @@
1
+ "use strict";var e=require("@gem-sdk/core"),r=require("react"),t=require("swr");require("react/jsx-runtime");var a=require("../../../../common/const.js");exports.useProductsQuery=({defaultSelectedProductCount:u,productIds:s,productSrc:o,selectedStatus:i})=>{let c=e.useFetchHandle(),n=e.usePageStore(e=>e.publicStoreFrontData),d=r.useMemo(()=>e.hasPublicStoreFrontData(n)?e.createStoreFrontFetcher(n):c,[n]),P=e.useIsSampleProduct(),l=e.useIsStorefrontProduct(),S=r.useMemo(()=>o!==a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct?null:e.generateProductsQueryKey({ids:s??[],isSample:P,isStorefront:l,defaultSelectedProductCount:u,selectedStatus:i}),[o,s,P,l,u]),g=t(S,async([,r])=>e.getProducts(d,r),{revalidateOnMount:!1,refreshInterval:0,revalidateIfStale:!1});return r.useEffect(()=>{if(o!==a.PRODUCT_LIST_PRODUCT_SOURCE.PickProduct)return;let e=!!g.error,r=g.isLoading||g.isValidating,t=!g.data&&!r;!e&&t&&g.mutate()},[o,g.data,g.error,g.isLoading,g.isValidating]),{...g}};
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("@gem-sdk/core");exports.default=function({productSetting:r}){let t=e.usePageStore(e=>e.dynamicProduct),d=r.relatedProductId,u=t?.productId&&t?.productId!==d?t?.productId:d;return{relatedProductIdAssigned:u}};
@@ -1 +1 @@
1
- "use strict";var e=require("react"),r=require("../../product-variants/common/common.js"),t=require("@gem-sdk/core");exports.useGpPrice=u=>{let{setting:i,builderProps:c}=u,o=e.useRef(null),a=t.useEditorMode(),{quantity:n,hasUpdatePrice:s}=t.useQuantity(),d=t.useCurrentVariant(),{useProductCompareAtPrice:p}=t.useProductBundleDiscount(),l=u["bundle-item"],m=t.convertDecimalToNumber(d?.price)??0,g=t.convertDecimalToNumber(d?.salePrice)??0,b=i?.priceType==="compare",{trigger:y}=t.useInteraction(),P=t.useProduct(),h=P?.baseID?.replace("gid://shopify/Product/",""),v=t.useShopStore(e=>e.showPriceCurrency),M=e.useMemo(()=>l?.quantity?l.quantity:s&&n||1,[n,s,l?.quantity]),T=e.useMemo(()=>{let e=Number(l?.discountValue);return l?.discountType==="percentage"?m*M*e/100:e},[l?.discountType,l?.discountValue,m,M]),q=e.useMemo(()=>l?.discountValue?p?(g||m)*M:m*M:g*M,[l?.discountValue,m,M,g,p]),w=e.useMemo(()=>{let e=m*M;return b?q:T?Math.max(0,e-T):e},[m,M,T,q,b]),D=e.useMemo(()=>!!b&&(!(g>m)||!(g>=0)),[b,g,m]),N=(e,r)=>{y({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${c?.uid}"]`,element:o.current}),y({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${c?.uid}"]`,element:o.current})};r.useTransition(e=>{e!==m&&N(m,"price")},[m]),r.useTransition(e=>{e!==g&&N(g,"compare")},[g]);let V=t.useFormatMoney(w??0,v||!1),C=b&&!w;return{elementRef:o,moneyFormatted:V,currentProductId:h,isNoComparePrice:C,isNoComparePriceILP:"edit"!==a&&C,emitNoDataSignal:()=>{if("edit"!==a)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:c?.uid,value:!w&&b,tag:"ProductPrice"}});window.dispatchEvent(e)},shouldHiddenComparePrice:D}};
1
+ "use strict";var e=require("react"),r=require("../../product-variants/common/common.js"),t=require("../../../helpers/product-bundle.js"),u=require("@gem-sdk/core");exports.useGpPrice=i=>{let{setting:c,builderProps:a}=i,o=e.useRef(null),n=u.useEditorMode(),{quantity:s,hasUpdatePrice:d}=u.useQuantity(),l=u.useCurrentVariant(),{useProductCompareAtPrice:p}=u.useProductBundleDiscount(),m=i["bundle-item"],g=u.convertDecimalToNumber(l?.price)??0,b=u.convertDecimalToNumber(l?.salePrice)??0,h=c?.priceType==="compare",{trigger:P}=u.useInteraction(),v=u.useProduct(),y=v?.baseID?.replace("gid://shopify/Product/",""),q=u.useShopStore(e=>e.showPriceCurrency),M=e.useMemo(()=>m?.quantity?m.quantity:d&&s||1,[s,d,m?.quantity]),D=e.useMemo(()=>m?t.calculateBundleFixedDiscount(g,{...m,quantity:M}):0,[m,g,M]),w=e.useMemo(()=>m?.discountValue?p?(b||g)*M:g*M:b*M,[m?.discountValue,g,M,b,p]),T=e.useMemo(()=>{let e=g*M;return h?w:D?Math.max(0,e-D):e},[g,M,D,w,h]),C=e.useMemo(()=>!!h&&(!(b>g)||!(b>=0)),[h,b,g]),N=(e,r)=>{P({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${a?.uid}"]`,element:o.current}),P({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${a?.uid}"]`,element:o.current})};r.useTransition(e=>{e!==g&&N(g,"price")},[g]),r.useTransition(e=>{e!==b&&N(b,"compare")},[b]);let f=u.useFormatMoney(T??0,q||!1),k=h&&!T;return{elementRef:o,moneyFormatted:f,currentProductId:y,isNoComparePrice:k,isNoComparePriceILP:"edit"!==n&&k,emitNoDataSignal:()=>{if("edit"!==n)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:a?.uid,value:!T&&h,tag:"ProductPrice"}});window.dispatchEvent(e)},shouldHiddenComparePrice:C}};
@@ -1 +1 @@
1
- "use strict";var e=require("@gem-sdk/core"),t=require("../../../../../helpers.js");exports.getOptionStyles=o=>{let{valueBgColor:l,valueTextColor:r}=o??{},b=e.getGlobalColorStateResponsiveStyle("bg",l),s=e.getGlobalColorStateStyle("c",r),a={"--c":s["--focus-c"]?s["--focus-c"]:s["--c"],"--bg":b["--focus-bg"]?b["--focus-bg"]:b["--bg"],"--bg-tablet":b["--focus-bg-tablet"]?b["--focus-bg-tablet"]:b["--bg-tablet"],"--bg-mobile":b["--focus-bg-mobile"]?b["--focus-bg-mobile"]:b["--bg-mobile"]};return t.filterTruthyObject(a)},exports.getSelectStyles=t=>{let{fullWidth:o,width:l,height:r,borderInput:b,borderRadius:s,hasShadowInput:a,shadowInput:g,valueBgColor:c,valueTextColor:S}=t??{},i=e.makeStyleResponsive("w",e.makeWidth(l,o)),u=r?e.makeStyleResponsive("h",r):{};return{...i,...u,...e.handleConvertBorderStyle(b),...e.handleConvertBorderWidth(b),...e.handleConvertBorderColor(b),...e.composeRadius(s),...e.getStyleShadowState(g,"box-shadow",a),...e.getGlobalColorStateResponsiveStyle("bg",c),...e.getGlobalColorStateStyle("c",S)}};
1
+ "use strict";var e=require("@gem-sdk/core"),t=require("../../../../../helpers.js");exports.getOptionStyles=o=>{let{valueBgColor:l,valueTextColor:r}=o??{},s=e.getGlobalColorStateResponsiveStyle("bg",l),b=e.getGlobalColorStateStyle("c",r),a={"--c":b["--focus-c"]?b["--focus-c"]:b["--c"],"--bg":s["--focus-bg"]?s["--focus-bg"]:s["--bg"],"--bg-tablet":s["--focus-bg-tablet"]?s["--focus-bg-tablet"]:s["--bg-tablet"],"--bg-mobile":s["--focus-bg-mobile"]?s["--focus-bg-mobile"]:s["--bg-mobile"]};return t.filterTruthyObject(a)},exports.getSelectStyles=t=>{let{fullWidth:o,width:l,height:r,borderInput:s,borderRadius:b,hasShadowInput:a,shadowInput:g,valueBgColor:c,valueTextColor:S,valueTypo:i,valueTypography:u}=t??{},y=e.makeStyleResponsive("w",e.makeWidth(l,o)),n=r?e.makeStyleResponsive("h",r):{},d=e.composeTypographyStyle(i,u);return{...y,...n,...e.handleConvertBorderStyle(s),...e.handleConvertBorderWidth(s),...e.handleConvertBorderColor(s),...e.composeRadius(b),...e.getStyleShadowState(g,"box-shadow",a),...e.getGlobalColorStateResponsiveStyle("bg",c),...e.getGlobalColorStateStyle("c",S),...d}};