@gem-sdk/components 7.1.0 → 8.0.0-dev.102

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 (608) hide show
  1. package/dist/cjs/accordion/components/Accordion.liquid.js +9 -9
  2. package/dist/cjs/accordion/settings/configs/translate.js +1 -0
  3. package/dist/cjs/accordion/settings/configs/ui-v1.js +1 -1
  4. package/dist/cjs/accordion/settings/configs/ui-v2.js +1 -1
  5. package/dist/cjs/article/settings/configs/article-image/ui-v1.js +1 -1
  6. package/dist/cjs/article/settings/configs/article-image/ui-v2.js +1 -1
  7. package/dist/cjs/article/settings/configs/article-list/ui-v2.js +1 -1
  8. package/dist/cjs/article/settings/configs/article-read-more/ui-v1.js +1 -1
  9. package/dist/cjs/article/settings/configs/article-read-more/ui-v2.js +1 -1
  10. package/dist/cjs/article/settings/configs/translate.js +1 -0
  11. package/dist/cjs/breadcrumb/settings/configs/ui-v2.js +1 -1
  12. package/dist/cjs/builder.js +1 -1
  13. package/dist/cjs/button/common/helpers.js +1 -1
  14. package/dist/cjs/button/settings/configs/translate.js +1 -0
  15. package/dist/cjs/button/settings/configs/ui-v1.js +1 -1
  16. package/dist/cjs/button/settings/configs/ui-v2.js +1 -1
  17. package/dist/cjs/carousel/settings/configs/ui-v2.js +1 -1
  18. package/dist/cjs/carousel-v3/components/item/CarouselItem.liquid.js +1 -0
  19. package/dist/cjs/carousel-v3/components/swiper/Swiper.js +1 -1
  20. package/dist/cjs/carousel-v3/components/swiper/SwiperSlide.js +1 -1
  21. package/dist/cjs/carousel-v3/hooks/useCarousel.js +1 -1
  22. package/dist/cjs/carousel-v3/settings/configs/ui-v2.js +1 -1
  23. package/dist/cjs/code/common/styles.js +1 -1
  24. package/dist/cjs/code/components/CSSCode.js +1 -1
  25. package/dist/cjs/code/components/CSSCode.liquid.js +4 -4
  26. package/dist/cjs/code/index.js +1 -1
  27. package/dist/cjs/code/settings/configs/translate.js +1 -0
  28. package/dist/cjs/code/settings/configs/ui-v1.js +1 -1
  29. package/dist/cjs/collection/components/collection-banner/CollectionBanner.js +1 -1
  30. package/dist/cjs/collection/components/collection-banner/CollectionBanner.liquid.js +6 -7
  31. package/dist/cjs/collection/components/collection-description/common/helpers.js +1 -1
  32. package/dist/cjs/collection/components/collection-paginator/common/helpers.js +2 -2
  33. package/dist/cjs/collection/components/collection-toolbar/common/helpers.js +1 -1
  34. package/dist/cjs/collection/settings/collection-banner/configs/ui-v1.js +1 -1
  35. package/dist/cjs/collection/settings/collection-description/configs/translate.js +1 -0
  36. package/dist/cjs/collection/settings/collection-paginator/configs/translate.js +1 -0
  37. package/dist/cjs/collection/settings/collection-toolbar/configs/translate.js +1 -0
  38. package/dist/cjs/countdown-timer/common/helpers.js +1 -1
  39. package/dist/cjs/countdown-timer/components/Countdown.liquid.js +9 -9
  40. package/dist/cjs/countdown-timer/hooks/useCountDownTimer.js +1 -1
  41. package/dist/cjs/countdown-timer/hooks/useTimeLeft.js +1 -1
  42. package/dist/cjs/countdown-timer/settings/Countdown.js +1 -1
  43. package/dist/cjs/countdown-timer/settings/configs/setting.js +1 -1
  44. package/dist/cjs/countdown-timer/settings/configs/translate.js +1 -0
  45. package/dist/cjs/countdown-timer/settings/configs/ui-v2.js +1 -1
  46. package/dist/cjs/coupon/settings/configs/presets.js +1 -1
  47. package/dist/cjs/coupon/settings/configs/translate.js +1 -0
  48. package/dist/cjs/coupon/settings/configs/ui-v1.js +1 -1
  49. package/dist/cjs/coupon/settings/configs/ui-v2.js +1 -1
  50. package/dist/cjs/dialog/common/styles.js +1 -1
  51. package/dist/cjs/dialog/components/Dialog.js +2 -2
  52. package/dist/cjs/dialog/components/Dialog.liquid.js +22 -22
  53. package/dist/cjs/dialog/settings/configs/translate.js +1 -0
  54. package/dist/cjs/dialog/settings/configs/ui-v2.js +1 -1
  55. package/dist/cjs/estimate-delivery/common/helpers.js +1 -1
  56. package/dist/cjs/estimate-delivery/settings/configs/translate.js +1 -0
  57. package/dist/cjs/estimate-delivery/settings/configs/ui-v1.js +1 -1
  58. package/dist/cjs/form/components/form-checkbox/FormCheckbox.liquid.js +8 -8
  59. package/dist/cjs/form/components/form-dropdown/FormDropdown.liquid.js +5 -5
  60. package/dist/cjs/form/components/form-email/FormEmail.liquid.js +8 -8
  61. package/dist/cjs/form/components/newsletter/Newsletter.liquid.js +3 -3
  62. package/dist/cjs/form/components/textarea/TextArea.liquid.js +7 -7
  63. package/dist/cjs/form/components/textfield/TextField.liquid.js +8 -8
  64. package/dist/cjs/form/components/textinput/TextInput.liquid.js +15 -15
  65. package/dist/cjs/form/settings/contact/configs/translate.js +1 -0
  66. package/dist/cjs/form/settings/contact/configs/ui-v2.js +1 -1
  67. package/dist/cjs/form/settings/form-checkbox/configs/translate.js +1 -0
  68. package/dist/cjs/form/settings/form-dropdown/configs/translate.js +1 -0
  69. package/dist/cjs/form/settings/form-email/configs/translate.js +1 -0
  70. package/dist/cjs/form/settings/form-textarea/configs/translate.js +1 -0
  71. package/dist/cjs/form/settings/newsletter/configs/translate.js +1 -0
  72. package/dist/cjs/form/settings/newsletter/configs/ui-v2.js +1 -1
  73. package/dist/cjs/form/settings/submit-button/configs/translate.js +1 -0
  74. package/dist/cjs/form/settings/submit-button/configs/ui-v1.js +1 -1
  75. package/dist/cjs/form/settings/submit-button/configs/ui-v2.js +1 -1
  76. package/dist/cjs/form/settings/text-field/configs/translate.js +1 -0
  77. package/dist/cjs/form/settings/text-input/configs/translate.js +1 -0
  78. package/dist/cjs/form/settings/text-input/configs/ui-v2.js +1 -1
  79. package/dist/cjs/grid/components/row/Row.js +1 -1
  80. package/dist/cjs/grid/components/row/Row.liquid.js +15 -15
  81. package/dist/cjs/grid/components/row/common/styles.js +1 -1
  82. package/dist/cjs/grid/settings/configs/row/settings.js +1 -1
  83. package/dist/cjs/grid/settings/configs/row/translate.js +1 -0
  84. package/dist/cjs/grid/settings/configs/row/ui-v1.js +1 -1
  85. package/dist/cjs/grid/settings/configs/row/ui-v2.js +1 -1
  86. package/dist/cjs/grid/settings/configs/section/ui-v1.js +1 -1
  87. package/dist/cjs/grid/settings/configs/section/ui-v2.js +1 -1
  88. package/dist/cjs/header/settings/configs/ui-v2.js +1 -1
  89. package/dist/cjs/heading/settings/configs/settings.js +1 -1
  90. package/dist/cjs/heading/settings/configs/translate.js +1 -0
  91. package/dist/cjs/heading/settings/configs/ui-v1.js +1 -1
  92. package/dist/cjs/helpers.js +1 -1
  93. package/dist/cjs/hero-banner/common/classes.js +1 -1
  94. package/dist/cjs/hero-banner/common/helpers.js +1 -1
  95. package/dist/cjs/hero-banner/common/styles.js +1 -1
  96. package/dist/cjs/hero-banner/components/HeroBanner.js +1 -1
  97. package/dist/cjs/hero-banner/components/HeroBanner.liquid.js +11 -11
  98. package/dist/cjs/hero-banner/components/HeroBannerItem.js +1 -1
  99. package/dist/cjs/hero-banner/components/HeroBannerItem.liquid.js +10 -12
  100. package/dist/cjs/hero-banner/hooks/useHeroBanner.js +1 -1
  101. package/dist/cjs/hero-banner/hooks/useHeroBannerItem.js +1 -0
  102. package/dist/cjs/hero-banner/settings/configs/presets/banner-video-pre-sales-page.js +1 -1
  103. package/dist/cjs/hero-banner/settings/configs/presets/banner-video.js +1 -1
  104. package/dist/cjs/hero-banner/settings/configs/settings.js +1 -1
  105. package/dist/cjs/hero-banner/settings/configs/translate.js +1 -0
  106. package/dist/cjs/hero-banner/settings/configs/ui-v1.js +1 -1
  107. package/dist/cjs/hero-banner/settings/configs/ui-v2.js +1 -1
  108. package/dist/cjs/icon-list/common/styles.js +1 -1
  109. package/dist/cjs/icon-list/components/IconList.js +1 -1
  110. package/dist/cjs/icon-list/components/IconList.liquid.js +8 -8
  111. package/dist/cjs/icon-list/index.js +1 -1
  112. package/dist/cjs/icon-list/settings/configs/translate.js +1 -0
  113. package/dist/cjs/icon-list/settings/configs/ui-v1.js +1 -1
  114. package/dist/cjs/icon-list/settings/configs/ui-v2.js +1 -1
  115. package/dist/cjs/icon-list-hoz/settings/configs/uiV1.js +1 -1
  116. package/dist/cjs/icon-list-hoz/settings/configs/uiV2.js +1 -1
  117. package/dist/cjs/icon-list-v2/common/helpers.js +1 -1
  118. package/dist/cjs/icon-list-v2/common/styles.js +1 -1
  119. package/dist/cjs/icon-list-v2/components/IconList.js +1 -1
  120. package/dist/cjs/icon-list-v2/components/IconList.liquid.js +6 -6
  121. package/dist/cjs/icon-list-v2/settings/configs/translate.js +1 -0
  122. package/dist/cjs/image/common/helpers.js +2 -2
  123. package/dist/cjs/image/components/Image.liquid.js +7 -7
  124. package/dist/cjs/image/settings/configs/settings.js +1 -1
  125. package/dist/cjs/image/settings/configs/translate.js +1 -0
  126. package/dist/cjs/image/settings/configs/ui-v1.js +1 -1
  127. package/dist/cjs/image/settings/configs/ui-v2.js +1 -1
  128. package/dist/cjs/image-comparison/common/helpers.js +1 -1
  129. package/dist/cjs/image-comparison/components/ImageComparison.liquid.js +3 -3
  130. package/dist/cjs/image-comparison/components/Label.liquid.js +6 -6
  131. package/dist/cjs/image-comparison/index.js +1 -1
  132. package/dist/cjs/image-comparison/settings/configs/settings.js +1 -1
  133. package/dist/cjs/image-comparison/settings/configs/translate.js +1 -0
  134. package/dist/cjs/image-comparison/settings/configs/ui-v2.js +1 -1
  135. package/dist/cjs/index.js +1 -1
  136. package/dist/cjs/marquee/components/Marquee.liquid.js +6 -6
  137. package/dist/cjs/marquee/settings/configs/ui-v1.js +1 -1
  138. package/dist/cjs/marquee/settings/configs/ui-v2.js +1 -1
  139. package/dist/cjs/next.js +1 -1
  140. package/dist/cjs/post-purchase/buyer-consent/common/classes.js +1 -0
  141. package/dist/cjs/post-purchase/buyer-consent/common/helpers.js +1 -0
  142. package/dist/cjs/post-purchase/buyer-consent/common/styles.js +1 -0
  143. package/dist/cjs/post-purchase/buyer-consent/components/BuyerConsent.js +1 -0
  144. package/dist/cjs/post-purchase/buyer-consent/index.js +1 -0
  145. package/dist/cjs/post-purchase/buyer-consent/next.js +1 -0
  146. package/dist/cjs/post-purchase/buyer-consent/settings/buyer-consent/configs/presets.js +5 -0
  147. package/dist/cjs/post-purchase/buyer-consent/settings/buyer-consent/configs/settings.js +1 -0
  148. package/dist/cjs/post-purchase/buyer-consent/settings/buyer-consent/configs/ui-v2.js +1 -0
  149. package/dist/cjs/post-purchase/buyer-consent/settings/buyer-consent/index.js +5 -0
  150. package/dist/cjs/post-purchase/callout-banner/settings/config/callout-box/ui-v1.js +1 -1
  151. package/dist/cjs/post-purchase/line/index.js +1 -1
  152. package/dist/cjs/post-purchase/product/components/ProductPrice.js +1 -1
  153. package/dist/cjs/post-purchase/product/components/product-subscription/common/classes.js +1 -0
  154. package/dist/cjs/post-purchase/product/components/product-subscription/common/styles.js +1 -0
  155. package/dist/cjs/post-purchase/product/components/product-subscription/components/ProductSubscription.js +1 -0
  156. package/dist/cjs/post-purchase/product/components/product-subscription/components/SellingPlanDropdown.js +1 -0
  157. package/dist/cjs/post-purchase/product/components/product-subscription/components/SellingPlanLabel.js +1 -0
  158. package/dist/cjs/post-purchase/product/components/product-subscription/components/SellingPlanRadio.js +1 -0
  159. package/dist/cjs/post-purchase/product/components/product-subscription/components/SubscriptionDetail.js +1 -0
  160. package/dist/cjs/post-purchase/product/components/product-subscription/components/SubscriptionRadio.js +1 -0
  161. package/dist/cjs/post-purchase/product/components/product-subscription/hooks/useSellingPlanOptions.js +1 -0
  162. package/dist/cjs/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
  163. package/dist/cjs/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
  164. package/dist/cjs/post-purchase/product/index.js +1 -1
  165. package/dist/cjs/post-purchase/product/next.js +1 -1
  166. package/dist/cjs/post-purchase/product/settings/presets-config/product-presets/product-offer-1-col.js +1 -1
  167. package/dist/cjs/post-purchase/product/settings/presets-config/product-presets/product-offer-2-col.js +1 -1
  168. package/dist/cjs/post-purchase/product/settings/presets-config/product-presets/product-offer-default.js +1 -1
  169. package/dist/cjs/post-purchase/product/settings/product-description/configs/settings-v2.js +1 -1
  170. package/dist/cjs/post-purchase/product/settings/product-description/configs/ui-v2.js +1 -1
  171. package/dist/cjs/post-purchase/product/settings/product-discount-tag/configs/setting-v2.js +1 -1
  172. package/dist/cjs/post-purchase/product/settings/product-offer/configs/ui-v1.js +1 -1
  173. package/dist/cjs/post-purchase/product/settings/product-price/configs/settings-v2.js +1 -1
  174. package/dist/cjs/post-purchase/product/settings/product-price/configs/ui-v2.js +1 -1
  175. package/dist/cjs/post-purchase/product/settings/product-subscription/configs/presets.js +10 -0
  176. package/dist/cjs/post-purchase/product/settings/product-subscription/configs/settings.js +1 -0
  177. package/dist/cjs/post-purchase/product/settings/product-subscription/configs/ui-v2.js +1 -0
  178. package/dist/cjs/post-purchase/product/settings/product-subscription/index.js +10 -0
  179. package/dist/cjs/post-purchase/product/settings/product-title/configs/settings-v2.js +1 -1
  180. package/dist/cjs/post-purchase/product/settings/product-title/configs/ui-v2.js +1 -1
  181. package/dist/cjs/postPurchaseSetting.js +1 -1
  182. package/dist/cjs/product/components/dynamic-checkout/Button.liquid.js +3 -3
  183. package/dist/cjs/product/components/file-upload/common/helpers.js +1 -1
  184. package/dist/cjs/product/components/file-upload/settings/configs/translate.js +1 -0
  185. package/dist/cjs/product/components/file-upload/settings/configs/ui-v1.js +1 -1
  186. package/dist/cjs/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  187. package/dist/cjs/product/components/product-badge/ProductBadge.js +1 -1
  188. package/dist/cjs/product/components/product-badge/ProductBadge.liquid.js +19 -19
  189. package/dist/cjs/product/components/product-badge/common/classes.js +1 -1
  190. package/dist/cjs/product/components/product-badge/common/styles.js +1 -1
  191. package/dist/cjs/product/components/product-badge/utils/common.js +1 -1
  192. package/dist/cjs/product/components/product-badge/utils/renderBadgeLiquid.js +3 -4
  193. package/dist/cjs/product/components/product-bundle/setting/configs/ui-v1.js +1 -1
  194. package/dist/cjs/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  195. package/dist/cjs/product/components/product-button/AddToCartButton.liquid.js +1 -1
  196. package/dist/cjs/product/components/product-button/PriceComponent.liquid.js +1 -1
  197. package/dist/cjs/product/components/product-button/ProductButton.liquid.js +6 -4
  198. package/dist/cjs/product/components/product-button/ProductButtonPrice.liquid.js +1 -1
  199. package/dist/cjs/product/components/product-button/SoldOutButton.liquid.js +1 -1
  200. package/dist/cjs/product/components/product-button/helpers/getButtonDynamicSourceLocales.js +1 -1
  201. package/dist/cjs/product/components/product-button/hooks/useAddToCart.js +1 -1
  202. package/dist/cjs/product/components/product-description/ProductDescription.liquid.js +13 -13
  203. package/dist/cjs/product/components/product-discount-tag/ProductDiscountTag.liquid.js +11 -11
  204. package/dist/cjs/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
  205. package/dist/cjs/product/components/product-images-v3/common/attrs.js +1 -1
  206. package/dist/cjs/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +5 -5
  207. package/dist/cjs/product/components/product-list-v3/ProductList.js +1 -1
  208. package/dist/cjs/product/components/product-list-v3/common/classes.js +1 -1
  209. package/dist/cjs/product/components/product-price/ProductPrice.js +1 -1
  210. package/dist/cjs/product/components/product-price/common/attrs.js +1 -1
  211. package/dist/cjs/product/components/product-price/common/classes.js +1 -1
  212. package/dist/cjs/product/components/product-price/hooks/useGpPrice.js +1 -1
  213. package/dist/cjs/product/components/product-properties/common/helpers.js +1 -1
  214. package/dist/cjs/product/components/product-properties/property-choice/ProductPropertyChoice.liquid.js +13 -13
  215. package/dist/cjs/product/components/product-properties/property-input/ProductPropertyInput.liquid.js +11 -11
  216. package/dist/cjs/product/components/product-properties/property-select/ProductPropertySelect.liquid.js +8 -8
  217. package/dist/cjs/product/components/product-title/ProductTitle.liquid.js +10 -3
  218. package/dist/cjs/product/components/product-variants/OptionVariantsNewFormat.liquid.js +41 -0
  219. package/dist/cjs/product/components/product-variants/OptionVariantsOldFormat.liquid.js +66 -0
  220. package/dist/cjs/product/components/product-variants/ProductVariants.liquid.js +25 -77
  221. package/dist/cjs/product/components/product-variants/common/base/styles.js +1 -1
  222. package/dist/cjs/product/components/product-variants/common/const.js +1 -0
  223. package/dist/cjs/product/components/product-variants/common/dropdown/styles.js +1 -1
  224. package/dist/cjs/product/components/product-variants/components/color/color.liquid.js +3 -3
  225. package/dist/cjs/product/components/product-variants/components/dropdown-swatches/Dropdown.js +1 -1
  226. package/dist/cjs/product/components/product-variants/components/dropdown-swatches/Dropdown.liquid.js +3 -3
  227. package/dist/cjs/product/components/product-view-more/ProductViewMore.liquid.js +1 -1
  228. package/dist/cjs/product/components/product-view-more/common/helpers.js +1 -1
  229. package/dist/cjs/product/components/product-wrap/Product.liquid.js +25 -25
  230. package/dist/cjs/product/helpers/product-bundle.js +1 -1
  231. package/dist/cjs/product/settings/bundle-layout/horizontal-three.js +1 -1
  232. package/dist/cjs/product/settings/bundle-layout/horizontal-two.js +1 -1
  233. package/dist/cjs/product/settings/dynamic-checkout/configs/ui-v1.js +1 -1
  234. package/dist/cjs/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  235. package/dist/cjs/product/settings/product/configs/ui-v1.js +1 -1
  236. package/dist/cjs/product/settings/product/configs/ui-v2.js +1 -1
  237. package/dist/cjs/product/settings/product-badge/configs/translate.js +1 -0
  238. package/dist/cjs/product/settings/product-badge/configs/ui-v1.js +1 -1
  239. package/dist/cjs/product/settings/product-badge/configs/ui-v2.js +1 -1
  240. package/dist/cjs/product/settings/product-button/configs/translate.js +1 -0
  241. package/dist/cjs/product/settings/product-button/configs/ui-v1.js +1 -1
  242. package/dist/cjs/product/settings/product-button/configs/ui-v2.js +1 -1
  243. package/dist/cjs/product/settings/product-description/configs/translate.js +1 -0
  244. package/dist/cjs/product/settings/product-discount-tag/configs/translate.js +1 -0
  245. package/dist/cjs/product/settings/product-image-v2/ProductFeatureImage.js +1 -1
  246. package/dist/cjs/product/settings/product-image-v2/ProductGalleryImage.js +1 -1
  247. package/dist/cjs/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  248. package/dist/cjs/product/settings/product-image-v3/ProductFeatureImage.js +1 -1
  249. package/dist/cjs/product/settings/product-image-v3/ProductGalleryImage.js +1 -1
  250. package/dist/cjs/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  251. package/dist/cjs/product/settings/product-list/configs/ui-v1.js +1 -1
  252. package/dist/cjs/product/settings/product-list/configs/ui-v2.js +1 -1
  253. package/dist/cjs/product/settings/product-list-v3/configs/ui-v1.js +1 -1
  254. package/dist/cjs/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  255. package/dist/cjs/product/settings/product-properties/configs/translate.js +1 -0
  256. package/dist/cjs/product/settings/product-properties/configs/ui-v1.js +1 -1
  257. package/dist/cjs/product/settings/product-properties/configs/ui-v2.js +1 -1
  258. package/dist/cjs/product/settings/product-quantity/configs/presets.js +1 -1
  259. package/dist/cjs/product/settings/product-variant/configs/presets.js +1 -1
  260. package/dist/cjs/product/settings/product-variant/configs/settings.js +1 -1
  261. package/dist/cjs/product/settings/product-variant/configs/ui-v1.js +1 -1
  262. package/dist/cjs/product/settings/product-variant/configs/ui-v2.js +1 -1
  263. package/dist/cjs/product/settings/product-view-more/configs/translate.js +1 -0
  264. package/dist/cjs/product/settings/product-view-more/configs/ui-v1.js +1 -1
  265. package/dist/cjs/product/settings/product-view-more/configs/ui-v2.js +1 -1
  266. package/dist/cjs/sticky/common/styles.js +1 -1
  267. package/dist/cjs/sticky/components/Sticky.js +1 -1
  268. package/dist/cjs/sticky/components/Sticky.liquid.js +7 -7
  269. package/dist/cjs/sticky/index.js +1 -1
  270. package/dist/cjs/sticky/settings/configs/presets.js +2 -2
  271. package/dist/cjs/sticky/settings/configs/settings.js +1 -1
  272. package/dist/cjs/sticky/settings/configs/translate.js +1 -0
  273. package/dist/cjs/sticky/settings/configs/ui-v1.js +1 -1
  274. package/dist/cjs/sticky/settings/configs/ui-v2.js +1 -1
  275. package/dist/cjs/stock-counter/components/StockCounter.liquid.js +8 -8
  276. package/dist/cjs/stock-counter/settings/configs/translate.js +1 -0
  277. package/dist/cjs/tab/common/styles.js +1 -1
  278. package/dist/cjs/tab/components/Tabs.js +1 -1
  279. package/dist/cjs/tab/components/Tabs.liquid.js +8 -8
  280. package/dist/cjs/tab/settings/configs/translate.js +1 -0
  281. package/dist/cjs/tab/settings/configs/ui-v2.js +1 -1
  282. package/dist/cjs/text/common/helpers.js +1 -1
  283. package/dist/cjs/text/common/styles.js +1 -1
  284. package/dist/cjs/text/components/Text.js +1 -1
  285. package/dist/cjs/text/components/Text.liquid.js +5 -6
  286. package/dist/cjs/text/settings/configs/settings.js +1 -1
  287. package/dist/cjs/text/settings/configs/translate.js +1 -0
  288. package/dist/cjs/text/settings/configs/ui-v1.js +1 -1
  289. package/dist/cjs/third-party/settings/BloyRewardsProgramLoyalty/index.js +1 -1
  290. package/dist/cjs/third-party/settings/BonLoyaltyRewardsReferrals/index.js +1 -1
  291. package/dist/cjs/third-party/settings/PushOwl/uiV1.js +1 -1
  292. package/dist/cjs/third-party/settings/PushOwl/uiV2.js +1 -1
  293. package/dist/cjs/third-party/settings/Selleasy/index.js +1 -1
  294. package/dist/cjs/translate.js +2 -0
  295. package/dist/cjs/video/common/classes.js +1 -1
  296. package/dist/cjs/video/common/helpers.js +1 -1
  297. package/dist/cjs/video/components/LiteVimeoEmbed.liquid.js +11 -11
  298. package/dist/cjs/video/components/LiteYouTubeEmbed.js +1 -1
  299. package/dist/cjs/video/components/LiteYouTubeEmbed.liquid.js +12 -10
  300. package/dist/cjs/video/components/Video.liquid.js +3 -3
  301. package/dist/cjs/video/settings/configs/settings.js +1 -1
  302. package/dist/cjs/video/settings/configs/translate.js +1 -0
  303. package/dist/cjs/video/settings/configs/ui-v2.js +1 -1
  304. package/dist/esm/accordion/components/Accordion.liquid.js +12 -12
  305. package/dist/esm/accordion/settings/configs/translate.js +1 -0
  306. package/dist/esm/accordion/settings/configs/ui-v1.js +1 -1
  307. package/dist/esm/accordion/settings/configs/ui-v2.js +1 -1
  308. package/dist/esm/article/settings/configs/article-image/ui-v1.js +1 -1
  309. package/dist/esm/article/settings/configs/article-image/ui-v2.js +1 -1
  310. package/dist/esm/article/settings/configs/article-list/ui-v2.js +1 -1
  311. package/dist/esm/article/settings/configs/article-read-more/ui-v1.js +1 -1
  312. package/dist/esm/article/settings/configs/article-read-more/ui-v2.js +1 -1
  313. package/dist/esm/article/settings/configs/translate.js +1 -0
  314. package/dist/esm/breadcrumb/settings/configs/ui-v2.js +1 -1
  315. package/dist/esm/builder.js +1 -1
  316. package/dist/esm/button/common/helpers.js +1 -1
  317. package/dist/esm/button/settings/configs/translate.js +1 -0
  318. package/dist/esm/button/settings/configs/ui-v1.js +1 -1
  319. package/dist/esm/button/settings/configs/ui-v2.js +1 -1
  320. package/dist/esm/carousel/settings/configs/ui-v2.js +1 -1
  321. package/dist/esm/carousel-v3/components/item/CarouselItem.liquid.js +3 -2
  322. package/dist/esm/carousel-v3/components/swiper/Swiper.js +1 -1
  323. package/dist/esm/carousel-v3/components/swiper/SwiperSlide.js +1 -1
  324. package/dist/esm/carousel-v3/hooks/useCarousel.js +1 -1
  325. package/dist/esm/carousel-v3/settings/configs/ui-v2.js +1 -1
  326. package/dist/esm/code/common/styles.js +1 -1
  327. package/dist/esm/code/components/CSSCode.js +1 -1
  328. package/dist/esm/code/components/CSSCode.liquid.js +4 -4
  329. package/dist/esm/code/index.js +1 -1
  330. package/dist/esm/code/settings/configs/translate.js +1 -0
  331. package/dist/esm/code/settings/configs/ui-v1.js +1 -1
  332. package/dist/esm/collection/components/collection-banner/CollectionBanner.js +1 -1
  333. package/dist/esm/collection/components/collection-banner/CollectionBanner.liquid.js +3 -4
  334. package/dist/esm/collection/components/collection-description/common/helpers.js +1 -1
  335. package/dist/esm/collection/components/collection-paginator/common/helpers.js +2 -2
  336. package/dist/esm/collection/components/collection-toolbar/common/helpers.js +1 -1
  337. package/dist/esm/collection/settings/collection-banner/configs/ui-v1.js +1 -1
  338. package/dist/esm/collection/settings/collection-description/configs/translate.js +1 -0
  339. package/dist/esm/collection/settings/collection-paginator/configs/translate.js +1 -0
  340. package/dist/esm/collection/settings/collection-toolbar/configs/translate.js +1 -0
  341. package/dist/esm/countdown-timer/common/helpers.js +1 -1
  342. package/dist/esm/countdown-timer/components/Countdown.liquid.js +11 -11
  343. package/dist/esm/countdown-timer/hooks/useCountDownTimer.js +1 -1
  344. package/dist/esm/countdown-timer/hooks/useTimeLeft.js +1 -1
  345. package/dist/esm/countdown-timer/settings/Countdown.js +3 -3
  346. package/dist/esm/countdown-timer/settings/configs/setting.js +1 -1
  347. package/dist/esm/countdown-timer/settings/configs/translate.js +1 -0
  348. package/dist/esm/countdown-timer/settings/configs/ui-v2.js +1 -1
  349. package/dist/esm/coupon/settings/configs/presets.js +1 -1
  350. package/dist/esm/coupon/settings/configs/translate.js +1 -0
  351. package/dist/esm/coupon/settings/configs/ui-v1.js +1 -1
  352. package/dist/esm/coupon/settings/configs/ui-v2.js +1 -1
  353. package/dist/esm/dialog/common/styles.js +1 -1
  354. package/dist/esm/dialog/components/Dialog.js +2 -2
  355. package/dist/esm/dialog/components/Dialog.liquid.js +22 -22
  356. package/dist/esm/dialog/settings/configs/translate.js +1 -0
  357. package/dist/esm/dialog/settings/configs/ui-v2.js +1 -1
  358. package/dist/esm/estimate-delivery/common/helpers.js +1 -1
  359. package/dist/esm/estimate-delivery/settings/configs/translate.js +1 -0
  360. package/dist/esm/estimate-delivery/settings/configs/ui-v1.js +1 -1
  361. package/dist/esm/form/components/form-checkbox/FormCheckbox.liquid.js +12 -12
  362. package/dist/esm/form/components/form-dropdown/FormDropdown.liquid.js +17 -17
  363. package/dist/esm/form/components/form-email/FormEmail.liquid.js +11 -11
  364. package/dist/esm/form/components/newsletter/Newsletter.liquid.js +17 -17
  365. package/dist/esm/form/components/textarea/TextArea.liquid.js +10 -10
  366. package/dist/esm/form/components/textfield/TextField.liquid.js +9 -9
  367. package/dist/esm/form/components/textinput/TextInput.liquid.js +19 -19
  368. package/dist/esm/form/settings/contact/configs/translate.js +1 -0
  369. package/dist/esm/form/settings/contact/configs/ui-v2.js +1 -1
  370. package/dist/esm/form/settings/form-checkbox/configs/translate.js +1 -0
  371. package/dist/esm/form/settings/form-dropdown/configs/translate.js +1 -0
  372. package/dist/esm/form/settings/form-email/configs/translate.js +1 -0
  373. package/dist/esm/form/settings/form-textarea/configs/translate.js +1 -0
  374. package/dist/esm/form/settings/newsletter/configs/translate.js +1 -0
  375. package/dist/esm/form/settings/newsletter/configs/ui-v2.js +1 -1
  376. package/dist/esm/form/settings/submit-button/configs/translate.js +1 -0
  377. package/dist/esm/form/settings/submit-button/configs/ui-v1.js +1 -1
  378. package/dist/esm/form/settings/submit-button/configs/ui-v2.js +1 -1
  379. package/dist/esm/form/settings/text-field/configs/translate.js +1 -0
  380. package/dist/esm/form/settings/text-input/configs/translate.js +1 -0
  381. package/dist/esm/form/settings/text-input/configs/ui-v2.js +1 -1
  382. package/dist/esm/grid/components/row/Row.js +1 -1
  383. package/dist/esm/grid/components/row/Row.liquid.js +18 -18
  384. package/dist/esm/grid/components/row/common/styles.js +1 -1
  385. package/dist/esm/grid/settings/configs/row/settings.js +1 -1
  386. package/dist/esm/grid/settings/configs/row/translate.js +1 -0
  387. package/dist/esm/grid/settings/configs/row/ui-v1.js +1 -1
  388. package/dist/esm/grid/settings/configs/row/ui-v2.js +1 -1
  389. package/dist/esm/grid/settings/configs/section/ui-v1.js +1 -1
  390. package/dist/esm/grid/settings/configs/section/ui-v2.js +1 -1
  391. package/dist/esm/header/settings/configs/ui-v2.js +1 -1
  392. package/dist/esm/heading/settings/configs/settings.js +1 -1
  393. package/dist/esm/heading/settings/configs/translate.js +1 -0
  394. package/dist/esm/heading/settings/configs/ui-v1.js +1 -1
  395. package/dist/esm/helpers.js +1 -1
  396. package/dist/esm/hero-banner/common/classes.js +1 -1
  397. package/dist/esm/hero-banner/common/helpers.js +1 -1
  398. package/dist/esm/hero-banner/common/styles.js +1 -1
  399. package/dist/esm/hero-banner/components/HeroBanner.js +1 -1
  400. package/dist/esm/hero-banner/components/HeroBanner.liquid.js +7 -7
  401. package/dist/esm/hero-banner/components/HeroBannerItem.js +1 -1
  402. package/dist/esm/hero-banner/components/HeroBannerItem.liquid.js +10 -12
  403. package/dist/esm/hero-banner/hooks/useHeroBanner.js +1 -1
  404. package/dist/esm/hero-banner/hooks/useHeroBannerItem.js +1 -0
  405. package/dist/esm/hero-banner/settings/configs/presets/banner-video-pre-sales-page.js +1 -1
  406. package/dist/esm/hero-banner/settings/configs/presets/banner-video.js +1 -1
  407. package/dist/esm/hero-banner/settings/configs/settings.js +1 -1
  408. package/dist/esm/hero-banner/settings/configs/translate.js +1 -0
  409. package/dist/esm/hero-banner/settings/configs/ui-v1.js +1 -1
  410. package/dist/esm/hero-banner/settings/configs/ui-v2.js +1 -1
  411. package/dist/esm/icon-list/common/styles.js +1 -1
  412. package/dist/esm/icon-list/components/IconList.js +1 -1
  413. package/dist/esm/icon-list/components/IconList.liquid.js +8 -8
  414. package/dist/esm/icon-list/index.js +1 -1
  415. package/dist/esm/icon-list/settings/configs/translate.js +1 -0
  416. package/dist/esm/icon-list/settings/configs/ui-v1.js +1 -1
  417. package/dist/esm/icon-list/settings/configs/ui-v2.js +1 -1
  418. package/dist/esm/icon-list-hoz/settings/configs/uiV1.js +1 -1
  419. package/dist/esm/icon-list-hoz/settings/configs/uiV2.js +1 -1
  420. package/dist/esm/icon-list-v2/common/helpers.js +1 -1
  421. package/dist/esm/icon-list-v2/common/styles.js +1 -1
  422. package/dist/esm/icon-list-v2/components/IconList.js +1 -1
  423. package/dist/esm/icon-list-v2/components/IconList.liquid.js +8 -8
  424. package/dist/esm/icon-list-v2/settings/configs/translate.js +1 -0
  425. package/dist/esm/image/common/helpers.js +2 -2
  426. package/dist/esm/image/components/Image.liquid.js +10 -10
  427. package/dist/esm/image/settings/configs/settings.js +1 -1
  428. package/dist/esm/image/settings/configs/translate.js +1 -0
  429. package/dist/esm/image/settings/configs/ui-v1.js +1 -1
  430. package/dist/esm/image/settings/configs/ui-v2.js +1 -1
  431. package/dist/esm/image-comparison/common/helpers.js +1 -1
  432. package/dist/esm/image-comparison/components/ImageComparison.liquid.js +3 -3
  433. package/dist/esm/image-comparison/components/Label.liquid.js +6 -6
  434. package/dist/esm/image-comparison/index.js +1 -1
  435. package/dist/esm/image-comparison/settings/configs/settings.js +1 -1
  436. package/dist/esm/image-comparison/settings/configs/translate.js +1 -0
  437. package/dist/esm/image-comparison/settings/configs/ui-v2.js +1 -1
  438. package/dist/esm/index.js +1 -1
  439. package/dist/esm/marquee/components/Marquee.liquid.js +18 -18
  440. package/dist/esm/marquee/settings/configs/ui-v1.js +1 -1
  441. package/dist/esm/marquee/settings/configs/ui-v2.js +1 -1
  442. package/dist/esm/next.js +1 -1
  443. package/dist/esm/post-purchase/buyer-consent/common/classes.js +1 -0
  444. package/dist/esm/post-purchase/buyer-consent/common/helpers.js +1 -0
  445. package/dist/esm/post-purchase/buyer-consent/common/styles.js +1 -0
  446. package/dist/esm/post-purchase/buyer-consent/components/BuyerConsent.js +1 -0
  447. package/dist/esm/post-purchase/buyer-consent/index.js +1 -0
  448. package/dist/esm/post-purchase/buyer-consent/next.js +1 -0
  449. package/dist/esm/post-purchase/buyer-consent/settings/buyer-consent/configs/presets.js +5 -0
  450. package/dist/esm/post-purchase/buyer-consent/settings/buyer-consent/configs/settings.js +1 -0
  451. package/dist/esm/post-purchase/buyer-consent/settings/buyer-consent/configs/ui-v2.js +1 -0
  452. package/dist/esm/post-purchase/buyer-consent/settings/buyer-consent/index.js +5 -0
  453. package/dist/esm/post-purchase/callout-banner/settings/config/callout-box/ui-v1.js +1 -1
  454. package/dist/esm/post-purchase/line/index.js +1 -1
  455. package/dist/esm/post-purchase/product/components/ProductPrice.js +1 -1
  456. package/dist/esm/post-purchase/product/components/product-subscription/common/classes.js +1 -0
  457. package/dist/esm/post-purchase/product/components/product-subscription/common/styles.js +1 -0
  458. package/dist/esm/post-purchase/product/components/product-subscription/components/ProductSubscription.js +1 -0
  459. package/dist/esm/post-purchase/product/components/product-subscription/components/SellingPlanDropdown.js +1 -0
  460. package/dist/esm/post-purchase/product/components/product-subscription/components/SellingPlanLabel.js +1 -0
  461. package/dist/esm/post-purchase/product/components/product-subscription/components/SellingPlanRadio.js +1 -0
  462. package/dist/esm/post-purchase/product/components/product-subscription/components/SubscriptionDetail.js +1 -0
  463. package/dist/esm/post-purchase/product/components/product-subscription/components/SubscriptionRadio.js +1 -0
  464. package/dist/esm/post-purchase/product/components/product-subscription/hooks/useSellingPlanOptions.js +1 -0
  465. package/dist/esm/post-purchase/product/constants/ProductOfferPlaceholder.js +1 -1
  466. package/dist/esm/post-purchase/product/hooks/useGetMoneyLines.js +1 -1
  467. package/dist/esm/post-purchase/product/index.js +1 -1
  468. package/dist/esm/post-purchase/product/next.js +1 -1
  469. package/dist/esm/post-purchase/product/settings/presets-config/product-presets/product-offer-1-col.js +1 -1
  470. package/dist/esm/post-purchase/product/settings/presets-config/product-presets/product-offer-2-col.js +1 -1
  471. package/dist/esm/post-purchase/product/settings/presets-config/product-presets/product-offer-default.js +1 -1
  472. package/dist/esm/post-purchase/product/settings/product-description/configs/settings-v2.js +1 -1
  473. package/dist/esm/post-purchase/product/settings/product-description/configs/ui-v2.js +1 -1
  474. package/dist/esm/post-purchase/product/settings/product-discount-tag/configs/setting-v2.js +1 -1
  475. package/dist/esm/post-purchase/product/settings/product-offer/configs/ui-v1.js +1 -1
  476. package/dist/esm/post-purchase/product/settings/product-price/configs/settings-v2.js +1 -1
  477. package/dist/esm/post-purchase/product/settings/product-price/configs/ui-v2.js +1 -1
  478. package/dist/esm/post-purchase/product/settings/product-subscription/configs/presets.js +10 -0
  479. package/dist/esm/post-purchase/product/settings/product-subscription/configs/settings.js +1 -0
  480. package/dist/esm/post-purchase/product/settings/product-subscription/configs/ui-v2.js +1 -0
  481. package/dist/esm/post-purchase/product/settings/product-subscription/index.js +10 -0
  482. package/dist/esm/post-purchase/product/settings/product-title/configs/settings-v2.js +1 -1
  483. package/dist/esm/post-purchase/product/settings/product-title/configs/ui-v2.js +1 -1
  484. package/dist/esm/postPurchaseSetting.js +1 -1
  485. package/dist/esm/product/components/dynamic-checkout/Button.liquid.js +5 -5
  486. package/dist/esm/product/components/file-upload/common/helpers.js +1 -1
  487. package/dist/esm/product/components/file-upload/settings/configs/translate.js +1 -0
  488. package/dist/esm/product/components/file-upload/settings/configs/ui-v1.js +1 -1
  489. package/dist/esm/product/components/file-upload/settings/configs/ui-v2.js +1 -1
  490. package/dist/esm/product/components/product-badge/ProductBadge.js +1 -1
  491. package/dist/esm/product/components/product-badge/ProductBadge.liquid.js +22 -22
  492. package/dist/esm/product/components/product-badge/common/classes.js +1 -1
  493. package/dist/esm/product/components/product-badge/common/styles.js +1 -1
  494. package/dist/esm/product/components/product-badge/utils/common.js +1 -1
  495. package/dist/esm/product/components/product-badge/utils/renderBadgeLiquid.js +3 -4
  496. package/dist/esm/product/components/product-bundle/setting/configs/ui-v1.js +1 -1
  497. package/dist/esm/product/components/product-bundle/setting/configs/ui-v2.js +1 -1
  498. package/dist/esm/product/components/product-button/AddToCartButton.liquid.js +1 -1
  499. package/dist/esm/product/components/product-button/PriceComponent.liquid.js +1 -1
  500. package/dist/esm/product/components/product-button/ProductButton.liquid.js +11 -9
  501. package/dist/esm/product/components/product-button/ProductButtonPrice.liquid.js +1 -1
  502. package/dist/esm/product/components/product-button/SoldOutButton.liquid.js +1 -1
  503. package/dist/esm/product/components/product-button/helpers/getButtonDynamicSourceLocales.js +1 -1
  504. package/dist/esm/product/components/product-button/hooks/useAddToCart.js +1 -1
  505. package/dist/esm/product/components/product-description/ProductDescription.liquid.js +15 -15
  506. package/dist/esm/product/components/product-discount-tag/ProductDiscountTag.liquid.js +14 -14
  507. package/dist/esm/product/components/product-discount-tag/hooks/useGpDiscountTag.js +1 -1
  508. package/dist/esm/product/components/product-images-v3/common/attrs.js +1 -1
  509. package/dist/esm/product/components/product-images-v3/components/feature-gallery/FeatureImageWithGallery.liquid.js +7 -7
  510. package/dist/esm/product/components/product-list-v3/ProductList.js +1 -1
  511. package/dist/esm/product/components/product-list-v3/common/classes.js +1 -1
  512. package/dist/esm/product/components/product-price/ProductPrice.js +1 -1
  513. package/dist/esm/product/components/product-price/common/attrs.js +1 -1
  514. package/dist/esm/product/components/product-price/common/classes.js +1 -1
  515. package/dist/esm/product/components/product-price/hooks/useGpPrice.js +1 -1
  516. package/dist/esm/product/components/product-properties/common/helpers.js +1 -1
  517. package/dist/esm/product/components/product-properties/property-choice/ProductPropertyChoice.liquid.js +14 -14
  518. package/dist/esm/product/components/product-properties/property-input/ProductPropertyInput.liquid.js +13 -13
  519. package/dist/esm/product/components/product-properties/property-select/ProductPropertySelect.liquid.js +7 -7
  520. package/dist/esm/product/components/product-title/ProductTitle.liquid.js +10 -3
  521. package/dist/esm/product/components/product-variants/OptionVariantsNewFormat.liquid.js +41 -0
  522. package/dist/esm/product/components/product-variants/OptionVariantsOldFormat.liquid.js +66 -0
  523. package/dist/esm/product/components/product-variants/ProductVariants.liquid.js +28 -80
  524. package/dist/esm/product/components/product-variants/common/base/styles.js +1 -1
  525. package/dist/esm/product/components/product-variants/common/const.js +1 -0
  526. package/dist/esm/product/components/product-variants/common/dropdown/styles.js +1 -1
  527. package/dist/esm/product/components/product-variants/components/color/color.liquid.js +3 -3
  528. package/dist/esm/product/components/product-variants/components/dropdown-swatches/Dropdown.js +1 -1
  529. package/dist/esm/product/components/product-variants/components/dropdown-swatches/Dropdown.liquid.js +5 -5
  530. package/dist/esm/product/components/product-view-more/ProductViewMore.liquid.js +1 -1
  531. package/dist/esm/product/components/product-view-more/common/helpers.js +1 -1
  532. package/dist/esm/product/components/product-wrap/Product.liquid.js +26 -26
  533. package/dist/esm/product/helpers/product-bundle.js +1 -1
  534. package/dist/esm/product/settings/bundle-layout/horizontal-three.js +1 -1
  535. package/dist/esm/product/settings/bundle-layout/horizontal-two.js +1 -1
  536. package/dist/esm/product/settings/dynamic-checkout/configs/ui-v1.js +1 -1
  537. package/dist/esm/product/settings/dynamic-checkout/configs/ui-v2.js +1 -1
  538. package/dist/esm/product/settings/product/configs/ui-v1.js +1 -1
  539. package/dist/esm/product/settings/product/configs/ui-v2.js +1 -1
  540. package/dist/esm/product/settings/product-badge/configs/translate.js +1 -0
  541. package/dist/esm/product/settings/product-badge/configs/ui-v1.js +1 -1
  542. package/dist/esm/product/settings/product-badge/configs/ui-v2.js +1 -1
  543. package/dist/esm/product/settings/product-button/configs/translate.js +1 -0
  544. package/dist/esm/product/settings/product-button/configs/ui-v1.js +1 -1
  545. package/dist/esm/product/settings/product-button/configs/ui-v2.js +1 -1
  546. package/dist/esm/product/settings/product-description/configs/translate.js +1 -0
  547. package/dist/esm/product/settings/product-discount-tag/configs/translate.js +1 -0
  548. package/dist/esm/product/settings/product-image-v2/ProductFeatureImage.js +1 -1
  549. package/dist/esm/product/settings/product-image-v2/ProductGalleryImage.js +1 -1
  550. package/dist/esm/product/settings/product-image-v2/configs/ui-v2.js +1 -1
  551. package/dist/esm/product/settings/product-image-v3/ProductFeatureImage.js +1 -1
  552. package/dist/esm/product/settings/product-image-v3/ProductGalleryImage.js +1 -1
  553. package/dist/esm/product/settings/product-image-v3/configs/ui-v2.js +1 -1
  554. package/dist/esm/product/settings/product-list/configs/ui-v1.js +1 -1
  555. package/dist/esm/product/settings/product-list/configs/ui-v2.js +1 -1
  556. package/dist/esm/product/settings/product-list-v3/configs/ui-v1.js +1 -1
  557. package/dist/esm/product/settings/product-list-v3/configs/ui-v2.js +1 -1
  558. package/dist/esm/product/settings/product-properties/configs/translate.js +1 -0
  559. package/dist/esm/product/settings/product-properties/configs/ui-v1.js +1 -1
  560. package/dist/esm/product/settings/product-properties/configs/ui-v2.js +1 -1
  561. package/dist/esm/product/settings/product-quantity/configs/presets.js +1 -1
  562. package/dist/esm/product/settings/product-variant/configs/presets.js +1 -1
  563. package/dist/esm/product/settings/product-variant/configs/settings.js +1 -1
  564. package/dist/esm/product/settings/product-variant/configs/ui-v1.js +1 -1
  565. package/dist/esm/product/settings/product-variant/configs/ui-v2.js +1 -1
  566. package/dist/esm/product/settings/product-view-more/configs/translate.js +1 -0
  567. package/dist/esm/product/settings/product-view-more/configs/ui-v1.js +1 -1
  568. package/dist/esm/product/settings/product-view-more/configs/ui-v2.js +1 -1
  569. package/dist/esm/sticky/common/styles.js +1 -1
  570. package/dist/esm/sticky/components/Sticky.js +1 -1
  571. package/dist/esm/sticky/components/Sticky.liquid.js +6 -6
  572. package/dist/esm/sticky/index.js +1 -1
  573. package/dist/esm/sticky/settings/configs/presets.js +2 -2
  574. package/dist/esm/sticky/settings/configs/settings.js +1 -1
  575. package/dist/esm/sticky/settings/configs/translate.js +1 -0
  576. package/dist/esm/sticky/settings/configs/ui-v1.js +1 -1
  577. package/dist/esm/sticky/settings/configs/ui-v2.js +1 -1
  578. package/dist/esm/stock-counter/components/StockCounter.liquid.js +42 -42
  579. package/dist/esm/stock-counter/settings/configs/translate.js +1 -0
  580. package/dist/esm/tab/common/styles.js +1 -1
  581. package/dist/esm/tab/components/Tabs.js +1 -1
  582. package/dist/esm/tab/components/Tabs.liquid.js +21 -21
  583. package/dist/esm/tab/settings/configs/translate.js +1 -0
  584. package/dist/esm/tab/settings/configs/ui-v2.js +1 -1
  585. package/dist/esm/text/common/helpers.js +1 -1
  586. package/dist/esm/text/common/styles.js +1 -1
  587. package/dist/esm/text/components/Text.js +1 -1
  588. package/dist/esm/text/components/Text.liquid.js +11 -12
  589. package/dist/esm/text/settings/configs/settings.js +1 -1
  590. package/dist/esm/text/settings/configs/translate.js +1 -0
  591. package/dist/esm/text/settings/configs/ui-v1.js +1 -1
  592. package/dist/esm/third-party/settings/BloyRewardsProgramLoyalty/index.js +1 -1
  593. package/dist/esm/third-party/settings/BonLoyaltyRewardsReferrals/index.js +1 -1
  594. package/dist/esm/third-party/settings/PushOwl/uiV1.js +1 -1
  595. package/dist/esm/third-party/settings/PushOwl/uiV2.js +1 -1
  596. package/dist/esm/third-party/settings/Selleasy/index.js +2 -2
  597. package/dist/esm/translate.js +2 -0
  598. package/dist/esm/video/common/classes.js +1 -1
  599. package/dist/esm/video/common/helpers.js +1 -1
  600. package/dist/esm/video/components/LiteVimeoEmbed.liquid.js +11 -11
  601. package/dist/esm/video/components/LiteYouTubeEmbed.js +1 -1
  602. package/dist/esm/video/components/LiteYouTubeEmbed.liquid.js +17 -15
  603. package/dist/esm/video/components/Video.liquid.js +3 -3
  604. package/dist/esm/video/settings/configs/settings.js +1 -1
  605. package/dist/esm/video/settings/configs/translate.js +1 -0
  606. package/dist/esm/video/settings/configs/ui-v2.js +1 -1
  607. package/dist/types/index.d.ts +350 -139
  608. package/package.json +7 -7
