@anker-in/headless-ui 1.0.18 → 1.0.19-alpha.1759197520034

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 (583) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.js.map +2 -2
  2. package/dist/cjs/biz-components/AiuiProvider/index.d.ts +3 -0
  3. package/dist/cjs/biz-components/AiuiProvider/index.js +1 -1
  4. package/dist/cjs/biz-components/AiuiProvider/index.js.map +2 -2
  5. package/dist/cjs/biz-components/AplusDesc/index.d.ts +22 -0
  6. package/dist/cjs/biz-components/AplusDesc/index.js +2 -0
  7. package/dist/cjs/biz-components/AplusDesc/index.js.map +7 -0
  8. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.d.ts +4 -0
  9. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.js +2 -0
  10. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.js.map +7 -0
  11. package/dist/cjs/biz-components/CollectionShelves/index.d.ts +6 -0
  12. package/dist/cjs/biz-components/CollectionShelves/index.js +2 -0
  13. package/dist/cjs/biz-components/CollectionShelves/index.js.map +7 -0
  14. package/dist/cjs/biz-components/CollectionsBanner/index.d.ts +7 -0
  15. package/dist/cjs/biz-components/CollectionsBanner/index.js +2 -0
  16. package/dist/cjs/biz-components/CollectionsBanner/index.js.map +7 -0
  17. package/dist/cjs/biz-components/CollectionsBanner/types.d.ts +43 -0
  18. package/dist/cjs/biz-components/CollectionsBanner/types.js +2 -0
  19. package/dist/cjs/biz-components/CollectionsBanner/types.js.map +7 -0
  20. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.d.ts +15 -0
  21. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js +2 -0
  22. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js.map +7 -0
  23. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +10 -0
  24. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js +2 -0
  25. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +7 -0
  26. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.d.ts +13 -0
  27. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.js +2 -0
  28. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.js.map +7 -0
  29. package/dist/cjs/biz-components/CollectionsFilters/FilterList.d.ts +16 -0
  30. package/dist/cjs/biz-components/CollectionsFilters/FilterList.js +2 -0
  31. package/dist/cjs/biz-components/CollectionsFilters/FilterList.js.map +7 -0
  32. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.d.ts +5 -0
  33. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.js +2 -0
  34. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.js.map +7 -0
  35. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.d.ts +8 -0
  36. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js +2 -0
  37. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js.map +7 -0
  38. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.d.ts +8 -0
  39. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.js +2 -0
  40. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.js.map +7 -0
  41. package/dist/cjs/biz-components/CollectionsFilters/component/helper.d.ts +81 -0
  42. package/dist/cjs/biz-components/CollectionsFilters/component/helper.js +2 -0
  43. package/dist/cjs/biz-components/CollectionsFilters/component/helper.js.map +7 -0
  44. package/dist/cjs/biz-components/CollectionsFilters/component/price.d.ts +25 -0
  45. package/dist/cjs/biz-components/CollectionsFilters/component/price.js +2 -0
  46. package/dist/cjs/biz-components/CollectionsFilters/component/price.js.map +7 -0
  47. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.d.ts +215 -0
  48. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.js +2 -0
  49. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.js.map +7 -0
  50. package/dist/cjs/biz-components/CollectionsFilters/index.d.ts +21 -0
  51. package/dist/cjs/biz-components/CollectionsFilters/index.js +2 -0
  52. package/dist/cjs/biz-components/CollectionsFilters/index.js.map +7 -0
  53. package/dist/cjs/biz-components/DownLoad/index.d.ts +17 -0
  54. package/dist/cjs/biz-components/DownLoad/index.js +2 -0
  55. package/dist/cjs/biz-components/DownLoad/index.js.map +7 -0
  56. package/dist/cjs/biz-components/Features/index.d.ts +26 -0
  57. package/dist/cjs/biz-components/Features/index.js +2 -0
  58. package/dist/cjs/biz-components/Features/index.js.map +7 -0
  59. package/dist/cjs/biz-components/FootCharger/index.d.ts +12 -0
  60. package/dist/cjs/biz-components/FootCharger/index.js +2 -0
  61. package/dist/cjs/biz-components/FootCharger/index.js.map +7 -0
  62. package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
  63. package/dist/cjs/biz-components/FooterNavigation/index.js.map +3 -3
  64. package/dist/cjs/biz-components/FooterNavigation/types.d.ts +2 -1
  65. package/dist/cjs/biz-components/FooterNavigation/types.js +1 -1
  66. package/dist/cjs/biz-components/FooterNavigation/types.js.map +2 -2
  67. package/dist/cjs/biz-components/GiftBox/index.d.ts +17 -0
  68. package/dist/cjs/biz-components/GiftBox/index.js +2 -0
  69. package/dist/cjs/biz-components/GiftBox/index.js.map +7 -0
  70. package/dist/cjs/biz-components/GraphicMore/index.d.ts +22 -0
  71. package/dist/cjs/biz-components/GraphicMore/index.js +2 -0
  72. package/dist/cjs/biz-components/GraphicMore/index.js.map +7 -0
  73. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.d.ts +6 -5
  74. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js +1 -1
  75. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  76. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.d.ts +3 -0
  77. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js +2 -0
  78. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js.map +7 -0
  79. package/dist/cjs/biz-components/HeaderNavigation/icons/index.d.ts +2 -1
  80. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js +1 -1
  81. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  82. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  83. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
  84. package/dist/cjs/biz-components/HeaderNavigation/types.d.ts +8 -1
  85. package/dist/cjs/biz-components/HeaderNavigation/types.js +1 -1
  86. package/dist/cjs/biz-components/HeaderNavigation/types.js.map +2 -2
  87. package/dist/cjs/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  88. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js +1 -1
  89. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  90. package/dist/cjs/biz-components/Listing/ProductProvider.d.ts +52 -0
  91. package/dist/cjs/biz-components/Listing/ProductProvider.js +2 -0
  92. package/dist/cjs/biz-components/Listing/ProductProvider.js.map +7 -0
  93. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.d.ts +5 -0
  94. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.js +2 -0
  95. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.js.map +7 -0
  96. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +2 -0
  97. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +2 -0
  98. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +7 -0
  99. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +2 -0
  100. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +2 -0
  101. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +7 -0
  102. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +2 -0
  103. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +2 -0
  104. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +7 -0
  105. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +2 -0
  106. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +2 -0
  107. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +7 -0
  108. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.d.ts +2 -0
  109. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js +2 -0
  110. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +7 -0
  111. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.d.ts +43 -0
  112. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js +2 -0
  113. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +7 -0
  114. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.d.ts +2 -0
  115. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +2 -0
  116. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +7 -0
  117. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.d.ts +21 -0
  118. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +2 -0
  119. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +7 -0
  120. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.d.ts +5 -0
  121. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +2 -0
  122. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +7 -0
  123. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.d.ts +1 -0
  124. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +2 -0
  125. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +7 -0
  126. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +2 -0
  127. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js +2 -0
  128. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +7 -0
  129. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.d.ts +35 -0
  130. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js +2 -0
  131. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +7 -0
  132. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.d.ts +6 -0
  133. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js +2 -0
  134. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +7 -0
  135. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -0
  136. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js +2 -0
  137. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +7 -0
  138. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.d.ts +2 -0
  139. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js +2 -0
  140. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +7 -0
  141. package/dist/cjs/biz-components/Listing/components/ProductCard/index.d.ts +2 -0
  142. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js +2 -0
  143. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js.map +7 -0
  144. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.d.ts +2 -0
  145. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +2 -0
  146. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +7 -0
  147. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.d.ts +4 -0
  148. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +2 -0
  149. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +7 -0
  150. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +10 -0
  151. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +2 -0
  152. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +7 -0
  153. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -0
  154. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js +2 -0
  155. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js.map +7 -0
  156. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.d.ts +12 -0
  157. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js +2 -0
  158. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js.map +7 -0
  159. package/dist/cjs/biz-components/Listing/components/index.d.ts +3 -0
  160. package/dist/cjs/biz-components/Listing/components/index.js +2 -0
  161. package/dist/cjs/biz-components/Listing/components/index.js.map +7 -0
  162. package/dist/cjs/biz-components/Listing/const.d.ts +28 -0
  163. package/dist/cjs/biz-components/Listing/const.js +2 -0
  164. package/dist/cjs/biz-components/Listing/const.js.map +7 -0
  165. package/dist/cjs/biz-components/Listing/hooks/use-options.d.ts +3 -0
  166. package/dist/cjs/biz-components/Listing/hooks/use-options.js +2 -0
  167. package/dist/cjs/biz-components/Listing/hooks/use-options.js.map +7 -0
  168. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.d.ts +14 -0
  169. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js +2 -0
  170. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js.map +7 -0
  171. package/dist/cjs/biz-components/Listing/hooks/use-variant.d.ts +5 -0
  172. package/dist/cjs/biz-components/Listing/hooks/use-variant.js +2 -0
  173. package/dist/cjs/biz-components/Listing/hooks/use-variant.js.map +7 -0
  174. package/dist/cjs/biz-components/Listing/hooks/useCopy.d.ts +8 -0
  175. package/dist/cjs/biz-components/Listing/hooks/useCopy.js +2 -0
  176. package/dist/cjs/biz-components/Listing/hooks/useCopy.js.map +7 -0
  177. package/dist/cjs/biz-components/Listing/index.d.ts +3 -0
  178. package/dist/cjs/biz-components/Listing/index.js +2 -0
  179. package/dist/cjs/biz-components/Listing/index.js.map +7 -0
  180. package/dist/cjs/biz-components/Listing/types/graphql.d.ts +7473 -0
  181. package/dist/cjs/biz-components/Listing/types/graphql.js +2 -0
  182. package/dist/cjs/biz-components/Listing/types/graphql.js.map +7 -0
  183. package/dist/cjs/biz-components/Listing/types/product.d.ts +141 -0
  184. package/dist/cjs/biz-components/Listing/types/product.js +2 -0
  185. package/dist/cjs/biz-components/Listing/types/product.js.map +7 -0
  186. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js +2 -0
  187. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js.map +7 -0
  188. package/dist/cjs/biz-components/Listing/types/type-helper.d.ts +5 -0
  189. package/dist/cjs/biz-components/Listing/types/type-helper.js +2 -0
  190. package/dist/cjs/biz-components/Listing/types/type-helper.js.map +7 -0
  191. package/dist/cjs/biz-components/Listing/types.d.ts +21 -0
  192. package/dist/cjs/biz-components/Listing/types.js +2 -0
  193. package/dist/cjs/biz-components/Listing/types.js.map +7 -0
  194. package/dist/cjs/biz-components/Listing/utils/helper.d.ts +21 -0
  195. package/dist/cjs/biz-components/Listing/utils/helper.js +2 -0
  196. package/dist/cjs/biz-components/Listing/utils/helper.js.map +7 -0
  197. package/dist/cjs/biz-components/Listing/utils/index.d.ts +37 -0
  198. package/dist/cjs/biz-components/Listing/utils/index.js +2 -0
  199. package/dist/cjs/biz-components/Listing/utils/index.js.map +7 -0
  200. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  201. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  202. package/dist/cjs/biz-components/NavigationSearch/index.d.ts +4 -0
  203. package/dist/cjs/biz-components/NavigationSearch/index.js +2 -0
  204. package/dist/cjs/biz-components/NavigationSearch/index.js.map +7 -0
  205. package/dist/cjs/biz-components/NavigationSearch/types.d.ts +12 -0
  206. package/dist/cjs/biz-components/NavigationSearch/types.js +2 -0
  207. package/dist/cjs/biz-components/NavigationSearch/types.js.map +7 -0
  208. package/dist/cjs/biz-components/Paginator/index.d.ts +7 -0
  209. package/dist/cjs/biz-components/Paginator/index.js +7 -0
  210. package/dist/cjs/biz-components/Paginator/index.js.map +7 -0
  211. package/dist/cjs/biz-components/SearchPage/index.d.ts +6 -0
  212. package/dist/cjs/biz-components/SearchPage/index.js +2 -0
  213. package/dist/cjs/biz-components/SearchPage/index.js.map +7 -0
  214. package/dist/cjs/biz-components/SearchPage/types.d.ts +58 -0
  215. package/dist/cjs/biz-components/SearchPage/types.js +2 -0
  216. package/dist/cjs/biz-components/SearchPage/types.js.map +7 -0
  217. package/dist/cjs/biz-components/SelectStore/index.d.ts +26 -0
  218. package/dist/cjs/biz-components/SelectStore/index.js +2 -0
  219. package/dist/cjs/biz-components/SelectStore/index.js.map +7 -0
  220. package/dist/cjs/biz-components/ShelfDisplay/index.js +1 -1
  221. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
  222. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.d.ts +9 -0
  223. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  224. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  225. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js +4 -4
  226. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  227. package/dist/cjs/biz-components/Specs/dropdown.d.ts +11 -0
  228. package/dist/cjs/biz-components/Specs/dropdown.js +3 -0
  229. package/dist/cjs/biz-components/Specs/dropdown.js.map +7 -0
  230. package/dist/cjs/biz-components/Specs/index.d.ts +5 -0
  231. package/dist/cjs/biz-components/Specs/index.js +2 -0
  232. package/dist/cjs/biz-components/Specs/index.js.map +7 -0
  233. package/dist/cjs/biz-components/Subscribe/index.d.ts +7 -1
  234. package/dist/cjs/biz-components/Subscribe/index.js +1 -1
  235. package/dist/cjs/biz-components/Subscribe/index.js.map +3 -3
  236. package/dist/cjs/biz-components/TextMarquee/index.d.ts +9 -0
  237. package/dist/cjs/biz-components/TextMarquee/index.js +2 -0
  238. package/dist/cjs/biz-components/TextMarquee/index.js.map +7 -0
  239. package/dist/cjs/biz-components/Title/types.d.ts +3 -1
  240. package/dist/cjs/biz-components/Title/types.js +1 -1
  241. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  242. package/dist/cjs/biz-components/index.d.ts +34 -0
  243. package/dist/cjs/biz-components/index.js +1 -1
  244. package/dist/cjs/biz-components/index.js.map +3 -3
  245. package/dist/cjs/components/breadcrumb.d.ts +12 -0
  246. package/dist/cjs/components/breadcrumb.js +2 -0
  247. package/dist/cjs/components/breadcrumb.js.map +7 -0
  248. package/dist/cjs/components/button.js +1 -1
  249. package/dist/cjs/components/button.js.map +2 -2
  250. package/dist/cjs/components/container.js +1 -1
  251. package/dist/cjs/components/container.js.map +2 -2
  252. package/dist/cjs/components/dialog.d.ts +3 -1
  253. package/dist/cjs/components/dialog.js +1 -1
  254. package/dist/cjs/components/dialog.js.map +3 -3
  255. package/dist/cjs/components/index.d.ts +2 -0
  256. package/dist/cjs/components/index.js +1 -1
  257. package/dist/cjs/components/index.js.map +3 -3
  258. package/dist/cjs/components/loadingDots.d.ts +6 -0
  259. package/dist/cjs/components/loadingDots.js +42 -0
  260. package/dist/cjs/components/loadingDots.js.map +7 -0
  261. package/dist/cjs/helpers/utils.d.ts +1 -0
  262. package/dist/cjs/helpers/utils.js +1 -1
  263. package/dist/cjs/helpers/utils.js.map +3 -3
  264. package/dist/cjs/hooks/useRollout.d.ts +1 -0
  265. package/dist/cjs/hooks/useRollout.js +2 -0
  266. package/dist/cjs/hooks/useRollout.js.map +7 -0
  267. package/dist/cjs/stories/aplusdesc.stories.d.ts +27 -0
  268. package/dist/cjs/stories/aplusdesc.stories.js +2 -0
  269. package/dist/cjs/stories/aplusdesc.stories.js.map +7 -0
  270. package/dist/cjs/stories/download.stories.d.ts +23 -0
  271. package/dist/cjs/stories/download.stories.js +2 -0
  272. package/dist/cjs/stories/download.stories.js.map +7 -0
  273. package/dist/cjs/stories/features.stories.d.ts +21 -0
  274. package/dist/cjs/stories/features.stories.js +2 -0
  275. package/dist/cjs/stories/features.stories.js.map +7 -0
  276. package/dist/cjs/stories/footcharger.stories.d.ts +19 -0
  277. package/dist/cjs/stories/footcharger.stories.js +2 -0
  278. package/dist/cjs/stories/footcharger.stories.js.map +7 -0
  279. package/dist/cjs/stories/giftbox.stories.d.ts +18 -0
  280. package/dist/cjs/stories/giftbox.stories.js +2 -0
  281. package/dist/cjs/stories/giftbox.stories.js.map +7 -0
  282. package/dist/cjs/stories/graphicMore.stories.d.ts +19 -0
  283. package/dist/cjs/stories/graphicMore.stories.js +2 -0
  284. package/dist/cjs/stories/graphicMore.stories.js.map +7 -0
  285. package/dist/cjs/stories/selectstore.stories.d.ts +18 -0
  286. package/dist/cjs/stories/selectstore.stories.js +2 -0
  287. package/dist/cjs/stories/selectstore.stories.js.map +7 -0
  288. package/dist/cjs/stories/shelfDisplay.stories.js +644 -1
  289. package/dist/cjs/stories/shelfDisplay.stories.js.map +2 -2
  290. package/dist/cjs/stories/tabs.stories.js +1 -1
  291. package/dist/cjs/stories/tabs.stories.js.map +3 -3
  292. package/dist/esm/biz-components/AccordionCards/index.js.map +2 -2
  293. package/dist/esm/biz-components/AiuiProvider/index.d.ts +3 -0
  294. package/dist/esm/biz-components/AiuiProvider/index.js +1 -1
  295. package/dist/esm/biz-components/AiuiProvider/index.js.map +2 -2
  296. package/dist/esm/biz-components/AplusDesc/index.d.ts +22 -0
  297. package/dist/esm/biz-components/AplusDesc/index.js +2 -0
  298. package/dist/esm/biz-components/AplusDesc/index.js.map +7 -0
  299. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.d.ts +4 -0
  300. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.js +2 -0
  301. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.js.map +7 -0
  302. package/dist/esm/biz-components/CollectionShelves/index.d.ts +6 -0
  303. package/dist/esm/biz-components/CollectionShelves/index.js +2 -0
  304. package/dist/esm/biz-components/CollectionShelves/index.js.map +7 -0
  305. package/dist/esm/biz-components/CollectionsBanner/index.d.ts +7 -0
  306. package/dist/esm/biz-components/CollectionsBanner/index.js +2 -0
  307. package/dist/esm/biz-components/CollectionsBanner/index.js.map +7 -0
  308. package/dist/esm/biz-components/CollectionsBanner/types.d.ts +43 -0
  309. package/dist/esm/biz-components/CollectionsBanner/types.js +1 -0
  310. package/dist/esm/biz-components/CollectionsBanner/types.js.map +7 -0
  311. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.d.ts +15 -0
  312. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js +2 -0
  313. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js.map +7 -0
  314. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +10 -0
  315. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js +2 -0
  316. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +7 -0
  317. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.d.ts +13 -0
  318. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.js +2 -0
  319. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.js.map +7 -0
  320. package/dist/esm/biz-components/CollectionsFilters/FilterList.d.ts +16 -0
  321. package/dist/esm/biz-components/CollectionsFilters/FilterList.js +2 -0
  322. package/dist/esm/biz-components/CollectionsFilters/FilterList.js.map +7 -0
  323. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.d.ts +5 -0
  324. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.js +2 -0
  325. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.js.map +7 -0
  326. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.d.ts +8 -0
  327. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js +2 -0
  328. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js.map +7 -0
  329. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.d.ts +8 -0
  330. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.js +2 -0
  331. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.js.map +7 -0
  332. package/dist/esm/biz-components/CollectionsFilters/component/helper.d.ts +81 -0
  333. package/dist/esm/biz-components/CollectionsFilters/component/helper.js +2 -0
  334. package/dist/esm/biz-components/CollectionsFilters/component/helper.js.map +7 -0
  335. package/dist/esm/biz-components/CollectionsFilters/component/price.d.ts +25 -0
  336. package/dist/esm/biz-components/CollectionsFilters/component/price.js +2 -0
  337. package/dist/esm/biz-components/CollectionsFilters/component/price.js.map +7 -0
  338. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.d.ts +215 -0
  339. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.js +2 -0
  340. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.js.map +7 -0
  341. package/dist/esm/biz-components/CollectionsFilters/index.d.ts +21 -0
  342. package/dist/esm/biz-components/CollectionsFilters/index.js +2 -0
  343. package/dist/esm/biz-components/CollectionsFilters/index.js.map +7 -0
  344. package/dist/esm/biz-components/DownLoad/index.d.ts +17 -0
  345. package/dist/esm/biz-components/DownLoad/index.js +2 -0
  346. package/dist/esm/biz-components/DownLoad/index.js.map +7 -0
  347. package/dist/esm/biz-components/Features/index.d.ts +26 -0
  348. package/dist/esm/biz-components/Features/index.js +2 -0
  349. package/dist/esm/biz-components/Features/index.js.map +7 -0
  350. package/dist/esm/biz-components/FootCharger/index.d.ts +12 -0
  351. package/dist/esm/biz-components/FootCharger/index.js +2 -0
  352. package/dist/esm/biz-components/FootCharger/index.js.map +7 -0
  353. package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
  354. package/dist/esm/biz-components/FooterNavigation/index.js.map +3 -3
  355. package/dist/esm/biz-components/FooterNavigation/types.d.ts +2 -1
  356. package/dist/esm/biz-components/FooterNavigation/types.js +1 -1
  357. package/dist/esm/biz-components/FooterNavigation/types.js.map +2 -2
  358. package/dist/esm/biz-components/GiftBox/index.d.ts +17 -0
  359. package/dist/esm/biz-components/GiftBox/index.js +2 -0
  360. package/dist/esm/biz-components/GiftBox/index.js.map +7 -0
  361. package/dist/esm/biz-components/GraphicMore/index.d.ts +22 -0
  362. package/dist/esm/biz-components/GraphicMore/index.js +2 -0
  363. package/dist/esm/biz-components/GraphicMore/index.js.map +7 -0
  364. package/dist/esm/biz-components/HeaderNavigation/NavProvider.d.ts +6 -5
  365. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js +1 -1
  366. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  367. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.d.ts +3 -0
  368. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js +2 -0
  369. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js.map +7 -0
  370. package/dist/esm/biz-components/HeaderNavigation/icons/index.d.ts +2 -1
  371. package/dist/esm/biz-components/HeaderNavigation/icons/index.js +1 -1
  372. package/dist/esm/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  373. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  374. package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
  375. package/dist/esm/biz-components/HeaderNavigation/types.d.ts +8 -1
  376. package/dist/esm/biz-components/HeaderNavigation/types.js +1 -1
  377. package/dist/esm/biz-components/HeaderNavigation/types.js.map +2 -2
  378. package/dist/esm/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  379. package/dist/esm/biz-components/HeaderNavigation/withCategory.js +1 -1
  380. package/dist/esm/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  381. package/dist/esm/biz-components/Listing/ProductProvider.d.ts +52 -0
  382. package/dist/esm/biz-components/Listing/ProductProvider.js +2 -0
  383. package/dist/esm/biz-components/Listing/ProductProvider.js.map +7 -0
  384. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.d.ts +5 -0
  385. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.js +2 -0
  386. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.js.map +7 -0
  387. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +2 -0
  388. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +2 -0
  389. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +7 -0
  390. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +2 -0
  391. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +2 -0
  392. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +7 -0
  393. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +2 -0
  394. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +2 -0
  395. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +7 -0
  396. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +2 -0
  397. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +2 -0
  398. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +7 -0
  399. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.d.ts +2 -0
  400. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js +2 -0
  401. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +7 -0
  402. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.d.ts +43 -0
  403. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js +2 -0
  404. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +7 -0
  405. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.d.ts +2 -0
  406. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +2 -0
  407. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +7 -0
  408. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.d.ts +21 -0
  409. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +2 -0
  410. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +7 -0
  411. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.d.ts +5 -0
  412. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +2 -0
  413. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +7 -0
  414. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.d.ts +1 -0
  415. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +2 -0
  416. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +7 -0
  417. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +2 -0
  418. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js +2 -0
  419. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +7 -0
  420. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.d.ts +35 -0
  421. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js +2 -0
  422. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +7 -0
  423. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.d.ts +6 -0
  424. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js +2 -0
  425. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +7 -0
  426. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -0
  427. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js +2 -0
  428. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +7 -0
  429. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.d.ts +2 -0
  430. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js +1 -0
  431. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +7 -0
  432. package/dist/esm/biz-components/Listing/components/ProductCard/index.d.ts +2 -0
  433. package/dist/esm/biz-components/Listing/components/ProductCard/index.js +2 -0
  434. package/dist/esm/biz-components/Listing/components/ProductCard/index.js.map +7 -0
  435. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.d.ts +2 -0
  436. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +2 -0
  437. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +7 -0
  438. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.d.ts +4 -0
  439. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +2 -0
  440. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +7 -0
  441. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +10 -0
  442. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +1 -0
  443. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +7 -0
  444. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -0
  445. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js +2 -0
  446. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js.map +7 -0
  447. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.d.ts +12 -0
  448. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js +1 -0
  449. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js.map +7 -0
  450. package/dist/esm/biz-components/Listing/components/index.d.ts +3 -0
  451. package/dist/esm/biz-components/Listing/components/index.js +2 -0
  452. package/dist/esm/biz-components/Listing/components/index.js.map +7 -0
  453. package/dist/esm/biz-components/Listing/const.d.ts +28 -0
  454. package/dist/esm/biz-components/Listing/const.js +2 -0
  455. package/dist/esm/biz-components/Listing/const.js.map +7 -0
  456. package/dist/esm/biz-components/Listing/hooks/use-options.d.ts +3 -0
  457. package/dist/esm/biz-components/Listing/hooks/use-options.js +2 -0
  458. package/dist/esm/biz-components/Listing/hooks/use-options.js.map +7 -0
  459. package/dist/esm/biz-components/Listing/hooks/use-variant-media.d.ts +14 -0
  460. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js +2 -0
  461. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js.map +7 -0
  462. package/dist/esm/biz-components/Listing/hooks/use-variant.d.ts +5 -0
  463. package/dist/esm/biz-components/Listing/hooks/use-variant.js +2 -0
  464. package/dist/esm/biz-components/Listing/hooks/use-variant.js.map +7 -0
  465. package/dist/esm/biz-components/Listing/hooks/useCopy.d.ts +8 -0
  466. package/dist/esm/biz-components/Listing/hooks/useCopy.js +2 -0
  467. package/dist/esm/biz-components/Listing/hooks/useCopy.js.map +7 -0
  468. package/dist/esm/biz-components/Listing/index.d.ts +3 -0
  469. package/dist/esm/biz-components/Listing/index.js +2 -0
  470. package/dist/esm/biz-components/Listing/index.js.map +7 -0
  471. package/dist/esm/biz-components/Listing/types/graphql.d.ts +7473 -0
  472. package/dist/esm/biz-components/Listing/types/graphql.js +2 -0
  473. package/dist/esm/biz-components/Listing/types/graphql.js.map +7 -0
  474. package/dist/esm/biz-components/Listing/types/product.d.ts +141 -0
  475. package/dist/esm/biz-components/Listing/types/product.js +2 -0
  476. package/dist/esm/biz-components/Listing/types/product.js.map +7 -0
  477. package/dist/esm/biz-components/Listing/types/productMetafields.d.js +2 -0
  478. package/dist/esm/biz-components/Listing/types/productMetafields.d.js.map +7 -0
  479. package/dist/esm/biz-components/Listing/types/type-helper.d.ts +5 -0
  480. package/dist/esm/biz-components/Listing/types/type-helper.js +1 -0
  481. package/dist/esm/biz-components/Listing/types/type-helper.js.map +7 -0
  482. package/dist/esm/biz-components/Listing/types.d.ts +21 -0
  483. package/dist/esm/biz-components/Listing/types.js +1 -0
  484. package/dist/esm/biz-components/Listing/types.js.map +7 -0
  485. package/dist/esm/biz-components/Listing/utils/helper.d.ts +21 -0
  486. package/dist/esm/biz-components/Listing/utils/helper.js +2 -0
  487. package/dist/esm/biz-components/Listing/utils/helper.js.map +7 -0
  488. package/dist/esm/biz-components/Listing/utils/index.d.ts +37 -0
  489. package/dist/esm/biz-components/Listing/utils/index.js +2 -0
  490. package/dist/esm/biz-components/Listing/utils/index.js.map +7 -0
  491. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  492. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  493. package/dist/esm/biz-components/NavigationSearch/index.d.ts +4 -0
  494. package/dist/esm/biz-components/NavigationSearch/index.js +2 -0
  495. package/dist/esm/biz-components/NavigationSearch/index.js.map +7 -0
  496. package/dist/esm/biz-components/NavigationSearch/types.d.ts +12 -0
  497. package/dist/esm/biz-components/NavigationSearch/types.js +2 -0
  498. package/dist/esm/biz-components/NavigationSearch/types.js.map +7 -0
  499. package/dist/esm/biz-components/Paginator/index.d.ts +7 -0
  500. package/dist/esm/biz-components/Paginator/index.js +7 -0
  501. package/dist/esm/biz-components/Paginator/index.js.map +7 -0
  502. package/dist/esm/biz-components/SearchPage/index.d.ts +6 -0
  503. package/dist/esm/biz-components/SearchPage/index.js +2 -0
  504. package/dist/esm/biz-components/SearchPage/index.js.map +7 -0
  505. package/dist/esm/biz-components/SearchPage/types.d.ts +58 -0
  506. package/dist/esm/biz-components/SearchPage/types.js +2 -0
  507. package/dist/esm/biz-components/SearchPage/types.js.map +7 -0
  508. package/dist/esm/biz-components/SelectStore/index.d.ts +26 -0
  509. package/dist/esm/biz-components/SelectStore/index.js +2 -0
  510. package/dist/esm/biz-components/SelectStore/index.js.map +7 -0
  511. package/dist/esm/biz-components/ShelfDisplay/index.js +1 -1
  512. package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
  513. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.d.ts +9 -0
  514. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  515. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  516. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js +9 -9
  517. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  518. package/dist/esm/biz-components/Specs/dropdown.d.ts +11 -0
  519. package/dist/esm/biz-components/Specs/dropdown.js +3 -0
  520. package/dist/esm/biz-components/Specs/dropdown.js.map +7 -0
  521. package/dist/esm/biz-components/Specs/index.d.ts +5 -0
  522. package/dist/esm/biz-components/Specs/index.js +2 -0
  523. package/dist/esm/biz-components/Specs/index.js.map +7 -0
  524. package/dist/esm/biz-components/Subscribe/index.d.ts +7 -1
  525. package/dist/esm/biz-components/Subscribe/index.js +1 -1
  526. package/dist/esm/biz-components/Subscribe/index.js.map +3 -3
  527. package/dist/esm/biz-components/TextMarquee/index.d.ts +9 -0
  528. package/dist/esm/biz-components/TextMarquee/index.js +2 -0
  529. package/dist/esm/biz-components/TextMarquee/index.js.map +7 -0
  530. package/dist/esm/biz-components/Title/types.d.ts +3 -1
  531. package/dist/esm/biz-components/index.d.ts +34 -0
  532. package/dist/esm/biz-components/index.js +1 -1
  533. package/dist/esm/biz-components/index.js.map +3 -3
  534. package/dist/esm/components/breadcrumb.d.ts +12 -0
  535. package/dist/esm/components/breadcrumb.js +2 -0
  536. package/dist/esm/components/breadcrumb.js.map +7 -0
  537. package/dist/esm/components/button.js +1 -1
  538. package/dist/esm/components/button.js.map +2 -2
  539. package/dist/esm/components/container.js +1 -1
  540. package/dist/esm/components/container.js.map +2 -2
  541. package/dist/esm/components/dialog.d.ts +3 -1
  542. package/dist/esm/components/dialog.js +1 -1
  543. package/dist/esm/components/dialog.js.map +3 -3
  544. package/dist/esm/components/index.d.ts +2 -0
  545. package/dist/esm/components/index.js +1 -1
  546. package/dist/esm/components/index.js.map +2 -2
  547. package/dist/esm/components/loadingDots.d.ts +6 -0
  548. package/dist/esm/components/loadingDots.js +42 -0
  549. package/dist/esm/components/loadingDots.js.map +7 -0
  550. package/dist/esm/helpers/utils.d.ts +1 -0
  551. package/dist/esm/helpers/utils.js +1 -1
  552. package/dist/esm/helpers/utils.js.map +3 -3
  553. package/dist/esm/hooks/useRollout.d.ts +1 -0
  554. package/dist/esm/hooks/useRollout.js +2 -0
  555. package/dist/esm/hooks/useRollout.js.map +7 -0
  556. package/dist/esm/stories/aplusdesc.stories.d.ts +27 -0
  557. package/dist/esm/stories/aplusdesc.stories.js +2 -0
  558. package/dist/esm/stories/aplusdesc.stories.js.map +7 -0
  559. package/dist/esm/stories/download.stories.d.ts +23 -0
  560. package/dist/esm/stories/download.stories.js +2 -0
  561. package/dist/esm/stories/download.stories.js.map +7 -0
  562. package/dist/esm/stories/features.stories.d.ts +21 -0
  563. package/dist/esm/stories/features.stories.js +2 -0
  564. package/dist/esm/stories/features.stories.js.map +7 -0
  565. package/dist/esm/stories/footcharger.stories.d.ts +19 -0
  566. package/dist/esm/stories/footcharger.stories.js +2 -0
  567. package/dist/esm/stories/footcharger.stories.js.map +7 -0
  568. package/dist/esm/stories/giftbox.stories.d.ts +18 -0
  569. package/dist/esm/stories/giftbox.stories.js +2 -0
  570. package/dist/esm/stories/giftbox.stories.js.map +7 -0
  571. package/dist/esm/stories/graphicMore.stories.d.ts +19 -0
  572. package/dist/esm/stories/graphicMore.stories.js +2 -0
  573. package/dist/esm/stories/graphicMore.stories.js.map +7 -0
  574. package/dist/esm/stories/selectstore.stories.d.ts +18 -0
  575. package/dist/esm/stories/selectstore.stories.js +2 -0
  576. package/dist/esm/stories/selectstore.stories.js.map +7 -0
  577. package/dist/esm/stories/shelfDisplay.stories.js +644 -1
  578. package/dist/esm/stories/shelfDisplay.stories.js.map +2 -2
  579. package/dist/esm/stories/tabs.stories.js +1 -1
  580. package/dist/esm/stories/tabs.stories.js.map +3 -3
  581. package/dist/tokens/base.css +1 -1
  582. package/package.json +1 -1
  583. package/style.css +27 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/AccordionCards/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport Title from '../Title/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport Button from '../../components/button.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport React, { useState, useRef, useCallback, useImperativeHandle, useEffect, type RefObject } from 'react'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport type { Img } from '../../types/props.js'\nimport throttle from '../../shared/throttle.js'\nimport { Heading } from '../../components/heading.js'\n\nconst componentType = 'image'\nconst componentName = 'scene_banner'\n\n/** Hook\uFF1A\u76D1\u542C\u7A97\u53E3\u5BBD\u5EA6 */\ntype ItemType = {\n /** \u6807\u9898\u6587\u672C */\n title: string\n /** \u56FE\u7247*/\n img: Img\n mobileImg?: Img\n /** \u5185\u5BB9\u8282\u70B9 */\n subTitle: string\n link?: string\n imgLink?: string\n}\n\nexport type AccordionCardsType = {\n className?: string\n data: {\n key?: string\n title?: string\n products: Array<ItemType>\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n theme?: 'light' | 'dark'\n }\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: {\n primaryButton?: (v: any, index: number) => void\n }\n}\n\nconst AccordionCardsPcItem = ({\n item,\n idx,\n itemShape,\n hoverIndex,\n getRef,\n handleSwiperItemClick,\n isAnimation,\n contentWidth,\n primaryButton,\n event,\n data,\n accordionRef,\n}: {\n item: ItemType\n idx: number\n itemShape: 'round' | 'square' | undefined\n hoverIndex: number | null\n getRef: (idx: number, el: HTMLDivElement) => void\n handleSwiperItemClick: (idx: number) => void\n isAnimation: any\n contentWidth: number\n primaryButton: string | undefined\n event: any\n data: AccordionCardsType['data']\n accordionRef: React.MutableRefObject<HTMLDivElement[]>\n}) => {\n const isExpanded = hoverIndex === idx\n const flexValue = isExpanded ? 8 : 1\n\n useExposure({ current: accordionRef.current[idx] } as RefObject<HTMLDivElement>, {\n componentType,\n componentName,\n componentTitle: item?.title,\n position: idx + 1,\n componentDescription: item?.subTitle,\n })\n\n return (\n <div\n key={idx}\n style={{\n flex: `${flexValue} 1 0%`,\n transition: 'all 0.6s',\n }}\n ref={(el: HTMLDivElement | null) => {\n if (el) getRef(idx, el)\n }}\n className={cn('relative cursor-pointer overflow-hidden', itemShape === 'round' ? 'rounded-2xl' : '')}\n onMouseEnter={() => handleSwiperItemClick(idx)}\n onMouseLeave={() => {\n isAnimation.current = false\n }}\n onClick={() => {\n handleSwiperItemClick(idx)\n }}\n >\n <a\n href={trackUrlRef(item?.imgLink, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${item?.title}#${item?.subTitle}`}\n >\n <Picture\n source={item?.img?.url}\n className=\"size-full object-cover [&_img]:h-full [&_img]:object-cover\"\n alt={item?.img?.alt || ''}\n />\n </a>\n <div\n style={{\n width: contentWidth,\n }}\n className={cn(\n 'absolute inset-x-0 bottom-0 flex w-full items-end justify-between overflow-hidden px-8 pb-8 opacity-0 transition-opacity duration-[600ms] ease-in',\n isExpanded && contentWidth ? 'opacity-100' : 'opacity-0'\n )}\n >\n <div className=\"mr-16 flex-1 overflow-hidden\">\n <Heading as=\"h3\" className=\"laptop:text-2xl desktop:text-[32px] text-info-primary mb-1 text-xl font-bold\">\n {item?.title}\n </Heading>\n <Heading\n as=\"h4\"\n className=\"lg-desktop:text-[18px] desktop:text-[16px] text-info-primary line-clamp-2 text-[14px] font-[700]\"\n >\n {item?.subTitle}\n </Heading>\n </div>\n <Button\n className={cn('mb-1.5 font-bold')}\n as=\"a\"\n href={trackUrlRef(item?.link, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${item?.title}#${item?.subTitle}#${primaryButton}`}\n onClick={() => event?.primaryButton?.(data, idx)}\n >\n {primaryButton}\n <span className=\"sr-only\">{item?.title ?? item?.subTitle}</span>\n </Button>\n </div>\n </div>\n )\n}\n\nconst MobileItem = ({ data, configuration }: { data: ItemType; configuration?: any }) => {\n const ref = useRef<HTMLDivElement>(null)\n\n useExposure(ref, {\n componentType,\n componentName,\n componentTitle: data?.title,\n position: configuration?.index + 1,\n componentDescription: data?.subTitle,\n })\n \n return (\n <div\n ref={ref}\n className={cn(\n 'bg-container-secondary-1 relative w-full shrink-0 grow-0 overflow-hidden border border-solid',\n configuration?.itemShape === 'round' ? 'rounded-2xl' : ''\n )}\n >\n <a\n href={trackUrlRef(data?.imgLink, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}@${data?.subTitle}`}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n >\n <Picture\n className=\"size-full object-cover [&_img]:h-full [&_img]:object-cover\"\n source={data?.mobileImg?.url || ''}\n alt={data?.mobileImg?.alt || ''}\n />\n </a>\n <div className={cn('absolute inset-x-0 bottom-0 overflow-hidden px-4 pb-4')}>\n <div className=\"tablet:mb-6 mb-4 flex-1 overflow-hidden\">\n <p className=\"text-info-primary text-2xl font-bold leading-[1.2]\">{data?.title}</p>\n <h3 className=\"text-info-primary line-clamp-2 text-sm font-semibold\">{data?.subTitle}</h3>\n </div>\n\n <Button\n as=\"a\"\n variant=\"secondary\"\n aria-label={data?.title ?? data?.subTitle}\n className={cn('text-info-primary text-sm font-bold')}\n href={trackUrlRef(data.link, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-title-desc-button={`${data?.title}#${data?.subTitle}#${configuration?.primaryButton}`}\n >\n {configuration?.primaryButton}\n </Button>\n </div>\n </div>\n )\n}\n\nconst AccordionCards = React.forwardRef<HTMLDivElement, AccordionCardsType>(({ data, className = '', event }, ref) => {\n const [hoverIndex, setHoverIndex] = useState<number | null>(0)\n\n const hoverIndexRef = useRef<number>(0)\n const accordionRef = useRef<HTMLDivElement[]>([])\n const isAnimation = useRef<boolean>(false)\n const [contentWidth, setContentWidth] = useState<number>(0)\n\n const innerRef = useRef<HTMLDivElement>(null)\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n const getRef = (index: number, el: HTMLDivElement) => {\n if (el) {\n accordionRef.current[index] = el\n }\n }\n\n useEffect(() => {\n const handleResize = () => {\n if (accordionRef.current[hoverIndexRef.current]) {\n setContentWidth(accordionRef.current[hoverIndexRef.current].offsetWidth)\n }\n }\n handleResize()\n const throttleResize = throttle(handleResize, 300)\n window.addEventListener('resize', throttleResize)\n return () => window.removeEventListener('resize', throttleResize)\n }, [])\n\n\n\n const handleSwiperItemClick = useCallback(\n (idx: number) => {\n if (hoverIndex === idx || isAnimation.current) return\n isAnimation.current = true\n // \u66F4\u65B0\u5BBD\u5EA6\u76F8\u5173\u72B6\u6001\n setHoverIndex(idx)\n hoverIndexRef.current = idx\n },\n [data?.products, hoverIndex]\n )\n\n return (\n <>\n {data?.title && <Title data={{ title: data?.title }} />}\n <div ref={innerRef} className={cn('laptop:block hidden', { 'aiui-dark': data?.theme === 'dark' })}>\n <div\n className={cn(\n 'lg-desktop:h-[calc(560_/_1920*100vw)] desktop:h-[calc(448_/_1440*100vw)] laptop:h-[calc(336_/_1025*100vw)] flex max-h-[560px] min-h-[336px] w-full gap-4 overflow-hidden',\n className\n )}\n >\n {data?.products?.map((item, idx) => (\n <AccordionCardsPcItem\n key={idx}\n item={item}\n idx={idx}\n itemShape={data?.itemShape}\n hoverIndex={hoverIndex}\n getRef={getRef}\n handleSwiperItemClick={handleSwiperItemClick}\n isAnimation={isAnimation}\n contentWidth={contentWidth}\n primaryButton={data?.primaryButton}\n event={event}\n data={data}\n accordionRef={accordionRef}\n />\n ))}\n </div>\n </div>\n <div className={cn('laptop:hidden block', { 'aiui-dark': data?.theme === 'dark' })}>\n <SwiperBox\n className={cn('h-[400px] !overflow-visible', className)}\n id={'AccordionCards' + data?.key}\n data={{\n list: data?.products,\n configuration: {\n shape: data?.shape,\n itemShape: data?.itemShape,\n primaryButton: data?.primaryButton,\n event: event,\n title: data?.title,\n },\n }}\n Slide={MobileItem}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.2,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2.3,\n },\n }}\n />\n </div>\n </>\n )\n})\nexport default withLayout(AccordionCards)\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["'use client'\nimport Title from '../Title/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport Button from '../../components/button.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport React, { useState, useRef, useCallback, useImperativeHandle, useEffect, type RefObject } from 'react'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport type { Img } from '../../types/props.js'\nimport throttle from '../../shared/throttle.js'\nimport { Heading } from '../../components/heading.js'\n\nconst componentType = 'image'\nconst componentName = 'scene_banner'\n\n/** Hook\uFF1A\u76D1\u542C\u7A97\u53E3\u5BBD\u5EA6 */\ntype ItemType = {\n /** \u6807\u9898\u6587\u672C */\n title: string\n /** \u56FE\u7247*/\n img: Img\n mobileImg?: Img\n /** \u5185\u5BB9\u8282\u70B9 */\n subTitle: string\n link?: string\n imgLink?: string\n}\n\nexport type AccordionCardsType = {\n className?: string\n data: {\n key?: string\n title?: string\n products: Array<ItemType>\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n theme?: 'light' | 'dark'\n }\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: {\n primaryButton?: (v: any, index: number) => void\n }\n}\n\nconst AccordionCardsPcItem = ({\n item,\n idx,\n itemShape,\n hoverIndex,\n getRef,\n handleSwiperItemClick,\n isAnimation,\n contentWidth,\n primaryButton,\n event,\n data,\n accordionRef,\n}: {\n item: ItemType\n idx: number\n itemShape: 'round' | 'square' | undefined\n hoverIndex: number | null\n getRef: (idx: number, el: HTMLDivElement) => void\n handleSwiperItemClick: (idx: number) => void\n isAnimation: any\n contentWidth: number\n primaryButton: string | undefined\n event: any\n data: AccordionCardsType['data']\n accordionRef: React.MutableRefObject<HTMLDivElement[]>\n}) => {\n const isExpanded = hoverIndex === idx\n const flexValue = isExpanded ? 8 : 1\n\n useExposure({ current: accordionRef.current[idx] } as RefObject<HTMLDivElement>, {\n componentType,\n componentName,\n componentTitle: item?.title,\n position: idx + 1,\n componentDescription: item?.subTitle,\n })\n\n return (\n <div\n key={idx}\n style={{\n flex: `${flexValue} 1 0%`,\n transition: 'all 0.6s',\n }}\n ref={(el: HTMLDivElement | null) => {\n if (el) getRef(idx, el)\n }}\n className={cn('relative cursor-pointer overflow-hidden', itemShape === 'round' ? 'rounded-2xl' : '')}\n onMouseEnter={() => handleSwiperItemClick(idx)}\n onMouseLeave={() => {\n isAnimation.current = false\n }}\n onClick={() => {\n handleSwiperItemClick(idx)\n }}\n >\n <a\n href={trackUrlRef(item?.imgLink, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${item?.title}#${item?.subTitle}`}\n >\n <Picture\n source={item?.img?.url}\n className=\"size-full object-cover [&_img]:h-full [&_img]:object-cover\"\n alt={item?.img?.alt || ''}\n />\n </a>\n <div\n style={{\n width: contentWidth,\n }}\n className={cn(\n 'absolute inset-x-0 bottom-0 flex w-full items-end justify-between overflow-hidden px-8 pb-8 opacity-0 transition-opacity duration-[600ms] ease-in',\n isExpanded && contentWidth ? 'opacity-100' : 'opacity-0'\n )}\n >\n <div className=\"mr-16 flex-1 overflow-hidden\">\n <Heading as=\"h3\" className=\"laptop:text-2xl desktop:text-[32px] text-info-primary mb-1 text-xl font-bold\">\n {item?.title}\n </Heading>\n <Heading\n as=\"h4\"\n className=\"lg-desktop:text-[18px] desktop:text-[16px] text-info-primary line-clamp-2 text-[14px] font-[700]\"\n >\n {item?.subTitle}\n </Heading>\n </div>\n <Button\n className={cn('mb-1.5 font-bold')}\n as=\"a\"\n href={trackUrlRef(item?.link, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${item?.title}#${item?.subTitle}#${primaryButton}`}\n onClick={() => event?.primaryButton?.(data, idx)}\n >\n {primaryButton}\n <span className=\"sr-only\">{item?.title ?? item?.subTitle}</span>\n </Button>\n </div>\n </div>\n )\n}\n\nconst MobileItem = ({ data, configuration }: { data: ItemType; configuration?: any }) => {\n const ref = useRef<HTMLDivElement>(null)\n\n useExposure(ref, {\n componentType,\n componentName,\n componentTitle: data?.title,\n position: configuration?.index + 1,\n componentDescription: data?.subTitle,\n })\n \n return (\n <div\n ref={ref}\n className={cn(\n 'bg-container-secondary-1 relative w-full shrink-0 grow-0 overflow-hidden border border-solid',\n configuration?.itemShape === 'round' ? 'rounded-2xl' : ''\n )}\n >\n <a\n href={trackUrlRef(data?.imgLink, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}@${data?.subTitle}`}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n >\n <Picture\n className=\"size-full object-cover [&_img]:h-full [&_img]:object-cover\"\n source={data?.mobileImg?.url || ''}\n alt={data?.mobileImg?.alt || ''}\n />\n </a>\n <div className={cn('absolute inset-x-0 bottom-0 overflow-hidden px-4 pb-4')}>\n <div className=\"tablet:mb-6 mb-4 flex-1 overflow-hidden\">\n <p className=\"text-info-primary text-2xl font-bold leading-[1.2]\">{data?.title}</p>\n <h3 className=\"text-info-primary line-clamp-2 text-sm font-semibold\">{data?.subTitle}</h3>\n </div>\n\n <Button\n as=\"a\"\n variant=\"secondary\"\n aria-label={data?.title ?? data?.subTitle}\n className={cn('text-info-primary text-sm font-bold')}\n href={trackUrlRef(data.link, `${componentType}_${componentName}`)}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-title-desc-button={`${data?.title}#${data?.subTitle}#${configuration?.primaryButton}`}\n >\n {configuration?.primaryButton}\n </Button>\n </div>\n </div>\n )\n}\n\nconst AccordionCards = React.forwardRef<HTMLDivElement, AccordionCardsType>(({ data, className = '', event }, ref) => {\n const [hoverIndex, setHoverIndex] = useState<number | null>(0)\n\n const hoverIndexRef = useRef<number>(0)\n const accordionRef = useRef<HTMLDivElement[]>([])\n const isAnimation = useRef<boolean>(false)\n const [contentWidth, setContentWidth] = useState<number>(0)\n\n const innerRef = useRef<HTMLDivElement>(null)\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n const getRef = (index: number, el: HTMLDivElement) => {\n if (el) {\n accordionRef.current[index] = el\n }\n }\n\n useEffect(() => {\n const handleResize = () => {\n if (accordionRef.current[hoverIndexRef.current]) {\n setContentWidth(accordionRef.current[hoverIndexRef.current].offsetWidth)\n }\n }\n handleResize()\n const throttleResize = throttle(handleResize, 300)\n window.addEventListener('resize', throttleResize)\n return () => window.removeEventListener('resize', throttleResize)\n }, [])\n\n const handleSwiperItemClick = useCallback(\n (idx: number) => {\n if (hoverIndex === idx || isAnimation.current) return\n isAnimation.current = true\n // \u66F4\u65B0\u5BBD\u5EA6\u76F8\u5173\u72B6\u6001\n setHoverIndex(idx)\n hoverIndexRef.current = idx\n },\n [data?.products, hoverIndex]\n )\n\n return (\n <>\n {data?.title && <Title data={{ title: data?.title }} />}\n <div ref={innerRef} className={cn('laptop:block hidden', { 'aiui-dark': data?.theme === 'dark' })}>\n <div\n className={cn(\n 'lg-desktop:h-[calc(560_/_1920*100vw)] desktop:h-[calc(448_/_1440*100vw)] laptop:h-[calc(336_/_1025*100vw)] flex max-h-[560px] min-h-[336px] w-full gap-4 overflow-hidden',\n className\n )}\n >\n {data?.products?.map((item, idx) => (\n <AccordionCardsPcItem\n key={idx}\n item={item}\n idx={idx}\n itemShape={data?.itemShape}\n hoverIndex={hoverIndex}\n getRef={getRef}\n handleSwiperItemClick={handleSwiperItemClick}\n isAnimation={isAnimation}\n contentWidth={contentWidth}\n primaryButton={data?.primaryButton}\n event={event}\n data={data}\n accordionRef={accordionRef}\n />\n ))}\n </div>\n </div>\n <div className={cn('laptop:hidden block', { 'aiui-dark': data?.theme === 'dark' })}>\n <SwiperBox\n className={cn('h-[400px] !overflow-visible', className)}\n id={'AccordionCards' + data?.key}\n data={{\n list: data?.products,\n configuration: {\n shape: data?.shape,\n itemShape: data?.itemShape,\n primaryButton: data?.primaryButton,\n event: event,\n title: data?.title,\n },\n }}\n Slide={MobileItem}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.2,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2.3,\n },\n }}\n />\n </div>\n </>\n )\n})\nexport default withLayout(AccordionCards)\n"],
5
+ "mappings": "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",
6
6
  "names": ["AccordionCards_exports", "__export", "AccordionCards_default", "__toCommonJS", "import_jsx_runtime", "import_Title", "import_utils", "import_picture", "import_button", "import_SwiperBox", "import_Styles", "import_react", "import_useExposure", "import_trackUrlRef", "import_throttle", "import_heading", "componentType", "componentName", "AccordionCardsPcItem", "item", "idx", "itemShape", "hoverIndex", "getRef", "handleSwiperItemClick", "isAnimation", "contentWidth", "primaryButton", "event", "data", "accordionRef", "isExpanded", "flexValue", "el", "Picture", "Button", "MobileItem", "configuration", "ref", "AccordionCards", "React", "className", "setHoverIndex", "hoverIndexRef", "setContentWidth", "innerRef", "index", "handleResize", "throttleResize", "throttle", "Title", "SwiperBox"]
7
7
  }
@@ -2,6 +2,9 @@ import React from 'react';
2
2
  interface AiuiContextType {
3
3
  trackingData: Record<string, any>;
4
4
  locale?: string;
5
+ storeDomain?: string;
6
+ isLogin?: boolean;
7
+ currencyCode?: string;
5
8
  copyWriting?: Record<string, string>;
6
9
  }
7
10
  export declare const AiuiContext: React.Context<AiuiContextType>;
@@ -1,2 +1,2 @@
1
- "use strict";var p=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var k=(a,e)=>{for(var o in e)p(a,o,{get:e[o],enumerable:!0})},x=(a,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of v(e))!A.call(a,t)&&t!==o&&p(a,t,{get:()=>e[t],enumerable:!(s=g(e,t))||s.enumerable});return a};var C=a=>x(p({},"__esModule",{value:!0}),a);var T={};k(T,{AiuiContext:()=>c,default:()=>P,useAiuiContext:()=>_});module.exports=C(T);var b=require("react/jsx-runtime"),h=require("../../shared/track.js"),r=require("react");const c=(0,r.createContext)({trackingData:{},locale:void 0,copyWriting:{}}),_=()=>{if(!(0,r.useContext)(c))throw new Error("useAiui must be used in <AiuiProvider>");return(0,r.useContext)(c)},E=({children:a,...e})=>((0,r.useEffect)(()=>{const o=(t,n)=>{const i={};if(!n||!n.attributes)return i;for(const f of Array.from(n.attributes)){const u=f?.name;u?.startsWith("data-headless-")&&(i[u]=n.getAttribute(u))}const y=i?.["data-headless-sku"],l=i?.["data-headless-type-name"]?.split?.("#"),d=i?.["data-headless-title-desc-button"]?.split?.("#"),m=i?.["data-headless-nav-postion"]?.split?.("#");(0,h.gaTrack)({event:"ga4Event",event_name:"component_click",event_parameters:{page_group:e?.trackingData?.pageGroup||"Home Page",component_type:l?.[0]||"",component_name:l?.[1]||"",position:m?.[1]||"",navigation:m?.[0]||"",button_name:d?.[2]||"",SKU:y||"",component_title:d?.[0]||"",component_description:d?.[1]||""}})},s=new MutationObserver(()=>{document.querySelectorAll("[data-headless-type-name]").forEach(t=>{t.hasAttribute("data-headless-track-bound")||(t.addEventListener("click",n=>o(n,t)),t.setAttribute("data-headless-track-bound","true"))})});return s.observe(document.body,{childList:!0,subtree:!0}),document.querySelectorAll("[data-headless-type-name]").forEach(t=>{t.hasAttribute("data-headless-track-bound")||(t.addEventListener("click",n=>o(n,t)),t.setAttribute("data-headless-track-bound","true"))}),()=>s.disconnect()},[]),(0,b.jsx)(c.Provider,{value:e,children:a}));var P=E;
1
+ "use strict";var p=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var v=Object.getOwnPropertyNames;var A=Object.prototype.hasOwnProperty;var k=(n,e)=>{for(var o in e)p(n,o,{get:e[o],enumerable:!0})},x=(n,e,o,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of v(e))!A.call(n,t)&&t!==o&&p(n,t,{get:()=>e[t],enumerable:!(s=f(e,t))||s.enumerable});return n};var C=n=>x(p({},"__esModule",{value:!0}),n);var T={};k(T,{AiuiContext:()=>c,default:()=>P,useAiuiContext:()=>_});module.exports=C(T);var g=require("react/jsx-runtime"),b=require("../../shared/track.js"),r=require("react");const c=(0,r.createContext)({trackingData:{},locale:void 0,copyWriting:{}}),_=()=>{if(!(0,r.useContext)(c))throw new Error("useAiui must be used in <AiuiProvider>");return(0,r.useContext)(c)},E=({children:n,...e})=>((0,r.useEffect)(()=>{const o=(t,a)=>{const i={};if(!a||!a.attributes)return i;for(const y of Array.from(a.attributes)){const u=y?.name;u?.startsWith("data-headless-")&&(i[u]=a.getAttribute(u))}const h=i?.["data-headless-sku"],l=i?.["data-headless-type-name"]?.split?.("#"),d=i?.["data-headless-title-desc-button"]?.split?.("#"),m=i?.["data-headless-nav-postion"]?.split?.("#");(0,b.gaTrack)({event:"ga4Event",event_name:"component_click",event_parameters:{page_group:e?.trackingData?.pageGroup||"Home Page",component_type:l?.[0]||"",component_name:l?.[1]||"",position:m?.[1]||"",navigation:m?.[0]||"",button_name:d?.[2]||"",SKU:h||"",component_title:d?.[0]||"",component_description:d?.[1]||""}})},s=new MutationObserver(()=>{document.querySelectorAll("[data-headless-type-name]").forEach(t=>{t.hasAttribute("data-headless-track-bound")||(t.addEventListener("click",a=>o(a,t)),t.setAttribute("data-headless-track-bound","true"))})});return s.observe(document.body,{childList:!0,subtree:!0}),document.querySelectorAll("[data-headless-type-name]").forEach(t=>{t.hasAttribute("data-headless-track-bound")||(t.addEventListener("click",a=>o(a,t)),t.setAttribute("data-headless-track-bound","true"))}),()=>s.disconnect()},[]),(0,g.jsx)(c.Provider,{value:e,children:n}));var P=E;
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/AiuiProvider/index.tsx"],
4
- "sourcesContent": ["import { gaTrack } from '../../shared/track.js'\nimport React, { createContext, useContext, useEffect } from 'react'\n\ninterface AiuiContextType {\n trackingData: Record<string, any>\n locale?: string\n copyWriting?: Record<string, string>\n}\n\nexport const AiuiContext = createContext<AiuiContextType>({\n trackingData: {},\n locale: undefined,\n copyWriting: {},\n})\n\nexport const useAiuiContext = () => {\n const context = useContext(AiuiContext)\n if (!context) {\n throw new Error('useAiui must be used in <AiuiProvider>')\n }\n return useContext(AiuiContext)\n}\n\nconst AiuiProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n} & AiuiContextType) => {\n useEffect(() => {\n const handleTrackClick = (e: any, el: any) => {\n // e?.stopPropagation?.()\n const out: any = {}\n if (!el || !el.attributes) return out\n for (const attr of Array.from(el.attributes)) {\n const name = (attr as any)?.name\n if (name?.startsWith('data-headless-')) {\n out[name] = el.getAttribute(name)\n }\n }\n const sku = out?.['data-headless-sku']\n const nameType = out?.['data-headless-type-name']?.split?.('#')\n const titleDesc = out?.['data-headless-title-desc-button']?.split?.('#')\n const navPosition = out?.['data-headless-nav-postion']?.split?.('#')\n gaTrack({\n event: 'ga4Event',\n event_name: 'component_click',\n event_parameters: {\n page_group: rest?.trackingData?.pageGroup || 'Home Page',\n component_type: nameType?.[0] || '',\n component_name: nameType?.[1] || '',\n position: navPosition?.[1] || '',\n navigation: navPosition?.[0] || '',\n button_name: titleDesc?.[2] || '',\n SKU: sku || '',\n component_title: titleDesc?.[0] || '',\n component_description: titleDesc?.[1] || '',\n },\n })\n }\n const observer = new MutationObserver(() => {\n document.querySelectorAll('[data-headless-type-name]').forEach(el => {\n if (!el.hasAttribute('data-headless-track-bound')) {\n el.addEventListener('click', e => handleTrackClick(e, el))\n el.setAttribute('data-headless-track-bound', 'true') // \u907F\u514D\u91CD\u590D\u7ED1\u5B9A\n }\n })\n })\n observer.observe(document.body, { childList: true, subtree: true })\n // \u521D\u59CB\u5316\u4E00\u6B21\u73B0\u6709\u8282\u70B9\n document.querySelectorAll('[data-headless-type-name]').forEach(el => {\n if (!el.hasAttribute('data-headless-track-bound')) {\n el.addEventListener('click', e => handleTrackClick(e, el))\n el.setAttribute('data-headless-track-bound', 'true')\n }\n })\n return () => observer.disconnect()\n }, [])\n\n return <AiuiContext.Provider value={rest}>{children}</AiuiContext.Provider>\n}\n\nexport default AiuiProvider\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,YAAAC,EAAA,mBAAAC,IAAA,eAAAC,EAAAL,GA+ES,IAAAM,EAAA,6BA/ETC,EAAwB,iCACxBC,EAA4D,iBAQrD,MAAMN,KAAc,iBAA+B,CACxD,aAAc,CAAC,EACf,OAAQ,OACR,YAAa,CAAC,CAChB,CAAC,EAEYE,EAAiB,IAAM,CAElC,GAAI,IADY,cAAWF,CAAW,EAEpC,MAAM,IAAI,MAAM,wCAAwC,EAE1D,SAAO,cAAWA,CAAW,CAC/B,EAEMO,EAAe,CAAC,CACpB,SAAAC,EACA,GAAGC,CACL,QAGE,aAAU,IAAM,CACd,MAAMC,EAAmB,CAACC,EAAQC,IAAY,CAE5C,MAAMC,EAAW,CAAC,EAClB,GAAI,CAACD,GAAM,CAACA,EAAG,WAAY,OAAOC,EAClC,UAAWC,KAAQ,MAAM,KAAKF,EAAG,UAAU,EAAG,CAC5C,MAAMG,EAAQD,GAAc,KACxBC,GAAM,WAAW,gBAAgB,IACnCF,EAAIE,CAAI,EAAIH,EAAG,aAAaG,CAAI,EAEpC,CACA,MAAMC,EAAMH,IAAM,mBAAmB,EAC/BI,EAAWJ,IAAM,yBAAyB,GAAG,QAAQ,GAAG,EACxDK,EAAYL,IAAM,iCAAiC,GAAG,QAAQ,GAAG,EACjEM,EAAcN,IAAM,2BAA2B,GAAG,QAAQ,GAAG,KACnE,WAAQ,CACN,MAAO,WACP,WAAY,kBACZ,iBAAkB,CAChB,WAAYJ,GAAM,cAAc,WAAa,YAC7C,eAAgBQ,IAAW,CAAC,GAAK,GACjC,eAAgBA,IAAW,CAAC,GAAK,GACjC,SAAUE,IAAc,CAAC,GAAK,GAC9B,WAAYA,IAAc,CAAC,GAAK,GAChC,YAAaD,IAAY,CAAC,GAAK,GAC/B,IAAKF,GAAO,GACZ,gBAAiBE,IAAY,CAAC,GAAK,GACnC,sBAAuBA,IAAY,CAAC,GAAK,EAC3C,CACF,CAAC,CACH,EACME,EAAW,IAAI,iBAAiB,IAAM,CAC1C,SAAS,iBAAiB,2BAA2B,EAAE,QAAQR,GAAM,CAC9DA,EAAG,aAAa,2BAA2B,IAC9CA,EAAG,iBAAiB,QAASD,GAAKD,EAAiBC,EAAGC,CAAE,CAAC,EACzDA,EAAG,aAAa,4BAA6B,MAAM,EAEvD,CAAC,CACH,CAAC,EACD,OAAAQ,EAAS,QAAQ,SAAS,KAAM,CAAE,UAAW,GAAM,QAAS,EAAK,CAAC,EAElE,SAAS,iBAAiB,2BAA2B,EAAE,QAAQR,GAAM,CAC9DA,EAAG,aAAa,2BAA2B,IAC9CA,EAAG,iBAAiB,QAASD,GAAKD,EAAiBC,EAAGC,CAAE,CAAC,EACzDA,EAAG,aAAa,4BAA6B,MAAM,EAEvD,CAAC,EACM,IAAMQ,EAAS,WAAW,CACnC,EAAG,CAAC,CAAC,KAEE,OAACpB,EAAY,SAAZ,CAAqB,MAAOS,EAAO,SAAAD,EAAS,GAGtD,IAAOP,EAAQM",
4
+ "sourcesContent": ["import { gaTrack } from '../../shared/track.js'\nimport React, { createContext, useContext, useEffect } from 'react'\n\ninterface AiuiContextType {\n trackingData: Record<string, any>\n locale?: string\n storeDomain?: string\n isLogin?: boolean\n currencyCode?: string\n copyWriting?: Record<string, string>\n}\n\nexport const AiuiContext = createContext<AiuiContextType>({\n trackingData: {},\n locale: undefined,\n copyWriting: {},\n})\n\nexport const useAiuiContext = () => {\n const context = useContext(AiuiContext)\n if (!context) {\n throw new Error('useAiui must be used in <AiuiProvider>')\n }\n return useContext(AiuiContext)\n}\n\nconst AiuiProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n} & AiuiContextType) => {\n useEffect(() => {\n const handleTrackClick = (e: any, el: any) => {\n // e?.stopPropagation?.()\n const out: any = {}\n if (!el || !el.attributes) return out\n for (const attr of Array.from(el.attributes)) {\n const name = (attr as any)?.name\n if (name?.startsWith('data-headless-')) {\n out[name] = el.getAttribute(name)\n }\n }\n const sku = out?.['data-headless-sku']\n const nameType = out?.['data-headless-type-name']?.split?.('#')\n const titleDesc = out?.['data-headless-title-desc-button']?.split?.('#')\n const navPosition = out?.['data-headless-nav-postion']?.split?.('#')\n gaTrack({\n event: 'ga4Event',\n event_name: 'component_click',\n event_parameters: {\n page_group: rest?.trackingData?.pageGroup || 'Home Page',\n component_type: nameType?.[0] || '',\n component_name: nameType?.[1] || '',\n position: navPosition?.[1] || '',\n navigation: navPosition?.[0] || '',\n button_name: titleDesc?.[2] || '',\n SKU: sku || '',\n component_title: titleDesc?.[0] || '',\n component_description: titleDesc?.[1] || '',\n },\n })\n }\n const observer = new MutationObserver(() => {\n document.querySelectorAll('[data-headless-type-name]').forEach(el => {\n if (!el.hasAttribute('data-headless-track-bound')) {\n el.addEventListener('click', e => handleTrackClick(e, el))\n el.setAttribute('data-headless-track-bound', 'true') // \u907F\u514D\u91CD\u590D\u7ED1\u5B9A\n }\n })\n })\n observer.observe(document.body, { childList: true, subtree: true })\n // \u521D\u59CB\u5316\u4E00\u6B21\u73B0\u6709\u8282\u70B9\n document.querySelectorAll('[data-headless-type-name]').forEach(el => {\n if (!el.hasAttribute('data-headless-track-bound')) {\n el.addEventListener('click', e => handleTrackClick(e, el))\n el.setAttribute('data-headless-track-bound', 'true')\n }\n })\n return () => observer.disconnect()\n }, [])\n\n return <AiuiContext.Provider value={rest}>{children}</AiuiContext.Provider>\n}\n\nexport default AiuiProvider\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,YAAAC,EAAA,mBAAAC,IAAA,eAAAC,EAAAL,GAkFS,IAAAM,EAAA,6BAlFTC,EAAwB,iCACxBC,EAA4D,iBAWrD,MAAMN,KAAc,iBAA+B,CACxD,aAAc,CAAC,EACf,OAAQ,OACR,YAAa,CAAC,CAChB,CAAC,EAEYE,EAAiB,IAAM,CAElC,GAAI,IADY,cAAWF,CAAW,EAEpC,MAAM,IAAI,MAAM,wCAAwC,EAE1D,SAAO,cAAWA,CAAW,CAC/B,EAEMO,EAAe,CAAC,CACpB,SAAAC,EACA,GAAGC,CACL,QAGE,aAAU,IAAM,CACd,MAAMC,EAAmB,CAACC,EAAQC,IAAY,CAE5C,MAAMC,EAAW,CAAC,EAClB,GAAI,CAACD,GAAM,CAACA,EAAG,WAAY,OAAOC,EAClC,UAAWC,KAAQ,MAAM,KAAKF,EAAG,UAAU,EAAG,CAC5C,MAAMG,EAAQD,GAAc,KACxBC,GAAM,WAAW,gBAAgB,IACnCF,EAAIE,CAAI,EAAIH,EAAG,aAAaG,CAAI,EAEpC,CACA,MAAMC,EAAMH,IAAM,mBAAmB,EAC/BI,EAAWJ,IAAM,yBAAyB,GAAG,QAAQ,GAAG,EACxDK,EAAYL,IAAM,iCAAiC,GAAG,QAAQ,GAAG,EACjEM,EAAcN,IAAM,2BAA2B,GAAG,QAAQ,GAAG,KACnE,WAAQ,CACN,MAAO,WACP,WAAY,kBACZ,iBAAkB,CAChB,WAAYJ,GAAM,cAAc,WAAa,YAC7C,eAAgBQ,IAAW,CAAC,GAAK,GACjC,eAAgBA,IAAW,CAAC,GAAK,GACjC,SAAUE,IAAc,CAAC,GAAK,GAC9B,WAAYA,IAAc,CAAC,GAAK,GAChC,YAAaD,IAAY,CAAC,GAAK,GAC/B,IAAKF,GAAO,GACZ,gBAAiBE,IAAY,CAAC,GAAK,GACnC,sBAAuBA,IAAY,CAAC,GAAK,EAC3C,CACF,CAAC,CACH,EACME,EAAW,IAAI,iBAAiB,IAAM,CAC1C,SAAS,iBAAiB,2BAA2B,EAAE,QAAQR,GAAM,CAC9DA,EAAG,aAAa,2BAA2B,IAC9CA,EAAG,iBAAiB,QAASD,GAAKD,EAAiBC,EAAGC,CAAE,CAAC,EACzDA,EAAG,aAAa,4BAA6B,MAAM,EAEvD,CAAC,CACH,CAAC,EACD,OAAAQ,EAAS,QAAQ,SAAS,KAAM,CAAE,UAAW,GAAM,QAAS,EAAK,CAAC,EAElE,SAAS,iBAAiB,2BAA2B,EAAE,QAAQR,GAAM,CAC9DA,EAAG,aAAa,2BAA2B,IAC9CA,EAAG,iBAAiB,QAASD,GAAKD,EAAiBC,EAAGC,CAAE,CAAC,EACzDA,EAAG,aAAa,4BAA6B,MAAM,EAEvD,CAAC,EACM,IAAMQ,EAAS,WAAW,CACnC,EAAG,CAAC,CAAC,KAEE,OAACpB,EAAY,SAAZ,CAAqB,MAAOS,EAAO,SAAAD,EAAS,GAGtD,IAAOP,EAAQM",
6
6
  "names": ["AiuiProvider_exports", "__export", "AiuiContext", "AiuiProvider_default", "useAiuiContext", "__toCommonJS", "import_jsx_runtime", "import_track", "import_react", "AiuiProvider", "children", "rest", "handleTrackClick", "e", "el", "out", "attr", "name", "sku", "nameType", "titleDesc", "navPosition", "observer"]
7
7
  }
@@ -0,0 +1,22 @@
1
+ import type { Img } from '../../types/props.js';
2
+ type AplusItem = {
3
+ img: Img;
4
+ mobileImg: Img;
5
+ title: string;
6
+ desc: string;
7
+ theme: 'light' | 'dark';
8
+ };
9
+ type AplusDescType = {
10
+ data: {
11
+ title: string;
12
+ img: Img;
13
+ mobileImg: Img;
14
+ list: AplusItem[];
15
+ };
16
+ className?: string;
17
+ };
18
+ declare const _default: import("react").ForwardRefExoticComponent<Omit<AplusDescType, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
19
+ className?: string;
20
+ data?: Record<string, any>;
21
+ } & import("react").RefAttributes<any>>;
22
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";"use client";var m=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var k=Object.getOwnPropertyNames;var n=Object.prototype.hasOwnProperty;var f=(l,t)=>{for(var p in t)m(l,p,{get:t[p],enumerable:!0})},N=(l,t,p,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of k(t))!n.call(l,o)&&o!==p&&m(l,o,{get:()=>t[o],enumerable:!(a=u(t,o))||a.enumerable});return l};var b=l=>N(m({},"__esModule",{value:!0}),l);var y={};f(y,{default:()=>I});module.exports=b(y);var e=require("react/jsx-runtime"),i=require("../../helpers/utils.js"),g=require("../../shared/Styles.js"),s=require("../../components/index.js");const v=l=>{const{data:t,className:p}=l,{title:a,img:o,mobileImg:r,list:x}=t;return(0,e.jsx)(e.Fragment,{children:(0,e.jsxs)("div",{className:"w-full",children:[(0,e.jsxs)("div",{className:"flex desktop:items-center desktop:justify-between desktop:flex-row flex-col w-full",children:[(0,e.jsx)("div",{className:" desktop:w-[600px] lg-desktop:w-[800px]",children:a&&(0,e.jsx)(s.Text,{html:a,className:"desktop:text-[16px] lg-desktop:text-[18px] text-[14px] font-bold leading-[1.2]"})}),(0,e.jsxs)("div",{children:[o?.url&&(0,e.jsx)(s.Picture,{className:"w-[464px] rounded-2xl hidden desktop:block",imgClassName:"",source:t?.img?.url,alt:t?.img?.alt||""}),r?.url&&(0,e.jsx)(s.Picture,{className:"w-[224px] rounded-2xl block desktop:hidden",imgClassName:"",source:t?.mobileImg?.url,alt:t?.mobileImg?.alt||""})]})]}),(0,e.jsx)("div",{className:"mt-[24px] grid tablet:grid-cols-2 desktop:grid-cols-3 grid-cols-1 gap-[16px] desktop:gap-[24px] lg-desktop:gap-[32px]",children:x.map((d,c)=>(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)(s.Picture,{className:" rounded-2xl",imgClassName:"",source:d?.img?.url,alt:d?.img?.alt||""}),(0,e.jsxs)("div",{className:(0,i.cn)("text-info-primary absolute bottom-[16px] left-[16px] flex flex-col desktop:bottom-[24px] desktop:left-[24px] lg-desktop:bottom-[32px] lg-desktop:left-[32px]",{"aiui-dark":d.theme==="dark"}),children:[(0,e.jsx)(s.Text,{html:d?.title,className:" lg-desktop:text-[24px] text-[20px] font-bold leading-[1.2]"}),(0,e.jsx)(s.Text,{html:d?.desc,className:" lg-desktop:text-[16px] text-[14px] font-bold leading-[1.4]"})]})]},c))})]})})};var I=(0,g.withLayout)(v);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/AplusDesc/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport type { Img } from '../../types/props.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Picture, Text } from '../../components/index.js'\n\n\ntype AplusItem = {\n img: Img\n mobileImg: Img\n title: string\n desc: string\n theme: 'light' | 'dark'\n}\n\ntype AplusDescType = {\n data: {\n title: string\n img: Img\n mobileImg: Img\n list: AplusItem[]\n }\n className?: string\n}\n\nconst AplusDesc = (props: AplusDescType) => {\n const { data, className } = props\n const { title, img , mobileImg,list} = data\n\n return (\n <>\n <div className='w-full'>\n <div className='flex desktop:items-center desktop:justify-between desktop:flex-row flex-col w-full'>\n <div className=' desktop:w-[600px] lg-desktop:w-[800px]'>\n {title && (\n <Text\n html={title}\n className=\"desktop:text-[16px] lg-desktop:text-[18px] text-[14px] font-bold leading-[1.2]\"\n />\n )}\n </div>\n <div>\n {img?.url && (\n <Picture\n className=\"w-[464px] rounded-2xl hidden desktop:block\"\n imgClassName=\"\"\n source={data?.img?.url}\n alt={data?.img?.alt || ''}\n />\n )}\n {mobileImg?.url && (\n <Picture\n className=\"w-[224px] rounded-2xl block desktop:hidden\"\n imgClassName=\"\"\n source={data?.mobileImg?.url}\n alt={data?.mobileImg?.alt || ''}\n />\n )}\n </div>\n </div>\n <div className='mt-[24px] grid tablet:grid-cols-2 desktop:grid-cols-3 grid-cols-1 gap-[16px] desktop:gap-[24px] lg-desktop:gap-[32px]'>\n {list.map((item,ind)=>(\n <div key={ind} className='relative'>\n <Picture\n className=\" rounded-2xl\"\n imgClassName=\"\"\n source={item?.img?.url}\n alt={item?.img?.alt || ''}\n />\n <div className={cn(\n 'text-info-primary absolute bottom-[16px] left-[16px] flex flex-col desktop:bottom-[24px] desktop:left-[24px] lg-desktop:bottom-[32px] lg-desktop:left-[32px]',\n {\n 'aiui-dark': item.theme === 'dark',\n }\n )}>\n <Text html={item?.title} className=\" lg-desktop:text-[24px] text-[20px] font-bold leading-[1.2]\" />\n <Text html={item?.desc} className=\" lg-desktop:text-[16px] text-[14px] font-bold leading-[1.4]\" />\n </div>\n </div>\n ))}\n </div>\n </div>\n </>\n )\n}\n\nexport default withLayout(AplusDesc)\n"],
5
+ "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA8BI,IAAAI,EAAA,6BA7BJC,EAAmB,kCAEnBC,EAA2B,kCAC3BC,EAA8B,qCAqB9B,MAAMC,EAAaC,GAAyB,CAC1C,KAAM,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAIF,EACtB,CAAE,MAAAG,EAAO,IAAAC,EAAM,UAAAC,EAAU,KAAAC,CAAI,EAAIL,EAEvC,SACE,mBACE,oBAAC,OAAI,UAAU,SACb,qBAAC,OAAI,UAAU,qFACX,oBAAC,OAAI,UAAU,0CACV,SAAAE,MACD,OAAC,QACG,KAAMA,EACN,UAAU,iFACd,EAEJ,KACA,QAAC,OACI,UAAAC,GAAK,QACN,OAAC,WACG,UAAU,6CACV,aAAa,GACb,OAAQH,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GAC3B,EAEHI,GAAW,QACR,OAAC,WACG,UAAU,6CACV,aAAa,GACb,OAAQJ,GAAM,WAAW,IACzB,IAAKA,GAAM,WAAW,KAAO,GACjC,GAEJ,GACJ,KACA,OAAC,OAAI,UAAU,wHACV,SAAAK,EAAK,IAAI,CAACC,EAAKC,OACZ,QAAC,OAAc,UAAU,WACrB,oBAAC,WACG,UAAU,eACV,aAAa,GACb,OAAQD,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GAC3B,KACA,QAAC,OAAI,aAAW,MACZ,+JACA,CACI,YAAaA,EAAK,QAAU,MAChC,CACJ,EACI,oBAAC,QAAK,KAAMA,GAAM,MAAO,UAAU,8DAA8D,KACjG,OAAC,QAAK,KAAMA,GAAM,KAAM,UAAU,8DAA8D,GACpG,IAfMC,CAgBV,CACH,EACL,GACF,EACF,CAEJ,EAEA,IAAOf,KAAQ,cAAWM,CAAS",
6
+ "names": ["AplusDesc_exports", "__export", "AplusDesc_default", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_Styles", "import_components", "AplusDesc", "props", "data", "className", "title", "img", "mobileImg", "list", "item", "ind"]
7
+ }
@@ -0,0 +1,4 @@
1
+ export declare const CollectionShelvesWrapItem: ({ data, configuration }: {
2
+ data: any;
3
+ configuration?: any;
4
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,2 @@
1
+ "use strict";var R=Object.create;var f=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var W=Object.getOwnPropertyNames;var V=Object.getPrototypeOf,q=Object.prototype.hasOwnProperty;var G=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},N=(e,t,r,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let c of W(t))!q.call(e,c)&&c!==r&&f(e,c,{get:()=>t[c],enumerable:!(a=M(t,c))||a.enumerable});return e};var x=(e,t,r)=>(r=e!=null?R(V(e)):{},N(t||!e||!e.__esModule?f(r,"default",{value:e,enumerable:!0}):r,e)),J=e=>N(f({},"__esModule",{value:!0}),e);var Z={};G(Z,{CollectionShelvesWrapItem:()=>Y});module.exports=J(Z);var s=require("react/jsx-runtime"),p=require("../../helpers/utils.js"),T=x(require("../../components/badge.js")),B=require("../../components/text.js"),y=x(require("../../components/button.js")),C=require("../../shared/track.js"),m=require("react"),b=x(require("../../components/picture.js")),D=require("../../components/heading.js"),$=require("../AiuiProvider/index.js"),F=require("../../shared/trackUrlRef.js"),O=require("../ShelfDisplay/shelfDisplay.js");const K="image",Q="collectio_shelves",X=999999999e-2,Y=({data:e,configuration:t})=>{const{itemShape:r}=t||{},{locale:a="us"}=(0,$.useAiuiContext)(),[c,P]=(0,m.useState)(""),I=(l,i,n)=>t?.event?.primaryButton?.(l,i+1,n),E=(l,i,n)=>t?.event?.secondaryButton?.(l,i+1,n),o=e?.variants?.find(l=>l?.sku===e?.sku)||e?.variants?.[0]||{},g=!o?.availableForSale||o?.price?.amount===X,j=t?.isShowTag,k=t?.isShowOriginalPrice,[S,A]=(0,m.useState)([]),[z,w]=(0,m.useState)(!1),v=o?.coupons?.[0],{price:L,basePrice:U,discount:d}=(0,O.formatVariantPrice)({locale:a,amount:k&&v?v.variant_price4wscode:o.price,baseAmount:k&&v?o.price:0,currencyCode:e?.price?.currencyCode||"USD"}),H=()=>{const l=e?.sku,i=e?.variants;return i?.find(h=>h?.sku===l)?.image?.url||i?.[0]?.image?.url||""},u=e?.custom_name||e?.title||e?.name,_=e?.custom_description||e?.description;return(0,m.useEffect)(()=>{let l=[];if(d){const n=`${d}${t?.metafields?.discounts?.off||""}`;l.push(n)}const i=e?.tags?.filter?.(n=>n?.startsWith?.("CLtag"))?.map?.(n=>n?.replace?.("CLtag:",""))?.slice?.(0,d?1:2);A(l.concat(i))},[d,t?.metafields?.discounts,e?.tags]),(0,m.useEffect)(()=>{const{infos:l}=o?.metafields||{},{productInfos:i,preRender:n}=e?.metafields||{},{shopCommon:h}=t?.metafields||{};P(l?.comingSoon||i?.comingSoon||n?.soldOut||h?.soldOut||"")},[e,o]),(0,s.jsx)("div",{className:(0,p.cn)(r==="rounded"?"rounded-2xl":"rounded-none","tablet:aspect-h-[360] tablet:aspect-w-[296] laptop:aspect-h-[560] laptop:aspect-w-[544] relative","bg-[#EAEAEC] tablet:hover:bg-[#FFFFFF] box-border w-full cursor-pointer overflow-hidden duration-300","md-tablet:h-[360px] collection-shelves-item",{"aiui-dark":e?.custom_theme==="dark"}),children:(0,s.jsxs)("div",{className:"absolute inset-0 box-border flex flex-col justify-between overflow-hidden",children:[(0,s.jsx)("div",{onMouseEnter:()=>w(!0),onMouseLeave:()=>w(!1),className:(0,p.cn)("desktop:px-6 px-4 lg-desktop:mb-3 relative mb-2 inline-block w-full flex-1 overflow-hidden cursor-pointer"),children:(0,s.jsxs)("a",{"aria-label":u,target:t?.target,href:(0,F.trackUrlRef)(`${a==="us"||!a?"":`/${a}`}/products/${e?.handle}`,`${K}_${Q}`),onClick:()=>{(0,C.gaTrack)({event:"ga4Event",event_name:"select_item",event_parameters:{page_group:"Home Page",item_list_name:"Home_Page_Bundle",items:[{item_id:e?.sku||o?.sku,item_name:e?.name,item_variant:o?.name,price:o?.price,index:t?.index+1}]}})},children:[(0,s.jsx)(b.default,{alt:"",source:H(),className:"desktop:mt-6 mt-4 flex h-full justify-center object-cover [&_img]:w-auto"}),(0,s.jsx)(b.default,{alt:"",source:e?.custom_image,className:(0,p.cn)(z?"opacity-100":"opacity-0","absolute inset-x-0 top-0 size-full object-cover [&_img]:size-full transition-all duration-300")})]})}),(0,s.jsxs)("div",{className:"flex flex-col justify-end desktop:pb-6 pb-4 desktop:px-6 px-4 flex-1 collection-shelves-product-content",children:[j&&S?.length?(0,s.jsx)("div",{className:"mb-1 box-border flex flex-wrap gap-1 overflow-hidden",children:S?.map?.((l,i)=>(0,s.jsx)(T.default,{children:l},i))}):null,u?(0,s.jsx)(D.Heading,{as:"h3",size:2,title:u||"",html:u||"",className:"collection-shelves-product-title mb-1 line-clamp-2 text-info-primary"}):null,_?(0,s.jsx)(B.Text,{size:2,html:_||"",className:"lg-desktop:text-lg lg-desktop:h-[26px] desktop:text-base desktop:h-6 collection-shelves-product-description line-clamp-1 h-5 text-sm text-info-primary"}):null,(0,s.jsx)("div",{className:"mb-2 mt-6 flex items-center",children:g?(0,s.jsx)("div",{className:"tablet:text-2xl text-info-primary text-xl font-semibold",children:c||""}):(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("div",{className:"final-price tablet:text-2xl text-info-primary text-xl font-semibold",children:o?.availableForSale&&L||""}),(0,s.jsx)("div",{className:"origin-price tablet:text-xl text-info-secondary ml-1 text-lg font-semibold line-through",children:o?.availableForSale&&U||""})]})}),(0,s.jsxs)("div",{className:(0,p.cn)("shelf-flex-button-group","lg-desktop:gap-3 flex items-center gap-2",t.direction==="vertical"?"flex-col":""),children:[t?.secondaryButton?(0,s.jsx)(y.default,{variant:"secondary",onClick:()=>E(e,t?.index,t),className:`overflow-hidden ${t.direction==="vertical"?"w-full":""} ${t?.shape==="rounded"?"rounded-2xl":""}`,children:t?.secondaryButton||""}):null,t?.primaryButton?(0,s.jsx)(y.default,{variant:"primary",disabled:g,onClick:()=>I(e,t?.index,t),className:`overflow-hidden ${t.direction==="vertical"?"w-full":""} ${t?.shape==="rounded"?"rounded-2xl":""}`,children:t?.primaryButton||""}):null]})]})]})},e?.id||e?.handle)};
2
+ //# sourceMappingURL=CollectionShelvesItem.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/CollectionShelves/CollectionShelvesItem.tsx"],
4
+ "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport Badge from '../../components/badge.js'\nimport { Text } from '../../components/text.js'\nimport Button from '../../components/button.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { useState, useEffect } from 'react'\nimport Picture from '../../components/picture.js'\nimport { Heading } from '../../components/heading.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { formatVariantPrice } from '../ShelfDisplay/shelfDisplay.js'\nimport type { ShelfDisplayItem, ShelfDisplayType } from '../ShelfDisplay/shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'collectio_shelves'\n\nconst SOLD_OUT_PRICE = 9999999.99\n\nexport const CollectionShelvesWrapItem = ({ data, configuration }: { data: any; configuration?: any }) => {\n const { itemShape } = configuration || {}\n const { locale = 'us' } = useAiuiContext()\n\n const [soldOutText, setSoldOutText] = useState<string>('')\n\n const onPrimaryButton = (params: ShelfDisplayItem, index: number, data: ShelfDisplayType) =>\n configuration?.event?.primaryButton?.(params, index + 1, data)\n\n const onSecondaryButton = (params: ShelfDisplayItem, index: number, data: ShelfDisplayType) =>\n configuration?.event?.secondaryButton?.(params, index + 1, data)\n\n const variant = data?.variants?.find((item: any) => item?.sku === data?.sku) || data?.variants?.[0] || {}\n\n const isSoldOut = !variant?.availableForSale || variant?.price?.amount === SOLD_OUT_PRICE\n const isShowTag = configuration?.isShowTag\n const isShowOriginalPrice = configuration?.isShowOriginalPrice\n\n const [showTags, setShowTags] = useState<string[]>([])\n const [showImage, setShowImage] = useState<boolean>(false)\n\n // active \u7684 \u901A\u7528\u6298\u6263\n const coupon = variant?.coupons?.[0]\n\n const { price, basePrice, discount } = formatVariantPrice({\n locale: locale,\n amount: isShowOriginalPrice && coupon ? coupon.variant_price4wscode : variant.price,\n baseAmount: isShowOriginalPrice && coupon ? variant.price : 0,\n currencyCode: data?.price?.currencyCode || 'USD',\n })\n\n const handleUrl = () => {\n const sku = data?.sku\n const skuArray = data?.variants\n const findSku = skuArray?.find((item: any) => item?.sku === sku)\n return findSku?.image?.url || skuArray?.[0]?.image?.url || ''\n }\n\n const displayTitle = data?.custom_name || data?.title || data?.name\n const displayDescription = data?.custom_description || data?.description\n\n useEffect(() => {\n let handleTags: string[] = []\n if (discount) {\n const discountTag = `${discount}${configuration?.metafields?.discounts?.off || ''}`\n handleTags.push(discountTag)\n }\n const newTags = data?.tags\n ?.filter?.((item: string) => item?.startsWith?.('CLtag'))\n ?.map?.((item: string) => item?.replace?.('CLtag:', ''))\n ?.slice?.(0, discount ? 1 : 2)\n setShowTags(handleTags.concat(newTags))\n }, [discount, configuration?.metafields?.discounts, data?.tags])\n\n useEffect(() => {\n const { infos } = variant?.metafields || {}\n const { productInfos, preRender } = data?.metafields || {}\n const { shopCommon } = configuration?.metafields || {}\n setSoldOutText(infos?.comingSoon || productInfos?.comingSoon || preRender?.soldOut || shopCommon?.soldOut || '')\n }, [data, variant])\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n itemShape === 'rounded' ? 'rounded-2xl' : 'rounded-none',\n 'tablet:aspect-h-[360] tablet:aspect-w-[296] laptop:aspect-h-[560] laptop:aspect-w-[544] relative',\n 'bg-[#EAEAEC] tablet:hover:bg-[#FFFFFF] box-border w-full cursor-pointer overflow-hidden duration-300',\n 'md-tablet:h-[360px] collection-shelves-item',\n {\n 'aiui-dark': data?.custom_theme === 'dark',\n }\n )}\n >\n <div className=\"absolute inset-0 box-border flex flex-col justify-between overflow-hidden\">\n <div\n onMouseEnter={() => setShowImage(true)}\n onMouseLeave={() => setShowImage(false)}\n className={cn(\n 'desktop:px-6 px-4 lg-desktop:mb-3 relative mb-2 inline-block w-full flex-1 overflow-hidden cursor-pointer'\n )}\n >\n <a\n aria-label={displayTitle}\n target={configuration?.target}\n href={trackUrlRef(\n `${locale === 'us' || !locale ? '' : `/${locale}`}/products/${data?.handle}`,\n `${componentType}_${componentName}`\n )}\n onClick={() => {\n gaTrack({\n event: 'ga4Event',\n event_name: 'select_item',\n event_parameters: {\n page_group: 'Home Page',\n item_list_name: 'Home_Page_Bundle',\n items: [\n {\n item_id: data?.sku || variant?.sku,\n item_name: data?.name,\n item_variant: variant?.name,\n price: variant?.price,\n index: configuration?.index + 1,\n },\n ],\n },\n })\n }}\n >\n <Picture\n alt=\"\"\n source={handleUrl()}\n className=\"desktop:mt-6 mt-4 flex h-full justify-center object-cover [&_img]:w-auto\"\n />\n <Picture\n alt=\"\"\n source={data?.custom_image}\n className={cn(\n showImage ? 'opacity-100' : 'opacity-0',\n 'absolute inset-x-0 top-0 size-full object-cover [&_img]:size-full transition-all duration-300'\n )}\n />\n </a>\n </div>\n <div className=\"flex flex-col justify-end desktop:pb-6 pb-4 desktop:px-6 px-4 flex-1 collection-shelves-product-content\">\n {isShowTag && showTags?.length ? (\n <div className=\"mb-1 box-border flex flex-wrap gap-1 overflow-hidden\">\n {showTags?.map?.((item: any, index: number) => <Badge key={index}>{item}</Badge>)}\n </div>\n ) : null}\n {displayTitle ? (\n <Heading\n as=\"h3\"\n size={2}\n title={displayTitle || ''}\n html={displayTitle || ''}\n className=\"collection-shelves-product-title mb-1 line-clamp-2 text-info-primary\"\n />\n ) : null}\n {displayDescription ? (\n <Text\n size={2}\n html={displayDescription || ''}\n className=\"lg-desktop:text-lg lg-desktop:h-[26px] desktop:text-base desktop:h-6 collection-shelves-product-description line-clamp-1 h-5 text-sm text-info-primary\"\n />\n ) : null}\n <div className=\"mb-2 mt-6 flex items-center\">\n {isSoldOut ? (\n <div className=\"tablet:text-2xl text-info-primary text-xl font-semibold\">{soldOutText || ''}</div>\n ) : (\n <>\n <div className=\"final-price tablet:text-2xl text-info-primary text-xl font-semibold\">\n {variant?.availableForSale ? price || '' : ''}\n </div>\n <div className=\"origin-price tablet:text-xl text-info-secondary ml-1 text-lg font-semibold line-through\">\n {variant?.availableForSale ? basePrice || '' : ''}\n </div>\n </>\n )}\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div\n className={cn(\n 'shelf-flex-button-group',\n 'lg-desktop:gap-3 flex items-center gap-2',\n configuration.direction === 'vertical' ? 'flex-col' : ''\n )}\n >\n {configuration?.secondaryButton ? (\n <Button\n variant=\"secondary\"\n onClick={() => onSecondaryButton(data, configuration?.index, configuration)}\n className={`overflow-hidden ${configuration.direction === 'vertical' ? 'w-full' : ''} ${configuration?.shape === 'rounded' ? 'rounded-2xl' : ''}`}\n >\n {configuration?.secondaryButton || ''}\n </Button>\n ) : null}\n {configuration?.primaryButton ? (\n <Button\n variant=\"primary\"\n disabled={isSoldOut}\n onClick={() => onPrimaryButton(data, configuration?.index, configuration)}\n className={`overflow-hidden ${configuration.direction === 'vertical' ? 'w-full' : ''} ${configuration?.shape === 'rounded' ? 'rounded-2xl' : ''}`}\n >\n {configuration?.primaryButton || ''}\n </Button>\n ) : null}\n </div>\n </div>\n </div>\n </div>\n )\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["CollectionShelvesItem_exports", "__export", "CollectionShelvesWrapItem", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_badge", "import_text", "import_button", "import_track", "import_react", "import_picture", "import_heading", "import_AiuiProvider", "import_trackUrlRef", "import_shelfDisplay", "componentType", "componentName", "SOLD_OUT_PRICE", "data", "configuration", "itemShape", "locale", "soldOutText", "setSoldOutText", "onPrimaryButton", "params", "index", "onSecondaryButton", "variant", "item", "isSoldOut", "isShowTag", "isShowOriginalPrice", "showTags", "setShowTags", "showImage", "setShowImage", "coupon", "price", "basePrice", "discount", "handleUrl", "sku", "skuArray", "displayTitle", "displayDescription", "handleTags", "discountTag", "newTags", "infos", "productInfos", "preRender", "shopCommon", "Picture", "Badge", "Button"]
7
+ }
@@ -0,0 +1,6 @@
1
+ import type { ShelfDisplayProps } from '../ShelfDisplay/shelfDisplay.js';
2
+ declare const _default: import("react").ForwardRefExoticComponent<Omit<Omit<ShelfDisplayProps & import("react").RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
3
+ className?: string;
4
+ data?: Record<string, any>;
5
+ }, "ref"> & import("react").RefAttributes<any>>;
6
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";"use client";var C=Object.create;var n=Object.defineProperty;var H=Object.getOwnPropertyDescriptor;var R=Object.getOwnPropertyNames;var V=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var b=(e,t)=>{for(var s in t)n(e,s,{get:t[s],enumerable:!0})},u=(e,t,s,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of R(t))!N.call(e,r)&&r!==s&&n(e,r,{get:()=>t[r],enumerable:!(l=H(t,r))||l.enumerable});return e};var x=(e,t,s)=>(s=e!=null?C(V(e)):{},u(t||!e||!e.__esModule?n(s,"default",{value:e,enumerable:!0}):s,e)),O=e=>u(n({},"__esModule",{value:!0}),e);var z={};b(z,{default:()=>q});module.exports=O(z);var a=require("react/jsx-runtime"),d=require("../../helpers/utils.js"),h=x(require("../SwiperBox/index.js")),J=require("../../shared/track.js"),w=require("../../shared/Styles.js"),v=require("../../hooks/useExposure.js"),D=require("../../hooks/useRollout.js"),S=require("./CollectionShelvesItem.js"),o=require("react");const W="image",$="collectio_shelves",j=(0,o.forwardRef)(({key:e,data:t,event:s,buildData:l,breakpoints:r,className:y="",target:g="_self",metafields:_},T)=>{const{productsCard:M=[],title:A,isShowTag:P=!1,isShowOriginalPrice:k=!0,...E}=t,m=(0,o.useRef)(null),[I,F]=(0,D.useRollout)({threshold:0}),[c,L]=(0,o.useState)([]);return(0,o.useImperativeHandle)(T,()=>m.current),(0,v.useExposure)(m,{componentType:W,componentName:$,componentTitle:t?.title}),(0,o.useEffect)(()=>{const f=M?.map?.(i=>{const p=l?.products?.find(B=>B?.handle===i?.handle);if(p)return{sku:i.sku,custom_name:i.custom_name,custom_image:i.custom_image,custom_theme:i.custom_theme,custom_description:i.custom_description,...p}})?.filter(i=>i);L(f?.length?f||[]:[])},[]),(0,a.jsx)("div",{ref:m,className:(0,d.cn)("collection-shelves-wrap w-full",y,{"aiui-dark":t?.theme==="dark"}),children:(0,a.jsx)("div",{ref:I,children:(0,a.jsx)(h.default,{data:{list:c,configuration:{...E,isShowTag:P,event:s,target:g,isShowOriginalPrice:k,metafields:_||{},itemLength:c?.length}},id:`CollectionShelves${e}`,className:"!overflow-visible",Slide:S.CollectionShelvesWrapItem,breakpoints:r||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:1.2},768:{spaceBetween:16,freeMode:!1,slidesPerView:2.3},1024:{spaceBetween:16,freeMode:!1,slidesPerView:3}}})})})});var q=(0,w.withLayout)(j);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/CollectionShelves/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { useRollout } from '../../hooks/useRollout.js'\nimport { CollectionShelvesWrapItem } from './CollectionShelvesItem.js'\nimport { forwardRef, useEffect, useRef, useImperativeHandle, useState } from 'react'\nimport type { ShelfDisplayProps, ShelfDisplayItem } from '../ShelfDisplay/shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'collectio_shelves'\n\nconst ShelfDisplay = forwardRef<HTMLDivElement, ShelfDisplayProps>(\n (\n {\n key,\n data,\n event,\n buildData,\n breakpoints,\n className = '',\n target = '_self',\n metafields,\n },\n ref\n ) => {\n const {\n productsCard = [],\n title,\n isShowTag = false,\n isShowOriginalPrice = true,\n ...other\n } = data\n\n const innerRef = useRef<HTMLDivElement>(null)\n\n const [viewRef, inView] = useRollout<HTMLDivElement>({ threshold: 0 })\n\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType: componentType,\n componentName: componentName,\n componentTitle: data?.title,\n })\n\n useEffect(() => {\n const newCurrentData = productsCard\n ?.map?.(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n custom_name: item.custom_name,\n custom_image: item.custom_image,\n custom_theme: item.custom_theme,\n custom_description: item.custom_description,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n }, [])\n\n return (\n <div\n ref={innerRef}\n className={cn('collection-shelves-wrap w-full', className, { 'aiui-dark': data?.theme === 'dark' })}\n >\n <div ref={viewRef as any}>\n <SwiperBox\n data={{\n list: currentItems,\n configuration: {\n ...other,\n isShowTag,\n event: event,\n target: target,\n isShowOriginalPrice,\n metafields: metafields || {},\n itemLength: currentItems?.length,\n },\n }}\n id={`CollectionShelves${key}`}\n className={`!overflow-visible`}\n Slide={CollectionShelvesWrapItem}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.2,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2.3,\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 3,\n },\n }\n }\n />\n </div>\n </div>\n )\n }\n)\n\nexport default withLayout(ShelfDisplay)\n"],
5
+ "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA2EU,IAAAI,EAAA,6BA1EVC,EAAmB,kCACnBC,EAAsB,oCACtBC,EAAwB,iCACxBC,EAA2B,kCAC3BC,EAA4B,sCAC5BC,EAA2B,qCAC3BC,EAA0C,sCAC1CC,EAA6E,iBAG7E,MAAMC,EAAgB,QAChBC,EAAgB,oBAEhBC,KAAe,cACnB,CACE,CACE,IAAAC,EACA,KAAAC,EACA,MAAAC,EACA,UAAAC,EACA,YAAAC,EACA,UAAAC,EAAY,GACZ,OAAAC,EAAS,QACT,WAAAC,CACF,EACAC,IACG,CACH,KAAM,CACJ,aAAAC,EAAe,CAAC,EAChB,MAAAC,EACA,UAAAC,EAAY,GACZ,oBAAAC,EAAsB,GACtB,GAAGC,CACL,EAAIZ,EAEEa,KAAW,UAAuB,IAAI,EAEtC,CAACC,EAASC,CAAM,KAAI,cAA2B,CAAE,UAAW,CAAE,CAAC,EAE/D,CAACC,EAAcC,CAAe,KAAI,YAA6B,CAAC,CAAC,EAEvE,gCAAoBV,EAAK,IAAMM,EAAS,OAAyB,KAEjE,eAAYA,EAAU,CACpB,cAAejB,EACf,cAAeC,EACf,eAAgBG,GAAM,KACxB,CAAC,KAED,aAAU,IAAM,CACd,MAAMkB,EAAiBV,GACnB,MAAMW,GAAQ,CACd,MAAMC,EAAWlB,GAAW,UAAU,KAAKmB,GAAUA,GAAQ,SAAWF,GAAM,MAAM,EACpF,GAAIC,EACF,MAAO,CACL,IAAKD,EAAK,IACV,YAAaA,EAAK,YAClB,aAAcA,EAAK,aACnB,aAAcA,EAAK,aACnB,mBAAoBA,EAAK,mBACzB,GAAGC,CACL,CAEJ,CAAC,GACC,OAAOD,GAAQA,CAAI,EACvBF,EAAgBC,GAAgB,OAASA,GAAkB,CAAC,EAAI,CAAC,CAAC,CACpE,EAAG,CAAC,CAAC,KAGH,OAAC,OACC,IAAKL,EACL,aAAW,MAAG,iCAAkCT,EAAW,CAAE,YAAaJ,GAAM,QAAU,MAAO,CAAC,EAElG,mBAAC,OAAI,IAAKc,EACR,mBAAC,EAAAQ,QAAA,CACC,KAAM,CACJ,KAAMN,EACN,cAAe,CACb,GAAGJ,EACH,UAAAF,EACA,MAAOT,EACP,OAAQI,EACR,oBAAAM,EACA,WAAYL,GAAc,CAAC,EAC3B,WAAYU,GAAc,MAC5B,CACF,EACA,GAAI,oBAAoBjB,CAAG,GAC3B,UAAW,oBACX,MAAO,4BACP,YACEI,GAAe,CACb,EAAG,CACD,aAAc,GACd,SAAU,GACV,cAAe,CACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,IAAK,CACH,aAAc,GACd,SAAU,GACV,cAAe,GACjB,EACA,KAAM,CACJ,aAAc,GACd,SAAU,GACV,cAAe,CACjB,CACF,EAEJ,EACF,EACF,CAEJ,CACF,EAEA,IAAOlB,KAAQ,cAAWa,CAAY",
6
+ "names": ["CollectionShelves_exports", "__export", "CollectionShelves_default", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_SwiperBox", "import_track", "import_Styles", "import_useExposure", "import_useRollout", "import_CollectionShelvesItem", "import_react", "componentType", "componentName", "ShelfDisplay", "key", "data", "event", "buildData", "breakpoints", "className", "target", "metafields", "ref", "productsCard", "title", "isShowTag", "isShowOriginalPrice", "other", "innerRef", "viewRef", "inView", "currentItems", "setCurrentItems", "newCurrentData", "item", "findData", "params", "SwiperBox"]
7
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { CollectionsBannerProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<CollectionsBannerProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
+ className?: string;
5
+ data?: Record<string, any>;
6
+ }, "ref"> & React.RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";"use client";var G=Object.create;var b=Object.defineProperty;var J=Object.getOwnPropertyDescriptor;var K=Object.getOwnPropertyNames;var O=Object.getPrototypeOf,W=Object.prototype.hasOwnProperty;var X=(e,t)=>{for(var l in t)b(e,l,{get:t[l],enumerable:!0})},L=(e,t,l,a)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of K(t))!W.call(e,s)&&s!==l&&b(e,s,{get:()=>t[s],enumerable:!(a=J(t,s))||a.enumerable});return e};var y=(e,t,l)=>(l=e!=null?G(O(e)):{},L(t||!e||!e.__esModule?b(l,"default",{value:e,enumerable:!0}):l,e)),Y=e=>L(b({},"__esModule",{value:!0}),e);var ee={};X(ee,{default:()=>Z});module.exports=Y(ee);var r=require("react/jsx-runtime"),o=y(require("react")),u=y(require("gsap")),m=require("gsap/dist/ScrollTrigger"),T=require("react-responsive"),z=require("react-intersection-observer"),B=y(require("../../helpers/ScrollLoadVideo.js")),g=require("../../components/index.js"),d=require("../../helpers/index.js"),E=require("../../shared/Styles.js"),D=require("../../hooks/useExposure.js"),U=require("../../shared/trackUrlRef.js"),ae=require("../../components/button.js"),ie=require("../VideoModal/index.js");const k="image",w="collections_banner",S=o.default.forwardRef(({data:e,className:t},l)=>{const{title:a,subtitle:s,pcImage:N,padImage:j,mobileImage:H,pcVideo:R,padVideo:P,mobileVideo:f,isShowVideo:q,theme:_="light",blockLink:V}=e,$=(0,T.useMediaQuery)({query:"(max-width: 768px)"}),I=(0,T.useMediaQuery)({query:"(max-width: 1024px)"}),{ref:Q,inView:M}=(0,z.useInView)(),h=(0,o.useRef)(null),x=(0,o.useRef)(null),v=(0,o.useRef)(null),i=(0,o.useRef)(null),n=(0,o.useRef)(null);return(0,D.useExposure)(n,{componentType:k,componentName:w,componentTitle:a,componentDescription:s}),(0,o.useImperativeHandle)(l,()=>n.current),(0,o.useEffect)(()=>{u.default.registerPlugin(m.ScrollTrigger);function A(){if(!i.current)return;const F=n.current?.clientHeight||100;window.innerHeight<=F?h.current=m.ScrollTrigger.create({trigger:n.current,start:"top bottom",end:"bottom top",scrub:!0,onUpdate:c=>{const p=c.progress*40-20;u.default.set(i.current,{yPercent:p})}}):(v.current=m.ScrollTrigger.create({trigger:n.current,start:"top bottom",end:"bottom bottom",scrub:!0,onUpdate:c=>{const p=c.progress*20-20;u.default.set(i.current,{yPercent:p})}}),x.current=m.ScrollTrigger.create({trigger:n.current,start:"top top",end:"bottom top",scrub:!0,onUpdate:c=>{const p=c.progress*20;u.default.set(i.current,{yPercent:p})}}))}return M&&A(),()=>{h.current&&h.current.kill(),v.current&&v.current.kill(),x.current&&x.current.kill()}},[M]),(0,r.jsx)("div",{ref:Q,"data-ui-component-id":"CollectionsBanner",children:(0,r.jsxs)("div",{ref:n,className:(0,d.cn)(_==="dark"?"aiui-dark":"","text-info-primary relative w-full overflow-hidden","lg-desktop:aspect-[1920/480] desktop:aspect-[1440/384] laptop:aspect-[1024/400] tablet:aspect-[768/480] aspect-[390/480]",t),children:[V&&(0,r.jsx)("a",{tabIndex:-1,"aria-hidden":"true","aria-label":a,className:"absolute inset-0 z-10","data-headless-title-desc-button":`${a}#${s}`,"data-headless-type-name":`${k}#${w}`,href:(0,U.trackUrlRef)(V,`${k}_${w}`)}),(0,r.jsx)("div",{ref:i,className:(0,d.cn)("absolute left-0 top-0 size-full"),children:q?(0,r.jsx)(B.default,{poster:$?f?.url:I?P?.url||f?.url:R?.url,src:$?f?.url:I?P?.url||f?.url:R?.url,className:"laptop:w-full h-full",videoClassName:"h-full object-cover",muted:!0,loop:!0,playsInline:!0}):(0,r.jsx)(g.Picture,{loading:"eager",fetchPriority:"high",className:"laptop:w-full h-full",imgClassName:"h-full object-cover",alt:N?.alt||"",source:`${N?.url||""} , ${j?.url??(H?.url||"")} 1024, ${H?.url||""} 767`})}),(0,r.jsx)("div",{className:"laptop:top-1/2 laptop:-translate-y-1/2 tablet:px-8 laptop:px-16 lg-desktop:px-[calc(50%-832px)] lg-desktop:gap-8 absolute top-24 z-10 flex flex-col gap-6 px-4",children:(0,r.jsxs)("div",{className:"laptop:text-left max-w-[686px]",children:[a&&(0,r.jsx)(g.Heading,{as:"h2",size:5,className:(0,d.cn)("hero-banner-title"),html:a}),s&&(0,r.jsx)(g.Heading,{as:"h3",className:(0,d.cn)("hero-banner-subtitle font-heading lg-desktop:text-lg desktop:text-base laptop:mt-2 lg-desktop:mt-4 mt-1 text-sm"),html:s})]})})]})})});S.displayName="CollectionsBanner";var Z=(0,E.withLayout)(S);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/CollectionsBanner/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useImperativeHandle, useRef, useState, useEffect } from 'react'\nimport gsap from 'gsap'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport type { CollectionsBannerProps } from './types.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { useInView } from 'react-intersection-observer'\nimport ScrollLoadVideo from '../../helpers/ScrollLoadVideo.js'\nimport { Button, Heading, Picture, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { sizeMap } from '../../components/button.js'\nimport { VideoModal } from '../VideoModal/index.js'\n\nconst componentType = 'image'\nconst componentName = 'collections_banner'\n\nconst CollectionsBanner = React.forwardRef<HTMLDivElement, CollectionsBannerProps>(({ data, className }, ref) => {\n const {\n title,\n subtitle,\n pcImage,\n padImage,\n mobileImage,\n pcVideo,\n padVideo,\n mobileVideo,\n isShowVideo,\n theme = 'light',\n blockLink,\n } = data\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const isPad = useMediaQuery({ query: '(max-width: 1024px)' })\n const { ref: inViewRef, inView } = useInView()\n const scrollTriggerRef = useRef<ScrollTrigger | null>(null)\n const bgTriggerRef = useRef<ScrollTrigger | null>(null)\n const boxTriggerRef = useRef<ScrollTrigger | null>(null)\n\n const bgRef = useRef<HTMLImageElement>(null)\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n componentDescription: subtitle,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n useEffect(() => {\n gsap.registerPlugin(ScrollTrigger)\n function gsapResize() {\n if (!bgRef.current) return\n const clientHeight = boxRef.current?.clientHeight || 100\n const screenHeight = window.innerHeight\n\n if (screenHeight <= clientHeight) {\n scrollTriggerRef.current = ScrollTrigger.create({\n trigger: boxRef.current,\n start: 'top bottom',\n end: 'bottom top',\n scrub: true,\n onUpdate: (self: any) => {\n const base = 40\n const value = self.progress * base - base / 2\n gsap.set(bgRef.current, { yPercent: value })\n },\n })\n } else {\n boxTriggerRef.current = ScrollTrigger.create({\n trigger: boxRef.current,\n start: 'top bottom',\n end: 'bottom bottom',\n scrub: true,\n onUpdate: (self: any) => {\n const base = 20\n const value = self.progress * base - base\n gsap.set(bgRef.current, { yPercent: value })\n },\n })\n bgTriggerRef.current = ScrollTrigger.create({\n trigger: boxRef.current,\n start: 'top top',\n end: 'bottom top',\n scrub: true,\n onUpdate: (self: any) => {\n const base = 20\n const value = self.progress * base\n gsap.set(bgRef.current, { yPercent: value })\n },\n })\n }\n }\n if (inView) gsapResize()\n return () => {\n scrollTriggerRef.current && scrollTriggerRef.current.kill()\n boxTriggerRef.current && boxTriggerRef.current.kill()\n bgTriggerRef.current && bgTriggerRef.current.kill()\n }\n }, [inView])\n\n return (\n <div ref={inViewRef} data-ui-component-id=\"CollectionsBanner\">\n <div\n ref={boxRef}\n className={cn(\n theme === 'dark' ? 'aiui-dark' : '',\n 'text-info-primary relative w-full overflow-hidden',\n 'lg-desktop:aspect-[1920/480] desktop:aspect-[1440/384] laptop:aspect-[1024/400] tablet:aspect-[768/480] aspect-[390/480]',\n className\n )}\n >\n {blockLink && (\n <a\n tabIndex={-1}\n aria-hidden=\"true\"\n aria-label={title}\n className=\"absolute inset-0 z-10\"\n data-headless-title-desc-button={`${title}#${subtitle}`}\n data-headless-type-name={`${componentType}#${componentName}`}\n href={trackUrlRef(blockLink, `${componentType}_${componentName}`)}\n />\n )}\n <div ref={bgRef} className={cn('absolute left-0 top-0 size-full')}>\n {isShowVideo ? (\n <ScrollLoadVideo\n poster={isMobile ? mobileVideo?.url : isPad ? padVideo?.url || mobileVideo?.url : pcVideo?.url}\n src={\n isMobile\n ? (mobileVideo?.url as string)\n : isPad\n ? (padVideo?.url as string) || (mobileVideo?.url as string)\n : (pcVideo?.url as string)\n }\n className=\"laptop:w-full h-full\"\n videoClassName=\"h-full object-cover\"\n muted\n loop\n playsInline\n />\n ) : (\n <Picture\n loading=\"eager\"\n fetchPriority=\"high\"\n className=\"laptop:w-full h-full\"\n imgClassName=\"h-full object-cover\"\n alt={pcImage?.alt || ''}\n source={`${pcImage?.url || ''} , ${padImage?.url ?? (mobileImage?.url || '')} 1024, ${mobileImage?.url || ''} 767`}\n />\n )}\n </div>\n\n {/* \u5185\u5BB9\u533A\u57DF */}\n <div className=\"laptop:top-1/2 laptop:-translate-y-1/2 tablet:px-8 laptop:px-16 lg-desktop:px-[calc(50%-832px)] lg-desktop:gap-8 absolute top-24 z-10 flex flex-col gap-6 px-4\">\n <div className=\"laptop:text-left max-w-[686px]\">\n {title && <Heading as=\"h2\" size={5} className={cn('hero-banner-title')} html={title} />}\n {subtitle && (\n <Heading\n as=\"h3\"\n className={cn(\n 'hero-banner-subtitle font-heading lg-desktop:text-lg desktop:text-base laptop:mt-2 lg-desktop:mt-4 mt-1 text-sm'\n )}\n html={subtitle}\n />\n )}\n </div>\n </div>\n </div>\n </div>\n )\n})\n\nCollectionsBanner.displayName = 'CollectionsBanner'\n\nexport default withLayout(CollectionsBanner)\n"],
5
+ "mappings": "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",
6
+ "names": ["CollectionsBanner_exports", "__export", "CollectionsBanner_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_gsap", "import_ScrollTrigger", "import_react_responsive", "import_react_intersection_observer", "import_ScrollLoadVideo", "import_components", "import_helpers", "import_Styles", "import_useExposure", "import_trackUrlRef", "import_button", "import_VideoModal", "componentType", "componentName", "CollectionsBanner", "React", "data", "className", "ref", "title", "subtitle", "pcImage", "padImage", "mobileImage", "pcVideo", "padVideo", "mobileVideo", "isShowVideo", "theme", "blockLink", "isMobile", "isPad", "inViewRef", "inView", "scrollTriggerRef", "bgTriggerRef", "boxTriggerRef", "bgRef", "boxRef", "gsap", "gsapResize", "clientHeight", "self", "value", "ScrollLoadVideo"]
7
+ }
@@ -0,0 +1,43 @@
1
+ import type { ButtonProps } from '../../components/button.js';
2
+ import type { Media, Theme } from '../../types/props.js';
3
+ export interface CollectionsBannerProps {
4
+ data: {
5
+ /** 主标题 */
6
+ title: string;
7
+ /** 副标题/描述文本 */
8
+ subtitle: string;
9
+ pcImage: Media;
10
+ padImage?: Media;
11
+ mobileImage: Media;
12
+ pcVideo?: Media;
13
+ padVideo?: Media;
14
+ mobileVideo?: Media;
15
+ isShowVideo?: boolean;
16
+ blockLink?: string;
17
+ /** 主按钮文本和配置 */
18
+ primaryButton?: {
19
+ text: string;
20
+ link?: string;
21
+ } & Omit<ButtonProps, 'children'>;
22
+ /** 次要按钮文本和配置 */
23
+ secondaryButton?: {
24
+ text: string;
25
+ link?: string;
26
+ isShowPlayVideoButton?: boolean;
27
+ playVideoButtonText?: string;
28
+ playIcon?: boolean;
29
+ videoUrl?: Media;
30
+ youtubeId?: string;
31
+ } & Omit<ButtonProps, 'children'>;
32
+ /** 主题 */
33
+ theme?: Theme;
34
+ /** 大小, 默认default,单banner, 可选sm, 用于多banner场景 */
35
+ size?: 'default' | 'sm';
36
+ /** 底部产品列表 */
37
+ caption?: Array<{
38
+ title: string;
39
+ }>;
40
+ };
41
+ /** 自定义类名 */
42
+ className?: string;
43
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var n=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var d=Object.prototype.hasOwnProperty;var l=(e,t,r,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of s(t))!d.call(e,i)&&i!==r&&n(e,i,{get:()=>t[i],enumerable:!(o=a(t,i))||o.enumerable});return e};var p=e=>l(n({},"__esModule",{value:!0}),e);var m={};module.exports=p(m);
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/CollectionsBanner/types.ts"],
4
+ "sourcesContent": ["import type { ButtonProps } from '../../components/button.js'\nimport type { Media, Theme } from '../../types/props.js'\n\nexport interface CollectionsBannerProps {\n data: {\n /** \u4E3B\u6807\u9898 */\n title: string\n /** \u526F\u6807\u9898/\u63CF\u8FF0\u6587\u672C */\n subtitle: string\n pcImage: Media\n padImage?: Media\n mobileImage: Media\n pcVideo?: Media\n padVideo?: Media\n mobileVideo?: Media\n isShowVideo?: boolean\n blockLink?: string\n /** \u4E3B\u6309\u94AE\u6587\u672C\u548C\u914D\u7F6E */\n primaryButton?: {\n text: string\n link?: string\n } & Omit<ButtonProps, 'children'>\n /** \u6B21\u8981\u6309\u94AE\u6587\u672C\u548C\u914D\u7F6E */\n secondaryButton?: {\n text: string\n link?: string\n isShowPlayVideoButton?: boolean\n playVideoButtonText?: string\n playIcon?: boolean\n videoUrl?: Media\n youtubeId?: string\n } & Omit<ButtonProps, 'children'>\n /** \u4E3B\u9898 */\n theme?: Theme\n /** \u5927\u5C0F, \u9ED8\u8BA4default,\u5355banner, \u53EF\u9009sm, \u7528\u4E8E\u591Abanner\u573A\u666F */\n size?: 'default' | 'sm'\n /** \u5E95\u90E8\u4EA7\u54C1\u5217\u8868 */\n caption?: Array<{\n title: string\n }>\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["types_exports", "__toCommonJS"]
7
+ }
@@ -0,0 +1,15 @@
1
+ type FilterCardWrapProps = {
2
+ result?: any;
3
+ total: number;
4
+ shopifyData?: any;
5
+ currentPage?: number;
6
+ closeFilter: boolean;
7
+ page: number;
8
+ metafields: any;
9
+ onPrimaryChange?: (item: any, sku: string) => void;
10
+ onSecondaryChange?: (item: any, sku: string) => void;
11
+ onNextPage?: (v: string) => void;
12
+ onPrevPage?: (v: string) => void;
13
+ };
14
+ export default function FilterCardWrap(props: FilterCardWrapProps): import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,2 @@
1
+ "use strict";var W=Object.create;var v=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var A=Object.getPrototypeOf,q=Object.prototype.hasOwnProperty;var E=(t,n)=>{for(var s in n)v(t,s,{get:n[s],enumerable:!0})},P=(t,n,s,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of T(n))!q.call(t,i)&&i!==s&&v(t,i,{get:()=>n[i],enumerable:!(r=B(n,i))||r.enumerable});return t};var O=(t,n,s)=>(s=t!=null?W(A(t)):{},P(n||!t||!t.__esModule?v(s,"default",{value:t,enumerable:!0}):s,t)),Q=t=>P(v({},"__esModule",{value:!0}),t);var V={};E(V,{default:()=>I});module.exports=Q(V);var e=require("react/jsx-runtime"),C=require("../../helpers/utils.js"),F=require("react-responsive"),H=require("../Paginator/index.js"),S=O(require("./FilterCardWrapItem")),m=require("react"),D=require("es-toolkit");function I(t){const{shopifyData:n={},total:s,result:r,closeFilter:i,page:f,metafields:w,onPrimaryChange:M,onSecondaryChange:N,onNextPage:b,onPrevPage:L}=t,{advertisingSpace:y}=w,{buttonText:j,loadMoreText:z}=n,c=y||n?.advertisingSpace,[h,x]=(0,m.useState)([]),l=(0,F.useMediaQuery)({query:"(max-width: 768px)"}),k=g=>{const a=(0,D.cloneDeep)(g||[]);if(c){const o=a.findIndex(p=>p.mImage);if(o===-1){const p=Math.min(i?c?.maxLocation||7:c?.minLocation||5,a.length);a.splice(p,0,c)}else{a.splice(o,1);const p=Math.min(i?c?.maxLocation||7:c?.minLocation||5,a.length);a.splice(p,0,c)}}return a};return(0,m.useEffect)(()=>{(r?.slug||r?.id)&&((f===1||!l)&&x([]),r?.products&&x(g=>{const a=r.products?.filter?.(d=>!g.some(u=>u.id===d.id));let o=[...g,...a];const p=o.filter(d=>!(!d?.metafields?.seoSetting?.noindex&&d.availableForSale&&d?.variants?.some(u=>u.availableForSale)));return o=o.filter(d=>!d?.metafields?.seoSetting?.noindex&&d.availableForSale&&d?.variants?.some(u=>u.availableForSale)),o.push(...p),(f===1&&!l||l)&&(o=k(o)),o}))},[r?.products,f,l,y]),(0,m.useEffect)(()=>{h?.length&&f===1&&!l&&x(k(h))},[i]),(0,e.jsxs)("div",{className:"filter-card-wrap-container",children:[(0,e.jsx)("div",{className:(0,C.cn)("min-h-[60vh] w-full grid gap-3 grid-cols-2",{"laptop:grid-cols-4 tablet:grid-cols-3":i&&!l,"laptop:grid-cols-3 tablet:grid-cols-2":!i&&!l},"filter-card-wrap"),children:h?.map?.(g=>(0,e.jsx)(S.default,{data:g,buttonText:j,metafields:w,onPrimaryChange:(a,o)=>M?.(a,o),onSecondaryChange:(a,o)=>N?.(a,o)},g.id))}),l?(0,e.jsxs)("div",{onClick:()=>{b?.(r?.pageInfo?.endCursor)},className:"mt-6 text-sm font-semibold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more",children:[(0,e.jsx)("span",{children:z||"View More"}),(0,e.jsx)("div",{className:"size-[18px]",children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",fill:"none",viewBox:"0 0 24 24","stroke-width":"1.5",stroke:"currentColor","aria-hidden":"true","data-slot":"icon",children:(0,e.jsx)("path",{"stroke-linecap":"round","stroke-linejoin":"round",d:"m19.5 8.25-7.5 7.5-7.5-7.5"})})})]}):null,!l&&s>18?(0,e.jsxs)("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[(0,e.jsx)("button",{name:"perv page",disabled:!r?.pageInfo?.hasPreviousPage,className:"flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",onClick:()=>{L?.(r?.pageInfo?.startCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M12 5L7 10L12 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})}),(0,e.jsx)("button",{name:"next page",className:"flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",disabled:!r?.pageInfo?.hasNextPage,onClick:()=>{b?.(r?.pageInfo?.endCursor)},children:(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:(0,e.jsx)("path",{d:"M7.5 5L12.5 10L7.5 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})})]}):null]})}
2
+ //# sourceMappingURL=FilterCardWrap.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/CollectionsFilters/FilterCardWrap.tsx"],
4
+ "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport { useMediaQuery } from 'react-responsive'\nimport Paginator from '../Paginator/index.js'\nimport FilterCardWrapItem from './FilterCardWrapItem'\nimport { useState, useEffect } from 'react'\nimport { cloneDeep } from 'es-toolkit';\n\ntype FilterCardWrapProps = {\n result?: any\n total: number\n shopifyData?: any\n currentPage?: number\n closeFilter: boolean\n page: number\n metafields: any\n onPrimaryChange?: (item: any, sku: string) => void\n onSecondaryChange?: (item: any, sku: string) => void\n onNextPage?: (v: string) => void\n onPrevPage?: (v: string) => void\n}\n\nexport default function FilterCardWrap(props: FilterCardWrapProps) {\n const { shopifyData = {}, total, result, closeFilter, page, metafields, onPrimaryChange, onSecondaryChange, onNextPage, onPrevPage } = props\n const { advertisingSpace } = metafields\n const { buttonText, loadMoreText } = shopifyData\n\n const currentAdvertisingSpace = advertisingSpace || shopifyData?.advertisingSpace\n\n const [data, setData] = useState<any[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n\n const handleAdvertisingSpace = (products: any[]) => {\n const updatedProducts = cloneDeep(products || [])\n if (currentAdvertisingSpace) {\n const findIndex = updatedProducts.findIndex(item => item.mImage)\n if (findIndex === -1) {\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n } else {\n updatedProducts.splice(findIndex, 1)\n const insertIndex = closeFilter\n ? Math.min(currentAdvertisingSpace?.maxLocation || 7, updatedProducts.length)\n : Math.min(currentAdvertisingSpace?.minLocation || 5, updatedProducts.length)\n updatedProducts.splice(insertIndex, 0, currentAdvertisingSpace)\n }\n }\n return updatedProducts\n }\n\n // \u5904\u7406\u4EA7\u54C1\u6570\u636E\n useEffect(() => {\n if (result?.slug || result?.id) {\n (page === 1 || !isMobile) && setData([])\n if (result?.products) {\n setData(prevProducts => {\n // \u68C0\u67E5\u662F\u5426\u5DF2\u7ECF\u5B58\u5728\u4E8E prevProducts \u4E2D\uFF0C\u907F\u514D\u91CD\u590D\u6DFB\u52A0\n const newProducts = result.products?.filter?.(\n (product: { id: any }) => !prevProducts.some(prev => prev.id === product.id)\n )\n let updatedProducts = [...prevProducts, ...newProducts]\n /** \u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1 */\n const soldOutProducts = updatedProducts.filter(\n item =>\n !(\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n )\n // \u8FC7\u6EE4\u6389 availableForSale \u4E3A false \u7684\u4EA7\u54C1\n updatedProducts = updatedProducts.filter(\n item =>\n !item?.metafields?.seoSetting?.noindex &&\n item.availableForSale &&\n item?.variants?.some((item: { availableForSale: any }) => item.availableForSale)\n )\n // \u5C06\u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1\u6DFB\u52A0\u5230\u6700\u540E\n updatedProducts.push(...soldOutProducts)\n // \u5982\u679C advertisingSpace \u5B58\u5728\u4E14\u5C1A\u672A\u6DFB\u52A0\u5230\u6570\u7EC4\u4E2D\n if ((page === 1 && !isMobile) || isMobile) {\n updatedProducts = handleAdvertisingSpace(updatedProducts)\n }\n return updatedProducts\n })\n }\n }\n }, [result?.products, page, isMobile, advertisingSpace])\n\n useEffect(() => {\n if(!data?.length) return\n if(page === 1 && !isMobile) {\n setData(handleAdvertisingSpace(data))\n }\n }, [closeFilter])\n\n return (\n <div className=\"filter-card-wrap-container\">\n <div\n className={cn(\n 'min-h-[60vh] w-full grid gap-3 grid-cols-2',\n {\n 'laptop:grid-cols-4 tablet:grid-cols-3': closeFilter && !isMobile,\n 'laptop:grid-cols-3 tablet:grid-cols-2': !closeFilter && !isMobile,\n },\n 'filter-card-wrap'\n )}\n >\n {data?.map?.(item => (\n <FilterCardWrapItem\n key={item.id}\n data={item}\n buttonText={buttonText}\n metafields={metafields}\n onPrimaryChange={(e, data) => onPrimaryChange?.(e, data)}\n onSecondaryChange={(e, data) => onSecondaryChange?.(e, data)}\n />\n ))}\n </div>\n {isMobile ? (\n <div\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n className=\"mt-6 text-sm font-semibold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more\"\n >\n <span>{loadMoreText || 'View More'}</span>\n <div className=\"size-[18px]\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n fill=\"none\"\n viewBox=\"0 0 24 24\"\n stroke-width=\"1.5\"\n stroke=\"currentColor\"\n aria-hidden=\"true\"\n data-slot=\"icon\"\n >\n <path stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"m19.5 8.25-7.5 7.5-7.5-7.5\" />\n </svg>\n </div>\n </div>\n ) : null}\n {!isMobile && total > 18 ? (\n <div className=\"mt-6 flex items-center justify-end gap-4 cursor-pointer\">\n <button\n name=\"perv page\"\n disabled={!result?.pageInfo?.hasPreviousPage}\n className=\"flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]\"\n onClick={() => {\n onPrevPage?.(result?.pageInfo?.startCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M12 5L7 10L12 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n <button\n name=\"next page\"\n className=\"flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]\"\n disabled={!result?.pageInfo?.hasNextPage}\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n >\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\">\n <path\n d=\"M7.5 5L12.5 10L7.5 15\"\n stroke=\"#3D3D3F\"\n stroke-width=\"1.66667\"\n stroke-linecap=\"round\"\n stroke-linejoin=\"round\"\n />\n </svg>\n </button>\n </div>\n ) : // <Paginator\n // className=\"mt-6\"\n // currentPage={currentPage}\n // onPageChange={(v: number) => {\n // setData([])\n // if(v > currentPage) {\n // onNextPage?.(result?.pageInfo?.endCursor)\n // } else {\n // onPrevPage?.(result?.pageInfo?.startCursor)\n // }\n // setCurrentPage(v)\n // }}\n // total={100}\n // />\n null}\n </div>\n )\n}"],
5
+ "mappings": "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",
6
+ "names": ["FilterCardWrap_exports", "__export", "FilterCardWrap", "__toCommonJS", "import_jsx_runtime", "import_utils", "import_react_responsive", "import_Paginator", "import_FilterCardWrapItem", "import_react", "import_es_toolkit", "props", "shopifyData", "total", "result", "closeFilter", "page", "metafields", "onPrimaryChange", "onSecondaryChange", "onNextPage", "onPrevPage", "advertisingSpace", "buttonText", "loadMoreText", "currentAdvertisingSpace", "data", "setData", "isMobile", "handleAdvertisingSpace", "products", "updatedProducts", "findIndex", "item", "insertIndex", "prevProducts", "newProducts", "product", "prev", "soldOutProducts", "FilterCardWrapItem", "e"]
7
+ }
@@ -0,0 +1,10 @@
1
+ type FilterCardWrapItemProps = {
2
+ data: any;
3
+ buttonText?: any;
4
+ itemShape?: string;
5
+ metafields: any;
6
+ onPrimaryChange?: (item: any, sku: string) => void;
7
+ onSecondaryChange?: (item: any, sku: string) => void;
8
+ };
9
+ declare const FilterCardWrapItem: ({ data, buttonText, itemShape, metafields, onPrimaryChange, onSecondaryChange, }: FilterCardWrapItemProps) => import("react/jsx-runtime").JSX.Element;
10
+ export default FilterCardWrapItem;
@@ -0,0 +1,2 @@
1
+ "use strict";var be=Object.create;var h=Object.defineProperty;var xe=Object.getOwnPropertyDescriptor;var ve=Object.getOwnPropertyNames;var he=Object.getPrototypeOf,ye=Object.prototype.hasOwnProperty;var ke=(e,r)=>{for(var n in r)h(e,n,{get:r[n],enumerable:!0})},U=(e,r,n,g)=>{if(r&&typeof r=="object"||typeof r=="function")for(let m of ve(r))!ye.call(e,m)&&m!==n&&h(e,m,{get:()=>r[m],enumerable:!(g=xe(r,m))||g.enumerable});return e};var N=(e,r,n)=>(n=e!=null?be(he(e)):{},U(r||!e||!e.__esModule?h(n,"default",{value:e,enumerable:!0}):n,e)),Ce=e=>U(h({},"__esModule",{value:!0}),e);var Pe={};ke(Pe,{default:()=>we});module.exports=Ce(Pe);var t=require("react/jsx-runtime"),f=require("../../helpers/utils.js"),E=require("../AiuiProvider/index.js"),R=require("../ShelfDisplay/shelfDisplay.js"),V=N(require("../../components/badge.js")),q=require("../../components/heading.js"),G=require("../../components/text.js"),w=N(require("../../components/button.js")),P=N(require("../../components/picture.js")),y=require("../../shared/trackUrlRef.js"),J=require("./component/price.js"),l=require("react");const _="image",S="product_shelf",Ne=999999999e-2,_e=e=>{let r;return e?.includes("products")?r=e?.split("products")[0]+"files/":r=e?.replace(e?.split("files")?.pop()||"","")+"/",r},Se=({data:e,buttonText:r,itemShape:n,metafields:g,onPrimaryChange:m,onSecondaryChange:K})=>{const{memberPriceDiscount:Q,memberSetting:$,discounts:T,shopCommon:X}=g,[p,I]=(0,l.useState)(""),[Y,B]=(0,l.useState)(""),[b,M]=(0,l.useState)(""),[L,Z]=(0,l.useState)(!1),[z,ee]=(0,l.useState)({}),[te,se]=(0,l.useState)(!1),[F,oe]=(0,l.useState)({price:"",basePrice:""}),[O,re]=(0,l.useState)([]),[ie,le]=(0,l.useState)([]),[x,ne]=(0,l.useState)(""),[ae,ce]=(0,l.useState)(""),{locale:a="us",currencyCode:me,isLogin:j}=(0,E.useAiuiContext)(),v=e?.custom_name||e?.title||e?.name,D=e?.custom_description||e?.description||e?.descriptionHtml,c=e?.filter_variants||e?.variants||[],pe=s=>M(s),k=(s,i,o,d)=>{se(d),ne(s||""),oe({basePrice:i||"",price:o||""})};return(0,l.useEffect)(()=>{if(b){const o=c?.find(d=>d?.name?.includes?.(b));I(o?.sku||c?.[0]?.sku||""),B(o?.image?.url||c?.[0]?.image?.url||"");return}const s=e?.options?.find(o=>o?.displayName==="color")?.values?.[0]?.label;s&&M(s);const i=c?.find(o=>o?.name?.includes?.(s));I(i?.sku||c?.[0]?.sku||""),B(i?.image?.url||c?.[0]?.image?.url||"")},[b]),(0,l.useEffect)(()=>{if(!p)return;re(e?.tags||[]);const s=c?.find(u=>u?.sku===p)||c?.[0]||{};ee(s),Z(!s?.availableForSale||s?.price?.amount===Ne);const{infos:i}=s?.metafields||{},{productInfos:o,preRender:d}=e?.metafields||{};ce(i?.comingSoon||o?.comingSoon||d?.soldOut||X?.soldOut||"");const C=s?.coupons?.[0],{price:W,basePrice:H,discount:$e,discountAmount:A}=(0,R.formatVariantPrice)({locale:a,amount:C?C.variant_price4wscode:s.price,baseAmount:C?s.price:0,currencyCode:e?.price?.currencyCode||"USD"});if(j){const u=(0,J.getFunctionMemberPrice)({locale:a,variant:s,shopMemberPriceDiscountConfig:Q,currencyCode:me||e?.price?.currencyCode||"USD"});if(u){const{hasMemberPrice:de,salePriceWithCurrency:ue,originalPriceWithCurrency:fe,savePriceWithCurrency:ge}=u;k(ge||"",fe||"",de?ue:"",u?.hasMemberPrice)}else k(A||"",H||"",W||"",!1)}else k(A||"",H||"",W||"",!1)},[e,p]),(0,l.useEffect)(()=>{let s=[];if(x){const o=`${x}${T?.off}`;s.push(o)}const i=O?.filter?.(o=>o?.startsWith?.("CLtag"))?.map?.(o=>o?.replace?.("CLtag:",""))?.slice?.(0,x?1:2);le(s.concat(i))},[O,x]),(0,t.jsx)("div",{className:(0,f.cn)(n==="round"?"rounded-2xl":"rounded-none","lg-desktop:h-[493px] laptop:h-[433px] h-[398px] relative tablet:hover:bg-info-white","bg-container-secondary-1 box-border w-full cursor-pointer overflow-hidden duration-300",{"aiui-dark":e.theme==="dark"}),children:e?.mImage?(0,t.jsx)("div",{className:"absolute inset-0 box-border overflow-hidden hover:[&_img]:scale-105",children:(0,t.jsxs)("a",{className:"relative inset-0 size-full",href:(0,y.trackUrlRef)(e?.link,`${_}_${S}`),children:[(0,t.jsx)(P.default,{alt:"",source:e?.mImage?.url||e?.mImage,className:"size-full [&_img]:object-cover [&_img]:size-full",imgClassName:"size-full object-cover transition-all duration-300"}),(0,t.jsxs)("div",{className:"desktop:p-6 absolute inset-x-0 top-0 box-border overflow-hidden p-4",children:[(0,t.jsx)("p",{className:"desktop:mb-2 mb-1 text-info-primary desktop:text-base text-sm font-semibold",dangerouslySetInnerHTML:{__html:e?.subTitle}}),(0,t.jsx)("span",{className:"text-info-secondary desktop:text-[32px] text-xl font-semibold leading-6 line-clamp-4",dangerouslySetInnerHTML:{__html:e?.title}})]})]})}):(0,t.jsxs)("div",{className:"desktop:p-6 absolute inset-0 box-border flex flex-col justify-between overflow-hidden tablet:p-4 p-2 pb-4",children:[(0,t.jsx)("div",{className:"flex flex-wrap gap-1 overflow-hidden collection-filter-tags",children:ie?.map?.((s,i)=>(0,t.jsx)(V.default,{className:"whitespace-nowrap max-w-full truncate px-1 box-border item-badge",children:s},i))}),(0,t.jsx)("a",{target:"_blank","aria-label":v,href:(0,y.trackUrlRef)(`${a==="us"||!a?"":`/${a}`}/products/${e?.handle}`,`${_}_${S}`),children:(0,t.jsx)("div",{className:(0,f.cn)("m-auto lg-desktop:size-[196px] desktop:size-[138px] size-[120px] overflow-hidden"),children:(0,t.jsx)(P.default,{alt:"",source:Y,className:"h-full [&_img]:object-cover [&_img]:h-full [&_img]:w-fit"})})}),e?.options?.map(s=>{if(s?.displayName==="color")return(0,t.jsx)("div",{className:"flex items-center gap-1",children:s?.values?.map(i=>{const o=i?.hexColors?i.hexColors?.[0]:i?.label;return(0,t.jsx)("button",{onClick:()=>pe(i?.label),className:(0,f.cn)("size-4 rounded-full cursor-pointer overflow-hidden border-2 border-transparent",`${b===i?.label?"border-[#00BEFA]":""}`),children:(0,t.jsx)("img",{alt:o,className:"h-full w-full object-cover",src:`${_e(e?.images?.[0]?.url)}${o?.toLowerCase().split(" ")?.join("-")}_50x.png`})},i?.label)})})}),(0,t.jsxs)("div",{children:[v?(0,t.jsx)(q.Heading,{as:"h3",html:v||"",title:v||"",className:"shelf-display-product-title line-clamp-2 lg-desktop:text-2xl laptop:test-xl test-base"}):null,e?.metafields?.judgemeBadge?(0,t.jsx)("a",{target:"_blank",className:"font-semibold text-xs [&_.jdgm-star]:text-[#F77234]",dangerouslySetInnerHTML:{__html:e?.metafields?.judgemeBadge},href:(0,y.trackUrlRef)(`${a==="us"||!a?"":`/${a}`}/products/${e?.handle}`,`${_}_${S}`)}):null,D?(0,t.jsx)(G.Text,{size:2,html:D||"",className:"desktop:text-base laptop:text-sm shelf-display-product-description line-clamp-1 text-xs"}):null,(0,t.jsxs)("div",{className:"mt-3 mb-2",children:[(0,t.jsx)("p",{dangerouslySetInnerHTML:{__html:j&&te&&(T?.memberPrice||$?.member_price||$?.plus_member_price)||""},className:"text-info-primary lg-desktop:text-lg desktop:text-base laptop:text-sm text-xs font-semibold"}),(0,t.jsx)("div",{className:"flex items-center",children:L?(0,t.jsx)("div",{className:"desktop:text-2xl tablet:text-xl text-info-primary text-base font-semibold",children:ae||""}):(0,t.jsxs)(t.Fragment,{children:[(0,t.jsx)("div",{className:"final-price desktop:text-2xl tablet:text-xl text-info-primary text-base font-semibold",children:z?.availableForSale&&F?.price||""}),(0,t.jsx)("div",{className:"origin-price desktop:text-xl tablet:text-lg text-info-secondary ml-1 text-sm font-semibold line-through",children:z?.availableForSale&&F?.basePrice||""})]})})]}),(0,t.jsxs)("div",{className:(0,f.cn)("shelf-flex-button-group","lg-desktop:gap-3 flex items-center gap-2 m-tablet:flex-col"),children:[(0,t.jsx)(w.default,{variant:"secondary",className:"m-tablet:w-full",onClick:()=>K?.(e,p),children:r?.secondaryButton||"Learn More"}),(0,t.jsx)(w.default,{variant:"primary",className:"m-tablet:w-full",disabled:L,onClick:()=>m?.(e,p),children:r?.primaryButton||"Shop Now"})]})]})]})},e?.id||e?.handle)};var we=Se;
2
+ //# sourceMappingURL=FilterCardWrapItem.js.map