@@ -1,24 +1,24 @@
1
- import{makeStyleResponsive as e,makeLineClamp as t,template as s,dataStringify as i,isLocalEnv as o,baseAssetURL as r}from"@gem-sdk/core";import{getDynamicSourceLocales as p,getSettingPreloadData as l}from"../../../helpers.js";import{createClass as a,createStyle as n,createAttr as d,createStateOrContext as c,LiquidIf as m,Liquid as $,LiquidUnless as u,If as g}from"@gem-sdk/system";import{getClasses as v,getButtonClasses as w,getClassPreBuilt as x}from"./common/classes.js";import{getTextStyle as f,getButtonStyle as h,getStaticCss as y}from"./common/styles.js";import{ICON_SVG as M}from"./common/helpers.js";let ProductDescription=b=>{let{setting:C,advanced:L,builderProps:S,pageContext:T}=b,{htmlTag:j,translate:I,viewMoreText:k,viewLessText:E}=C??{},P="html"===j?"div":"p",V=a({"gp-product-description":!0,[L?.cssClass]:!0}),A=a(v({setting:C,isLiquid:!0})),D=a(w({setting:C})),G=a({"gp-show-more-text":!0}),_=a({"gp-show-more-icon gp-ml-1":!0}),q=n({...f({setting:C,renderMaxHeight:!0}),...e("line-clamp",t(C?.lineClamp,C?.hasLineClamp))}),H=a(x()),N=n(h({setting:C})),O=d({"data-id":`${S?.uid}`}),R=d({"data-gp-text":""}),{textDescriptionCss:z,gpDescriptionCss:B}=y(),F="product.description == blank",J=()=>{let e=o?"{{ 'gp-product-description-v7-5.js' | asset_url }}":`${r}/assets-v2/gp-product-description-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${l('class="gps-link" delay',"src")}="${e}" defer="defer"></script>`},K=c({setting:{lineClamp:C?.lineClamp,hasLineClamp:C?.hasLineClamp,viewMoreText:C?.viewMoreText,viewLessText:C?.viewLessText,enableViewMoreIcon:C?.enableViewMoreIcon},textStyle:q}),Q=p({val:k,uid:S?.uid,settingId:"viewMoreText",pageContext:T,translate:I}),U=p({val:E,uid:S?.uid,settingId:"viewLessText",pageContext:T,translate:I});return m(F,"",$(s`
1
+ import{makeStyleResponsive as e,makeLineClamp as t,template as s,dataStringify as i,isLocalEnv as o,baseAssetURL as r}from"@gem-sdk/core";import{getDynamicSourceLocales as p,createSettingId as d,getSettingPreloadData as a}from"../../../helpers.js";import{createClass as l,createStyle as n,createAttr as c,createStateOrContext as m,LiquidIf as u,Liquid as $,LiquidUnless as g,If as v}from"@gem-sdk/system";import{getClasses as f,getButtonClasses as w,getClassPreBuilt as x}from"./common/classes.js";import{getTextStyle as h,getButtonStyle as y,getStaticCss as M}from"./common/styles.js";import{ICON_SVG as b}from"./common/helpers.js";import{ProductDescription as j}from"../../settings/product-description/configs/translate.js";let ProductDescription=C=>{let{setting:L,advanced:S,builderProps:T,pageContext:I}=C,{htmlTag:P,viewMoreText:k,viewLessText:E}=L??{},V="html"===P?"div":"p",A=l({"gp-product-description":!0,[S?.cssClass]:!0}),D=l(f({setting:L,isLiquid:!0})),G=l(w({setting:L})),_=l({"gp-show-more-text":!0}),q=l({"gp-show-more-icon gp-ml-1":!0}),H=n({...h({setting:L,renderMaxHeight:!0}),...e("line-clamp",t(L?.lineClamp,L?.hasLineClamp))}),N=l(x()),O=n(y({setting:L})),R=c({"data-id":`${T?.uid}`}),z=c({"data-gp-text":""}),{textDescriptionCss:B,gpDescriptionCss:F}=M(),J="product.description == blank",K=()=>{let e=o?"{{ 'gp-product-description-v7-5.js' | asset_url }}":`${r}/assets-v2/gp-product-description-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${a('class="gps-link" delay',"src")}="${e}" defer="defer"></script>`},Q=m({setting:{lineClamp:L?.lineClamp,hasLineClamp:L?.hasLineClamp,viewMoreText:L?.viewMoreText,viewLessText:L?.viewLessText,enableViewMoreIcon:L?.enableViewMoreIcon},textStyle:H}),U=p({val:k,uid:T?.uid,settingId:d({id:j?.viewMoreText?.id}),pageContext:I}),W=p({val:E,uid:T?.uid,settingId:d({id:j?.viewLessText?.id}),pageContext:I});return u(J,"",$(s`
2
2
  <gp-product-description
3
- ${O}
4
- class="${V}"
5
- gp-data='${i(K).replaceAll("'","&#039;")}'
6
- data-view-more-text="${Q}"
7
- data-view-less-text="${U}"
3
+ ${R}
4
+ class="${A}"
5
+ gp-data='${i(Q).replaceAll("'","&#039;")}'
6
+ data-view-more-text="${U}"
7
+ data-view-less-text="${W}"
8
8
  >
9
- <style>${z}</style>
10
9
  <style>${B}</style>
11
- <div class="${H}" ></div>
12
- ${u("product","<p>Product not found</p>",s`<${P} ${R} class="${A}" style="${q}">
10
+ <style>${F}</style>
11
+ <div class="${N}" ></div>
12
+ ${g("product","<p>Product not found</p>",s`<${V} ${z} class="${D}" style="${H}">
13
13
  {{product.description}}
14
- </${P}>
15
- ${u(F,s`<button type="button" class="${D}" style="${N}">
16
- <span class="${G}">
17
- ${g(!1,U?.toString(),Q?.toString())}
14
+ </${V}>
15
+ ${g(J,s`<button type="button" class="${G}" style="${O}">
16
+ <span class="${_}">
17
+ ${v(!1,W?.toString(),U?.toString())}
18
18
  </span>
19
- ${g(C?.enableViewMoreIcon,s`<span class="${_}">${M}</span>`," ")}
19
+ ${v(L?.enableViewMoreIcon,s`<span class="${q}">${b}</span>`," ")}
20
20
  </button>`)}`)}
21
21
  </gp-product-description>
22
22
 
23
- ${J()}
23
+ ${K()}
24
24
  `))};export{ProductDescription as default};
@@ -1,30 +1,30 @@
1
- import{template as e,isLocalEnv as i,baseAssetURL as a}from"@gem-sdk/core";import{getDynamicSourceLocales as s,getSettingPreloadData as r}from"../../../helpers.js";import p from"../../../text/components/Text.liquid.js";import{createStyle as t,createClass as n,LiquidIf as c,Liquid as d,If as l}from"@gem-sdk/system";import{getWrapperTextClass as o,getContainerClass as u,getProductTagClass as g}from"./common/classes.js";import{getRootClass as m,getWrapperTextStyle as f,getContainerStyle as v}from"./common/styles.js";let ProductTag=({setting:$,styles:y,builderProps:x,advanced:S,pageContext:P})=>{let{customContent:_,translate:V}=$??{},h=$?.moneyWithCurrentFormat?"money_with_currency":"money",j=s({val:_?.prefix,uid:x?.uid,settingId:"customContent_prefix",isLiquid:!0,pageContext:P,translate:V}),M=s({val:_?.suffix,uid:x?.uid,settingId:"customContent_suffix",isLiquid:!0,pageContext:P,translate:V}),q=t(m(y)),w=t(f(y)),C=t(v(y)),E=n(o(y)),F=n(u()),N=n(g(S)),O=_?.unit==="percentage",T=()=>{let e=i?"{{ 'gp-product-tag-v7-5.js' | asset_url }}":`${a}/assets-v2/gp-product-tag-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${r('class="gps-link" delay',"src")}="${e}" defer="defer"></script>`};return e`
1
+ import{template as e,isLocalEnv as i,baseAssetURL as s}from"@gem-sdk/core";import{getDynamicSourceLocales as a,createSettingId as r,getSettingPreloadData as t}from"../../../helpers.js";import p from"../../../text/components/Text.liquid.js";import{createStyle as n,createClass as c,LiquidIf as d,Liquid as o,If as l}from"@gem-sdk/system";import{getWrapperTextClass as u,getContainerClass as f,getProductTagClass as g}from"./common/classes.js";import{getRootClass as m,getWrapperTextStyle as v,getContainerStyle as $}from"./common/styles.js";import{ProductTag as y}from"../../settings/product-discount-tag/configs/translate.js";let ProductTag=({setting:x,styles:P,builderProps:S,advanced:V,pageContext:_})=>{let{customContent:h}=x??{},j=x?.moneyWithCurrentFormat?"money_with_currency":"money",C=y?.customContent?.id?a({val:h?.prefix,uid:S?.uid,settingId:r({id:y.customContent.id,suffix:"prefix"}),isLiquid:!0,pageContext:_}):h?.prefix,M=y?.customContent?.id?a({val:h?.suffix,uid:S?.uid,settingId:r({id:y.customContent.id,suffix:"suffix"}),isLiquid:!0,pageContext:_}):h?.suffix,T=n(m(P)),q=n(v(P)),w=n($(P)),E=c(u(P)),F=c(f()),N=c(g(V)),O=h?.unit==="percentage",k=()=>{let e=i?"{{ 'gp-product-tag-v7-5.js' | asset_url }}":`${s}/assets-v2/gp-product-tag-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${t('class="gps-link" delay',"src")}="${e}" defer="defer"></script>`};return e`
2
2
  {% liquid
3
3
  assign price = variant.price | times: 1.0
4
4
  assign salePrice = variant.compare_at_price | times: 1.0
5
5
  assign priceSave = salePrice | minus: price
6
- assign prefixVal = ${P?.isPreviewing?JSON.stringify(j):j}
7
- assign suffixVal = ${P?.isPreviewing?JSON.stringify(M):M}
6
+ assign prefixVal = ${_?.isPreviewing?JSON.stringify(C):C}
7
+ assign suffixVal = ${_?.isPreviewing?JSON.stringify(M):M}
8
8
  %}
9
- ${c("salePrice == null or price == null",d(`{% assign pricePercentage = prefixVal ${l(O,"| append: ' 0% '",`| ${h} | append: ' '`)} | append: suffixVal %}`),`${l(O,`{% assign salePercent = priceSave | divided_by: salePrice | times: 100 | round %}
10
- {% assign pricePercentage = prefixVal | append: ' ' | append: salePercent | append: '% ' | append: suffixVal %}`,c("priceSave > 0",`{% assign priceSaveMoney = priceSave | ${h} %}
11
- {% assign pricePercentage = prefixVal | append: ' ' | append: priceSaveMoney | append: ' ' | append: suffixVal %}`,`{% assign priceSaveMoney = 0 | ${h} %}
9
+ ${d("salePrice == null or price == null",o(`{% assign pricePercentage = prefixVal ${l(O,"| append: ' 0% '",`| ${j} | append: ' '`)} | append: suffixVal %}`),`${l(O,`{% assign salePercent = priceSave | divided_by: salePrice | times: 100 | round %}
10
+ {% assign pricePercentage = prefixVal | append: ' ' | append: salePercent | append: '% ' | append: suffixVal %}`,d("priceSave > 0",`{% assign priceSaveMoney = priceSave | ${j} %}
11
+ {% assign pricePercentage = prefixVal | append: ' ' | append: priceSaveMoney | append: ' ' | append: suffixVal %}`,`{% assign priceSaveMoney = 0 | ${j} %}
12
12
  {% assign pricePercentage = prefixVal | append: ' ' | append: priceSaveMoney | append: ' ' | append: suffixVal %}`))}`)}
13
13
 
14
14
  <gp-product-tag
15
15
  class="${N}"
16
- style="${q}"
17
- data-id="${x?.uid}"
18
- data-disabled="${c(`${l(O,"salePercent","priceSave")} > 0`,"false","true")}"
19
- gp-data='{"setting":${JSON.stringify($).replaceAll("'","&#039;")}, "id": "${x?.uid}", "locale": "{{shop.locale}}", "currency": "{{shop.currency}}", "moneyFormat": "{{ ${$?.moneyWithCurrentFormat?"shop.money_with_currency_format":"shop.money_format"} | replace: '"', '\\"' | escape }}"}'
16
+ style="${T}"
17
+ data-id="${S?.uid}"
18
+ data-disabled="${d(`${l(O,"salePercent","priceSave")} > 0`,"false","true")}"
19
+ gp-data='{"setting":${JSON.stringify(x).replaceAll("'","&#039;")}, "id": "${S?.uid}", "locale": "{{shop.locale}}", "currency": "{{shop.currency}}", "moneyFormat": "{{ ${x?.moneyWithCurrentFormat?"shop.money_with_currency_format":"shop.money_format"} | replace: '"', '\\"' | escape }}"}'
20
20
  price-save="{{priceSave}}"
21
21
  >
22
- <div class="${F}" style="${C}">
23
- <div class="${E}" style="${w}">
24
- ${p({styles:y,id:`p-tag-${x?.uid}`,setting:{...$,translate:"",text:"{{ pricePercentage }}",excludeFlex:!0}})}
22
+ <div class="${F}" style="${w}">
23
+ <div class="${E}" style="${q}">
24
+ ${p({styles:P,id:`p-tag-${S?.uid}`,setting:{...x,translate:"",text:"{{ pricePercentage }}",excludeFlex:!0}})}
25
25
  </div>
26
26
  </div>
27
27
 
28
28
  </gp-product-tag>
29
- ${T()}
29
+ ${k()}
30
30
  `};export{ProductTag as default};
@@ -1 +1 @@
1
- import{useMoneyFormat as e,useEditorMode as t,useProduct as r,useCurrentVariant as n,useQuantity as o,useFormatMoney as u,useProductBundleDiscount as i,formatMoney as p}from"@gem-sdk/core";import{useMemo as c}from"react";import{applyBundleDiscountAmount as s}from"../../../helpers/product-bundle.js";import{DiscountType as a}from"../../constants/product-bundle.js";let useGpDiscountTag=m=>{let{setting:l,...d}=m,{customContent:g}=l??{},f=d["bundle-item"],{moneyFormat:b}=e(),h=t(),D=r(),$=n(),{quantity:j,hasUpdatePrice:y}=o(),G=c(()=>y&&g?.unit!=="percentage"?j??1:1,[y,g?.unit,j]),P=$?.price??0,T=$?.salePrice??0,k=(T-P)*G,x=u(k<0?0:k,l?.moneyWithCurrentFormat||!1),C=c(()=>{if(!T&&0!==T||!P&&0!==P)return`${g?.unit==="percentage"?"0%":x}`;if(g?.unit==="percentage"){let e=Math.round(k/(T/100));return`${e<0?0:e}%`}return`${x}`},[g?.unit,x,P,k,T]),{useProductCompareAtPrice:F}=i(),{discountPercentAmount:I}=s({currentVariant:$,bundleItem:f,options:{moneyFormat:b,useProductCompareAtPrice:F}}),M=c(()=>{if(!f)return 0;let{discountPercentAmount:e,discountAmount:t}=s({currentVariant:$,bundleItem:f,options:{moneyFormat:b,useProductCompareAtPrice:F}}),{discountType:r}=f,{unit:n}=g||{};return r!==a.NoDiscount||F?"percentage"===n?`${e}%`:t:"percentage"===n?"0%":p("0",b)},[f,$,b,F,g]),N=c(()=>f?M:C,[M,f,C]),W=D?.baseID?.replace("gid://shopify/Product/",""),q=c(()=>{let e=f?I<=0:k<=0;return"edit"===h&&e},[f,I,h,k]);return{mode:h,product:D,salePrice:T,priceSave:k,currentProductId:W,unitCustomDisplay:N,shouldPlaceholderNoDiscount:q}};export{useGpDiscountTag};
1
+ import{useMoneyFormat as e,useEditorMode as t,useProduct as r,useCurrentVariant as n,useQuantity as o,convertDecimalToNumber as u,useFormatMoney as i,useProductBundleDiscount as p,formatMoney as c}from"@gem-sdk/core";import{useMemo as s}from"react";import{applyBundleDiscountAmount as a}from"../../../helpers/product-bundle.js";import{DiscountType as m}from"../../constants/product-bundle.js";let useGpDiscountTag=l=>{let{setting:d,...g}=l,{customContent:f}=d??{},b=g["bundle-item"],{moneyFormat:h}=e(),D=t(),$=r(),j=n(),{quantity:y,hasUpdatePrice:G}=o(),P=s(()=>G&&f?.unit!=="percentage"?y??1:1,[G,f?.unit,y]),T=u(j?.price)??0,k=u(j?.salePrice)??0,x=(k-T)*P,C=i(x<0?0:x,d?.moneyWithCurrentFormat||!1),F=s(()=>{if(!k&&0!==k||!T&&0!==T)return`${f?.unit==="percentage"?"0%":C}`;if(f?.unit==="percentage"){let e=Math.round(x/(k/100));return`${e<0?0:e}%`}return`${C}`},[f?.unit,C,T,x,k]),{useProductCompareAtPrice:I}=p(),{discountPercentAmount:M}=a({currentVariant:j,bundleItem:b,options:{moneyFormat:h,useProductCompareAtPrice:I}}),N=s(()=>{if(!b)return 0;let{discountPercentAmount:e,discountAmount:t}=a({currentVariant:j,bundleItem:b,options:{moneyFormat:h,useProductCompareAtPrice:I}}),{discountType:r}=b,{unit:n}=f||{};return r!==m.NoDiscount||I?"percentage"===n?`${e}%`:t:"percentage"===n?"0%":c("0",h)},[b,j,h,I,f]),W=s(()=>b?N:F,[N,b,F]),q=$?.baseID?.replace("gid://shopify/Product/",""),v=s(()=>{let e=b?M<=0:x<=0;return"edit"===D&&e},[b,M,D,x]);return{mode:D,product:$,salePrice:k,priceSave:x,currentProductId:q,unitCustomDisplay:W,shouldPlaceholderNoDiscount:v}};export{useGpDiscountTag};
@@ -1 +1 @@
1
- import{getResponsiveValueByScreen as o}from"@gem-sdk/core";import{getDotStyleConfig as t,getCarouselVerticalConfigByPosition as r,getAllowDotConfig as a}from"./productGallery.js";import{getDotStyleForOnlyFeaturedImage as e}from"./productFeaturedImage.js";let DEVICES=["desktop","mobile","tablet"],getGalleryCarouselSettingAttr=a=>{let e={desktop:"inside"===o(a.navigationPosition,"desktop"),tablet:"inside"===o(a.navigationPosition,"tablet"),mobile:"inside"===o(a.navigationPosition,"mobile")},i=DEVICES.reduce((o,t)=>(a.navigationPosition?.[t]&&(o[t]="none"!==a.navigationPosition[t]),o),{});return{...a?.loop&&{loop:a.loop},itemNumber:{desktop:"auto",tablet:"auto",mobile:"auto"},dot:{desktop:!1,tablet:!1,mobile:!1},dotStyle:t(),controlOverContent:e,...a?.dragToScroll&&{enableDrag:{desktop:a.dragToScroll,tablet:a.dragToScroll,mobile:a.dragToScroll}},vertical:r(a.position),...a?.arrowIcon&&{arrowCustom:a.arrowIcon},arrowIconSize:a.arrowIconSize||{desktop:24},...a?.arrowIconColor&&{arrowCustomColor:a.arrowIconColor},...a?.arrowNavColor&&{arrowBackgroundColor:a.arrowNavColor},...a?.arrowNavBorder&&{arrowBorder:{desktop:a.arrowNavBorder}},...a?.arrowNavRadius&&{roundedArrow:{desktop:a.arrowNavRadius}},...a?.arrowNavShadow&&{arrowShadow:{desktop:a.arrowNavShadow}},arrowGapToEachSide:"16",navigationStyle:a.navigationPosition,navigationEnable:i,arrowButtonSize:{desktop:{width:a.arrowNavSize?.width,height:a.arrowNavSize?.height,padding:a.arrowNavSize?.padding}},animationMode:a?.ftAnimationMode,enableAction:{desktop:!0}}},getFeaturedCarouselSettingAttr=t=>{let r={desktop:"inside"===o(t.ftNavigationPosition,"desktop"),tablet:"inside"===o(t.ftNavigationPosition,"tablet"),mobile:"inside"===o(t.ftNavigationPosition,"mobile")},i=DEVICES.reduce((o,r)=>(t.ftNavigationPosition?.[r]&&(o[r]="none"!==t.ftNavigationPosition[r]),o),{});return{...t?.ftLoop&&{loop:t.ftLoop},itemNumber:{desktop:1},dot:a(),dotStyle:e({position:t.position,dotStyle:t.ftDotStyle}),dotSize:t.ftDotSize??{desktop:12},dotGapToCarousel:t.ftDotGapToCarousel??{desktop:16},dotColor:t.ftDotColor??{desktop:"bg-1"},dotActiveColor:t.ftDotActiveColor??{desktop:"line-3"},controlOverContent:r,...t?.ftDragToScroll&&{enableDrag:{desktop:t.ftDragToScroll,tablet:t.ftDragToScroll,mobile:t.ftDragToScroll}},...t?.ftArrowIcon&&{arrowCustom:t.ftArrowIcon},arrowIconSize:t.ftArrowIconSize||{desktop:24},...t?.ftArrowIconColor&&{arrowCustomColor:t.ftArrowIconColor},...t?.ftArrowNavColor&&{arrowBackgroundColor:t.ftArrowNavColor},...t?.ftArrowNavBorder&&{arrowBorder:{desktop:t.ftArrowNavBorder}},...t?.ftArrowNavRadius&&{roundedArrow:{desktop:t.ftArrowNavRadius}},...t?.ftArrowNavShadow&&{arrowShadow:{desktop:t.ftArrowNavShadow}},sneakPeakType:{desktop:"center"},arrowGapToEachSide:"16",animationMode:t?.ftAnimationMode,...t?.ftNavigationPosition&&{navigationStyle:t.ftNavigationPosition},navigationEnable:i,arrowButtonSize:{desktop:{width:t.ftArrowNavSize?.width,height:t.ftArrowNavSize?.height,padding:t.ftArrowNavSize?.padding}},enableAction:{desktop:!0}}};export{getFeaturedCarouselSettingAttr,getGalleryCarouselSettingAttr};
1
+ import{getResponsiveValueByScreen as o}from"@gem-sdk/core";import{getDotStyleConfig as t,getCarouselVerticalConfigByPosition as r,getAllowDotConfig as a}from"./productGallery.js";import{getDotStyleForOnlyFeaturedImage as e}from"./productFeaturedImage.js";let DEVICES=["desktop","mobile","tablet"],getGalleryCarouselSettingAttr=a=>{let e={desktop:"inside"===o(a.navigationPosition,"desktop"),tablet:"inside"===o(a.navigationPosition,"tablet"),mobile:"inside"===o(a.navigationPosition,"mobile")},i=DEVICES.reduce((o,t)=>(a.navigationPosition?.[t]&&(o[t]="none"!==a.navigationPosition[t]),o),{});return{...a?.loop&&{loop:a.loop},itemNumber:{desktop:"auto",tablet:"auto",mobile:"auto"},dot:{desktop:!1,tablet:!1,mobile:!1},dotStyle:t(),controlOverContent:e,...a?.dragToScroll&&{enableDrag:{desktop:a.dragToScroll,tablet:a.dragToScroll,mobile:a.dragToScroll}},vertical:r(a.position),...a?.arrowIcon&&{arrowCustom:a.arrowIcon},arrowIconSize:a.arrowIconSize||{desktop:24},...a?.arrowIconColor&&{arrowCustomColor:a.arrowIconColor},...a?.arrowNavColor&&{arrowBackgroundColor:a.arrowNavColor},...a?.arrowNavBorder&&{arrowBorder:{desktop:a.arrowNavBorder}},...a?.arrowNavRadius&&{roundedArrow:{desktop:a.arrowNavRadius}},...a?.arrowNavShadow&&{arrowShadow:{desktop:a.arrowNavShadow}},arrowGapToEachSide:"16",navigationStyle:a.navigationPosition,navigationEnable:i,arrowButtonSize:{desktop:{width:a.arrowNavSize?.width,height:a.arrowNavSize?.height,padding:a.arrowNavSize?.padding}},animationMode:a?.ftAnimationMode,enableAction:{desktop:!0}}},getFeaturedCarouselSettingAttr=t=>{let r={desktop:"inside"===o(t.ftNavigationPosition,"desktop"),tablet:"inside"===o(t.ftNavigationPosition,"tablet"),mobile:"inside"===o(t.ftNavigationPosition,"mobile")},i=DEVICES.reduce((o,r)=>(t.ftNavigationPosition?.[r]&&(o[r]="none"!==t.ftNavigationPosition[r]),o),{});return{...t?.ftLoop&&{loop:t.ftLoop},itemNumber:{desktop:1},dot:a(),dotStyle:e({position:t.position,dotStyle:t.ftDotStyle}),dotSize:t.ftDotSize??{desktop:12},dotGapToCarousel:t.ftDotGapToCarousel??{desktop:16},dotColor:t.ftDotColor??{desktop:"bg-1"},dotActiveColor:t.ftDotActiveColor??{desktop:"line-3"},controlOverContent:r,...t?.ftDragToScroll&&{enableDrag:{desktop:t.ftDragToScroll,tablet:t.ftDragToScroll,mobile:t.ftDragToScroll}},...t?.ftArrowIcon&&{arrowCustom:t.ftArrowIcon},arrowIconSize:t.ftArrowIconSize||{desktop:24},...t?.ftArrowIconColor&&{arrowCustomColor:t.ftArrowIconColor},...t?.ftArrowNavColor&&{arrowBackgroundColor:t.ftArrowNavColor},...t?.ftArrowNavBorder&&{arrowBorder:{desktop:t.ftArrowNavBorder}},...t?.ftArrowNavRadius&&{roundedArrow:{desktop:t.ftArrowNavRadius}},...t?.ftArrowNavShadow&&{arrowShadow:{desktop:t.ftArrowNavShadow}},arrowGapToEachSide:"16",animationMode:t?.ftAnimationMode,...t?.ftNavigationPosition&&{navigationStyle:t.ftNavigationPosition},navigationEnable:i,arrowButtonSize:{desktop:{width:t.ftArrowNavSize?.width,height:t.ftArrowNavSize?.height,padding:t.ftArrowNavSize?.padding}},enableAction:{desktop:!0}}};export{getFeaturedCarouselSettingAttr,getGalleryCarouselSettingAttr};
@@ -1,4 +1,4 @@
1
- import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";import{getAspectRatio as t,getPaddingBottomByShapeSetting as r,getSrcImage as s}from"../../common/common.js";import{checkRenderFeaturedCarousel as d,getVideoHeight as o,getZoomImageClass as u,getZoomLenClass as l}from"../../common/productFeaturedImage.js";import m from"../../../../../video/components/HTML5Embed.liquid.js";import g from"../../../../../image/components/Modal3d.liquid.js";import p from"../../../../../image/components/NextImage.liquid.js";import n from"../../../../../image/components/Video.liquid.js";import{getStyleOfObject as c}from"../../../../helpers/function.js";import{getProductImagesStyles as f}from"../../composables/getProductImagesStyles.js";import{getProductImagesClassName as h}from"../../composables/getProductImagesClassName.js";import{getProductImagesAttr as y}from"../../composables/getProductImagesAttr.js";import{LiquidIf as M,LiquidFor as b,Liquid as $,If as _,createStyle as v}from"@gem-sdk/system";import w from"../../../../../carousel-v3/components/root/Carousel.liquid.js";import I from"../../../../../carousel-v3/components/item/CarouselItem.liquid.js";let FeatureImageWithGallery=({builderPropUID:x,children:q,enableLazyLoadImage:j,...z})=>{let{featuredImageCarouselClasses:S,galleryItemClasses:L,featuredCarouselItemClasses:P}=h({...z,builderProps:{uid:x}}),{featuredImageCarouselStyle:R,featureImageStyle:W,featureImageCarouselOnlyOneImageStyle:C,featureImageOnlyOneImageStyle:T,featureImageCarouselItemStyle:N}=f(z),{featuredImageCarouselSettingAttrs:k}=y(z),E=t(z.ftShape),O=()=>`
1
+ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";import{getAspectRatio as t,getPaddingBottomByShapeSetting as r,getSrcImage as s}from"../../common/common.js";import{checkRenderFeaturedCarousel as d,getVideoHeight as o,getZoomImageClass as u,getZoomLenClass as l}from"../../common/productFeaturedImage.js";import m from"../../../../../video/components/HTML5Embed.liquid.js";import p from"../../../../../image/components/Modal3d.liquid.js";import g from"../../../../../image/components/NextImage.liquid.js";import n from"../../../../../image/components/Video.liquid.js";import{getStyleOfObject as c}from"../../../../helpers/function.js";import{getProductImagesStyles as f}from"../../composables/getProductImagesStyles.js";import{getProductImagesClassName as h}from"../../composables/getProductImagesClassName.js";import{getProductImagesAttr as y}from"../../composables/getProductImagesAttr.js";import{LiquidIf as M,LiquidFor as b,Liquid as $,If as _,createStyle as v}from"@gem-sdk/system";import w from"../../../../../carousel-v3/components/root/Carousel.liquid.js";import I from"../../../../../carousel-v3/components/item/CarouselItem.liquid.js";let FeatureImageWithGallery=({builderPropUID:x,children:q,enableLazyLoadImage:j,...z})=>{let{featuredImageCarouselClasses:S,galleryItemClasses:L,featuredCarouselItemClasses:P}=h({...z,builderProps:{uid:x}}),{featuredImageCarouselStyle:R,featureImageStyle:W,featureImageCarouselOnlyOneImageStyle:T,featureImageOnlyOneImageStyle:C,featureImageCarouselItemStyle:N}=f(z),{featuredImageCarouselSettingAttrs:k}=y(z),E=t(z.ftShape),O=()=>`
2
2
  {% case featureMedia.media_type %}
3
3
  {% when 'image' %}
4
4
  ${F()}
@@ -13,7 +13,7 @@ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";impor
13
13
  {% else %}
14
14
  ${G()}
15
15
  {% endcase %}
16
- `,A=()=>g({src:M("featureMedia.sources.first.url contains '.glb'","{{ featureMedia.sources.first.url }}","{{featureMedia.sources.last.url}}"),alt:"{{featureMedia.preview_image.alt}}",poster:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",cameraControls:!0,arStatus:"not-presenting",style:{width:"100%"},aspectRatio:E}),D=()=>n({src:"{{mediaSourceVideo}}",alt:"{{featureMedia.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"},aspectRatio:E}),V=()=>{let a=v({...o(z?.ftLayout),...e("objf",z?.ftLayout)}),i=v({...o(z?.ftLayout)});return m({src:"{{mediaSourceVideo}}",title:"{{featureMedia.alt | escape}}",autoplay:!1,controls:!0,thumbnail:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",isCheckLoaded:!0,wrapperStyles:i,style:{width:"100%","max-height":"100%",...a},className:"gp-invisible"})},F=()=>a`
16
+ `,A=()=>p({src:M("featureMedia.sources.first.url contains '.glb'","{{ featureMedia.sources.first.url }}","{{featureMedia.sources.last.url}}"),alt:"{{featureMedia.preview_image.alt}}",poster:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",cameraControls:!0,arStatus:"not-presenting",style:{width:"100%"},aspectRatio:E}),D=()=>n({src:"{{mediaSourceVideo}}",alt:"{{featureMedia.alt | escape}}",autoplay:!1,allowfullscreen:!0,controls:!0,style:{width:"100%",height:"100%"},aspectRatio:E}),V=()=>{let a=v({...o(z?.ftLayout),...e("objf",z?.ftLayout)}),i=v({...o(z?.ftLayout)});return m({src:"{{mediaSourceVideo}}",title:"{{featureMedia.alt | escape}}",autoplay:!1,controls:!0,thumbnail:"{{featureMedia.preview_image.src | product_img_url: '1024x1024'}}",isCheckLoaded:!0,wrapperStyles:i,poster:{altText:"{{featureMedia.alt | escape}}"},style:{width:"100%","max-height":"100%",...a},className:"gp-invisible"})},F=()=>a`
17
17
  ${H(i("gp-w-full gp-transition-opacity",{"group-hover:gp-opacity-0":"other"==z.hoverEffect},"{{shouldHidden}}"))}
18
18
  ${_(z?.hoverEffect!=="none",`<div class="${i("zoom-element !gp-max-w-none",u())}">
19
19
  ${H("image-zoom",!0)}
@@ -29,8 +29,8 @@ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";impor
29
29
  {% assign otherImage = product.media[other_image_index] %}
30
30
  ${M("otherImage.media_type != 'image'","{% assign src = otherImage.preview_image.src %}","{% assign src = otherImage.src %}")}
31
31
  `)}
32
- ${p({srcIsLiquidCode:!0,src:M("src != null",s("src"),"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif"),id:M("featureMedia != null","{{featureMedia.id}}"),width:"{{featureMedia.width}}",height:"{{featureMedia.height}}",alt:"{{featureMedia.alt | escape}}",srcset:`${s("src")}`,baseSrc:"{{src | image_url}}",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},priority:z?.preload,className:`gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none ${e??""}`,enableLazyLoadImage:j})}`,G=()=>a`
33
- ${p({srcIsLiquidCode:!0,src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",alt:"No Image",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},priority:z?.preload,className:"gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none",enableLazyLoadImage:j})}`,B=r(z.ftShape),J=a=>`
32
+ ${g({srcIsLiquidCode:!0,src:M("src != null",s("src"),"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif"),id:M("featureMedia != null","{{featureMedia.id}}"),width:"{{featureMedia.width}}",height:"{{featureMedia.height}}",alt:"{{featureMedia.alt | escape}}",srcset:`${s("src")}`,baseSrc:"{{src | image_url}}",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},priority:z?.preload,className:`gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none ${e??""}`,enableLazyLoadImage:j})}`,G=()=>a`
33
+ ${g({srcIsLiquidCode:!0,src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",alt:"No Image",sizes:"(max-width: 768px) 50vw, 100vw",setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},priority:z?.preload,className:"gp-w-full gp-h-full gp-absolute gp-top-0 gp-left-0 featured-image-only gp-cursor-pointer !gp-rounded-none",enableLazyLoadImage:j})}`,B=r(z.ftShape),J=a=>`
34
34
  ${$(`{% assign productImageWidth = 0 %}
35
35
  {% case featureMedia.media_type %}
36
36
  {% when 'image' %}
@@ -54,7 +54,7 @@ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";impor
54
54
  `)}
55
55
  ${b("featureMedia in product.media",`${M("featureMedia.media_type == 'image'",`${b("image in product.images",M("image.src == featureMedia.src","{% assign imageID = image.id %}{% break %}"))}`,"{% assign imageID = '' %}")}
56
56
  ${J()}`)}
57
- `,p({src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",id:"noImageError",width:"480",height:"480",alt:"no image",priority:z?.preload,setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},style:{height:"100%"},className:"gp-w-full featured-image-only !gp-rounded-none",customLazyload:!0,enableLazyLoadImage:j})),X=()=>`
57
+ `,g({src:"https://cdn.shopify.com/s/assets/no-image-2048-5e88c1b20e087fb7bbe9a3771824e743c244f437e4f8ba93bbf7b11b53f7824c_large.gif",id:"noImageError",width:"480",height:"480",alt:"no image",priority:z?.preload,setting:{layout:z?.ftLayout,aspectRatio:E,qualityType:z?.qualityType,qualityPercent:z?.qualityPercent},style:{height:"100%"},className:"gp-w-full featured-image-only !gp-rounded-none",customLazyload:!0,enableLazyLoadImage:j})),X=()=>`
58
58
  ${w({builderProps:{uid:x},rootId:`ft-${x}-{{section.id}}-{{product.id}}`,conditionAppendJs:"product.media.size > 1",wrapperClass:Q,rootClass:`${S}`,rootAttrs:{type:"gp-feature-image-carousel","product-id":"{{product.id}}","product-media":"{{product.media.size}}"},isHiddenArrowWhenDisabled:!0,setting:k,rootStyles:W,styles:R,style:{playSpeed:600},disableMarginAuto:!0,children:U,productBadgeLiquid:q||""})}
59
59
  `,Y=()=>{switch(z?.preDisplay){case"1st-images":return`
60
60
  {% assign featureMedia = product.media.first %}
@@ -88,7 +88,7 @@ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";impor
88
88
  >
89
89
  <div
90
90
  class="gp-relative"
91
- style="${c(T)}"
91
+ style="${c(C)}"
92
92
  >
93
93
  ${q}
94
94
  <div
@@ -96,7 +96,7 @@ import{makeStyleResponsive as e,template as a,cls as i}from"@gem-sdk/core";impor
96
96
  product-id="{{product.id}}"
97
97
  product-media="{{product.media.size}}"
98
98
  class="${P(Q)}"
99
- style="${c(C)}"
99
+ style="${c(T)}"
100
100
  >
101
101
  <div
102
102
  class="gp-w-full gp-relative ${M("featureMedia == null or featureMedia.media_type == 'image'","{{ 'gp-h-0' }}","{{ 'gp-h-full !gp-pb-0' }}")}"
@@ -1 +1 @@
1
- import{jsx as e,Fragment as t,jsxs as o}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useMemo as i,useEffect as a}from"react";import{useRenderMode as c,useCurrentDevice as n,usePageType as s,usePageStore as u,useFetchHandle as m,hasPublicStoreFrontData as g,createStoreFrontFetcher as h,useProductQuery as p,useProductsQueryAll as P,useProductsQuery as f,useCollectionQuery as b,flattenConnection as k,ProductListProvider as T,filterToolbarPreview as I}from"@gem-sdk/core";import v from"../SalePageProductListWarning.js";import y from"next/head";import O from"./ProductListGridLayout.js";import N from"./ProductListCarouselLayout.js";import{getStyle as S}from"./common/styles.js";import{If as C}from"@gem-sdk/system";import{getClass as E}from"./common/classes.js";import{getData as w}from"./common/helpers.js";import{getPropertyByDevice as L}from"../../../dialog/common/helpers.js";let ProductNotFound=r(()=>import("../ProductNotFound.js"),{loading:d}),ProductList=r=>{let{children:W,styles:j,builderProps:x,setting:G,builderAttrs:M}=r,{isRelatedProduct:B,productSetting:A}=w(r),F=A.relatedTag&&A.relatedTag[0],{isEditMode:Q,isPreviewSharePageMode:z}=c(),D=n(),H=s(),R=u(e=>e.dynamicProduct),$=u(e=>e.dynamicCollection),[_,V]=l(1),[q,U]=l(!0),[J,K]=l(),[X,Y]=l(!1),Z="GP_FUNNEL_PAGE"===H,ee="GP_COLLECTION"==H;ee&&(A.productSrc="DynamicCollection",A.collectionId=$?.collectionId??"latest");let et=A?.productSrc??"Collection",eo=R?.productId&&R?.productId!==A.relatedProductId?R?.productId:A.relatedProductId,er=m(),ed=u(e=>e.publicStoreFrontData),el=i(()=>g(ed)?h(ed):er,[ed]),{data:ei}=p(B&&eo?eo:void 0,{revalidateOnMount:Q||z},el),ea=A.relatedTag&&"tags"===A.relatedTag[0]&&(!ei?.tags||ei?.tags.length===0),ec=A.relatedTag&&"collection"===A.relatedTag[0]&&(!ei?.collections?.edges||ei?.collections.edges.length===0),en=A.relatedTag&&"vendor"===A.relatedTag[0]&&!ei?.vendor,es=ea||ec||en,eu=P(J,{revalidateOnMount:Q||z},el),em=Q||z,eg=f("PickProduct"===et?A?.productIds:void 0,{revalidateOnMount:em},{defaultSelectedProductCount:A?.numOfSelectedProducts}),eh=i(()=>({id:A?.collectionId??"latest",numberOfProducts:G?.numberOfProducts??4,orderBy:G?.orderBy}),[A?.collectionId,Number(G?.numberOfProducts),G?.orderBy]),ep=b("PickProduct"!==et?eh:void 0,{revalidateOnMount:em});a(()=>{if(B&&ei&&A.relatedTag&&"recommended-product"!==A.relatedType){let e;switch(Y(!1),A.hasRelatedExclude&&(e=A?.relatedExclude&&A.relatedExclude.split(",").map(e=>e.trim())),A.relatedTag[0]){case"vendor":K({vendor:A.relatedTag&&"vendor"===A.relatedTag[0]?ei?.vendor:"",limit:G?.numberOfProducts,idNEQ:ei.id});break;case"collection":{let t;let o=ei?.collections?.edges.map(e=>e.node?.id);if(!o||o?.length===0){Y(!0);break}K(t=e&&e.length>0?{idNEQ:ei.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:o},{titleNotIn:e}]}],limit:G?.numberOfProducts}:{idNEQ:ei.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:o}]}],limit:G?.numberOfProducts});break}case"tags":{let t;if(!ei.tags||0===ei.tags.length){Y(!0);break}K(t=e&&e.length>0?{idNEQ:ei.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ei.tags},{nameNotIn:e}]}],limit:G?.numberOfProducts}:{idNEQ:ei.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ei.tags}]}],limit:G?.numberOfProducts})}}}},[ei,A.relatedType,A.relatedTag,G?.numberOfProducts,A.relatedExclude,A.hasRelatedExclude,B]);let eP="PickProduct"===et?eg.isValidating:ep.isValidating,ef="PickProduct"===et?eg.isLoading:ep.isLoading,eb="PickProduct"===et?eg.error:ep.error,ek=ep.data?.collections?.edges?.[0]?.node,eT="PickProduct"===et?k(eg.data?.products):k(ek?.products),eI=eu?.data?.products?k(eu?.data?.products):void 0,ev=B&&eI?eI:"PickProduct"===et&&A?.productIds?.length?A?.productIds?.map(e=>eT?.find(t=>t?.baseID===e)).filter(Boolean)??eT:"PickProduct"!==et?eT:eT.filter((e,t)=>t<(A?.numOfSelectedProducts??4)),ey=i(()=>X&&B&&Q||!ev.length&&!ef&&q&&Q,[q,ef,X,B,Q,ev.length]),eO=i(()=>!ev||X&&B,[X,B,ev]),eN=i(()=>{if(!G?.sameHeight)return[];let e=0,t=Math.ceil((ev?.length??0)/+(G?.slidesToShow?.[D]??1));return Array.from(Array(ev?.length??0)).map((o,r)=>(r>=+(G?.slidesToShow?.[D]??1)*(e+1)&&++e,{gridRow:`${1+_*e}/${_+1+_*e}`,marginBottom:e+1<t?L(j?.horizontalGutter,D):void 0}))},[G?.sameHeight,G?.slidesToShow,_,ev?.length,D,j?.horizontalGutter]),eS=i(()=>eP||ef||eb||!ev||X&&B,[eb,ef,X,B,eP,ev]);a(()=>{eS||setTimeout(()=>{let{builderData:e}=x??{},t=e?.childrens?.[0];if(!t)return;let o=document.querySelector(`[data-id=${t}] div`);o&&V(o.childElementCount||1)},Q?0:500)},[x,eS,Q]);let eC=i(()=>({collection:ek,products:ev,settings:{loop:G?.loop??{desktop:!1},scrollMode:G?.scrollMode??{desktop:"snap"},slidesToShow:G?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:j?.layout,dot:G?.dot,dotStyle:G?.dotStyle,arrow:G?.arrow,controlOverContent:G?.controlOverContent},styles:{horizontalGutter:j?.horizontalGutter,verticalGutter:j?.verticalGutter,fullWidth:j?.fullWidth,spacing:j?.spacing,width:j?.width,height:j?.height}}),[ek,ev,G,j]);if(x?.isPreview&&Z)return e(t,{});if(ey)return e(t,{children:C(q,e(ProductNotFound,{builderAttrs:M,collectionHandle:ek?.handle,productSrc:et,onClose:()=>U(!1),children:W,relatedTagString:F,assignProductNoTags:es,noAssignedProduct:!eo}))});let{productListWrapStyle:eE,productListContentStyle:ew,productListWrapAlignStyle:eL}=S(r),{productListWrapClass:eW}=E(r),ej=()=>e(t,{children:C(j?.layout==="grid",e(O,{...r,productSortedById:ev,generateGridRowArray:eN}),e(N,{...r,productSortedById:ev}))});return o("div",{...M,className:eW,style:eE,children:[!!j?.preloadBgImage&&o(y,{children:[!!j.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage.desktop.image.src,as:"image"}),!!j.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage?.tablet?.image?.src,as:"image"}),!!j.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage?.mobile?.image?.src,as:"image"})]}),eP||ef?e(d,{}):eb?o("div",{children:["Error: ",eb?.message]}):eO?e("div",{children:"Products not found"}):e(T,{...eC,children:e("div",{className:"gp-flex gp-w-full",style:eL,children:o("div",{style:ew,children:[Z&&e(v,{}),ej()]})})}),I(W,!0)]})};export{ProductList as default};
1
+ import{jsx as e,Fragment as t,jsxs as o}from"react/jsx-runtime";import r from"next/dynamic";import d from"../../../common/components/Loading.js";import{useState as l,useMemo as i,useEffect as a}from"react";import{useRenderMode as c,useCurrentDevice as n,usePageType as s,usePageStore as u,useFetchHandle as m,hasPublicStoreFrontData as g,createStoreFrontFetcher as h,useProductQuery as p,useProductsQueryAll as P,useProductsQuery as f,useCollectionQuery as b,flattenConnection as T,ProductListProvider as k,filterToolbarPreview as I}from"@gem-sdk/core";import v from"../SalePageProductListWarning.js";import y from"next/head";import O from"./ProductListGridLayout.js";import N from"./ProductListCarouselLayout.js";import{getStyle as S}from"./common/styles.js";import{If as C}from"@gem-sdk/system";import{getClass as E}from"./common/classes.js";import{getData as w}from"./common/helpers.js";import{getPropertyByDevice as L}from"../../../dialog/common/helpers.js";let ProductNotFound=r(()=>import("../ProductNotFound.js"),{loading:d}),ProductList=r=>{let{children:W,styles:j,builderProps:x,setting:G,builderAttrs:M}=r,{isRelatedProduct:A,productSetting:B}=w(r),F=B.relatedTag&&B.relatedTag[0],{isEditMode:H,isPreviewSharePageMode:Q}=c(),z=n(),D=s(),R=u(e=>e.dynamicProduct),$=u(e=>e.dynamicCollection),[_,V]=l(1),[q,U]=l(!0),[J,K]=l(),[X,Y]=l(!1),Z="GP_FUNNEL_PAGE"===D,ee="GP_COLLECTION"==D;ee&&(B.productSrc="DynamicCollection",B.collectionId=$?.collectionId??"latest");let et=B?.productSrc??"Collection",eo=R?.productId&&R?.productId!==B.relatedProductId?R?.productId:B.relatedProductId,er=m(),ed=u(e=>e.publicStoreFrontData),el=i(()=>g(ed)?h(ed):er,[ed]),{data:ei}=p(A&&eo?eo:void 0,{revalidateOnMount:H||Q},el),ea=B.relatedTag&&"tags"===B.relatedTag[0]&&(!ei?.tags||ei?.tags.length===0),ec=B.relatedTag&&"collection"===B.relatedTag[0]&&(!ei?.collections?.edges||ei?.collections.edges.length===0),en=B.relatedTag&&"vendor"===B.relatedTag[0]&&!ei?.vendor,es=ea||ec||en,eu=P(J,{revalidateOnMount:H||Q},el),em=H||Q,eg=f("PickProduct"===et?B?.productIds:void 0,{revalidateOnMount:em},{defaultSelectedProductCount:B?.numOfSelectedProducts}),eh=i(()=>({id:B?.collectionId??"latest",numberOfProducts:G?.numberOfProducts??4,orderBy:G?.orderBy}),[B?.collectionId,Number(G?.numberOfProducts),G?.orderBy]),ep=b("PickProduct"!==et?eh:void 0,{revalidateOnMount:em});a(()=>{if(A&&ei&&B.relatedTag&&"recommended-product"!==B.relatedType){let e;switch(Y(!1),B.hasRelatedExclude&&(e=B?.relatedExclude&&B.relatedExclude.split(",").map(e=>e.trim())),B.relatedTag[0]){case"vendor":K({vendor:B.relatedTag&&"vendor"===B.relatedTag[0]?ei?.vendor:"",limit:G?.numberOfProducts,idNEQ:ei.id});break;case"collection":{let t;let o=ei?.collections?.edges.map(e=>e.node?.id);if(!o||o?.length===0){Y(!0);break}K(t=e&&e.length>0?{idNEQ:ei.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:o},{titleNotIn:e}]}],limit:G?.numberOfProducts}:{idNEQ:ei.id,hasCollectionProductsWith:[{hasCollectionWith:[{idIn:o}]}],limit:G?.numberOfProducts});break}case"tags":{let t;if(!ei.tags||0===ei.tags.length){Y(!0);break}K(t=e&&e.length>0?{idNEQ:ei.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ei.tags},{nameNotIn:e}]}],limit:G?.numberOfProducts}:{idNEQ:ei.id,hasProductTagsWith:[{hasTagsWith:[{nameIn:ei.tags}]}],limit:G?.numberOfProducts})}}}},[ei,B.relatedType,B.relatedTag,G?.numberOfProducts,B.relatedExclude,B.hasRelatedExclude,A]);let eP="PickProduct"===et?eg.isValidating:ep.isValidating,ef="PickProduct"===et?eg.isLoading:ep.isLoading,eb="PickProduct"===et?eg.error:ep.error,eT=ep.data?.collections?.edges?.[0]?.node,ek="PickProduct"===et?T(eg.data?.products):T(eT?.products),eI=u(e=>e.assignedProductIds),ev=u(e=>e.isApplyAllProducts),ey=i(()=>(eI??[]).length>0&&!ev||ev,[eI,ev]),eO=eu?.data?.products&&ey?T(eu?.data?.products):[],eN=A?eO:"PickProduct"===et&&B?.productIds?.length?B?.productIds?.map(e=>ek?.find(t=>t?.baseID===e)).filter(Boolean)??ek:"PickProduct"!==et?ek:ek.filter((e,t)=>t<(B?.numOfSelectedProducts??4)),eS=i(()=>X&&A&&H||!eN.length&&!ef&&q&&H,[q,ef,X,A,H,eN.length]),eC=i(()=>!eN||X&&A,[X,A,eN]),eE=i(()=>{if(!G?.sameHeight)return[];let e=0,t=Math.ceil((eN?.length??0)/+(G?.slidesToShow?.[z]??1));return Array.from(Array(eN?.length??0)).map((o,r)=>(r>=+(G?.slidesToShow?.[z]??1)*(e+1)&&++e,{gridRow:`${1+_*e}/${_+1+_*e}`,marginBottom:e+1<t?L(j?.horizontalGutter,z):void 0}))},[G?.sameHeight,G?.slidesToShow,_,eN?.length,z,j?.horizontalGutter]),ew=i(()=>eP||ef||eb||!eN||X&&A,[eb,ef,X,A,eP,eN]);a(()=>{if(ew||!G?.sameHeight)return;let e=null,t=setTimeout(()=>{let{builderData:t}=x??{},o=t?.childrens?.[0];if(!o)return;let r=document.querySelector(`[data-id=${o}] div`);r&&(V(r.childElementCount||1),e=new MutationObserver(()=>{let e=r.childElementCount||1;V(e)}),H&&e.observe(r,{childList:!0,subtree:!1}))},500);return()=>{clearTimeout(t),e&&e.disconnect()}},[x,ew,H,G?.sameHeight]);let eL=i(()=>({collection:eT,products:eN,settings:{loop:G?.loop??{desktop:!1},scrollMode:G?.scrollMode??{desktop:"snap"},slidesToShow:G?.slidesToShow??{desktop:4,tablet:3,mobile:1},layout:j?.layout,dot:G?.dot,dotStyle:G?.dotStyle,arrow:G?.arrow,controlOverContent:G?.controlOverContent},styles:{horizontalGutter:j?.horizontalGutter,verticalGutter:j?.verticalGutter,fullWidth:j?.fullWidth,spacing:j?.spacing,width:j?.width,height:j?.height}}),[eT,eN,G,j]);if(x?.isPreview&&Z)return e(t,{});if(eS)return e(t,{children:C(q,e(ProductNotFound,{builderAttrs:M,collectionHandle:eT?.handle,productSrc:et,onClose:()=>U(!1),children:W,relatedTagString:F,assignProductNoTags:es,noAssignedProduct:!eo}))});let{productListWrapStyle:eW,productListContentStyle:ej,productListWrapAlignStyle:ex}=S(r),{productListWrapClass:eG}=E(r),eM=()=>e(t,{children:C(j?.layout==="grid",e(O,{...r,productSortedById:eN,generateGridRowArray:eE}),e(N,{...r,productSortedById:eN}))});return o("div",{...M,className:eG,style:eW,children:[!!j?.preloadBgImage&&o(y,{children:[!!j.backgroundImage?.desktop?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage.desktop.image.src,as:"image"}),!!j.backgroundImage?.tablet?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage?.tablet?.image?.src,as:"image"}),!!j.backgroundImage?.mobile?.image?.src&&e("link",{rel:"preload",href:j.backgroundImage?.mobile?.image?.src,as:"image"})]}),eP||ef?e(d,{}):eb?o("div",{children:["Error: ",eb?.message]}):eC?e("div",{children:"Products not found"}):e(k,{...eL,children:e("div",{className:"gp-flex gp-w-full",style:ex,children:o("div",{style:ej,children:[Z&&e(v,{}),eM()]})})}),I(W,!0)]})};export{ProductList as default};
@@ -1 +1 @@
1
- import{createClass as e}from"@gem-sdk/system";let getClass=g=>{let{setting:s,className:t,builderProps:i,advanced:p,styles:r}=g,l=e({...t&&{[t]:!0},...p?.cssClass&&{[p.cssClass]:!0},"!gp-m-auto gp-grid gp-w-full":!0,"gp-grid-flow-row":s?.sameHeight}),a=e({"gp-relative gp-flex":!0,[`${i?.builderData?.uid}`]:!0}),d=e({"gp-contents":s?.sameHeight&&r?.layout==="grid"}),o=e({"gp-justify-center":!0,"gp-overflow-hidden":!s?.sameHeight}),m=e({"gp-contents [&>*>div]:gp-contents [&>*]:gp-grid-rows-[subgrid] [&>*]:gp-gap-y-0":s?.sameHeight,[`gp-child-item-${i?.uid}`]:!0});return{gridLayoutClass:l,productItemClass:m,carouselClass:o,productListWrapClass:a,gpProductClass:d}};export{getClass};
1
+ import{createClass as e}from"@gem-sdk/system";let getClass=g=>{let{setting:t,className:s,builderProps:i,advanced:p,styles:r}=g,l=e({...s&&{[s]:!0},...p?.cssClass&&{[p.cssClass]:!0},"!gp-m-auto gp-grid gp-w-full":!0,"gp-grid-flow-row":t?.sameHeight}),a=e({"gp-relative gp-flex":!0,[`${i?.builderData?.uid}`]:!0}),d=e({"gp-contents":t?.sameHeight&&r?.layout==="grid"}),o=e({"gp-justify-center":!0,"gp-overflow-hidden":!t?.sameHeight}),m=e({"gp-contents [&>*>div]:gp-contents [&>*]:gp-grid-rows-[subgrid] [&>*]:gp-gap-y-0":t?.sameHeight&&r?.layout==="grid",[`gp-child-item-${i?.uid}`]:!0});return{gridLayoutClass:l,productItemClass:m,carouselClass:o,productListWrapClass:a,gpProductClass:d}};export{getClass};
@@ -1,2 +1,2 @@
1
1
  'use client';
2
- import{jsxs as e,jsx as r,Fragment as t}from"react/jsx-runtime";import o from"../../../text/components/Text.js";import{createClass as i,createAttr as m}from"@gem-sdk/system";import{getWrapperClasses as s}from"./common/classes.js";import{getAttrs as c}from"./common/attrs.js";import{getTextProps as p}from"./common/helpers.js";import{useGpPrice as l}from"./hooks/useGpPrice.js";import{useEditorMode as d,filterToolbarPreview as a}from"@gem-sdk/core";let ProductPrice=n=>{let{style:f,children:g}=n,h=d(),x="edit"===h,{elementRef:u,moneyFormatted:j,currentProductId:y,isNoComparePrice:P,isNoComparePriceILP:k,emitNoDataSignal:N}=l(n),v=i(s(n)),b=m(c(n,y)),w=p(n,j),C={visibility:"hidden",opacity:0,maxWidth:0,maxHeight:0},G=k?C:f;return e("div",{ref:u,...b,className:v,style:G,"aria-hidden":"true",onClick:N,children:[P&&x?r(t,{children:r("div",{className:"gp-flex-col gp-flex gp-justify-between gp-p-2",children:r("p",{className:"gp-text-[#212121] gp-text-[12px] gp-leading-3 ",children:"No compare price"})})}):e(t,{children:[r(o,{...w}),g]}),a(g,!0)]})};export{ProductPrice as default};
2
+ import{jsxs as e,jsx as r,Fragment as o}from"react/jsx-runtime";import t from"../../../text/components/Text.js";import{createClass as i,createAttr as m}from"@gem-sdk/system";import{getWrapperClasses as s}from"./common/classes.js";import{getAttrs as c}from"./common/attrs.js";import{getTextProps as p}from"./common/helpers.js";import{useGpPrice as d}from"./hooks/useGpPrice.js";import{useEditorMode as l,filterToolbarPreview as a}from"@gem-sdk/core";let ProductPrice=n=>{let{style:f,children:h}=n,g=l(),x="edit"===g,{elementRef:u,moneyFormatted:j,currentProductId:P,isNoComparePrice:y,isNoComparePriceILP:k,shouldHiddenComparePrice:N,emitNoDataSignal:v}=d(n),b=i(s(n)),C=m(c(n,{isILP:!x,productId:P,shouldHiddenComparePrice:N})),H=p(n,j),I={visibility:"hidden",opacity:0,maxWidth:0,maxHeight:0},w=k?I:f;return e("div",{ref:u,...C,className:b,style:w,"aria-hidden":"true",onClick:v,children:[y&&x?r(o,{children:r("div",{className:"gp-flex-col gp-flex gp-justify-between gp-p-2",children:r("p",{className:"gp-text-[#212121] gp-text-[12px] gp-leading-3 ",children:"No compare price"})})}):e(o,{children:[r(t,{...H}),h]}),a(h,!0)]})};export{ProductPrice as default};
@@ -1 +1 @@
1
- import{filterTruthyObject as e}from"../../../../helpers.js";let getAttrs=(t,r)=>{let{builderAttrs:a,setting:i,builderProps:d}=t,p=i?.priceType==="compare";return e({...a,id:`shopify-text-element-${d?.uid}`,"data-id":d?.uid,"data-product-id":r,"data-hidden":!!p&&"{% if variant.compare_at_price > variant.price and variant.compare_at_price >= 0 %}false{% else %}true{% endif %}"})};export{getAttrs};
1
+ import{filterTruthyObject as e}from"../../../../helpers.js";let getAttrs=(t,{isILP:r,productId:a,shouldHiddenComparePrice:i}={})=>{let{builderAttrs:d,setting:p,builderProps:n}=t,c=p?.priceType==="compare",o=()=>!!c&&(r?String(i):"{% if variant.compare_at_price > variant.price and variant.compare_at_price >= 0 %}false{% else %}true{% endif %}");return e({...d,id:`shopify-text-element-${n?.uid}`,"data-id":n?.uid,"data-product-id":a,"data-hidden":o()})};export{getAttrs};
@@ -1 +1 @@
1
- let getWrapperClasses=e=>{let{builderProps:s,classNames:a,advanced:t}=e;return{"gp-product-price group-data-[state=loading]:gp-invisible data-[hidden=true]:gp-hidden":!0,...s?.uid&&{[s.uid]:!0},...t?.cssClass&&{[t.cssClass]:!0},...a&&{[a]:!0}}};export{getWrapperClasses};
1
+ let getWrapperClasses=e=>{let{builderProps:s,classNames:a,advanced:t}=e;return{"gp-product-price group-data-[state=loading]:gp-invisible data-[hidden=true]:!gp-hidden":!0,...s?.uid&&{[s.uid]:!0},...t?.cssClass&&{[t.cssClass]:!0},...a&&{[a]:!0}}};export{getWrapperClasses};
@@ -1 +1 @@
1
- import{useRef as e,useMemo as r}from"react";import{useTransition as t}from"../../product-variants/common/common.js";import{useEditorMode as c,useQuantity as i,useCurrentVariant as a,useProductBundleDiscount as n,useInteraction as o,useProduct as u,useShopStore as p,useFormatMoney as d}from"@gem-sdk/core";let useGpPrice=l=>{let{setting:m,builderProps:s}=l,g=e(null),b=c(),{quantity:h,hasUpdatePrice:y}=i(),P=a(),{useProductCompareAtPrice:v}=n(),f=l["bundle-item"],w=P?.price??0,V=P?.salePrice??0,k=m?.priceType==="compare",{trigger:q}=o(),T=u(),x=T?.baseID?.replace("gid://shopify/Product/",""),C=p(e=>e.showPriceCurrency),E=r(()=>f?.quantity?f.quantity:y&&h||1,[h,y,f?.quantity]),G=r(()=>{let e=Number(f?.discountValue);return f?.discountType==="percentage"?w*E*e/100:e},[f?.discountType,f?.discountValue,w,E]),$=r(()=>f?.discountValue?v?(V||w)*E:w*E:V*E,[f?.discountValue,w,E,V,v]),j=r(()=>{let e=w*E;return k?$:G?Math.max(0,e-G):e},[w,E,G,$,k]),D=(e,r)=>{q({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${s?.uid}"]`,element:g.current}),q({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${s?.uid}"]`,element:g.current})};t(e=>{e!==w&&D(w,"price")},[w]),t(e=>{e!==V&&D(V,"compare")},[V]);let I=()=>{if("edit"!==b)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:s?.uid,value:!j&&k,tag:"ProductPrice"}});window.dispatchEvent(e)},M=d(j??0,C||!1),N=k&&!j,z="edit"!==b&&N;return{elementRef:g,moneyFormatted:M,currentProductId:x,isNoComparePrice:N,isNoComparePriceILP:z,emitNoDataSignal:I}};export{useGpPrice};
1
+ import{useRef as e,useMemo as r}from"react";import{useTransition as t}from"../../product-variants/common/common.js";import{useEditorMode as c,useQuantity as i,useCurrentVariant as a,useProductBundleDiscount as n,convertDecimalToNumber as o,useInteraction as u,useProduct as p,useShopStore as d,useFormatMoney as l}from"@gem-sdk/core";let useGpPrice=m=>{let{setting:s,builderProps:g}=m,b=e(null),h=c(),{quantity:y,hasUpdatePrice:P}=i(),v=a(),{useProductCompareAtPrice:f}=n(),w=m["bundle-item"],V=o(v?.price)??0,k=o(v?.salePrice)??0,q=s?.priceType==="compare",{trigger:T}=u(),x=p(),C=x?.baseID?.replace("gid://shopify/Product/",""),E=d(e=>e.showPriceCurrency),G=r(()=>w?.quantity?w.quantity:P&&y||1,[y,P,w?.quantity]),$=r(()=>{let e=Number(w?.discountValue);return w?.discountType==="percentage"?V*G*e/100:e},[w?.discountType,w?.discountValue,V,G]),j=r(()=>w?.discountValue?f?(k||V)*G:V*G:k*G,[w?.discountValue,V,G,k,f]),D=r(()=>{let e=V*G;return q?j:$?Math.max(0,e-$):e},[V,G,$,j,q]),I=r(()=>!!q&&(!(k>V)||!(k>=0)),[q,k,V]),M=(e,r)=>{T({event:"price"===r?"gp:rollback:price-change":"gp:rollback:compare-price-change",selector:`[data-id="${g?.uid}"]`,element:b.current}),T({event:"price"===r?"gp:price-change":"gp:compare-price-change",data:e,selector:`[data-id="${g?.uid}"]`,element:b.current})};t(e=>{e!==V&&M(V,"price")},[V]),t(e=>{e!==k&&M(k,"compare")},[k]);let N=()=>{if("edit"!==h)return;let e=new CustomEvent("editor:product-source-no-data-warning",{bubbles:!0,detail:{uid:g?.uid,value:!D&&q,tag:"ProductPrice"}});window.dispatchEvent(e)},z=l(D??0,E||!1),A=q&&!D,B="edit"!==h&&A;return{elementRef:b,moneyFormatted:z,currentProductId:C,isNoComparePrice:A,isNoComparePriceILP:B,emitNoDataSignal:N,shouldHiddenComparePrice:I}};export{useGpPrice};
@@ -1 +1 @@
1
- import{getDynamicSourceLocales as e}from"../../../../helpers.js";let getContents=(t,i,n)=>{let{label:l,translate:s,invalidNumberMessage:a,invalidEmailMessage:d,requiredMessage:g,invalidLengthMessage:r}=n??{},u=e({val:l,uid:t,settingId:"label",pageContext:i,translate:s}),v=e({val:a,uid:t,settingId:"invalidNumberMessage",pageContext:i,translate:s}),o=e({val:d,uid:t,settingId:"invalidEmailMessage",pageContext:i,translate:s}),I=e({val:g,uid:t,settingId:"requiredMessage",pageContext:i,translate:s}),b=e({val:r,uid:t,settingId:"invalidLengthMessage",pageContext:i,translate:s});return{displayLabel:u,invalidNumberMessageDisplay:v,invalidEmailMessageDisplay:o,requiredMessageDisplay:I,invalidLengthMessageDisplay:b}},getLabelContent=e=>{let{label:t,required:i}=e??{};return i&&t?" *":""};export{getContents,getLabelContent};
1
+ import{getDynamicSourceLocales as e,createSettingId as t}from"../../../../helpers.js";import{ProductProperties as i}from"../../../settings/product-properties/configs/translate.js";let getContents=(d,s,n)=>{let{label:a,invalidNumberMessage:l,invalidEmailMessage:r,requiredMessage:g,invalidLengthMessage:o}=n??{},u=e({val:a,uid:d,settingId:t({id:i?.label?.id}),pageContext:s}),v=e({val:l,uid:d,settingId:t({id:i?.invalidNumberMessage?.id}),pageContext:s}),p=e({val:r,uid:d,settingId:t({id:i?.invalidEmailMessage?.id}),pageContext:s}),m=e({val:g,uid:d,settingId:t({id:i?.requiredMessage?.id}),pageContext:s}),I=e({val:o,uid:d,settingId:t({id:i?.invalidLengthMessage?.id}),pageContext:s});return{displayLabel:u,invalidNumberMessageDisplay:v,invalidEmailMessageDisplay:p,requiredMessageDisplay:m,invalidLengthMessageDisplay:I}},getLabelContent=e=>{let{label:t,required:i}=e??{};return i&&t?" *":""};export{getContents,getLabelContent};
@@ -1,23 +1,23 @@
1
- import{makeStyleResponsive as e,makeWidth as o,template as r}from"@gem-sdk/core";import{getPPCInlineStyleChoice as t}from"./common/getProductPropertiesChoiceInlineCss.js";import{getDynamicSourceLocales as s}from"../../../../helpers.js";import{createClass as i,createStyle as m,createAttr as c}from"@gem-sdk/system";import{getPPCWrapperClasses as l,getPPCLabelClasses as $,getPPCWrapperClassesMain as d}from"./common/getProductPropertiesChoiceClasses.js";import{getPPCContainerStyles as p,getPPCLabelStyles as u,getPPCInputStyles as a}from"./common/getProductPropertiesChoiceStyles.js";import{getPPCInputAttrs as n}from"./common/getProductPropertiesChoiceAttrs.js";let ProductPropertyChoice=({setting:P,styles:f,builderProps:y,pageContext:h,attributes:C})=>{let g=y?.uid,{name:j,type:v,childItem:b,translate:k}=P??{},{valueTextColor:I,fullWidth:_,width:x}=f??{},w=e("w",o(x,_)),A=`properties[${j}]`,S=t(g,I),q=i({...l()}),z=i({...$(f)}),B=m({...p(f)}),D=i({...d()}),E=m({...u(f)}),F=c({...n(C)}),G=m({...a(f)});return r`<div style="${{...w}}" class="${D}">
2
- <style>${S}</style>
1
+ import{makeStyleResponsive as e,makeWidth as o,template as t}from"@gem-sdk/core";import{getPPCInlineStyleChoice as r}from"./common/getProductPropertiesChoiceInlineCss.js";import{getDynamicSourceLocales as s,createSettingId as i}from"../../../../helpers.js";import{createClass as m,createStyle as c,createAttr as l}from"@gem-sdk/system";import{getPPCWrapperClasses as p,getPPCLabelClasses as d,getPPCWrapperClassesMain as $}from"./common/getProductPropertiesChoiceClasses.js";import{getPPCContainerStyles as a,getPPCLabelStyles as n,getPPCInputStyles as u}from"./common/getProductPropertiesChoiceStyles.js";import{getPPCInputAttrs as f}from"./common/getProductPropertiesChoiceAttrs.js";import{ProductProperties as P}from"../../../settings/product-properties/configs/translate.js";let ProductPropertyChoice=({setting:y,styles:g,builderProps:h,pageContext:C,attributes:j})=>{let v=h?.uid,{name:b,type:k,childItem:I}=y??{},{valueTextColor:x,fullWidth:_,width:w}=g??{},A=e("w",o(w,_)),S=`properties[${b}]`,q=r(v,x),z=m({...p()}),B=m({...d(g)}),D=c({...a(g)}),E=m({...$()}),F=c({...n(g)}),G=l({...f(j)}),H=c({...u(g)});return t`<div style="${{...A}}" class="${E}">
2
+ <style>${q}</style>
3
3
 
4
- ${b?.map((e,o)=>{let t=s({val:e,uid:g,settingId:`childItem_${o}`,pageContext:h,translate:k});return r`
5
- <div class="${q}" style="${B}">
4
+ ${I?.map((e,o)=>{let r=s({val:e,uid:v,settingId:i({id:P?.childItem?.id,index:o}),pageContext:C});return t`
5
+ <div class="${z}" style="${D}">
6
6
  <input
7
- ${{...F}}
8
- type="${v}"
9
- id="${g}-${j}-${o}"
10
- name="${"radio"===v||"checkbox"===v?A:`${A}[]`}"
11
- value="${t}"
12
- style="${G}"
7
+ ${{...G}}
8
+ type="${k}"
9
+ id="${v}-${b}-${o}"
10
+ name="${"radio"===k||"checkbox"===k?S:`${S}[]`}"
11
+ value="${r}"
12
+ style="${H}"
13
13
  form="{{ product_form_id }}"
14
14
  />
15
15
  <label
16
- for="${g}-${j}-${o}"
17
- class="${z}"
18
- style="${E}"
16
+ for="${v}-${b}-${o}"
17
+ class="${B}"
18
+ style="${F}"
19
19
  >
20
- ${t}
20
+ ${r}
21
21
  </label>
22
22
  </div>`}).join("")}
23
23
  </div>
@@ -1,15 +1,15 @@
1
- import{composeClasses as r,template as e}from"@gem-sdk/core";import{getDynamicSourceLocales as m}from"../../../../helpers.js";import{createClass as o,createStyle as t,createAttr as p}from"@gem-sdk/system";import{getClasses as s}from"./common/classes.js";import{getStyles as a}from"./common/styles.js";import{getElementContent as u}from"./common/helpers.js";import{getInputAttrs as i}from"./common/attrs.js";let ProductPropertyInput=({setting:l,styles:n,builderProps:d,pageContext:$,attributes:c})=>{let{name:f,type:h,placeholder:g,required:b,minChar:x,maxChar:y,label:N,translate:j}=l??{minChar:Number,maxChar:Number,minNumber:Number,maxNumber:Number},P="textarea"===h?"textarea":"input",v=m({val:g,uid:d?.uid,settingId:"placeholder",pageContext:$,translate:j}),I=`${v}${g&&b&&!N?" *":""}`,k=o({...s(n),...r("gp-shadow-none group-data-[invalid=true]:gp-border-[#F44336]")}),C=t({...a(n)}),{elementValue:_}=u(l),q=p({...i(c)});return e`
2
- <${P}
3
- ${{...q}}
4
- type="${h}"
5
- placeholder="${I}"
6
- name="properties[${f}]"
1
+ import{composeClasses as r,template as e}from"@gem-sdk/core";import{getDynamicSourceLocales as t,createSettingId as o}from"../../../../helpers.js";import{createClass as m,createStyle as s,createAttr as p}from"@gem-sdk/system";import{getClasses as a}from"./common/classes.js";import{getStyles as i}from"./common/styles.js";import{getElementContent as n}from"./common/helpers.js";import{getInputAttrs as u}from"./common/attrs.js";import{ProductProperties as d}from"../../../settings/product-properties/configs/translate.js";let ProductPropertyInput=({setting:l,styles:$,builderProps:c,pageContext:f,attributes:g})=>{let{name:h,type:b,placeholder:j,required:x,minChar:y,maxChar:N,label:P}=l??{minChar:Number,maxChar:Number,minNumber:Number,maxNumber:Number},v="textarea"===b?"textarea":"input",I=t({val:j,uid:c?.uid,settingId:o({id:d?.placeholder?.id}),pageContext:f}),k=`${I}${j&&x&&!P?" *":""}`,C=m({...a($),...r("gp-shadow-none group-data-[invalid=true]:gp-border-[#F44336]")}),_=s({...i($)}),{elementValue:q}=n(l),w=p({...u(g)});return e`
2
+ <${v}
3
+ ${{...w}}
4
+ type="${b}"
5
+ placeholder="${k}"
6
+ name="properties[${h}]"
7
7
  form="{{ product_form_id }}"
8
- value="${_}"
9
- class="${k}"
10
- style="${C}"
11
- ${b?`required="${b}"`:""}
12
- minlength="${x}"
13
- maxlength="${y}"
14
- ></${P}>
8
+ value="${q}"
9
+ class="${C}"
10
+ style="${_}"
11
+ ${x?`required="${x}"`:""}
12
+ minlength="${y}"
13
+ maxlength="${N}"
14
+ ></${v}>
15
15
  `};export{ProductPropertyInput as default};
@@ -1,16 +1,16 @@
1
- import{composeClasses as o,template as e}from"@gem-sdk/core";import{getDynamicSourceLocales as t}from"../../../../helpers.js";import{createAttr as r,createClass as m,createStyle as s}from"@gem-sdk/system";import{getSelectAttrs as l}from"./common/attrs.js";import{getSelectStyles as p,getOptionStyles as i}from"./common/styles.js";import{getSelectClasses as c}from"./common/classes.js";let ProductPropertySelect=({setting:d,styles:n,builderProps:$,pageContext:a,attributes:f})=>{let u=$?.uid,{name:y,childItem:j,translate:g}=d??{},P=r({...l(d,f)}),h=m({...c(n),...o("gp-shadow-none")}),_=s({...p(n)}),k=s({...i(n)});return e`
1
+ import{composeClasses as t,template as o}from"@gem-sdk/core";import{getDynamicSourceLocales as e,createSettingId as r}from"../../../../helpers.js";import{createAttr as s,createClass as m,createStyle as i}from"@gem-sdk/system";import{getSelectAttrs as p}from"./common/attrs.js";import{getSelectStyles as l,getOptionStyles as c}from"./common/styles.js";import{getSelectClasses as d}from"./common/classes.js";import{ProductProperties as n}from"../../../settings/product-properties/configs/translate.js";let ProductPropertySelect=({setting:a,styles:f,builderProps:u,pageContext:$,attributes:g})=>{let j=u?.uid,{name:y,childItem:P}=a??{},h=s({...p(a,g)}),k=m({...d(f),...t("gp-shadow-none")}),v=i({...l(f)}),I=i({...c(f)});return o`
2
2
  <select
3
- ${{...P}}
3
+ ${{...h}}
4
4
  name="properties[${y}]"
5
- id="${u}-${y}"
6
- class="${h}"
5
+ id="${j}-${y}"
6
+ class="${k}"
7
7
  form="{{ product_form_id }}"
8
- style="${_}"
8
+ style="${v}"
9
9
  >
10
- ${j?.map((o,r)=>{let m=t({val:o,uid:u,settingId:`childItem_${r}`,pageContext:a,translate:g});return e`
10
+ ${P?.map((t,s)=>{let m=e({val:t,uid:j,settingId:r({id:n?.childItem?.id,index:s}),pageContext:$});return o`
11
11
  <option
12
12
  value="${m}"
13
- style="${k}"
13
+ style="${I}"
14
14
  >
15
15
  ${m}
16
16
  </option>`}).join("")}
@@ -1,3 +1,10 @@
1
- import{template as t}from"@gem-sdk/core";import{getStaticLocale as o}from"../../../helpers.js";import r from"../../../text/components/Text.liquid.js";import{createClass as e,LiquidUnless as p,If as m}from"@gem-sdk/system";import{getTextProps as i}from"./common/helpers.js";let ProductTitle=l=>{let{setting:s}=l,d=`<p>${o("ProductTitle","product_not_found")}</p>`,c=()=>r(i(l)),u={},n=s?.linkProduct,f=e({"gp-product-title-link-wrapper":!0});return p("product",`${d}`,m(n,t`<a ${u} class="${f}">
2
- ${c()}
3
- </a>`,`${c()}`))};export{ProductTitle as default};
1
+ import{template as t,dataStringify as r,isLocalEnv as e,baseAssetURL as o}from"@gem-sdk/core";import{getStaticLocale as p,getSettingPreloadData as l}from"../../../helpers.js";import s from"../../../text/components/Text.liquid.js";import{createAttr as d,createClass as i,createStateOrContext as u,LiquidUnless as c,If as m}from"@gem-sdk/system";import{getTextProps as a}from"./common/helpers.js";let ProductTitle=n=>{let{setting:$,builderProps:f}=n,g=`<p>${p("ProductTitle","product_not_found")}</p>`,k=()=>s(a(n)),P=d({href:"{{ product.url }}",title:"{{ product.title }}"}),j=$?.linkProduct,S=i({"gp-product-title-link-wrapper":!0}),T=u({linkProduct:$?.linkProduct,uid:f?.uid}),h=()=>{let t=e?"{{ 'gp-product-title-v7-5.js' | asset_url }}":`${o}/assets-v2/gp-product-title-v7-5.js?v={{ shop.metafields.GEMPAGES.ASSETS_VERSION }}`;return`<script ${l('class="gps-link" delay',"src")}="${t}" defer="defer"></script>`};return c("product",`${g}`,t`
2
+ <gp-product-title
3
+ gp-data='${r(T)}'
4
+ >
5
+ ${m(j,t`<a ${P} class="${S}">
6
+ ${k()}
7
+ </a>`,t`${k()}`)}
8
+ </gp-product-title>
9
+ ${h()}
10
+ `)};export{ProductTitle as default};
@@ -0,0 +1,41 @@
1
+ import{template as e}from"@gem-sdk/core";import{Liquid as s,LiquidIf as i}from"@gem-sdk/system";import{OPTION_VALUES_DELIMITER as n}from"./common/const.js";let renderOptionValuesNewFormatSwatches=t=>{let{renderVariantItem:o,variantPresetsLiquid:r}=t;return e`
2
+ ${s("{%- assign optionRendered = false -%}")}
3
+ ${s("{%- assign swatches = shop.metafields.GEMPAGES.swatchesJSONFormat.value -%}")}
4
+
5
+ ${s(`{% for swatch in swatches %}
6
+ {%- assign optionTitle = swatch.optionTitle -%}
7
+ {%- assign optionType = swatch.optionType -%}
8
+ {%- assign labelsString = "" -%}
9
+ {%- assign colorArraysString = "" -%}
10
+ {%- assign imageUrlsString = "" -%}
11
+
12
+ {% for optionValue in swatch.optionValues %}
13
+ {%- assign labelsString = labelsString | append: optionValue.label | append: '${n}' -%}
14
+ {%- assign colorsJoined = optionValue.colors | join: '${n}' -%}
15
+ {%- assign colorArraysString = colorArraysString | append: colorsJoined | append: '${n}' -%}
16
+ {%- assign imageUrlsString = imageUrlsString | append: optionValue.imageUrl | append: '${n}' -%}
17
+ {% endfor %}
18
+
19
+ {%- assign labels = labelsString | split: '${n}' | slice: 0, labelsString.size -%}
20
+ {%- assign colorStrings = colorArraysString | split: '${n}' | slice: 0, colorArraysString.size -%}
21
+ {%- assign imageUrls = imageUrlsString | split: '${n}' | slice: 0, imageUrlsString.size -%}
22
+
23
+ {% if optionTitle == option.name %}
24
+ {%- assign variantPresetString = "${r}" -%}
25
+ {%- assign optionName = option.name | replace: "'", "&apos;" | replace: '"', "&quot;" -%}
26
+ {%- assign items = variantPresetString | split: '($2)' -%}
27
+ {%- assign type = 'dropdown' -%}
28
+
29
+ {% for item in items %}
30
+ {%- assign itemPreset = item | split: '($1)' -%}
31
+ {% if itemPreset[0] == optionName %}{%- assign type = itemPreset[1] -%}{% endif %}
32
+ {% if itemPreset[0] == 'base' %}{%- assign type = itemPreset[1] -%}{% endif %}
33
+ {% endfor %}
34
+ {%- assign optionRendered = true -%}
35
+
36
+ ${o({showDropdown:!0})}
37
+ {% endif %}
38
+ {% endfor %}`)}
39
+
40
+ ${i("optionRendered == false",o({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
41
+ `};export{renderOptionValuesNewFormatSwatches};
@@ -0,0 +1,66 @@
1
+ import{Liquid as e,LiquidFor as s,LiquidIf as t}from"@gem-sdk/system";import{template as i}from"@gem-sdk/core";let renderOptionValuesOld=a=>{let{renderVariantItem:n,variantPresetsLiquid:o}=a;return i`
2
+ ${e("{%- assign optionRendered = false -%}")}
3
+ ${e("{%- assign swatches = shop.metafields.GEMPAGES.swatches -%}")}
4
+ ${e("{%- assign swatchesItems = swatches | split: '($1)' -%}")}
5
+
6
+ ${s("swatchesItem in swatchesItems",`
7
+ ${e('{%- assign colorArraysString = "" -%}')}
8
+ ${e('{%- assign labelsString = "" -%}')}
9
+ ${e('{%- assign imageUrlsString = "" -%}')}
10
+ ${e("{%- assign attrItems = swatchesItem | split: '($3)' -%}")}
11
+
12
+ ${s("attrItem in attrItems",`
13
+ ${e("{%- assign attrs = attrItem | split: '($2)' -%}")}
14
+ ${e("{%- assign optionKey = attrs[0] -%}")}
15
+ ${e("{%- assign optionValue = attrs[1] -%}")}
16
+ ${e(`
17
+ {% if optionKey == 'optionTitle' %}
18
+ {% assign optionTitle = optionValue %}
19
+ {% elsif optionKey == 'optionType' %}
20
+ {% assign optionType = optionValue %}
21
+ {% endif %}
22
+ `)}
23
+
24
+ ${t('optionKey == "optionValues"',`
25
+ ${e("{%- assign opValueItems = optionValue | split: '($4)' -%}")}
26
+ ${s("opValueItem in opValueItems",`
27
+ ${e("{%- assign opValueItemAttrs = opValueItem | split: '($6)' -%}")}
28
+ ${s("opValueItemAttr in opValueItemAttrs",`
29
+ ${e("{%- assign attrs = opValueItemAttr | split: '($5)' -%}")}
30
+ ${e("{%- assign opValueItemKey = attrs[0] -%}")}
31
+ ${e("{%- assign opValueItemValue = attrs[1] -%}")}
32
+
33
+ ${t('opValueItemKey == "label"',`${e("{%- assign labelsString = labelsString | append: opValueItemValue -%}")}
34
+ ${e('{%- assign labelsString = labelsString | append: "($8)" -%}')}`)}
35
+
36
+ ${t('opValueItemKey == "colors"',`${e("{%- assign colorArraysString = colorArraysString | append: opValueItemValue -%}")}
37
+ ${e('{%- assign colorArraysString = colorArraysString | append: "($8)" -%}')}`)}
38
+
39
+ ${t('opValueItemKey == "imageUrl"',`${e("{%- assign imageUrlsString = imageUrlsString | append: opValueItemValue -%}")}
40
+ ${e('{%- assign imageUrlsString = imageUrlsString | append: "($8)" -%}')}`)}
41
+ `)}
42
+ `)}
43
+ `)}
44
+ `)}
45
+
46
+ ${e("{%- assign labels = labelsString | split: '($8)' -%}")}
47
+ ${e("{%- assign colorStrings = colorArraysString | split: '($8)' -%}")}
48
+ ${e("{%- assign imageUrls = imageUrlsString | split: '($8)' -%}")}
49
+
50
+ ${t("optionTitle == option.name",`
51
+ ${e(`{%- assign variantPresetString = "${o}" -%}`)}
52
+ ${e('{%- assign optionName = option.name | replace: "\'", "&apos;" | replace: \'"\', "&quot;" -%}')}
53
+ ${e("{%- assign items = variantPresetString | split:'($2)' -%}")}
54
+ ${e("{%- assign type = 'dropdown' -%}")}
55
+ ${s("item in items",`
56
+ ${e("{%- assign itemPreset = item | split:'($1)' -%}")}
57
+ ${t("itemPreset[0] == optionName",e("{%- assign type = itemPreset[1] -%}"))}
58
+ ${t('itemPreset[0] == "base"',e("{%- assign type = itemPreset[1] -%}"))}
59
+ `)}
60
+ ${e("{%- assign optionRendered = true -%}")}
61
+ ${n({showDropdown:!0})}
62
+ `)}
63
+ `)}
64
+
65
+ ${t("optionRendered == false",n({showDropdown:!1,isRenderDefault:!0,typeOfOption:"optionType"}))}
66
+ `};export{renderOptionValuesOld};