@anker-in/headless-ui 1.0.19-temp-101705 → 1.0.20-alpha.1761027154344

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 (555) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.js.map +2 -2
  2. package/dist/cjs/biz-components/AplusDesc/index.js +2 -0
  3. package/dist/cjs/biz-components/AplusDesc/index.js.map +7 -0
  4. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.d.ts +0 -1
  5. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js +1 -1
  6. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js.map +3 -3
  7. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js +1 -1
  8. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +3 -3
  9. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js +1 -1
  10. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js.map +2 -2
  11. package/dist/cjs/biz-components/CollectionsFilters/index.d.ts +0 -1
  12. package/dist/cjs/biz-components/CollectionsFilters/index.js +1 -1
  13. package/dist/cjs/biz-components/CollectionsFilters/index.js.map +3 -3
  14. package/dist/cjs/biz-components/DownLoad/index.d.ts +9 -6
  15. package/dist/cjs/biz-components/DownLoad/index.js +2 -0
  16. package/dist/cjs/biz-components/DownLoad/index.js.map +7 -0
  17. package/dist/cjs/biz-components/Faq/Faq.js +1 -1
  18. package/dist/cjs/biz-components/Faq/Faq.js.map +2 -2
  19. package/dist/cjs/biz-components/Features/index.js +2 -0
  20. package/dist/cjs/biz-components/Features/index.js.map +7 -0
  21. package/dist/cjs/biz-components/FootCharger/index.js +2 -0
  22. package/dist/cjs/biz-components/FootCharger/index.js.map +7 -0
  23. package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
  24. package/dist/cjs/biz-components/FooterNavigation/index.js.map +3 -3
  25. package/dist/cjs/biz-components/FooterNavigation/types.d.ts +2 -1
  26. package/dist/cjs/biz-components/FooterNavigation/types.js +1 -1
  27. package/dist/cjs/biz-components/FooterNavigation/types.js.map +2 -2
  28. package/dist/cjs/biz-components/GiftBox/index.js +2 -0
  29. package/dist/cjs/biz-components/GiftBox/index.js.map +7 -0
  30. package/dist/cjs/biz-components/Graphic/index.js +1 -1
  31. package/dist/cjs/biz-components/Graphic/index.js.map +2 -2
  32. package/dist/cjs/biz-components/GraphicMore/index.js +2 -0
  33. package/dist/cjs/biz-components/GraphicMore/index.js.map +7 -0
  34. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.d.ts +6 -5
  35. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js +1 -1
  36. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  37. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js +2 -0
  38. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js.map +7 -0
  39. package/dist/cjs/biz-components/HeaderNavigation/icons/index.d.ts +2 -1
  40. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js +1 -1
  41. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  42. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  43. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
  44. package/dist/cjs/biz-components/HeaderNavigation/types.d.ts +18 -2
  45. package/dist/cjs/biz-components/HeaderNavigation/types.js +1 -1
  46. package/dist/cjs/biz-components/HeaderNavigation/types.js.map +2 -2
  47. package/dist/cjs/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  48. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js +1 -1
  49. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  50. package/dist/cjs/biz-components/Listing/ProductProvider.d.ts +7 -7
  51. package/dist/cjs/biz-components/Listing/ProductProvider.js +2 -0
  52. package/dist/cjs/biz-components/Listing/ProductProvider.js.map +7 -0
  53. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js +2 -0
  54. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js.map +7 -0
  55. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +2 -0
  56. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +7 -0
  57. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +2 -0
  58. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +7 -0
  59. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +2 -0
  60. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +7 -0
  61. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +2 -0
  62. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +7 -0
  63. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js +2 -0
  64. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +7 -0
  65. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js +2 -0
  66. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +7 -0
  67. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +2 -0
  68. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +7 -0
  69. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +2 -0
  70. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +7 -0
  71. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +2 -0
  72. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +7 -0
  73. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +2 -0
  74. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +7 -0
  75. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js +2 -0
  76. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +7 -0
  77. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js +2 -0
  78. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +7 -0
  79. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js +2 -0
  80. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +7 -0
  81. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js +2 -0
  82. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +7 -0
  83. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js +2 -0
  84. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +7 -0
  85. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js +2 -0
  86. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js.map +7 -0
  87. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +2 -0
  88. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +7 -0
  89. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +2 -0
  90. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +7 -0
  91. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +2 -0
  92. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +7 -0
  93. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js +2 -0
  94. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js.map +7 -0
  95. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js +2 -0
  96. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js.map +7 -0
  97. package/dist/cjs/biz-components/Listing/components/index.js +2 -0
  98. package/dist/cjs/biz-components/Listing/components/index.js.map +7 -0
  99. package/dist/cjs/biz-components/Listing/const.js +2 -0
  100. package/dist/cjs/biz-components/Listing/const.js.map +7 -0
  101. package/dist/cjs/biz-components/Listing/hooks/use-options.js +2 -0
  102. package/dist/cjs/biz-components/Listing/hooks/use-options.js.map +7 -0
  103. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js +2 -0
  104. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js.map +7 -0
  105. package/dist/cjs/biz-components/Listing/hooks/use-variant.js +2 -0
  106. package/dist/cjs/biz-components/Listing/hooks/use-variant.js.map +7 -0
  107. package/dist/cjs/biz-components/Listing/hooks/useCopy.js +2 -0
  108. package/dist/cjs/biz-components/Listing/hooks/useCopy.js.map +7 -0
  109. package/dist/cjs/biz-components/Listing/index.d.ts +1 -1
  110. package/dist/cjs/biz-components/Listing/index.js +2 -0
  111. package/dist/cjs/biz-components/Listing/index.js.map +7 -0
  112. package/dist/cjs/biz-components/Listing/types/graphql.js +2 -0
  113. package/dist/cjs/biz-components/Listing/types/graphql.js.map +7 -0
  114. package/dist/cjs/biz-components/Listing/types/product.js +2 -0
  115. package/dist/cjs/biz-components/Listing/types/product.js.map +7 -0
  116. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js +2 -0
  117. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js.map +7 -0
  118. package/dist/cjs/biz-components/Listing/types/type-helper.js +2 -0
  119. package/dist/cjs/biz-components/Listing/types/type-helper.js.map +7 -0
  120. package/dist/cjs/biz-components/Listing/types.js +2 -0
  121. package/dist/cjs/biz-components/Listing/types.js.map +7 -0
  122. package/dist/cjs/biz-components/Listing/utils/helper.js +2 -0
  123. package/dist/cjs/biz-components/Listing/utils/helper.js.map +7 -0
  124. package/dist/cjs/biz-components/Listing/utils/index.js +2 -0
  125. package/dist/cjs/biz-components/Listing/utils/index.js.map +7 -0
  126. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  127. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  128. package/dist/cjs/biz-components/NavigationSearch/index.js +2 -0
  129. package/dist/cjs/biz-components/NavigationSearch/index.js.map +7 -0
  130. package/dist/cjs/biz-components/NavigationSearch/types.js +2 -0
  131. package/dist/cjs/biz-components/NavigationSearch/types.js.map +7 -0
  132. package/dist/cjs/biz-components/SearchPage/index.js +2 -0
  133. package/dist/cjs/biz-components/SearchPage/index.js.map +7 -0
  134. package/dist/cjs/biz-components/SearchPage/types.js +2 -0
  135. package/dist/cjs/biz-components/SearchPage/types.js.map +7 -0
  136. package/dist/cjs/biz-components/SelectStore/index.d.ts +4 -10
  137. package/dist/cjs/biz-components/SelectStore/index.js +2 -0
  138. package/dist/cjs/biz-components/SelectStore/index.js.map +7 -0
  139. package/dist/cjs/biz-components/ShelfDisplay/index.js +1 -1
  140. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
  141. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js +4 -4
  142. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  143. package/dist/cjs/biz-components/Specs/dropdown.js +3 -0
  144. package/dist/cjs/biz-components/Specs/dropdown.js.map +7 -0
  145. package/dist/cjs/biz-components/Specs/index.js +2 -0
  146. package/dist/cjs/biz-components/Specs/index.js.map +7 -0
  147. package/dist/cjs/biz-components/Subscribe/index.d.ts +7 -1
  148. package/dist/cjs/biz-components/Subscribe/index.js +10 -1
  149. package/dist/cjs/biz-components/Subscribe/index.js.map +3 -3
  150. package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
  151. package/dist/cjs/biz-components/Tabs/Tabs.js.map +2 -2
  152. package/dist/cjs/biz-components/TabsGroup/index.d.ts +7 -0
  153. package/dist/cjs/biz-components/TabsGroup/index.js +2 -0
  154. package/dist/cjs/biz-components/TabsGroup/index.js.map +7 -0
  155. package/dist/cjs/biz-components/TabsGroup/types.d.ts +16 -0
  156. package/dist/cjs/biz-components/TabsGroup/types.js +2 -0
  157. package/dist/cjs/biz-components/TabsGroup/types.js.map +7 -0
  158. package/dist/cjs/biz-components/Title/index.js +1 -1
  159. package/dist/cjs/biz-components/Title/index.js.map +2 -2
  160. package/dist/cjs/biz-components/Title/types.d.ts +3 -1
  161. package/dist/cjs/biz-components/Title/types.js +1 -1
  162. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  163. package/dist/cjs/biz-components/index.d.ts +26 -0
  164. package/dist/cjs/biz-components/index.js +1 -1
  165. package/dist/cjs/biz-components/index.js.map +3 -3
  166. package/dist/cjs/components/button.js +1 -1
  167. package/dist/cjs/components/button.js.map +2 -2
  168. package/dist/cjs/components/checkbox.js +1 -1
  169. package/dist/cjs/components/checkbox.js.map +3 -3
  170. package/dist/cjs/components/container.js +1 -1
  171. package/dist/cjs/components/container.js.map +2 -2
  172. package/dist/cjs/components/dialog.d.ts +3 -1
  173. package/dist/cjs/components/dialog.js +1 -1
  174. package/dist/cjs/components/dialog.js.map +3 -3
  175. package/dist/cjs/components/index.d.ts +1 -0
  176. package/dist/cjs/components/index.js +1 -1
  177. package/dist/cjs/components/index.js.map +3 -3
  178. package/dist/cjs/components/loadingDots.js +42 -0
  179. package/dist/cjs/components/loadingDots.js.map +7 -0
  180. package/dist/cjs/helpers/utils.d.ts +1 -0
  181. package/dist/cjs/helpers/utils.js +1 -1
  182. package/dist/cjs/helpers/utils.js.map +3 -3
  183. package/dist/cjs/stories/aplusdesc.stories.js +2 -0
  184. package/dist/cjs/stories/aplusdesc.stories.js.map +7 -0
  185. package/dist/cjs/stories/download.stories.d.ts +1 -6
  186. package/dist/cjs/stories/download.stories.js +2 -0
  187. package/dist/cjs/stories/download.stories.js.map +7 -0
  188. package/dist/cjs/stories/features.stories.js +2 -0
  189. package/dist/cjs/stories/features.stories.js.map +7 -0
  190. package/dist/cjs/stories/footcharger.stories.js +2 -0
  191. package/dist/cjs/stories/footcharger.stories.js.map +7 -0
  192. package/dist/cjs/stories/giftbox.stories.js +2 -0
  193. package/dist/cjs/stories/giftbox.stories.js.map +7 -0
  194. package/dist/cjs/stories/graphicMore.stories.js +2 -0
  195. package/dist/cjs/stories/graphicMore.stories.js.map +7 -0
  196. package/dist/cjs/stories/selectstore.stories.js +2 -0
  197. package/dist/cjs/stories/selectstore.stories.js.map +7 -0
  198. package/dist/cjs/stories/shelfDisplay.stories.js +644 -1
  199. package/dist/cjs/stories/shelfDisplay.stories.js.map +2 -2
  200. package/dist/cjs/stories/tabs.stories.js +1 -1
  201. package/dist/cjs/stories/tabs.stories.js.map +3 -3
  202. package/dist/esm/biz-components/AccordionCards/index.js.map +2 -2
  203. package/dist/esm/biz-components/AplusDesc/index.js +2 -0
  204. package/dist/esm/biz-components/AplusDesc/index.js.map +7 -0
  205. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.d.ts +0 -1
  206. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js +1 -1
  207. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js.map +3 -3
  208. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js +1 -1
  209. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +3 -3
  210. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js +1 -1
  211. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js.map +2 -2
  212. package/dist/esm/biz-components/CollectionsFilters/index.d.ts +0 -1
  213. package/dist/esm/biz-components/CollectionsFilters/index.js +1 -1
  214. package/dist/esm/biz-components/CollectionsFilters/index.js.map +3 -3
  215. package/dist/esm/biz-components/DownLoad/index.d.ts +9 -6
  216. package/dist/esm/biz-components/DownLoad/index.js +2 -0
  217. package/dist/esm/biz-components/DownLoad/index.js.map +7 -0
  218. package/dist/esm/biz-components/Faq/Faq.js +1 -1
  219. package/dist/esm/biz-components/Faq/Faq.js.map +3 -3
  220. package/dist/esm/biz-components/Features/index.js +2 -0
  221. package/dist/esm/biz-components/Features/index.js.map +7 -0
  222. package/dist/esm/biz-components/FootCharger/index.js +2 -0
  223. package/dist/esm/biz-components/FootCharger/index.js.map +7 -0
  224. package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
  225. package/dist/esm/biz-components/FooterNavigation/index.js.map +3 -3
  226. package/dist/esm/biz-components/FooterNavigation/types.d.ts +2 -1
  227. package/dist/esm/biz-components/FooterNavigation/types.js +1 -1
  228. package/dist/esm/biz-components/FooterNavigation/types.js.map +2 -2
  229. package/dist/esm/biz-components/GiftBox/index.js +2 -0
  230. package/dist/esm/biz-components/GiftBox/index.js.map +7 -0
  231. package/dist/esm/biz-components/Graphic/index.js +1 -1
  232. package/dist/esm/biz-components/Graphic/index.js.map +2 -2
  233. package/dist/esm/biz-components/GraphicMore/index.js +2 -0
  234. package/dist/esm/biz-components/GraphicMore/index.js.map +7 -0
  235. package/dist/esm/biz-components/HeaderNavigation/NavProvider.d.ts +6 -5
  236. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js +1 -1
  237. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  238. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js +2 -0
  239. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js.map +7 -0
  240. package/dist/esm/biz-components/HeaderNavigation/icons/index.d.ts +2 -1
  241. package/dist/esm/biz-components/HeaderNavigation/icons/index.js +1 -1
  242. package/dist/esm/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  243. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  244. package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
  245. package/dist/esm/biz-components/HeaderNavigation/types.d.ts +18 -2
  246. package/dist/esm/biz-components/HeaderNavigation/types.js +1 -1
  247. package/dist/esm/biz-components/HeaderNavigation/types.js.map +2 -2
  248. package/dist/esm/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  249. package/dist/esm/biz-components/HeaderNavigation/withCategory.js +1 -1
  250. package/dist/esm/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  251. package/dist/esm/biz-components/Listing/ProductProvider.d.ts +7 -7
  252. package/dist/esm/biz-components/Listing/ProductProvider.js +2 -0
  253. package/dist/esm/biz-components/Listing/ProductProvider.js.map +7 -0
  254. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js +2 -0
  255. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js.map +7 -0
  256. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +2 -0
  257. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +7 -0
  258. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +2 -0
  259. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +7 -0
  260. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +2 -0
  261. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +7 -0
  262. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +2 -0
  263. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +7 -0
  264. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js +2 -0
  265. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +7 -0
  266. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js +2 -0
  267. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +7 -0
  268. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +2 -0
  269. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +7 -0
  270. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +2 -0
  271. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +7 -0
  272. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +2 -0
  273. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +7 -0
  274. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +2 -0
  275. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +7 -0
  276. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js +2 -0
  277. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +7 -0
  278. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js +2 -0
  279. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +7 -0
  280. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js +2 -0
  281. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +7 -0
  282. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js +2 -0
  283. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +7 -0
  284. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js +1 -0
  285. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +7 -0
  286. package/dist/esm/biz-components/Listing/components/ProductCard/index.js +2 -0
  287. package/dist/esm/biz-components/Listing/components/ProductCard/index.js.map +7 -0
  288. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +2 -0
  289. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +7 -0
  290. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +2 -0
  291. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +7 -0
  292. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +1 -0
  293. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +7 -0
  294. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js +2 -0
  295. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js.map +7 -0
  296. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js +1 -0
  297. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js.map +7 -0
  298. package/dist/esm/biz-components/Listing/components/index.js +2 -0
  299. package/dist/esm/biz-components/Listing/components/index.js.map +7 -0
  300. package/dist/esm/biz-components/Listing/const.js +2 -0
  301. package/dist/esm/biz-components/Listing/const.js.map +7 -0
  302. package/dist/esm/biz-components/Listing/hooks/use-options.js +2 -0
  303. package/dist/esm/biz-components/Listing/hooks/use-options.js.map +7 -0
  304. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js +2 -0
  305. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js.map +7 -0
  306. package/dist/esm/biz-components/Listing/hooks/use-variant.js +2 -0
  307. package/dist/esm/biz-components/Listing/hooks/use-variant.js.map +7 -0
  308. package/dist/esm/biz-components/Listing/hooks/useCopy.js +2 -0
  309. package/dist/esm/biz-components/Listing/hooks/useCopy.js.map +7 -0
  310. package/dist/esm/biz-components/Listing/index.d.ts +1 -1
  311. package/dist/esm/biz-components/Listing/index.js +2 -0
  312. package/dist/esm/biz-components/Listing/index.js.map +7 -0
  313. package/dist/esm/biz-components/Listing/types/graphql.js +2 -0
  314. package/dist/esm/biz-components/Listing/types/graphql.js.map +7 -0
  315. package/dist/esm/biz-components/Listing/types/product.js +2 -0
  316. package/dist/esm/biz-components/Listing/types/product.js.map +7 -0
  317. package/dist/esm/biz-components/Listing/types/productMetafields.d.js +2 -0
  318. package/dist/esm/biz-components/Listing/types/productMetafields.d.js.map +7 -0
  319. package/dist/esm/biz-components/Listing/types/type-helper.js +1 -0
  320. package/dist/esm/biz-components/Listing/types/type-helper.js.map +7 -0
  321. package/dist/esm/biz-components/Listing/types.js +1 -0
  322. package/dist/esm/biz-components/Listing/types.js.map +7 -0
  323. package/dist/esm/biz-components/Listing/utils/helper.js +2 -0
  324. package/dist/esm/biz-components/Listing/utils/helper.js.map +7 -0
  325. package/dist/esm/biz-components/Listing/utils/index.js +2 -0
  326. package/dist/esm/biz-components/Listing/utils/index.js.map +7 -0
  327. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  328. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  329. package/dist/esm/biz-components/NavigationSearch/index.js +2 -0
  330. package/dist/esm/biz-components/NavigationSearch/index.js.map +7 -0
  331. package/dist/esm/biz-components/NavigationSearch/types.js +2 -0
  332. package/dist/esm/biz-components/NavigationSearch/types.js.map +7 -0
  333. package/dist/esm/biz-components/SearchPage/index.js +2 -0
  334. package/dist/esm/biz-components/SearchPage/index.js.map +7 -0
  335. package/dist/esm/biz-components/SearchPage/types.js +2 -0
  336. package/dist/esm/biz-components/SearchPage/types.js.map +7 -0
  337. package/dist/esm/biz-components/SelectStore/index.d.ts +4 -10
  338. package/dist/esm/biz-components/SelectStore/index.js +2 -0
  339. package/dist/esm/biz-components/SelectStore/index.js.map +7 -0
  340. package/dist/esm/biz-components/ShelfDisplay/index.js +1 -1
  341. package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
  342. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js +9 -9
  343. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  344. package/dist/esm/biz-components/Specs/dropdown.js +3 -0
  345. package/dist/esm/biz-components/Specs/dropdown.js.map +7 -0
  346. package/dist/esm/biz-components/Specs/index.js +2 -0
  347. package/dist/esm/biz-components/Specs/index.js.map +7 -0
  348. package/dist/esm/biz-components/Subscribe/index.d.ts +7 -1
  349. package/dist/esm/biz-components/Subscribe/index.js +10 -1
  350. package/dist/esm/biz-components/Subscribe/index.js.map +3 -3
  351. package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
  352. package/dist/esm/biz-components/Tabs/Tabs.js.map +2 -2
  353. package/dist/esm/biz-components/TabsGroup/index.d.ts +7 -0
  354. package/dist/esm/biz-components/TabsGroup/index.js +2 -0
  355. package/dist/esm/biz-components/TabsGroup/index.js.map +7 -0
  356. package/dist/esm/biz-components/TabsGroup/types.d.ts +16 -0
  357. package/dist/esm/biz-components/TabsGroup/types.js +1 -0
  358. package/dist/esm/biz-components/TabsGroup/types.js.map +7 -0
  359. package/dist/esm/biz-components/Title/index.js +1 -1
  360. package/dist/esm/biz-components/Title/index.js.map +2 -2
  361. package/dist/esm/biz-components/Title/types.d.ts +3 -1
  362. package/dist/esm/biz-components/index.d.ts +26 -0
  363. package/dist/esm/biz-components/index.js +1 -1
  364. package/dist/esm/biz-components/index.js.map +3 -3
  365. package/dist/esm/components/button.js +1 -1
  366. package/dist/esm/components/button.js.map +2 -2
  367. package/dist/esm/components/checkbox.js +1 -1
  368. package/dist/esm/components/checkbox.js.map +3 -3
  369. package/dist/esm/components/container.js +1 -1
  370. package/dist/esm/components/container.js.map +2 -2
  371. package/dist/esm/components/dialog.d.ts +3 -1
  372. package/dist/esm/components/dialog.js +1 -1
  373. package/dist/esm/components/dialog.js.map +3 -3
  374. package/dist/esm/components/index.d.ts +1 -0
  375. package/dist/esm/components/index.js +1 -1
  376. package/dist/esm/components/index.js.map +2 -2
  377. package/dist/esm/components/loadingDots.js +42 -0
  378. package/dist/esm/components/loadingDots.js.map +7 -0
  379. package/dist/esm/helpers/utils.d.ts +1 -0
  380. package/dist/esm/helpers/utils.js +1 -1
  381. package/dist/esm/helpers/utils.js.map +3 -3
  382. package/dist/esm/stories/aplusdesc.stories.js +2 -0
  383. package/dist/esm/stories/aplusdesc.stories.js.map +7 -0
  384. package/dist/esm/stories/download.stories.d.ts +1 -6
  385. package/dist/esm/stories/download.stories.js +2 -0
  386. package/dist/esm/stories/download.stories.js.map +7 -0
  387. package/dist/esm/stories/features.stories.js +2 -0
  388. package/dist/esm/stories/features.stories.js.map +7 -0
  389. package/dist/esm/stories/footcharger.stories.js +2 -0
  390. package/dist/esm/stories/footcharger.stories.js.map +7 -0
  391. package/dist/esm/stories/giftbox.stories.js +2 -0
  392. package/dist/esm/stories/giftbox.stories.js.map +7 -0
  393. package/dist/esm/stories/graphicMore.stories.js +2 -0
  394. package/dist/esm/stories/graphicMore.stories.js.map +7 -0
  395. package/dist/esm/stories/selectstore.stories.js +2 -0
  396. package/dist/esm/stories/selectstore.stories.js.map +7 -0
  397. package/dist/esm/stories/shelfDisplay.stories.js +644 -1
  398. package/dist/esm/stories/shelfDisplay.stories.js.map +2 -2
  399. package/dist/esm/stories/tabs.stories.js +1 -1
  400. package/dist/esm/stories/tabs.stories.js.map +3 -3
  401. package/dist/tokens/base.css +1 -1
  402. package/package.json +1 -1
  403. package/style.css +9 -2
  404. package/dist/cjs/apps/playground/utils/classnames.d.ts +0 -1
  405. package/dist/cjs/apps/storefront/lib/utils/classnames.d.ts +0 -2
  406. package/dist/cjs/biz-components/AccordionCards/useDebounce.d.ts +0 -6
  407. package/dist/cjs/biz-components/CollectionsBanner/HeroBanner.d.ts +0 -7
  408. package/dist/cjs/biz-components/CollectionsFilters/AnimatedUL.d.ts +0 -9
  409. package/dist/cjs/biz-components/CollectionsFilters/FilterTab.d.ts +0 -7
  410. package/dist/cjs/biz-components/CollectionsFilters/FiterTab.d.ts +0 -7
  411. package/dist/cjs/biz-components/CollectionsFilters/FiterTab.js +0 -2
  412. package/dist/cjs/biz-components/CollectionsFilters/FiterTab.js.map +0 -7
  413. package/dist/cjs/biz-components/CollectionsFilters/Helper.d.ts +0 -8
  414. package/dist/cjs/biz-components/CollectionsFilters/MoblieSortFilter.d.ts +0 -8
  415. package/dist/cjs/biz-components/CollectionsFilters/SortFilter.d.ts +0 -8
  416. package/dist/cjs/biz-components/CollectionsFilters/component/LoadingDots.d.ts +0 -6
  417. package/dist/cjs/biz-components/CollectionsFilters/data.d.ts +0 -24804
  418. package/dist/cjs/biz-components/CollectionsFilters/price.d.ts +0 -25
  419. package/dist/cjs/biz-components/CollectionsFilters/priceProps.d.ts +0 -215
  420. package/dist/cjs/biz-components/CollectionsFilters/tabFilter.d.ts +0 -10
  421. package/dist/cjs/biz-components/CollectionsFilters/tabSwitch.d.ts +0 -9
  422. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.d.ts +0 -5
  423. package/dist/cjs/biz-components/MediaPlayerMulti/YouTubePlayer.d.ts +0 -3
  424. package/dist/cjs/biz-components/SectionHeading/SectionHeading.d.ts +0 -4
  425. package/dist/cjs/biz-components/SectionHeading/index.d.ts +0 -0
  426. package/dist/cjs/biz-components/SectionHeading/types.d.ts +0 -6
  427. package/dist/cjs/biz-components/Shelf/Shelf.d.ts +0 -8
  428. package/dist/cjs/biz-components/Shelf/index.d.ts +0 -1
  429. package/dist/cjs/biz-components/Shelf/types.d.ts +0 -6
  430. package/dist/cjs/biz-components/ShelfDisplay/tab.d.ts +0 -7
  431. package/dist/cjs/biz-components/TextMa/index.d.ts +0 -9
  432. package/dist/cjs/campaign-ui/tailwind.config.d.ts +0 -62
  433. package/dist/cjs/components/col.d.ts +0 -29
  434. package/dist/cjs/components/dropdown.d.ts +0 -27
  435. package/dist/cjs/components/inputnumber.d.ts +0 -0
  436. package/dist/cjs/components/row.d.ts +0 -18
  437. package/dist/cjs/helpers/get-subtree.d.ts +0 -12
  438. package/dist/cjs/hooks/useMemberPrice.d.ts +0 -20
  439. package/dist/cjs/packages/ui/src/components/avatar.d.ts +0 -26
  440. package/dist/cjs/packages/ui/src/components/index.d.ts +0 -20
  441. package/dist/cjs/packages/ui/src/index.d.ts +0 -1
  442. package/dist/cjs/packages/ui/src/stories/avatar.stories.d.ts +0 -40
  443. package/dist/cjs/packages/ui/src/stories/badge.stories.d.ts +0 -26
  444. package/dist/cjs/packages/ui/src/stories/button.stories.d.ts +0 -48
  445. package/dist/cjs/packages/ui/src/stories/checkbox.stories.d.ts +0 -46
  446. package/dist/cjs/packages/ui/src/stories/container.stories.d.ts +0 -36
  447. package/dist/cjs/packages/ui/src/stories/dialog.stories.d.ts +0 -20
  448. package/dist/cjs/packages/ui/src/stories/grid.stories.d.ts +0 -42
  449. package/dist/cjs/packages/ui/src/stories/heading.stories.d.ts +0 -82
  450. package/dist/cjs/packages/ui/src/stories/input.stories.d.ts +0 -35
  451. package/dist/cjs/packages/ui/src/stories/picture.stories.d.ts +0 -18
  452. package/dist/cjs/packages/ui/src/stories/popover.stories.d.ts +0 -17
  453. package/dist/cjs/packages/ui/src/stories/radio.stories.d.ts +0 -39
  454. package/dist/cjs/packages/ui/src/stories/skeleton.stories.d.ts +0 -20
  455. package/dist/cjs/packages/ui/src/stories/tabs.stories.d.ts +0 -373
  456. package/dist/cjs/packages/ui/src/stories/text.stories.d.ts +0 -94
  457. package/dist/cjs/src/components/index.d.ts +0 -21
  458. package/dist/cjs/src/components/input-number.d.ts +0 -47
  459. package/dist/cjs/src/index.d.ts +0 -1
  460. package/dist/cjs/src/stories/avatar.stories.d.ts +0 -40
  461. package/dist/cjs/src/stories/badge.stories.d.ts +0 -26
  462. package/dist/cjs/src/stories/button.stories.d.ts +0 -48
  463. package/dist/cjs/src/stories/checkbox.stories.d.ts +0 -46
  464. package/dist/cjs/src/stories/container.stories.d.ts +0 -36
  465. package/dist/cjs/src/stories/dialog.stories.d.ts +0 -20
  466. package/dist/cjs/src/stories/grid.stories.d.ts +0 -42
  467. package/dist/cjs/src/stories/heading.stories.d.ts +0 -82
  468. package/dist/cjs/src/stories/input-number.stories.d.ts +0 -51
  469. package/dist/cjs/src/stories/input.stories.d.ts +0 -35
  470. package/dist/cjs/src/stories/picture.stories.d.ts +0 -18
  471. package/dist/cjs/src/stories/popover.stories.d.ts +0 -17
  472. package/dist/cjs/src/stories/radio.stories.d.ts +0 -39
  473. package/dist/cjs/src/stories/skeleton.stories.d.ts +0 -20
  474. package/dist/cjs/src/stories/text.stories.d.ts +0 -94
  475. package/dist/cjs/stories/shelf.stories.d.ts +0 -17
  476. package/dist/cjs/tailwind.config.d.ts +0 -253
  477. package/dist/cjs/tsconfig.tsbuildinfo +0 -1
  478. package/dist/cjs/ui/src/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +0 -5
  479. package/dist/esm/apps/playground/utils/classnames.d.ts +0 -1
  480. package/dist/esm/apps/storefront/lib/utils/classnames.d.ts +0 -2
  481. package/dist/esm/biz-components/AccordionCards/useDebounce.d.ts +0 -6
  482. package/dist/esm/biz-components/CollectionsBanner/HeroBanner.d.ts +0 -7
  483. package/dist/esm/biz-components/CollectionsFilters/AnimatedUL.d.ts +0 -9
  484. package/dist/esm/biz-components/CollectionsFilters/FilterTab.d.ts +0 -7
  485. package/dist/esm/biz-components/CollectionsFilters/FiterTab.d.ts +0 -7
  486. package/dist/esm/biz-components/CollectionsFilters/FiterTab.js +0 -2
  487. package/dist/esm/biz-components/CollectionsFilters/FiterTab.js.map +0 -7
  488. package/dist/esm/biz-components/CollectionsFilters/Helper.d.ts +0 -8
  489. package/dist/esm/biz-components/CollectionsFilters/MoblieSortFilter.d.ts +0 -8
  490. package/dist/esm/biz-components/CollectionsFilters/SortFilter.d.ts +0 -8
  491. package/dist/esm/biz-components/CollectionsFilters/component/LoadingDots.d.ts +0 -6
  492. package/dist/esm/biz-components/CollectionsFilters/data.d.ts +0 -24804
  493. package/dist/esm/biz-components/CollectionsFilters/price.d.ts +0 -25
  494. package/dist/esm/biz-components/CollectionsFilters/priceProps.d.ts +0 -215
  495. package/dist/esm/biz-components/CollectionsFilters/tabFilter.d.ts +0 -10
  496. package/dist/esm/biz-components/CollectionsFilters/tabSwitch.d.ts +0 -9
  497. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTabs/index.d.ts +0 -5
  498. package/dist/esm/biz-components/MediaPlayerMulti/YouTubePlayer.d.ts +0 -3
  499. package/dist/esm/biz-components/SectionHeading/SectionHeading.d.ts +0 -4
  500. package/dist/esm/biz-components/SectionHeading/index.d.ts +0 -0
  501. package/dist/esm/biz-components/SectionHeading/types.d.ts +0 -6
  502. package/dist/esm/biz-components/Shelf/Shelf.d.ts +0 -8
  503. package/dist/esm/biz-components/Shelf/index.d.ts +0 -1
  504. package/dist/esm/biz-components/Shelf/types.d.ts +0 -6
  505. package/dist/esm/biz-components/ShelfDisplay/tab.d.ts +0 -7
  506. package/dist/esm/biz-components/TextMa/index.d.ts +0 -9
  507. package/dist/esm/campaign-ui/tailwind.config.d.ts +0 -62
  508. package/dist/esm/components/col.d.ts +0 -29
  509. package/dist/esm/components/dropdown.d.ts +0 -27
  510. package/dist/esm/components/inputnumber.d.ts +0 -0
  511. package/dist/esm/components/row.d.ts +0 -18
  512. package/dist/esm/helpers/get-subtree.d.ts +0 -12
  513. package/dist/esm/hooks/useMemberPrice.d.ts +0 -20
  514. package/dist/esm/packages/ui/src/components/avatar.d.ts +0 -26
  515. package/dist/esm/packages/ui/src/components/index.d.ts +0 -20
  516. package/dist/esm/packages/ui/src/index.d.ts +0 -1
  517. package/dist/esm/packages/ui/src/stories/avatar.stories.d.ts +0 -40
  518. package/dist/esm/packages/ui/src/stories/badge.stories.d.ts +0 -26
  519. package/dist/esm/packages/ui/src/stories/button.stories.d.ts +0 -48
  520. package/dist/esm/packages/ui/src/stories/checkbox.stories.d.ts +0 -46
  521. package/dist/esm/packages/ui/src/stories/container.stories.d.ts +0 -36
  522. package/dist/esm/packages/ui/src/stories/dialog.stories.d.ts +0 -20
  523. package/dist/esm/packages/ui/src/stories/grid.stories.d.ts +0 -42
  524. package/dist/esm/packages/ui/src/stories/heading.stories.d.ts +0 -82
  525. package/dist/esm/packages/ui/src/stories/input.stories.d.ts +0 -35
  526. package/dist/esm/packages/ui/src/stories/picture.stories.d.ts +0 -18
  527. package/dist/esm/packages/ui/src/stories/popover.stories.d.ts +0 -17
  528. package/dist/esm/packages/ui/src/stories/radio.stories.d.ts +0 -39
  529. package/dist/esm/packages/ui/src/stories/skeleton.stories.d.ts +0 -20
  530. package/dist/esm/packages/ui/src/stories/tabs.stories.d.ts +0 -373
  531. package/dist/esm/packages/ui/src/stories/text.stories.d.ts +0 -94
  532. package/dist/esm/src/components/index.d.ts +0 -21
  533. package/dist/esm/src/components/input-number.d.ts +0 -47
  534. package/dist/esm/src/index.d.ts +0 -1
  535. package/dist/esm/src/stories/avatar.stories.d.ts +0 -40
  536. package/dist/esm/src/stories/badge.stories.d.ts +0 -26
  537. package/dist/esm/src/stories/button.stories.d.ts +0 -48
  538. package/dist/esm/src/stories/checkbox.stories.d.ts +0 -46
  539. package/dist/esm/src/stories/container.stories.d.ts +0 -36
  540. package/dist/esm/src/stories/dialog.stories.d.ts +0 -20
  541. package/dist/esm/src/stories/grid.stories.d.ts +0 -42
  542. package/dist/esm/src/stories/heading.stories.d.ts +0 -82
  543. package/dist/esm/src/stories/input-number.stories.d.ts +0 -51
  544. package/dist/esm/src/stories/input.stories.d.ts +0 -35
  545. package/dist/esm/src/stories/picture.stories.d.ts +0 -18
  546. package/dist/esm/src/stories/popover.stories.d.ts +0 -17
  547. package/dist/esm/src/stories/radio.stories.d.ts +0 -39
  548. package/dist/esm/src/stories/skeleton.stories.d.ts +0 -20
  549. package/dist/esm/src/stories/text.stories.d.ts +0 -94
  550. package/dist/esm/stories/shelf.stories.d.ts +0 -17
  551. package/dist/esm/tailwind.config.d.ts +0 -253
  552. package/dist/esm/tsconfig.tsbuildinfo +0 -1
  553. package/dist/esm/ui/src/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +0 -5
  554. /package/dist/cjs/hooks/{useEXposure.d.ts → useExposure.d.ts} +0 -0
  555. /package/dist/esm/hooks/{useEXposure.d.ts → useExposure.d.ts} +0 -0
@@ -1,2 +1,2 @@
1
- "use strict";var r=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var T=Object.getOwnPropertyNames;var i=Object.prototype.hasOwnProperty;var b=(a,s)=>{for(var o in s)r(a,o,{get:s[o],enumerable:!0})},d=(a,s,o,l)=>{if(s&&typeof s=="object"||typeof s=="function")for(let n of T(s))!i.call(a,n)&&n!==o&&r(a,n,{get:()=>s[n],enumerable:!(l=u(s,n))||l.enumerable});return a};var c=a=>d(r({},"__esModule",{value:!0}),a);var x={};b(x,{AlignCenter:()=>v,AlignRight:()=>y,Default:()=>p,Disabled:()=>C,default:()=>m});module.exports=c(x);var t=require("react/jsx-runtime"),e=require("../components/index.js"),D=require("react");const g={title:"Components/Tabs",component:e.Tabs,subcomponents:{TabsList:e.TabsList,TabsTrigger:e.TabsTrigger,TabsContent:e.TabsContent},decorators:[a=>(0,t.jsx)("div",{style:{margin:"2em"},children:(0,t.jsx)(a,{})})],parameters:{layout:"fullscreen",docs:{description:{component:"Tab\u9009\u9879\u5361\uFF0C\u63D0\u4F9B\u53EF\u8BBF\u95EE\u7684\u6807\u7B7E\u754C\u9762\uFF0C\u57FA\u4E8E@radix-ui/react-tabs"}}},tags:["autodocs"],args:{defaultValue:"bestSeller",align:"left"},argTypes:{defaultValue:{description:"\u9ED8\u8BA4\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C",control:"text",table:{summary:"bestSeller",readonly:!0}},value:{description:"\u5F53\u524D\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C\uFF08\u53D7\u63A7\u6A21\u5F0F\uFF09",control:{type:"radio"},options:["bestSeller","discountProducts","bundleDeals","recommend"]},align:{description:"\u5BF9\u9F50\u65B9\u5411"},onValueChange:{description:"\u6807\u7B7E\u9875\u503C\u53D8\u5316\u65F6\u7684\u56DE\u8C03\u51FD\u6570",action:"changed",type:"function"},orientation:{control:{type:"inline-radio"},options:["horizontal","vertical"],description:"\u6807\u7B7E\u9875\u5E03\u5C40\u65B9\u5411",table:{defaultValue:{summary:"horizontal"}}},dir:{control:{type:"inline-radio"},options:["ltr","rtl"],description:"\u6587\u672C\u65B9\u5411",table:{defaultValue:{summary:"ltr"}}}}};var m=g;const p={render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})},v={args:{align:"center"},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})},y={args:{align:"right"},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})},C={args:{defaultValue:""},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{disabled:!0,value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})};
1
+ "use strict";var T=Object.create;var n=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var m=(a,s)=>{for(var o in s)n(a,o,{get:s[o],enumerable:!0})},u=(a,s,o,l)=>{if(s&&typeof s=="object"||typeof s=="function")for(let r of b(s))!g.call(a,r)&&r!==o&&n(a,r,{get:()=>s[r],enumerable:!(l=d(s,r))||l.enumerable});return a};var p=(a,s,o)=>(o=a!=null?T(c(a)):{},u(s||!a||!a.__esModule?n(o,"default",{value:a,enumerable:!0}):o,a)),v=a=>u(n({},"__esModule",{value:!0}),a);var P={};m(P,{AlignCenter:()=>S,AlignRight:()=>D,Default:()=>x,Disabled:()=>f,default:()=>C});module.exports=v(P);var t=require("react/jsx-runtime"),e=require("../components/index.js"),i=p(require("../biz-components/AiuiProvider/index.js")),h=require("react");const y={title:"Components/Tabs",component:e.Tabs,subcomponents:{TabsList:e.TabsList,TabsTrigger:e.TabsTrigger,TabsContent:e.TabsContent},decorators:[a=>(0,t.jsx)("div",{style:{margin:"2em"},children:(0,t.jsx)(a,{})})],parameters:{layout:"fullscreen",docs:{description:{component:"Tab\u9009\u9879\u5361\uFF0C\u63D0\u4F9B\u53EF\u8BBF\u95EE\u7684\u6807\u7B7E\u754C\u9762\uFF0C\u57FA\u4E8E@radix-ui/react-tabs"}}},tags:["autodocs"],args:{defaultValue:"bestSeller",align:"left"},argTypes:{defaultValue:{description:"\u9ED8\u8BA4\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C",control:"text",table:{summary:"bestSeller",readonly:!0}},value:{description:"\u5F53\u524D\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C\uFF08\u53D7\u63A7\u6A21\u5F0F\uFF09",control:{type:"radio"},options:["bestSeller","discountProducts","bundleDeals","recommend"]},align:{description:"\u5BF9\u9F50\u65B9\u5411"},onValueChange:{description:"\u6807\u7B7E\u9875\u503C\u53D8\u5316\u65F6\u7684\u56DE\u8C03\u51FD\u6570",action:"changed",type:"function"},orientation:{control:{type:"inline-radio"},options:["horizontal","vertical"],description:"\u6807\u7B7E\u9875\u5E03\u5C40\u65B9\u5411",table:{defaultValue:{summary:"horizontal"}}},dir:{control:{type:"inline-radio"},options:["ltr","rtl"],description:"\u6587\u672C\u65B9\u5411",table:{defaultValue:{summary:"ltr"}}}}};var C=y;const x={render:a=>(0,t.jsx)(i.default,{trackingData:{},locale:"us",copyWriting:{soldOutText:"locale"},children:(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})})},S={args:{align:"center"},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})},D={args:{align:"right"},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})},f={args:{defaultValue:""},render:a=>(0,t.jsxs)(e.Tabs,{...a,children:[(0,t.jsxs)(e.TabsList,{children:[(0,t.jsx)(e.TabsTrigger,{disabled:!0,value:"bestSeller",children:"Best Seller"}),(0,t.jsx)(e.TabsTrigger,{value:"discountProducts",children:"Discount products"}),(0,t.jsx)(e.TabsTrigger,{value:"bundleDeals",children:"Bundle Deals"}),(0,t.jsx)(e.TabsTrigger,{value:"recommend",children:"Recommend"})]}),(0,t.jsx)(e.TabsContent,{value:"bestSeller",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"discountProducts",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"bundleDeals",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002"})})," ",(0,t.jsx)(e.TabsContent,{value:"recommend",children:(0,t.jsx)(e.Text,{children:"\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002"})})]})};
2
2
  //# sourceMappingURL=tabs.stories.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/stories/tabs.stories.tsx"],
4
- "sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\n\nimport { Tabs, TabsList, TabsTrigger, TabsContent, Text } from '../components/index.js'\n\nimport React, { type ComponentType } from 'react'\n\nconst meta = {\n title: 'Components/Tabs',\n component: Tabs,\n subcomponents: {\n TabsList: TabsList as ComponentType<unknown>,\n TabsTrigger: TabsTrigger as ComponentType<unknown>,\n TabsContent: TabsContent as ComponentType<unknown>,\n },\n decorators: [\n Story => (\n <div style={{ margin: '2em' }}>\n <Story />\n </div>\n ),\n ],\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: 'Tab\u9009\u9879\u5361\uFF0C\u63D0\u4F9B\u53EF\u8BBF\u95EE\u7684\u6807\u7B7E\u754C\u9762\uFF0C\u57FA\u4E8E@radix-ui/react-tabs',\n },\n },\n },\n tags: ['autodocs'],\n args: {\n defaultValue: 'bestSeller',\n align: 'left',\n },\n argTypes: {\n defaultValue: {\n description: '\u9ED8\u8BA4\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C',\n control: 'text',\n table: {\n summary: 'bestSeller',\n readonly: true,\n },\n },\n value: {\n description: '\u5F53\u524D\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C\uFF08\u53D7\u63A7\u6A21\u5F0F\uFF09',\n control: {\n type: 'radio',\n },\n options: ['bestSeller', 'discountProducts', 'bundleDeals', 'recommend'],\n },\n align: {\n description: '\u5BF9\u9F50\u65B9\u5411',\n },\n onValueChange: {\n description: '\u6807\u7B7E\u9875\u503C\u53D8\u5316\u65F6\u7684\u56DE\u8C03\u51FD\u6570',\n action: 'changed',\n type: 'function',\n },\n orientation: {\n control: {\n type: 'inline-radio',\n },\n options: ['horizontal', 'vertical'],\n description: '\u6807\u7B7E\u9875\u5E03\u5C40\u65B9\u5411',\n table: {\n defaultValue: {\n summary: 'horizontal',\n },\n },\n },\n dir: {\n control: {\n type: 'inline-radio',\n },\n options: ['ltr', 'rtl'],\n description: '\u6587\u672C\u65B9\u5411',\n table: {\n defaultValue: {\n summary: 'ltr',\n },\n },\n },\n // activationMode: {\n // control: {\n // type: 'select',\n // },\n // options: ['automatic', 'manual'],\n // description: '\u6FC0\u6D3B\u6A21\u5F0F\uFF08automatic: \u81EA\u52A8\u6FC0\u6D3B, manual: \u624B\u52A8\u6FC0\u6D3B\uFF09',\n // table: {\n // defaultValue: {\n // summary: 'automatic',\n // },\n // },\n // },\n },\n} satisfies Meta<typeof Tabs>\n\nexport default meta\n\ntype Story = StoryObj<typeof Tabs>\n\nexport const Default: Story = {\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">Best Seller</TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n\nexport const AlignCenter: Story = {\n args: {\n align: 'center',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">Best Seller</TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n\nexport const AlignRight: Story = {\n args: {\n align: 'right',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">Best Seller</TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n\nexport const Disabled: Story = {\n args: {\n defaultValue: '',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger disabled value=\"bestSeller\">\n Best Seller\n </TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n"],
5
- "mappings": "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",
6
- "names": ["tabs_stories_exports", "__export", "AlignCenter", "AlignRight", "Default", "Disabled", "tabs_stories_default", "__toCommonJS", "import_jsx_runtime", "import_components", "import_react", "meta", "Story", "args"]
4
+ "sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\n\nimport { Tabs, TabsList, TabsTrigger, TabsContent, Text } from '../components/index.js'\nimport AiuiProvider from '../biz-components/AiuiProvider/index.js'\n\nimport React, { type ComponentType } from 'react'\n\nconst meta = {\n title: 'Components/Tabs',\n component: Tabs,\n subcomponents: {\n TabsList: TabsList as ComponentType<unknown>,\n TabsTrigger: TabsTrigger as ComponentType<unknown>,\n TabsContent: TabsContent as ComponentType<unknown>,\n },\n decorators: [\n Story => (\n <div style={{ margin: '2em' }}>\n <Story />\n </div>\n ),\n ],\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: 'Tab\u9009\u9879\u5361\uFF0C\u63D0\u4F9B\u53EF\u8BBF\u95EE\u7684\u6807\u7B7E\u754C\u9762\uFF0C\u57FA\u4E8E@radix-ui/react-tabs',\n },\n },\n },\n tags: ['autodocs'],\n args: {\n defaultValue: 'bestSeller',\n align: 'left',\n },\n argTypes: {\n defaultValue: {\n description: '\u9ED8\u8BA4\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C',\n control: 'text',\n table: {\n summary: 'bestSeller',\n readonly: true,\n },\n },\n value: {\n description: '\u5F53\u524D\u9009\u4E2D\u7684\u6807\u7B7E\u9875\u503C\uFF08\u53D7\u63A7\u6A21\u5F0F\uFF09',\n control: {\n type: 'radio',\n },\n options: ['bestSeller', 'discountProducts', 'bundleDeals', 'recommend'],\n },\n align: {\n description: '\u5BF9\u9F50\u65B9\u5411',\n },\n onValueChange: {\n description: '\u6807\u7B7E\u9875\u503C\u53D8\u5316\u65F6\u7684\u56DE\u8C03\u51FD\u6570',\n action: 'changed',\n type: 'function',\n },\n orientation: {\n control: {\n type: 'inline-radio',\n },\n options: ['horizontal', 'vertical'],\n description: '\u6807\u7B7E\u9875\u5E03\u5C40\u65B9\u5411',\n table: {\n defaultValue: {\n summary: 'horizontal',\n },\n },\n },\n dir: {\n control: {\n type: 'inline-radio',\n },\n options: ['ltr', 'rtl'],\n description: '\u6587\u672C\u65B9\u5411',\n table: {\n defaultValue: {\n summary: 'ltr',\n },\n },\n },\n // activationMode: {\n // control: {\n // type: 'select',\n // },\n // options: ['automatic', 'manual'],\n // description: '\u6FC0\u6D3B\u6A21\u5F0F\uFF08automatic: \u81EA\u52A8\u6FC0\u6D3B, manual: \u624B\u52A8\u6FC0\u6D3B\uFF09',\n // table: {\n // defaultValue: {\n // summary: 'automatic',\n // },\n // },\n // },\n },\n} satisfies Meta<typeof Tabs>\n\nexport default meta\n\ntype Story = StoryObj<typeof Tabs>\n\nexport const Default: Story = {\n render: args => (\n <AiuiProvider\n trackingData={{}}\n locale={'us'}\n copyWriting={{\n soldOutText: 'locale',\n }}\n >\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">\n Best Seller\n </TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n </AiuiProvider>\n ),\n}\n\nexport const AlignCenter: Story = {\n args: {\n align: 'center',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">Best Seller</TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n\nexport const AlignRight: Story = {\n args: {\n align: 'right',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger value=\"bestSeller\">Best Seller</TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}\n\nexport const Disabled: Story = {\n args: {\n defaultValue: '',\n },\n render: args => (\n <Tabs {...args}>\n <TabsList>\n <TabsTrigger disabled value=\"bestSeller\">\n Best Seller\n </TabsTrigger>\n <TabsTrigger value=\"discountProducts\">Discount products</TabsTrigger>\n <TabsTrigger value=\"bundleDeals\">Bundle Deals</TabsTrigger>\n <TabsTrigger value=\"recommend\">Recommend</TabsTrigger>\n </TabsList>\n <TabsContent value=\"bestSeller\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u7545\u9500\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"discountProducts\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u6298\u6263\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"bundleDeals\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u5957\u88C5\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>{' '}\n <TabsContent value=\"recommend\">\n <Text>\u8FD9\u91CC\u5C55\u793A\u63A8\u8350\u5546\u54C1\u5185\u5BB9\u3002</Text>\n </TabsContent>\n </Tabs>\n ),\n}"],
5
+ "mappings": "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",
6
+ "names": ["tabs_stories_exports", "__export", "AlignCenter", "AlignRight", "Default", "Disabled", "tabs_stories_default", "__toCommonJS", "import_jsx_runtime", "import_components", "import_AiuiProvider", "import_react", "meta", "Story", "args", "AiuiProvider"]
7
7
  }
@@ -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": "aAgHQ,OAyIJ,YAAAA,EAzII,OAAAC,EAeA,QAAAC,MAfA,oBA/GR,OAAOC,MAAW,oBAClB,OAAS,MAAAC,MAAU,yBACnB,OAAOC,MAAa,8BACpB,OAAOC,MAAY,6BACnB,OAAOC,MAAe,wBACtB,OAAS,cAAAC,MAAkB,yBAC3B,OAAOC,GAAS,YAAAC,EAAU,UAAAC,EAAQ,eAAAC,EAAa,uBAAAC,EAAqB,aAAAC,MAAiC,QACrG,OAAS,eAAAC,MAAmB,6BAC5B,OAAS,eAAAC,MAAmB,8BAE5B,OAAOC,MAAc,2BACrB,OAAS,WAAAC,MAAe,8BAExB,MAAMC,EAAgB,QAChBC,EAAgB,eAmChBC,EAAuB,CAAC,CAC5B,KAAAC,EACA,IAAAC,EACA,UAAAC,EACA,WAAAC,EACA,OAAAC,EACA,sBAAAC,EACA,YAAAC,EACA,aAAAC,EACA,cAAAC,EACA,MAAAC,EACA,KAAAC,EACA,aAAAC,CACF,IAaM,CACJ,MAAMC,EAAaT,IAAeF,EAC5BY,EAAYD,EAAa,EAAI,EAEnC,OAAAnB,EAAY,CAAE,QAASkB,EAAa,QAAQV,CAAG,CAAE,EAAgC,CAC/E,cAAAJ,EACA,cAAAC,EACA,eAAgBE,GAAM,MACtB,SAAUC,EAAM,EAChB,qBAAsBD,GAAM,QAC9B,CAAC,EAGCpB,EAAC,OAEC,MAAO,CACL,KAAM,GAAGiC,CAAS,QAClB,WAAY,UACd,EACA,IAAMC,GAA8B,CAC9BA,GAAIV,EAAOH,EAAKa,CAAE,CACxB,EACA,UAAWhC,EAAG,0CAA2CoB,IAAc,QAAU,cAAgB,EAAE,EACnG,aAAc,IAAMG,EAAsBJ,CAAG,EAC7C,aAAc,IAAM,CAClBK,EAAY,QAAU,EACxB,EACA,QAAS,IAAM,CACbD,EAAsBJ,CAAG,CAC3B,EAEA,UAAAtB,EAAC,KACC,KAAMe,EAAYM,GAAM,QAAS,GAAGH,CAAa,IAAIC,CAAa,EAAE,EACpE,0BAAyB,GAAGD,CAAa,IAAIC,CAAa,GAC1D,kCAAiC,GAAGE,GAAM,KAAK,IAAIA,GAAM,QAAQ,GAEjE,SAAArB,EAACI,EAAA,CACC,OAAQiB,GAAM,KAAK,IACnB,UAAU,6DACV,IAAKA,GAAM,KAAK,KAAO,GACzB,EACF,EACApB,EAAC,OACC,MAAO,CACL,MAAO2B,CACT,EACA,UAAWzB,EACT,oJACA8B,GAAcL,EAAe,cAAgB,WAC/C,EAEA,UAAA3B,EAAC,OAAI,UAAU,+BACb,UAAAD,EAACiB,EAAA,CAAQ,GAAG,KAAK,UAAU,+EACxB,SAAAI,GAAM,MACT,EACArB,EAACiB,EAAA,CACC,GAAG,KACH,UAAU,mGAET,SAAAI,GAAM,SACT,GACF,EACApB,EAACI,EAAA,CACC,UAAWF,EAAG,kBAAkB,EAChC,GAAG,IACH,KAAMY,EAAYM,GAAM,KAAM,GAAGH,CAAa,IAAIC,CAAa,EAAE,EACjE,0BAAyB,GAAGD,CAAa,IAAIC,CAAa,GAC1D,kCAAiC,GAAGE,GAAM,KAAK,IAAIA,GAAM,QAAQ,IAAIQ,CAAa,GAClF,QAAS,IAAMC,GAAO,gBAAgBC,EAAMT,CAAG,EAE9C,UAAAO,EACD7B,EAAC,QAAK,UAAU,UAAW,SAAAqB,GAAM,OAASA,GAAM,SAAS,GAC3D,GACF,IA3DKC,CA4DP,CAEJ,EAEMc,EAAa,CAAC,CAAE,KAAAL,EAAM,cAAAM,CAAc,IAA+C,CACvF,MAAMC,EAAM5B,EAAuB,IAAI,EAEvC,OAAAI,EAAYwB,EAAK,CACf,cAAApB,EACA,cAAAC,EACA,eAAgBY,GAAM,MACtB,SAAUM,GAAe,MAAQ,EACjC,qBAAsBN,GAAM,QAC9B,CAAC,EAGC9B,EAAC,OACC,IAAKqC,EACL,UAAWnC,EACT,+FACAkC,GAAe,YAAc,QAAU,cAAgB,EACzD,EAEA,UAAArC,EAAC,KACC,KAAMe,EAAYgB,GAAM,QAAS,GAAGb,CAAa,IAAIC,CAAa,EAAE,EACpE,0BAAyB,GAAGD,CAAa,IAAIC,CAAa,GAC1D,kCAAiC,GAAGY,GAAM,KAAK,IAAIA,GAAM,QAAQ,GACjE,4BAA2B,MAAMM,GAAe,MAAQ,CAAC,GAEzD,SAAArC,EAACI,EAAA,CACC,UAAU,6DACV,OAAQ2B,GAAM,WAAW,KAAO,GAChC,IAAKA,GAAM,WAAW,KAAO,GAC/B,EACF,EACA9B,EAAC,OAAI,UAAWE,EAAG,uDAAuD,EACxE,UAAAF,EAAC,OAAI,UAAU,0CACb,UAAAD,EAAC,KAAE,UAAU,qDAAsD,SAAA+B,GAAM,MAAM,EAC/E/B,EAAC,MAAG,UAAU,uDAAwD,SAAA+B,GAAM,SAAS,GACvF,EAEA/B,EAACK,EAAA,CACC,GAAG,IACH,QAAQ,YACR,aAAY0B,GAAM,OAASA,GAAM,SACjC,UAAW5B,EAAG,qCAAqC,EACnD,KAAMY,EAAYgB,EAAK,KAAM,GAAGb,CAAa,IAAIC,CAAa,EAAE,EAChE,0BAAyB,GAAGD,CAAa,IAAIC,CAAa,GAC1D,4BAA2B,MAAMkB,GAAe,MAAQ,CAAC,GACzD,kCAAiC,GAAGN,GAAM,KAAK,IAAIA,GAAM,QAAQ,IAAIM,GAAe,aAAa,GAEhG,SAAAA,GAAe,cAClB,GACF,GACF,CAEJ,EAEME,EAAiB/B,EAAM,WAA+C,CAAC,CAAE,KAAAuB,EAAM,UAAAS,EAAY,GAAI,MAAAV,CAAM,EAAGQ,IAAQ,CACpH,KAAM,CAACd,EAAYiB,CAAa,EAAIhC,EAAwB,CAAC,EAEvDiC,EAAgBhC,EAAe,CAAC,EAChCsB,EAAetB,EAAyB,CAAC,CAAC,EAC1CiB,EAAcjB,EAAgB,EAAK,EACnC,CAACkB,EAAce,CAAe,EAAIlC,EAAiB,CAAC,EAEpDmC,EAAWlC,EAAuB,IAAI,EAC5CE,EAAoB0B,EAAK,IAAMM,EAAS,OAAyB,EAEjE,MAAMnB,EAAS,CAACoB,EAAeV,IAAuB,CAChDA,IACFH,EAAa,QAAQa,CAAK,EAAIV,EAElC,EAEAtB,EAAU,IAAM,CACd,MAAMiC,EAAe,IAAM,CACrBd,EAAa,QAAQU,EAAc,OAAO,GAC5CC,EAAgBX,EAAa,QAAQU,EAAc,OAAO,EAAE,WAAW,CAE3E,EACAI,EAAa,EACb,MAAMC,EAAiB/B,EAAS8B,EAAc,GAAG,EACjD,cAAO,iBAAiB,SAAUC,CAAc,EACzC,IAAM,OAAO,oBAAoB,SAAUA,CAAc,CAClE,EAAG,CAAC,CAAC,EAEL,MAAMrB,EAAwBf,EAC3BW,GAAgB,CACXE,IAAeF,GAAOK,EAAY,UACtCA,EAAY,QAAU,GAEtBc,EAAcnB,CAAG,EACjBoB,EAAc,QAAUpB,EAC1B,EACA,CAACS,GAAM,SAAUP,CAAU,CAC7B,EAEA,OACEvB,EAAAF,EAAA,CACG,UAAAgC,GAAM,OAAS/B,EAACE,EAAA,CAAM,KAAM,CAAE,MAAO6B,GAAM,KAAM,EAAG,EACrD/B,EAAC,OAAI,IAAK4C,EAAU,UAAWzC,EAAG,sBAAuB,CAAE,YAAa4B,GAAM,QAAU,MAAO,CAAC,EAC9F,SAAA/B,EAAC,OACC,UAAWG,EACT,2KACAqC,CACF,EAEC,SAAAT,GAAM,UAAU,IAAI,CAACV,EAAMC,IAC1BtB,EAACoB,EAAA,CAEC,KAAMC,EACN,IAAKC,EACL,UAAWS,GAAM,UACjB,WAAYP,EACZ,OAAQC,EACR,sBAAuBC,EACvB,YAAaC,EACb,aAAcC,EACd,cAAeG,GAAM,cACrB,MAAOD,EACP,KAAMC,EACN,aAAcC,GAZTV,CAaP,CACD,EACH,EACF,EACAtB,EAAC,OAAI,UAAWG,EAAG,sBAAuB,CAAE,YAAa4B,GAAM,QAAU,MAAO,CAAC,EAC/E,SAAA/B,EAACM,EAAA,CACC,UAAWH,EAAG,8BAA+BqC,CAAS,EACtD,GAAI,iBAAmBT,GAAM,IAC7B,KAAM,CACJ,KAAMA,GAAM,SACZ,cAAe,CACb,MAAOA,GAAM,MACb,UAAWA,GAAM,UACjB,cAAeA,GAAM,cACrB,MAAOD,EACP,MAAOC,GAAM,KACf,CACF,EACA,MAAOK,EACP,YAAa,CACX,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,CACF,EACF,EACF,GACF,CAEJ,CAAC,EACD,IAAOY,EAAQzC,EAAWgC,CAAc",
6
6
  "names": ["Fragment", "jsx", "jsxs", "Title", "cn", "Picture", "Button", "SwiperBox", "withLayout", "React", "useState", "useRef", "useCallback", "useImperativeHandle", "useEffect", "useExposure", "trackUrlRef", "throttle", "Heading", "componentType", "componentName", "AccordionCardsPcItem", "item", "idx", "itemShape", "hoverIndex", "getRef", "handleSwiperItemClick", "isAnimation", "contentWidth", "primaryButton", "event", "data", "accordionRef", "isExpanded", "flexValue", "el", "MobileItem", "configuration", "ref", "AccordionCards", "className", "setHoverIndex", "hoverIndexRef", "setContentWidth", "innerRef", "index", "handleResize", "throttleResize", "AccordionCards_default"]
7
7
  }
@@ -0,0 +1,2 @@
1
+ "use client";import{Fragment as k,jsx as e,jsxs as s}from"react/jsx-runtime";import{cn as x}from"../../helpers/utils.js";import{withLayout as c}from"../../shared/Styles.js";import{Picture as o,Text as p}from"../../components/index.js";const u=d=>{const{data:t,className:n}=d,{title:a,img:m,mobileImg:i,list:g}=t;return e(k,{children:s("div",{className:"w-full",children:[s("div",{className:"flex desktop:items-center desktop:justify-between desktop:flex-row flex-col w-full",children:[e("div",{className:" desktop:w-[600px] lg-desktop:w-[800px]",children:a&&e(p,{html:a,className:"desktop:text-[16px] lg-desktop:text-[18px] text-[14px] font-bold leading-[1.2]"})}),s("div",{children:[m?.url&&e(o,{className:"w-[464px] rounded-2xl hidden desktop:block",imgClassName:"",source:t?.img?.url,alt:t?.img?.alt||""}),i?.url&&e(o,{className:"w-[224px] rounded-2xl block desktop:hidden",imgClassName:"",source:t?.mobileImg?.url,alt:t?.mobileImg?.alt||""})]})]}),e("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:g.map((l,r)=>s("div",{className:"relative",children:[e(o,{className:" rounded-2xl",imgClassName:"",source:l?.img?.url,alt:l?.img?.alt||""}),s("div",{className:x("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":l.theme==="dark"}),children:[e(p,{html:l?.title,className:" lg-desktop:text-[24px] text-[20px] font-bold leading-[1.2]"}),e(p,{html:l?.desc,className:" lg-desktop:text-[16px] text-[14px] font-bold leading-[1.4]"})]})]},r))})]})})};var v=c(u);export{v as default};
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": "aA8BI,mBAAAA,EAKY,OAAAC,EAMJ,QAAAC,MAXR,oBA7BJ,OAAS,MAAAC,MAAU,yBAEnB,OAAS,cAAAC,MAAkB,yBAC3B,OAAS,WAAAC,EAAS,QAAAC,MAAY,4BAqB9B,MAAMC,EAAaC,GAAyB,CAC1C,KAAM,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAIF,EACtB,CAAE,MAAAG,EAAO,IAAAC,EAAM,UAAAC,EAAU,KAAAC,CAAI,EAAIL,EAEvC,OACER,EAAAD,EAAA,CACE,SAAAE,EAAC,OAAI,UAAU,SACb,UAAAA,EAAC,OAAI,UAAU,qFACX,UAAAD,EAAC,OAAI,UAAU,0CACV,SAAAU,GACDV,EAACK,EAAA,CACG,KAAMK,EACN,UAAU,iFACd,EAEJ,EACAT,EAAC,OACI,UAAAU,GAAK,KACNX,EAACI,EAAA,CACG,UAAU,6CACV,aAAa,GACb,OAAQI,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GAC3B,EAEHI,GAAW,KACRZ,EAACI,EAAA,CACG,UAAU,6CACV,aAAa,GACb,OAAQI,GAAM,WAAW,IACzB,IAAKA,GAAM,WAAW,KAAO,GACjC,GAEJ,GACJ,EACAR,EAAC,OAAI,UAAU,wHACV,SAAAa,EAAK,IAAI,CAACC,EAAKC,IACZd,EAAC,OAAc,UAAU,WACrB,UAAAD,EAACI,EAAA,CACG,UAAU,eACV,aAAa,GACb,OAAQU,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GAC3B,EACAb,EAAC,OAAI,UAAWC,EACZ,+JACA,CACI,YAAaY,EAAK,QAAU,MAChC,CACJ,EACI,UAAAd,EAACK,EAAA,CAAK,KAAMS,GAAM,MAAO,UAAU,8DAA8D,EACjGd,EAACK,EAAA,CAAK,KAAMS,GAAM,KAAM,UAAU,8DAA8D,GACpG,IAfMC,CAgBV,CACH,EACL,GACF,EACF,CAEJ,EAEA,IAAOC,EAAQb,EAAWG,CAAS",
6
+ "names": ["Fragment", "jsx", "jsxs", "cn", "withLayout", "Picture", "Text", "AplusDesc", "props", "data", "className", "title", "img", "mobileImg", "list", "item", "ind", "AplusDesc_default"]
7
+ }
@@ -7,7 +7,6 @@ type FilterCardWrapProps = {
7
7
  closeFilter: boolean;
8
8
  page: number;
9
9
  metafields: any;
10
- noResultNode?: React.ReactNode;
11
10
  refreshStarRating?: () => void;
12
11
  onPrimaryChange?: (item: any, sku: string) => void;
13
12
  onSecondaryChange?: (item: any, sku: string) => void;
@@ -1,2 +1,2 @@
1
- import{jsx as r,jsxs as v}from"react/jsx-runtime";import{cn as h}from"../../helpers/utils.js";import{useMediaQuery as B}from"react-responsive";import q from"./FilterCardWrapItem";import{useRef as A,useState as O,useEffect as m,forwardRef as V,useImperativeHandle as Y}from"react";import{cloneDeep as E}from"es-toolkit";const H=(F,I)=>{const{shopifyData:w={},isSale:y=!1,total:N,result:o,closeFilter:p,page:f,metafields:x,noResultNode:D,refreshStarRating:L,onPrimaryChange:R,onSecondaryChange:M,onNextPage:b,onPrevPage:j}=F,{advertisingSpace:C}=x,{buttonText:T,loadMoreText:W}=w,c=C||w?.advertisingSpace,S=A(null),[i,u]=O([]),s=B({query:"(max-width: 1024px)"}),P=n=>{const e=E(n||[]);if(c){const t=e.findIndex(g=>g.mImage);if(t===-1){const g=Math.min(p?c?.maxLocation||7:c?.minLocation||5,e.length);e.splice(g,0,c)}else{e.splice(t,1);const g=Math.min(p?c?.maxLocation||7:c?.minLocation||5,e.length);e.splice(g,0,c)}}return e};Y(I,()=>({clearData(){u([])}}));const k=()=>{const n=S.current;if(!n)return;const e=n.getBoundingClientRect()?.top+window?.pageYOffset-120;window?.scrollTo?.({top:e,behavior:"smooth"})},z=n=>n?.metafields?.seoSetting?.noindex;return m(()=>{(o?.slug||o?.id)&&((f===1||!s)&&u([]),o?.products&&u(n=>{const e=o.products?.filter?.(a=>!n.some(l=>l.id===a.id));let t=[...n,...e];const g=t.filter?.(a=>!(!a?.metafields?.seoSetting?.noindex&&a.availableForSale&&a?.variants?.some(l=>l.availableForSale)));return t=t.filter?.(a=>!a?.metafields?.seoSetting?.noindex&&a.availableForSale&&a?.variants?.some(l=>l.availableForSale)),t.push(...g),y&&(t=t.filter?.(a=>{let l=!1;if(a?.options?.find(d=>d?.displayName==="color"))l=a?.variants?.find(d=>d?.coupons?.length&&d?.coupons?.[0]&&typeof d?.coupons?.[0]=="object");else{const d=a?.variants?.[0]?.coupons;l=d?.length&&d?.[0]&&typeof d?.[0]=="object"}return!!l})),t?.length&&(f===1&&!s||s)&&(t=P(t)),t}))},[o?.products,f,s,C,y]),m(()=>{i?.length&&f===1&&!s&&u(P(i))},[p]),m(()=>{const n=document?.querySelector?.(".yotpo-reviews-star-ratings-widget");i?.length&&(!n||s)&&L?.()},[i]),v("div",{className:"filter-card-wrap-container",ref:S,children:[r("div",{className:h("w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3",{"laptop:grid-cols-4 tablet:grid-cols-3":p&&!s,"laptop:grid-cols-3 tablet:grid-cols-2":!p&&!s},"filter-card-wrap"),children:i?.map?.(n=>z(n)?null:r(q,{data:n,buttonText:T,metafields:x,onPrimaryChange:(e,t)=>R?.(e,t),onSecondaryChange:(e,t)=>M?.(e,t)},n.id))}),!i?.length&&D,s&&o?.pageInfo?.hasNextPage?v("div",{onClick:()=>{b?.(o?.pageInfo?.endCursor)},className:"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more",children:[r("span",{children:W||"View More"}),r("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none",children:r("path",{d:"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z",fill:"#1D1D1F"})})]}):null,!s&&N>18?v("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[r("button",{name:"perv page",disabled:!o?.pageInfo?.hasPreviousPage||!i?.length,className:h("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!o?.pageInfo?.hasPreviousPage||!i?.length}),onClick:()=>{k?.(),j?.(o?.pageInfo?.startCursor)},children:r("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:r("path",{d:"M12 5L7 10L12 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})}),r("button",{name:"next page",className:h("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!o?.pageInfo?.hasNextPage||!i?.length}),disabled:!o?.pageInfo?.hasNextPage||!i?.length,onClick:()=>{k?.(),b?.(o?.pageInfo?.endCursor)},children:r("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:r("path",{d:"M7.5 5L12.5 10L7.5 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})})]}):null]})};var X=V(H);export{X as default};
1
+ import{jsx as a,jsxs as v}from"react/jsx-runtime";import{cn as m}from"../../helpers/utils.js";import{useMediaQuery as T}from"react-responsive";import W from"./FilterCardWrapItem";import{useRef as B,useState as A,useEffect as h,forwardRef as O,useImperativeHandle as V}from"react";import{cloneDeep as Y}from"es-toolkit";const q=(k,F)=>{const{shopifyData:w={},isSale:D=!1,total:I,result:n,closeFilter:p,page:f,metafields:y,refreshStarRating:L,onPrimaryChange:N,onSecondaryChange:M,onNextPage:b,onPrevPage:R}=k,{advertisingSpace:x}=y,{buttonText:j,loadMoreText:z}=w,d=x||w?.advertisingSpace,C=B(null),[g,u]=A([]),i=T({query:"(max-width: 1024px)"}),S=r=>{const e=Y(r||[]);if(d){const t=e.findIndex(c=>c.mImage);if(t===-1){const c=Math.min(p?d?.maxLocation||7:d?.minLocation||5,e.length);e.splice(c,0,d)}else{e.splice(t,1);const c=Math.min(p?d?.maxLocation||7:d?.minLocation||5,e.length);e.splice(c,0,d)}}return e};V(F,()=>({clearData(){u([])}}));const P=()=>{const r=C.current;if(!r)return;const e=r.getBoundingClientRect()?.top+window?.pageYOffset-120;window?.scrollTo?.({top:e,behavior:"smooth"})};return h(()=>{(n?.slug||n?.id)&&((f===1||!i)&&u([]),n?.products&&u(r=>{const e=n.products?.filter?.(o=>!r.some(s=>s.id===o.id));let t=[...r,...e];const c=t.filter?.(o=>!(!o?.metafields?.seoSetting?.noindex&&o.availableForSale&&o?.variants?.some(s=>s.availableForSale)));return t.push(...c),t=t.filter?.(o=>!o?.metafields?.seoSetting?.noindex&&o.availableForSale&&o?.variants?.some(s=>s.availableForSale)),D&&(t=t.filter?.(o=>{let s=!1;if(o?.options?.find(l=>l?.displayName==="color"))s=o?.variants?.find(l=>l?.coupons?.length&&l?.coupons?.[0]&&typeof l?.coupons?.[0]=="object");else{const l=o?.variants?.[0]?.coupons;s=l?.length&&l?.[0]&&typeof l?.[0]=="object"}return!!s})),(f===1&&!i||i)&&(t=S(t)),t}))},[n?.products,f,i,x]),h(()=>{g?.length&&f===1&&!i&&u(S(g))},[p]),h(()=>{g?.length&&L?.()},[g]),v("div",{className:"filter-card-wrap-container",ref:C,children:[a("div",{className:m("min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3",{"laptop:grid-cols-4 tablet:grid-cols-3":p&&!i,"laptop:grid-cols-3 tablet:grid-cols-2":!p&&!i},"filter-card-wrap"),children:g?.map?.(r=>a(W,{data:r,buttonText:j,metafields:y,onPrimaryChange:(e,t)=>N?.(e,t),onSecondaryChange:(e,t)=>M?.(e,t)},r.id))}),i?v("div",{onClick:()=>{b?.(n?.pageInfo?.endCursor)},className:"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more",children:[a("span",{children:z||"View More"}),a("div",{className:"size-[18px]",children:a("svg",{xmlns:"http://www.w3.org/2000/svg",width:"12",height:"6",viewBox:"0 0 12 6",fill:"none",children:a("path",{d:"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z",fill:"#1D1D1F"})})})]}):null,!i&&I>18?v("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[a("button",{name:"perv page",disabled:!n?.pageInfo?.hasPreviousPage,className:m("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!n?.pageInfo?.hasPreviousPage}),onClick:()=>{P?.(),R?.(n?.pageInfo?.startCursor)},children:a("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:a("path",{d:"M12 5L7 10L12 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})}),a("button",{name:"next page",className:m("flex items-center justify-center lg-desktop:size-14 size-10 rounded-full leading-tight overflow-hidden bg-transparent border-[1.5px] border-[#3D3D3F]",{"opacity-50 cursor-not-allowed":!n?.pageInfo?.hasNextPage}),disabled:!n?.pageInfo?.hasNextPage,onClick:()=>{P?.(),b?.(n?.pageInfo?.endCursor)},children:a("svg",{xmlns:"http://www.w3.org/2000/svg",width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",children:a("path",{d:"M7.5 5L12.5 10L7.5 15",stroke:"#3D3D3F","stroke-width":"1.66667","stroke-linecap":"round","stroke-linejoin":"round"})})})]}):null]})};var K=O(q);export{K as default};
2
2
  //# sourceMappingURL=FilterCardWrap.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/CollectionsFilters/FilterCardWrap.tsx"],
4
- "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport { useMediaQuery } from 'react-responsive'\nimport FilterCardWrapItem from './FilterCardWrapItem'\nimport { useRef, useState, useEffect, forwardRef, useImperativeHandle } from 'react'\nimport type { Ref } from 'react'\nimport { cloneDeep } from 'es-toolkit'\n\ntype FilterCardWrapProps = {\n isSale?: boolean\n result?: any\n total: number\n shopifyData?: any\n currentPage?: number\n closeFilter: boolean\n page: number\n metafields: any\n noResultNode?: React.ReactNode\n refreshStarRating?: () => void\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\nconst FilterCardWrap = (props: FilterCardWrapProps, ref: Ref<unknown> | undefined) => {\n const {\n shopifyData = {},\n isSale = false,\n total,\n result,\n closeFilter,\n page,\n metafields,\n noResultNode,\n refreshStarRating,\n onPrimaryChange,\n onSecondaryChange,\n onNextPage,\n onPrevPage,\n } = props\n const { advertisingSpace } = metafields\n const { buttonText, loadMoreText } = shopifyData\n\n const currentAdvertisingSpace = advertisingSpace || shopifyData?.advertisingSpace\n\n const filterCardWrapRef = useRef<any>(null)\n\n const [data, setData] = useState<any[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 1024px)' })\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 useImperativeHandle(ref, () => ({\n clearData() {\n setData([])\n },\n }))\n\n const onScrollTop = () => {\n const target = filterCardWrapRef.current\n if (!target) return\n const targetY = target.getBoundingClientRect()?.top + window?.pageYOffset - 120\n window?.scrollTo?.({\n top: targetY,\n behavior: 'smooth',\n })\n }\n\n const hasNoIndex = (product: { metafields: { seoSetting: { noindex: any } } }) => {\n return product?.metafields?.seoSetting?.noindex\n }\n\n // \u5904\u7406\u4EA7\u54C1\u6570\u636E\n useEffect(() => {\n if (result?.slug || result?.id) {\n if (page === 1 || !isMobile) {\n setData([])\n }\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\u662F\u6709\u6298\u6263\u7684\u4EA7\u54C1\uFF0C\u5219\u8FC7\u6EE4\u6389\u6CA1\u6709\u6298\u6263\u7684\u4EA7\u54C1\n if (isSale) {\n updatedProducts = updatedProducts.filter?.((item: any) => {\n let isShow = false\n const isColor = item?.options?.find((item: any) => item?.displayName === 'color')\n if (isColor) {\n isShow = item?.variants?.find(\n (params: any) =>\n params?.coupons?.length && params?.coupons?.[0] && typeof params?.coupons?.[0] === 'object'\n )\n } else {\n const isVariants = item?.variants?.[0]?.coupons\n isShow = isVariants?.length && isVariants?.[0] && typeof isVariants?.[0] === 'object'\n }\n return !!isShow\n })\n }\n // \u5982\u679C advertisingSpace \u5B58\u5728\u4E14\u5C1A\u672A\u6DFB\u52A0\u5230\u6570\u7EC4\u4E2D\n if (updatedProducts?.length && ((page === 1 && !isMobile) || isMobile)) {\n updatedProducts = handleAdvertisingSpace(updatedProducts)\n }\n return updatedProducts\n })\n }\n }\n }, [result?.products, page, isMobile, advertisingSpace, isSale])\n\n useEffect(() => {\n if (!data?.length) return\n if (page === 1 && !isMobile) {\n setData(handleAdvertisingSpace(data))\n }\n }, [closeFilter])\n\n useEffect(() => {\n const isClass = document?.querySelector?.('.yotpo-reviews-star-ratings-widget')\n if (data?.length && (!isClass || isMobile)) {\n refreshStarRating?.()\n }\n }, [data])\n return (\n <div className=\"filter-card-wrap-container\" ref={filterCardWrapRef}>\n <div\n className={cn(\n 'w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3',\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 if (hasNoIndex(item)) return null\n return (\n <FilterCardWrapItem\n data={item}\n key={item.id}\n buttonText={buttonText}\n metafields={metafields}\n onPrimaryChange={(e, data) => onPrimaryChange?.(e, data)}\n onSecondaryChange={(e, data) => onSecondaryChange?.(e, data)}\n />\n )\n })}\n </div>\n {!data?.length && noResultNode}\n {isMobile && result?.pageInfo?.hasNextPage ? (\n <div\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n className=\"mt-6 text-sm font-bold cursor-pointer flex items-center justify-center gap-1 filter-card-wrap-more\"\n >\n <span>{loadMoreText || 'View More'}</span>\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"6\" viewBox=\"0 0 12 6\" fill=\"none\">\n <path\n d=\"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z\"\n fill=\"#1D1D1F\"\n />\n </svg>\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 || !data?.length}\n className={cn(\n '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 {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasPreviousPage || !data?.length,\n }\n )}\n onClick={() => {\n onScrollTop?.()\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={cn(\n '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 {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasNextPage || !data?.length,\n }\n )}\n disabled={!result?.pageInfo?.hasNextPage || !data?.length}\n onClick={() => {\n onScrollTop?.()\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 ) : null}\n </div>\n )\n}\n\nexport default forwardRef(FilterCardWrap)\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "cn", "useMediaQuery", "FilterCardWrapItem", "useRef", "useState", "useEffect", "forwardRef", "useImperativeHandle", "cloneDeep", "FilterCardWrap", "props", "ref", "shopifyData", "isSale", "total", "result", "closeFilter", "page", "metafields", "noResultNode", "refreshStarRating", "onPrimaryChange", "onSecondaryChange", "onNextPage", "onPrevPage", "advertisingSpace", "buttonText", "loadMoreText", "currentAdvertisingSpace", "filterCardWrapRef", "data", "setData", "isMobile", "handleAdvertisingSpace", "products", "updatedProducts", "findIndex", "item", "insertIndex", "onScrollTop", "target", "targetY", "hasNoIndex", "product", "prevProducts", "newProducts", "prev", "soldOutProducts", "isShow", "params", "isVariants", "isClass", "FilterCardWrap_default"]
4
+ "sourcesContent": ["import { cn } from '../../helpers/utils.js'\nimport { useMediaQuery } from 'react-responsive'\nimport FilterCardWrapItem from './FilterCardWrapItem'\nimport { useRef, useState, useEffect, forwardRef, useImperativeHandle } from 'react'\nimport type { Ref } from 'react'\nimport { cloneDeep } from 'es-toolkit'\n\ntype FilterCardWrapProps = {\n isSale?: boolean\n result?: any\n total: number\n shopifyData?: any\n currentPage?: number\n closeFilter: boolean\n page: number\n metafields: any\n refreshStarRating?: () => void\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\nconst FilterCardWrap = (props: FilterCardWrapProps, ref: Ref<unknown> | undefined) => {\n const {\n shopifyData = {},\n isSale = false,\n total,\n result,\n closeFilter,\n page,\n metafields,\n refreshStarRating,\n onPrimaryChange,\n onSecondaryChange,\n onNextPage,\n onPrevPage,\n } = props\n const { advertisingSpace } = metafields\n const { buttonText, loadMoreText } = shopifyData\n\n const currentAdvertisingSpace = advertisingSpace || shopifyData?.advertisingSpace\n\n const filterCardWrapRef = useRef<any>(null)\n\n const [data, setData] = useState<any[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 1024px)' })\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 useImperativeHandle(ref, () => ({\n clearData() {\n setData([])\n },\n }))\n\n const onScrollTop = () => {\n const target = filterCardWrapRef.current\n if (!target) return\n const targetY = target.getBoundingClientRect()?.top + window?.pageYOffset - 120\n window?.scrollTo?.({\n top: targetY,\n behavior: 'smooth',\n })\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 // \u5C06\u5DF2\u552E\u5B8C\u7684\u4EA7\u54C1\u6DFB\u52A0\u5230\u6700\u540E\n updatedProducts.push(...soldOutProducts)\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 // \u5982\u679C\u662F\u6709\u6298\u6263\u7684\u4EA7\u54C1\uFF0C\u5219\u8FC7\u6EE4\u6389\u6CA1\u6709\u6298\u6263\u7684\u4EA7\u54C1\n if (isSale) {\n updatedProducts = updatedProducts.filter?.((item: any) => {\n let isShow = false\n const isColor = item?.options?.find((item: any) => item?.displayName === 'color')\n if (isColor) {\n isShow = item?.variants?.find(\n (params: any) =>\n params?.coupons?.length && params?.coupons?.[0] && typeof params?.coupons?.[0] === 'object'\n )\n } else {\n const isVariants = item?.variants?.[0]?.coupons\n isShow = isVariants?.length && isVariants?.[0] && typeof isVariants?.[0] === 'object'\n }\n return !!isShow\n })\n }\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 useEffect(() => {\n if (data?.length) {\n refreshStarRating?.()\n }\n }, [data])\n\n return (\n <div className=\"filter-card-wrap-container\" ref={filterCardWrapRef}>\n <div\n className={cn(\n 'min-h-[60vh] w-full grid gap-3 md-tablet:grid-cols-2 grid-cols-3',\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 return (\n <FilterCardWrapItem\n data={item}\n key={item.id}\n buttonText={buttonText}\n metafields={metafields}\n onPrimaryChange={(e, data) => onPrimaryChange?.(e, data)}\n onSecondaryChange={(e, data) => onSecondaryChange?.(e, data)}\n />\n )\n })}\n </div>\n {isMobile ? (\n <div\n onClick={() => {\n onNextPage?.(result?.pageInfo?.endCursor)\n }}\n className=\"mt-6 text-sm font-bold 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 xmlns=\"http://www.w3.org/2000/svg\" width=\"12\" height=\"6\" viewBox=\"0 0 12 6\" fill=\"none\">\n <path\n d=\"M9.96967 0.21967C10.2626 -0.0732232 10.7373 -0.073223 11.0302 0.21967C11.3231 0.512563 11.3231 0.987324 11.0302 1.28022L6.53022 5.78022C6.23732 6.07311 5.76256 6.07311 5.46967 5.78022L0.96967 1.28022C0.676777 0.987324 0.676777 0.512563 0.96967 0.21967C1.26256 -0.0732233 1.73732 -0.0732233 2.03022 0.21967L5.99994 4.1894L9.96967 0.21967Z\"\n fill=\"#1D1D1F\"\n />\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={cn(\n '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 {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasPreviousPage,\n }\n )}\n onClick={() => {\n onScrollTop?.()\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={cn(\n '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 {\n 'opacity-50 cursor-not-allowed': !result?.pageInfo?.hasNextPage,\n }\n )}\n disabled={!result?.pageInfo?.hasNextPage}\n onClick={() => {\n onScrollTop?.()\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}\n\nexport default forwardRef(FilterCardWrap)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "cn", "useMediaQuery", "FilterCardWrapItem", "useRef", "useState", "useEffect", "forwardRef", "useImperativeHandle", "cloneDeep", "FilterCardWrap", "props", "ref", "shopifyData", "isSale", "total", "result", "closeFilter", "page", "metafields", "refreshStarRating", "onPrimaryChange", "onSecondaryChange", "onNextPage", "onPrevPage", "advertisingSpace", "buttonText", "loadMoreText", "currentAdvertisingSpace", "filterCardWrapRef", "data", "setData", "isMobile", "handleAdvertisingSpace", "products", "updatedProducts", "findIndex", "item", "insertIndex", "onScrollTop", "target", "targetY", "prevProducts", "newProducts", "product", "prev", "soldOutProducts", "isShow", "params", "isVariants", "FilterCardWrap_default"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{Fragment as Ne,jsx as t,jsxs as m}from"react/jsx-runtime";import{cn as b,atobID as fe,yotpoInstanceId as be}from"../../helpers/utils.js";import{useAiuiContext as ge}from"../AiuiProvider/index.js";import{formatVariantPrice as xe}from"../ShelfDisplay/shelfDisplay.js";import ye from"../../components/badge.js";import{Text as ve}from"../../components/text.js";import R from"../../components/button.js";import V from"../../components/picture.js";import{trackUrlRef as N}from"../../shared/trackUrlRef.js";import{getFunctionMemberPrice as he}from"./component/price.js";import{useState as n,useEffect as w}from"react";const S="image",$="product_shelf",_e=999999999e-2,ke=e=>{let u;return e?.includes("products")?u=e?.split("products")[0]+"files/":u=e?.replace(e?.split("files")?.pop()||"","")+"/",u},Ce=({data:e,buttonText:u,itemShape:q,metafields:G,onPrimaryChange:J,onSecondaryChange:K})=>{const{memberPriceDiscount:Q,memberSetting:P,discounts:I,shopCommon:X}=G,[p,T]=n(""),[Y,B]=n(""),[f,M]=n(""),[z,Z]=n(!1),[L,ee]=n({}),[te,oe]=n(!1),[W,se]=n({price:"",basePrice:""}),[j,re]=n([]),[ne,le]=n([]),[g,ie]=n(""),[ae,ce]=n(""),{locale:l="us",currencyCode:de,isLogin:F}=ge(),v=e?.custom_name||e?.title||e?.name,O=e?.custom_description||e?.description||e?.descriptionHtml,a=e?.filter_variants||e?.variants||[],D=fe(e?.id||""),H=e?.images?.[0]?.url,me=o=>M(o),h=(o,r,s,i)=>{oe(i),ie(o||""),se({basePrice:r||"",price:s||""})};return w(()=>{if(f){const s=a?.find(i=>i?.name?.includes?.(f));T(s?.sku||a?.[0]?.sku||""),B(s?.image?.url||a?.[0]?.image?.url||"");return}const o=e?.options?.find(s=>s?.displayName==="color")?.values?.[0]?.label;o&&M(o);const r=a?.find(s=>s?.name?.includes?.(o));T(r?.sku||a?.[0]?.sku||""),B(r?.image?.url||a?.[0]?.image?.url||"")},[f]),w(()=>{if(!p)return;re(e?.tags||[]);const o=a?.find(c=>c?.sku===p)||a?.[0]||{};ee(o),Z(!o?.availableForSale||o?.price?.amount===_e);const{infos:r}=o?.metafields||{},{productInfos:s,preRender:i}=e?.metafields||{};ce(r?.comingSoon||s?.comingSoon||i?.soldOut||X?.soldOut||"");const x=o?.coupons?.[0],{price:A,basePrice:U,discount:ue,discountAmount:pe}=xe({locale:l,amount:x?x.variant_price4wscode:o.price,baseAmount:x?o.price:0,currencyCode:e?.price?.currencyCode||"USD"}),E=(()=>{if(x?.value_type==="fixed_amount"){const c=pe||"",y=c.match(/^(.*?)(\d[\d.,]*)(.*)$/);if(y){const[,_,d,k]=y;let C=d;return d.endsWith(".00")?C=d.replace(/\.00$/,""):d.endsWith(",00")&&(C=d.replace(/,00$/,"")),`${_}${C}${k}`}return c}return ue||""})();if(F){const c=he({locale:l,variant:o,shopMemberPriceDiscountConfig:Q,currencyCode:de||e?.price?.currencyCode||"USD"});if(c){const{hasMemberPrice:y,salePriceWithCurrency:_,originalPriceWithCurrency:d,savePriceWithCurrency:k}=c;h(k||"",d||"",y?_:"",c?.hasMemberPrice)}else h(E,U||"",A||"",!1)}else h(E,U||"",A||"",!1)},[e,p]),w(()=>{let o=[];if(g){const s=`${g} ${I?.off}`;o.push(s)}const r=j?.filter?.(s=>s?.startsWith?.("CLtag"))?.map?.(s=>s?.replace?.("CLtag:",""))?.slice?.(0,g?1:2);le(o.concat(r))},[j,g]),t("div",{className:b(q==="round"?"rounded-2xl":"rounded-none","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?t("div",{className:"size-full box-border overflow-hidden hover:[&_img]:scale-105",children:t("div",{className:"relative inset-0 size-full",children:m("a",{className:"size-full",href:N(e?.link,`${S}_${$}`),children:[t(V,{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"}),m("div",{className:"desktop:p-6 absolute inset-x-0 top-0 box-border overflow-hidden p-4",children:[t("p",{className:"desktop:mb-2 mb-1 text-info-primary desktop:text-base text-sm font-bold",dangerouslySetInnerHTML:{__html:e?.subTitle}}),t("span",{className:"text-info-secondary desktop:text-[32px] text-[20px] font-bold desktop:leading-9 line-clamp-4 leading-6",dangerouslySetInnerHTML:{__html:e?.title}})]})]})})}):m("div",{className:"size-full desktop:p-6 desktop:pt-4 box-border overflow-hidden flex flex-col justify-between tablet:p-4 p-2 pb-4",children:[t("div",{className:"min-h-6 flex flex-wrap gap-1 overflow-hidden collection-filter-tags",children:ne?.map?.((o,r)=>t(ye,{className:"whitespace-nowrap max-w-full truncate px-1 box-border font-bold item-badge",children:o},r))}),t("a",{target:"_blank","aria-label":v,className:"my-1",href:N(`${l==="us"||!l?"":`/${l}`}/products/${e?.handle}`,`${S}_${$}`),children:t("div",{className:b("m-auto desktop:size-[196px] size-[120px] overflow-hidden"),children:t(V,{alt:"",source:Y,className:"h-full [&_img]:object-cover [&_img]:h-full [&_img]:w-fit"})})}),e?.options?.map(o=>{if(o?.displayName==="color")return t("div",{className:"flex items-center gap-1",children:o?.values?.map(r=>{const s=r?.hexColors?r.hexColors?.[0]:r?.label,i=s.startsWith("#")?s:"";return t("button",{onClick:()=>me(r?.label),className:b("size-4 rounded-full cursor-pointer overflow-hidden",`${f===r?.label?"border-[#00BEFA]":""}`),children:t("span",{className:b("h-full w-full overflow-hidden border-[0.5px] border-transparent","relative flex items-center justify-center overflow-hidden rounded-full",f===r?.label&&"border-[#ddd]"),style:i?{backgroundColor:i}:{},children:!i&&H&&t("img",{alt:s,className:"h-full w-full object-cover",src:`${ke(H)}${s?.toLowerCase().split(" ")?.join("-")}_50x.png`})})},r?.label)})})}),m("div",{children:[v?t("span",{dangerouslySetInnerHTML:{__html:v||""},className:"shelf-display-product-title line-clamp-2 lg-desktop:text-2xl laptop:text-xl text-base font-bold"}):null,e?.metafields?.judgemeBadge?t("a",{target:"_blank",className:"font-bold text-xs [&_.jdgm-star]:text-[#F77234]",dangerouslySetInnerHTML:{__html:e?.metafields?.judgemeBadge},href:N(`${l==="us"||!l?"":`/${l}`}/products/${e?.handle}`,`${S}_${$}`)}):t("div",{className:"w-full truncate font-bold yotpo-widget-instance [&_.yotpo-sr-bottom-line-new-review]:hidden [&_.yotpo-sr-bottom-line-text]:!text-xs [&_.yotpo-sr-bottom-line-text]:!pt-0 [&_.yotpo-sr-bottom-line-summary]:!items-center [&_.yotpo-sr-bottom-line-summary_span]:!h-auto [&_.yotpo-sr-bottom-line-summary_svg]:!mr-[3px]","data-yotpo-instance-id":be(l),"data-yotpo-product-id":D,"data-yotpo-cart-product-id":D,"data-yotpo-section-id":""}),O?t(ve,{size:2,html:O||"",className:"desktop:text-base laptop:text-sm shelf-display-product-description line-clamp-1 text-xs font-bold"}):null,m("div",{className:"mt-3 mb-2",children:[t("p",{dangerouslySetInnerHTML:{__html:F&&te&&(I?.memberPrice||P?.member_price||P?.plus_member_price)||""},className:"text-info-primary lg-desktop:text-lg desktop:text-base laptop:text-sm text-xs font-bold"}),t("div",{className:"flex items-center",children:z?t("div",{className:"desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold",children:ae||""}):m(Ne,{children:[t("div",{className:"final-price desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold",children:L?.availableForSale&&W?.price||""}),t("div",{className:"origin-price desktop:text-xl tablet:text-lg text-info-secondary ml-1 text-sm font-bold line-through",children:L?.availableForSale&&W?.basePrice||""})]})})]}),m("div",{className:b("shelf-flex-button-group","lg-desktop:gap-3 flex items-center gap-2 m-tablet:flex-col"),children:[t(R,{variant:"secondary",className:"m-tablet:w-full font-bold",onClick:()=>K?.(e,p),children:u?.secondaryButton||"Learn More"}),t(R,{variant:"primary",className:"m-tablet:w-full font-bold",disabled:z,onClick:()=>J?.(e,p),children:u?.primaryButton||"Shop Now"})]})]})]})},e?.id||e?.handle)};var We=Ce;export{We as default};
1
+ import{Fragment as Ne,jsx as t,jsxs as d}from"react/jsx-runtime";import{cn as v,atobID as ue,yotpoInstanceId as fe}from"../../helpers/utils.js";import{useAiuiContext as be}from"../AiuiProvider/index.js";import{formatVariantPrice as ge}from"../ShelfDisplay/shelfDisplay.js";import xe from"../../components/badge.js";import{Text as ve}from"../../components/text.js";import E from"../../components/button.js";import R from"../../components/picture.js";import{trackUrlRef as _}from"../../shared/trackUrlRef.js";import{getFunctionMemberPrice as ye}from"./component/price.js";import{useState as i,useEffect as S}from"react";const w="image",$="product_shelf",he=999999999e-2,ke=e=>{let m;return e?.includes("products")?m=e?.split("products")[0]+"files/":m=e?.replace(e?.split("files")?.pop()||"","")+"/",m},Ce=({data:e,buttonText:m,itemShape:V,metafields:q,onPrimaryChange:G,onSecondaryChange:J})=>{const{memberPriceDiscount:K,memberSetting:P,discounts:I,shopCommon:Q}=q,[p,T]=i(""),[X,B]=i(""),[f,M]=i(""),[z,Y]=i(!1),[L,Z]=i({}),[ee,te]=i(!1),[F,oe]=i({price:"",basePrice:""}),[O,se]=i([]),[re,ie]=i([]),[b,ne]=i(""),[le,ae]=i(""),{locale:n="us",currencyCode:ce,isLogin:W}=be(),y=e?.custom_name||e?.title||e?.name,j=e?.custom_description||e?.description||e?.descriptionHtml,l=e?.filter_variants||e?.variants||[],D=ue(e?.id||""),de=o=>M(o),h=(o,r,s,u)=>{te(u),ne(o||""),oe({basePrice:r||"",price:s||""})};return S(()=>{if(f){const s=l?.find(u=>u?.name?.includes?.(f));T(s?.sku||l?.[0]?.sku||""),B(s?.image?.url||l?.[0]?.image?.url||"");return}const o=e?.options?.find(s=>s?.displayName==="color")?.values?.[0]?.label;o&&M(o);const r=l?.find(s=>s?.name?.includes?.(o));T(r?.sku||l?.[0]?.sku||""),B(r?.image?.url||l?.[0]?.image?.url||"")},[f]),S(()=>{if(!p)return;se(e?.tags||[]);const o=l?.find(a=>a?.sku===p)||l?.[0]||{};Z(o),Y(!o?.availableForSale||o?.price?.amount===he);const{infos:r}=o?.metafields||{},{productInfos:s,preRender:u}=e?.metafields||{};ae(r?.comingSoon||s?.comingSoon||u?.soldOut||Q?.soldOut||"");const g=o?.coupons?.[0],{price:H,basePrice:A,discount:me,discountAmount:pe}=ge({locale:n,amount:g?g.variant_price4wscode:o.price,baseAmount:g?o.price:0,currencyCode:e?.price?.currencyCode||"USD"}),U=(()=>{if(g?.value_type==="fixed_amount"){const a=pe||"",x=a.match(/^(.*?)(\d[\d.,]*)(.*)$/);if(x){const[,k,c,C]=x;let N=c;return c.endsWith(".00")?N=c.replace(/\.00$/,""):c.endsWith(",00")&&(N=c.replace(/,00$/,"")),`${k}${N}${C}`}return a}return me||""})();if(W){const a=ye({locale:n,variant:o,shopMemberPriceDiscountConfig:K,currencyCode:ce||e?.price?.currencyCode||"USD"});if(a){const{hasMemberPrice:x,salePriceWithCurrency:k,originalPriceWithCurrency:c,savePriceWithCurrency:C}=a;h(C||"",c||"",x?k:"",a?.hasMemberPrice)}else h(U,A||"",H||"",!1)}else h(U,A||"",H||"",!1)},[e,p]),S(()=>{let o=[];if(b){const s=`${b} ${I?.off}`;o.push(s)}const r=O?.filter?.(s=>s?.startsWith?.("CLtag"))?.map?.(s=>s?.replace?.("CLtag:",""))?.slice?.(0,b?1:2);ie(o.concat(r))},[O,b]),t("div",{className:v(V==="round"?"rounded-2xl":"rounded-none","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?t("div",{className:"size-full box-border overflow-hidden hover:[&_img]:scale-105",children:t("div",{className:"relative inset-0 size-full",children:d("a",{className:"size-full",href:_(e?.link,`${w}_${$}`),children:[t(R,{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"}),d("div",{className:"desktop:p-6 absolute inset-x-0 top-0 box-border overflow-hidden p-4",children:[t("p",{className:"desktop:mb-2 mb-1 text-info-primary desktop:text-base text-sm font-bold",dangerouslySetInnerHTML:{__html:e?.subTitle}}),t("span",{className:"text-info-secondary desktop:text-[32px] text-[20px] font-bold desktop:leading-9 line-clamp-4 leading-6",dangerouslySetInnerHTML:{__html:e?.title}})]})]})})}):d("div",{className:"size-full desktop:p-6 desktop:pt-4 box-border overflow-hidden flex flex-col justify-between tablet:p-4 p-2 pb-4",children:[t("div",{className:"flex flex-wrap gap-1 overflow-hidden collection-filter-tags",children:re?.map?.((o,r)=>t(xe,{className:"whitespace-nowrap max-w-full truncate px-1 box-border font-bold item-badge",children:o},r))}),t("a",{target:"_blank","aria-label":y,className:"my-1",href:_(`${n==="us"||!n?"":`/${n}`}/products/${e?.handle}`,`${w}_${$}`),children:t("div",{className:v("m-auto desktop:size-[196px] size-[120px] overflow-hidden"),children:t(R,{alt:"",source:X,className:"h-full [&_img]:object-cover [&_img]:h-full [&_img]:w-fit"})})}),e?.options?.map(o=>{if(o?.displayName==="color")return t("div",{className:"flex items-center gap-1",children:o?.values?.map(r=>{const s=r?.hexColors?r.hexColors?.[0]:r?.label;return t("button",{onClick:()=>de(r?.label),className:v("size-4 rounded-full cursor-pointer overflow-hidden border-2 border-transparent",`${f===r?.label?"border-[#00BEFA]":""}`),children:t("img",{alt:s,className:"h-full w-full object-cover",src:`${ke(e?.images?.[0]?.url)}${s?.toLowerCase().split(" ")?.join("-")}_50x.png`})},r?.label)})})}),d("div",{children:[y?t("span",{dangerouslySetInnerHTML:{__html:y||""},className:"shelf-display-product-title line-clamp-2 lg-desktop:text-2xl laptop:text-xl text-base font-bold"}):null,e?.metafields?.judgemeBadge?t("a",{target:"_blank",className:"font-bold text-xs [&_.jdgm-star]:text-[#F77234]",dangerouslySetInnerHTML:{__html:e?.metafields?.judgemeBadge},href:_(`${n==="us"||!n?"":`/${n}`}/products/${e?.handle}`,`${w}_${$}`)}):t("div",{className:"font-bold text-xs yotpo-widget-instance [&_.yotpo-sr-bottom-line-new-review]:hidden","data-yotpo-instance-id":fe(n),"data-yotpo-product-id":D,"data-yotpo-cart-product-id":D,"data-yotpo-section-id":""}),j?t(ve,{size:2,html:j||"",className:"desktop:text-base laptop:text-sm shelf-display-product-description line-clamp-1 text-xs font-bold"}):null,d("div",{className:"mt-3 mb-2",children:[t("p",{dangerouslySetInnerHTML:{__html:W&&ee&&(I?.memberPrice||P?.member_price||P?.plus_member_price)||""},className:"text-info-primary lg-desktop:text-lg desktop:text-base laptop:text-sm text-xs font-bold"}),t("div",{className:"flex items-center",children:z?t("div",{className:"desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold",children:le||""}):d(Ne,{children:[t("div",{className:"final-price desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold",children:L?.availableForSale&&F?.price||""}),t("div",{className:"origin-price desktop:text-xl tablet:text-lg text-info-secondary ml-1 text-sm font-bold line-through",children:L?.availableForSale&&F?.basePrice||""})]})})]}),d("div",{className:v("shelf-flex-button-group","lg-desktop:gap-3 flex items-center gap-2 m-tablet:flex-col"),children:[t(E,{variant:"secondary",className:"m-tablet:w-full font-bold",onClick:()=>J?.(e,p),children:m?.secondaryButton||"Learn More"}),t(E,{variant:"primary",className:"m-tablet:w-full font-bold",disabled:z,onClick:()=>G?.(e,p),children:m?.primaryButton||"Shop Now"})]})]})]})},e?.id||e?.handle)};var Le=Ce;export{Le as default};
2
2
  //# sourceMappingURL=FilterCardWrapItem.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/CollectionsFilters/FilterCardWrapItem.tsx"],
4
- "sourcesContent": ["import { cn, atobID, yotpoInstanceId } from '../../helpers/utils.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { formatVariantPrice } from '../ShelfDisplay/shelfDisplay.js'\nimport Badge from '../../components/badge.js'\nimport { Text } from '../../components/text.js'\nimport Button from '../../components/button.js'\nimport Picture from '../../components/picture.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { getFunctionMemberPrice } from './component/price.js'\nimport { useState, useEffect } from 'react'\n\nconst componentType = 'image'\nconst componentName = 'product_shelf'\n\nconst SOLD_OUT_PRICE = 9999999.99\n\nconst getShopifyCdnBaseUrl = (imagePath: string | null) => {\n // \u76EE\u524D\u77E5\u9053\u7684 shopify \u56FE\u7247\u8DEF\u7531\u7684\u5F62\u5F0F\n // https://cdn.shopify.com/s/files/1/0493/9834/9974/files/Group_5581_2.jpg?v=1662379184\n // https://cdn.shopify.com/s/files/1/0493/9834/9974/products/B2633123.jpg?v=1631264041_3840x\n // \u8FD4\u56DE https://cdn.shopify.com/s/files/1/0493/9834/9974/files/\n let path\n if (imagePath?.includes('products')) {\n path = imagePath?.split('products')[0] + 'files/'\n } else {\n path = imagePath?.replace(imagePath?.split('files')?.pop() || '', '') + '/'\n }\n return path\n}\n\ntype FilterCardWrapItemProps = {\n data: any\n buttonText?: any\n itemShape?: string\n metafields: any\n onPrimaryChange?: (item: any, sku: string) => void\n onSecondaryChange?: (item: any, sku: string) => void\n}\n\nconst FilterCardWrapItem = ({\n data,\n buttonText,\n itemShape,\n metafields,\n onPrimaryChange,\n onSecondaryChange,\n}: FilterCardWrapItemProps) => {\n const { memberPriceDiscount, memberSetting, discounts, shopCommon } = metafields\n const [currentSku, setCurrentSku] = useState<string>('')\n const [currentImage, setCurrentImage] = useState<string>('')\n const [selectedColor, setSelectedColor] = useState<string>('')\n const [isSoldOut, setIsSoldOut] = useState<boolean>(false)\n const [currentVariant, setCurrentVariant] = useState<any>({})\n const [plusMemberStatus, setPlusMemberStatus] = useState<boolean>(false)\n const [priceCollection, setPriceCollection] = useState<{ price: string; basePrice: string }>({\n price: '',\n basePrice: '',\n })\n const [tags, setTags] = useState<string[]>([])\n const [showTags, setShowTags] = useState<string[]>([])\n const [discountCollection, setDiscountCollection] = useState<string>('')\n const [soldOutText, setSoldOutText] = useState<string>('')\n\n const { locale = 'us', currencyCode, isLogin } = useAiuiContext()\n\n const displayTitle = data?.custom_name || data?.title || data?.name\n const displayDescription = data?.custom_description || data?.description || data?.descriptionHtml\n const skuArray = data?.filter_variants || data?.variants || []\n const id = atobID(data?.id || '')\n\n const imagePath = data?.images?.[0]?.url\n\n const onColorClick = (color: string) => setSelectedColor(color)\n\n const handleBasePrice = (discount: string, priceCurrency: string, salePrice: string, status: boolean) => {\n setPlusMemberStatus(status)\n setDiscountCollection(discount || '')\n setPriceCollection({\n basePrice: priceCurrency || '',\n price: salePrice || '',\n })\n }\n\n useEffect(() => {\n if (selectedColor) {\n const findSku = skuArray?.find((item: any) => item?.name?.includes?.(selectedColor))\n setCurrentSku(findSku?.sku || skuArray?.[0]?.sku || '')\n setCurrentImage(findSku?.image?.url || skuArray?.[0]?.image?.url || '')\n return\n }\n const firstOption = data?.options?.find((item: any) => item?.displayName === 'color')?.values?.[0]?.label\n firstOption && setSelectedColor(firstOption)\n const findSku = skuArray?.find((item: any) => item?.name?.includes?.(firstOption))\n setCurrentSku(findSku?.sku || skuArray?.[0]?.sku || '')\n setCurrentImage(findSku?.image?.url || skuArray?.[0]?.image?.url || '')\n }, [selectedColor])\n\n useEffect(() => {\n if (!currentSku) return\n setTags(data?.tags || [])\n const variant = skuArray?.find((item: any) => item?.sku === currentSku) || skuArray?.[0] || {}\n setCurrentVariant(variant)\n setIsSoldOut(!variant?.availableForSale || variant?.price?.amount === SOLD_OUT_PRICE)\n const { infos } = variant?.metafields || {}\n const { productInfos, preRender } = data?.metafields || {}\n setSoldOutText(infos?.comingSoon || productInfos?.comingSoon || preRender?.soldOut || shopCommon?.soldOut || '')\n // active \u7684 \u901A\u7528\u6298\u6263\n const coupon = variant?.coupons?.[0]\n const { price, basePrice, discount, discountAmount } = formatVariantPrice({\n locale: locale,\n amount: coupon ? coupon.variant_price4wscode : variant.price,\n baseAmount: coupon ? variant.price : 0,\n currencyCode: data?.price?.currencyCode || 'USD',\n })\n const showPrice = (() => {\n if (coupon?.value_type === 'fixed_amount') {\n const amountStr = discountAmount || ''\n const match = amountStr.match(/^(.*?)(\\d[\\d.,]*)(.*)$/)\n if (match) {\n const [, prefix, numeric, suffix] = match\n let updatedNumeric = numeric\n if (numeric.endsWith('.00')) {\n updatedNumeric = numeric.replace(/\\.00$/, '')\n } else if (numeric.endsWith(',00')) {\n updatedNumeric = numeric.replace(/,00$/, '')\n }\n return `${prefix}${updatedNumeric}${suffix}`\n }\n return amountStr\n }\n return discount || ''\n })()\n // \u4F1A\u5458\u6298\u6263\n if (isLogin) {\n const result = getFunctionMemberPrice({\n locale: locale,\n variant: variant,\n shopMemberPriceDiscountConfig: memberPriceDiscount,\n currencyCode: currencyCode || data?.price?.currencyCode || 'USD',\n })\n if (result) {\n const { hasMemberPrice, salePriceWithCurrency, originalPriceWithCurrency, savePriceWithCurrency } = result\n handleBasePrice(\n savePriceWithCurrency || '',\n originalPriceWithCurrency || '',\n hasMemberPrice ? salePriceWithCurrency : '',\n result?.hasMemberPrice\n )\n } else {\n handleBasePrice(showPrice, basePrice || '', price || '', false)\n }\n } else {\n handleBasePrice(showPrice, basePrice || '', price || '', false)\n }\n }, [data, currentSku])\n\n // \u5904\u7406\u6807\u7B7E\n useEffect(() => {\n let handleTags: string[] = []\n if (discountCollection) {\n const discountTag = `${discountCollection} ${discounts?.off}`\n handleTags.push(discountTag)\n }\n const newTags = tags\n ?.filter?.((item: string) => item?.startsWith?.('CLtag'))\n ?.map?.((item: string) => item?.replace?.('CLtag:', ''))\n ?.slice?.(0, discountCollection ? 1 : 2)\n setShowTags(handleTags.concat(newTags))\n }, [tags, discountCollection])\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n itemShape === 'round' ? 'rounded-2xl' : 'rounded-none',\n 'tablet:hover:bg-info-white bg-container-secondary-1 box-border w-full cursor-pointer overflow-hidden duration-300',\n {\n 'aiui-dark': data.theme === 'dark',\n }\n )}\n >\n {data?.mImage ? (\n <div className=\"size-full box-border overflow-hidden hover:[&_img]:scale-105\">\n <div className=\"relative inset-0 size-full\">\n <a className=\"size-full\" href={trackUrlRef(data?.link, `${componentType}_${componentName}`)}>\n <Picture\n alt=\"\"\n source={data?.mImage?.url || data?.mImage}\n className=\"size-full [&_img]:object-cover [&_img]:size-full\"\n imgClassName=\"size-full object-cover transition-all duration-300\"\n />\n <div className=\"desktop:p-6 absolute inset-x-0 top-0 box-border overflow-hidden p-4\">\n <p\n className=\"desktop:mb-2 mb-1 text-info-primary desktop:text-base text-sm font-bold\"\n dangerouslySetInnerHTML={{ __html: data?.subTitle }}\n />\n <span\n className=\"text-info-secondary desktop:text-[32px] text-[20px] font-bold desktop:leading-9 line-clamp-4 leading-6\"\n dangerouslySetInnerHTML={{ __html: data?.title }}\n />\n </div>\n </a>\n </div>\n </div>\n ) : (\n <div className=\"size-full desktop:p-6 desktop:pt-4 box-border overflow-hidden flex flex-col justify-between tablet:p-4 p-2 pb-4\">\n <div className=\"min-h-6 flex flex-wrap gap-1 overflow-hidden collection-filter-tags\">\n {showTags?.map?.((item: string, index: number) => (\n <Badge key={index} className=\"whitespace-nowrap max-w-full truncate px-1 box-border font-bold item-badge\">\n {item}\n </Badge>\n ))}\n </div>\n <a\n target=\"_blank\"\n aria-label={displayTitle}\n className=\"my-1\"\n href={trackUrlRef(\n `${locale === 'us' || !locale ? '' : `/${locale}`}/products/${data?.handle}`,\n `${componentType}_${componentName}`\n )}\n >\n <div className={cn('m-auto desktop:size-[196px] size-[120px] overflow-hidden')}>\n <Picture\n alt=\"\"\n source={currentImage}\n className=\"h-full [&_img]:object-cover [&_img]:h-full [&_img]:w-fit\"\n />\n </div>\n </a>\n {data?.options?.map((option: any) => {\n if (option?.displayName === 'color') {\n return (\n <div className=\"flex items-center gap-1\">\n {option?.values?.map((item: any) => {\n const color = item?.hexColors ? item.hexColors?.[0] : item?.label\n const hexColor = color.startsWith('#') ? color : ''\n return (\n <button\n key={item?.label}\n onClick={() => onColorClick(item?.label)}\n className={cn(\n 'size-4 rounded-full cursor-pointer overflow-hidden',\n `${selectedColor === item?.label ? 'border-[#00BEFA]' : ''}`\n )}\n >\n <span\n className={cn(\n 'h-full w-full overflow-hidden border-[0.5px] border-transparent',\n 'relative flex items-center justify-center overflow-hidden rounded-full',\n selectedColor === item?.label && 'border-[#ddd]'\n )}\n style={hexColor ? { backgroundColor: hexColor } : {}}\n >\n {!hexColor && imagePath && (\n <img\n alt={color}\n className=\"h-full w-full object-cover\"\n src={`${getShopifyCdnBaseUrl(imagePath)}${color\n ?.toLowerCase()\n .split(' ')\n ?.join('-')}_${'50x'}.png`}\n />\n )}\n </span>\n </button>\n )\n })}\n </div>\n )\n }\n })}\n <div>\n {displayTitle ? (\n <span\n dangerouslySetInnerHTML={{ __html: displayTitle || '' }}\n className=\"shelf-display-product-title line-clamp-2 lg-desktop:text-2xl laptop:text-xl text-base font-bold\"\n />\n ) : null}\n {data?.metafields?.judgemeBadge ? (\n <a\n target=\"_blank\"\n className=\"font-bold text-xs [&_.jdgm-star]:text-[#F77234]\"\n dangerouslySetInnerHTML={{ __html: data?.metafields?.judgemeBadge }}\n href={trackUrlRef(\n `${locale === 'us' || !locale ? '' : `/${locale}`}/products/${data?.handle}`,\n `${componentType}_${componentName}`\n )}\n />\n ) : (\n <div\n className=\"w-full truncate font-bold yotpo-widget-instance [&_.yotpo-sr-bottom-line-new-review]:hidden [&_.yotpo-sr-bottom-line-text]:!text-xs [&_.yotpo-sr-bottom-line-text]:!pt-0 [&_.yotpo-sr-bottom-line-summary]:!items-center [&_.yotpo-sr-bottom-line-summary_span]:!h-auto [&_.yotpo-sr-bottom-line-summary_svg]:!mr-[3px]\"\n data-yotpo-instance-id={yotpoInstanceId(locale)}\n data-yotpo-product-id={id}\n data-yotpo-cart-product-id={id}\n data-yotpo-section-id=\"\"\n />\n )}\n {displayDescription ? (\n <Text\n size={2}\n html={displayDescription || ''}\n className=\"desktop:text-base laptop:text-sm shelf-display-product-description line-clamp-1 text-xs font-bold\"\n />\n ) : null}\n <div className=\"mt-3 mb-2\">\n <p\n dangerouslySetInnerHTML={{\n __html:\n isLogin && plusMemberStatus\n ? discounts?.memberPrice || memberSetting?.member_price || memberSetting?.plus_member_price || ''\n : '',\n }}\n className=\"text-info-primary lg-desktop:text-lg desktop:text-base laptop:text-sm text-xs font-bold\"\n />\n <div className=\"flex items-center\">\n {isSoldOut ? (\n <div className=\"desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold\">\n {soldOutText || ''}\n </div>\n ) : (\n <>\n <div className=\"final-price desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold\">\n {currentVariant?.availableForSale ? priceCollection?.price || '' : ''}\n </div>\n <div className=\"origin-price desktop:text-xl tablet:text-lg text-info-secondary ml-1 text-sm font-bold line-through\">\n {currentVariant?.availableForSale ? priceCollection?.basePrice || '' : ''}\n </div>\n </>\n )}\n </div>\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div\n className={cn('shelf-flex-button-group', 'lg-desktop:gap-3 flex items-center gap-2 m-tablet:flex-col')}\n >\n <Button\n variant=\"secondary\"\n className=\"m-tablet:w-full font-bold\"\n onClick={() => onSecondaryChange?.(data, currentSku)}\n >\n {buttonText?.secondaryButton || 'Learn More'}\n </Button>\n <Button\n variant=\"primary\"\n className=\"m-tablet:w-full font-bold\"\n disabled={isSoldOut}\n onClick={() => onPrimaryChange?.(data, currentSku)}\n >\n {buttonText?.primaryButton || 'Shop Now'}\n </Button>\n </div>\n </div>\n </div>\n )}\n </div>\n )\n}\nexport default FilterCardWrapItem\n"],
5
- "mappings": "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",
6
- "names": ["Fragment", "jsx", "jsxs", "cn", "atobID", "yotpoInstanceId", "useAiuiContext", "formatVariantPrice", "Badge", "Text", "Button", "Picture", "trackUrlRef", "getFunctionMemberPrice", "useState", "useEffect", "componentType", "componentName", "SOLD_OUT_PRICE", "getShopifyCdnBaseUrl", "imagePath", "path", "FilterCardWrapItem", "data", "buttonText", "itemShape", "metafields", "onPrimaryChange", "onSecondaryChange", "memberPriceDiscount", "memberSetting", "discounts", "shopCommon", "currentSku", "setCurrentSku", "currentImage", "setCurrentImage", "selectedColor", "setSelectedColor", "isSoldOut", "setIsSoldOut", "currentVariant", "setCurrentVariant", "plusMemberStatus", "setPlusMemberStatus", "priceCollection", "setPriceCollection", "tags", "setTags", "showTags", "setShowTags", "discountCollection", "setDiscountCollection", "soldOutText", "setSoldOutText", "locale", "currencyCode", "isLogin", "displayTitle", "displayDescription", "skuArray", "id", "onColorClick", "color", "handleBasePrice", "discount", "priceCurrency", "salePrice", "status", "findSku", "item", "firstOption", "variant", "infos", "productInfos", "preRender", "coupon", "price", "basePrice", "discountAmount", "showPrice", "amountStr", "match", "prefix", "numeric", "suffix", "updatedNumeric", "result", "hasMemberPrice", "salePriceWithCurrency", "originalPriceWithCurrency", "savePriceWithCurrency", "handleTags", "discountTag", "newTags", "index", "option", "hexColor", "FilterCardWrapItem_default"]
4
+ "sourcesContent": ["import { cn, atobID, yotpoInstanceId } from '../../helpers/utils.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { formatVariantPrice } from '../ShelfDisplay/shelfDisplay.js'\nimport Badge from '../../components/badge.js'\nimport { Text } from '../../components/text.js'\nimport Button from '../../components/button.js'\nimport Picture from '../../components/picture.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\nimport { getFunctionMemberPrice } from './component/price.js'\nimport { useState, useEffect } from 'react'\n\nconst componentType = 'image'\nconst componentName = 'product_shelf'\n\nconst SOLD_OUT_PRICE = 9999999.99\n\nconst getShopifyCdnBaseUrl = (imagePath: string | null) => {\n // \u76EE\u524D\u77E5\u9053\u7684 shopify \u56FE\u7247\u8DEF\u7531\u7684\u5F62\u5F0F\n // https://cdn.shopify.com/s/files/1/0493/9834/9974/files/Group_5581_2.jpg?v=1662379184\n // https://cdn.shopify.com/s/files/1/0493/9834/9974/products/B2633123.jpg?v=1631264041_3840x\n // \u8FD4\u56DE https://cdn.shopify.com/s/files/1/0493/9834/9974/files/\n let path\n if (imagePath?.includes('products')) {\n path = imagePath?.split('products')[0] + 'files/'\n } else {\n path = imagePath?.replace(imagePath?.split('files')?.pop() || '', '') + '/'\n }\n return path\n}\n\ntype FilterCardWrapItemProps = {\n data: any\n buttonText?: any\n itemShape?: string\n metafields: any\n onPrimaryChange?: (item: any, sku: string) => void\n onSecondaryChange?: (item: any, sku: string) => void\n}\n\nconst FilterCardWrapItem = ({\n data,\n buttonText,\n itemShape,\n metafields,\n onPrimaryChange,\n onSecondaryChange,\n}: FilterCardWrapItemProps) => {\n const { memberPriceDiscount, memberSetting, discounts, shopCommon } = metafields\n const [currentSku, setCurrentSku] = useState<string>('')\n const [currentImage, setCurrentImage] = useState<string>('')\n const [selectedColor, setSelectedColor] = useState<string>('')\n const [isSoldOut, setIsSoldOut] = useState<any>(false)\n const [currentVariant, setCurrentVariant] = useState<any>({})\n const [plusMemberStatus, setPlusMemberStatus] = useState<boolean>(false)\n const [priceCollection, setPriceCollection] = useState<{ price: string; basePrice: string }>({\n price: '',\n basePrice: '',\n })\n const [tags, setTags] = useState<string[]>([])\n const [showTags, setShowTags] = useState<string[]>([])\n const [discountCollection, setDiscountCollection] = useState<string>('')\n const [soldOutText, setSoldOutText] = useState<string>('')\n\n const { locale = 'us', currencyCode, isLogin } = useAiuiContext()\n\n const displayTitle = data?.custom_name || data?.title || data?.name\n const displayDescription = data?.custom_description || data?.description || data?.descriptionHtml\n const skuArray = data?.filter_variants || data?.variants || []\n const id = atobID(data?.id || '')\n\n const onColorClick = (color: string) => setSelectedColor(color)\n\n const handleBasePrice = (discount: string, priceCurrency: string, salePrice: string, status: boolean) => {\n setPlusMemberStatus(status)\n setDiscountCollection(discount || '')\n setPriceCollection({\n basePrice: priceCurrency || '',\n price: salePrice || '',\n })\n }\n\n useEffect(() => {\n if (selectedColor) {\n const findSku = skuArray?.find((item: any) => item?.name?.includes?.(selectedColor))\n setCurrentSku(findSku?.sku || skuArray?.[0]?.sku || '')\n setCurrentImage(findSku?.image?.url || skuArray?.[0]?.image?.url || '')\n return\n }\n const firstOption = data?.options?.find((item: any) => item?.displayName === 'color')?.values?.[0]?.label\n firstOption && setSelectedColor(firstOption)\n const findSku = skuArray?.find((item: any) => item?.name?.includes?.(firstOption))\n setCurrentSku(findSku?.sku || skuArray?.[0]?.sku || '')\n setCurrentImage(findSku?.image?.url || skuArray?.[0]?.image?.url || '')\n }, [selectedColor])\n\n useEffect(() => {\n if (!currentSku) return\n setTags(data?.tags || [])\n const variant = skuArray?.find((item: any) => item?.sku === currentSku) || skuArray?.[0] || {}\n setCurrentVariant(variant)\n setIsSoldOut(!variant?.availableForSale || variant?.price?.amount === SOLD_OUT_PRICE)\n const { infos } = variant?.metafields || {}\n const { productInfos, preRender } = data?.metafields || {}\n setSoldOutText(infos?.comingSoon || productInfos?.comingSoon || preRender?.soldOut || shopCommon?.soldOut || '')\n // active \u7684 \u901A\u7528\u6298\u6263\n const coupon = variant?.coupons?.[0]\n const { price, basePrice, discount, discountAmount } = formatVariantPrice({\n locale: locale,\n amount: coupon ? coupon.variant_price4wscode : variant.price,\n baseAmount: coupon ? variant.price : 0,\n currencyCode: data?.price?.currencyCode || 'USD',\n })\n const showPrice = (() => {\n if (coupon?.value_type === 'fixed_amount') {\n const amountStr = discountAmount || ''\n const match = amountStr.match(/^(.*?)(\\d[\\d.,]*)(.*)$/)\n if (match) {\n const [, prefix, numeric, suffix] = match\n let updatedNumeric = numeric\n if (numeric.endsWith('.00')) {\n updatedNumeric = numeric.replace(/\\.00$/, '')\n } else if (numeric.endsWith(',00')) {\n updatedNumeric = numeric.replace(/,00$/, '')\n }\n return `${prefix}${updatedNumeric}${suffix}`\n }\n return amountStr\n }\n return discount || ''\n })()\n // \u4F1A\u5458\u6298\u6263\n if (isLogin) {\n const result = getFunctionMemberPrice({\n locale: locale,\n variant: variant,\n shopMemberPriceDiscountConfig: memberPriceDiscount,\n currencyCode: currencyCode || data?.price?.currencyCode || 'USD',\n })\n if (result) {\n const { hasMemberPrice, salePriceWithCurrency, originalPriceWithCurrency, savePriceWithCurrency } = result\n handleBasePrice(\n savePriceWithCurrency || '',\n originalPriceWithCurrency || '',\n hasMemberPrice ? salePriceWithCurrency : '',\n result?.hasMemberPrice\n )\n } else {\n handleBasePrice(showPrice, basePrice || '', price || '', false)\n }\n } else {\n handleBasePrice(showPrice, basePrice || '', price || '', false)\n }\n }, [data, currentSku])\n\n // \u5904\u7406\u6807\u7B7E\n useEffect(() => {\n let handleTags: string[] = []\n if (discountCollection) {\n const discountTag = `${discountCollection} ${discounts?.off}`\n handleTags.push(discountTag)\n }\n const newTags = tags\n ?.filter?.((item: string) => item?.startsWith?.('CLtag'))\n ?.map?.((item: string) => item?.replace?.('CLtag:', ''))\n ?.slice?.(0, discountCollection ? 1 : 2)\n setShowTags(handleTags.concat(newTags))\n }, [tags, discountCollection])\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n itemShape === 'round' ? 'rounded-2xl' : 'rounded-none',\n 'tablet:hover:bg-info-white bg-container-secondary-1 box-border w-full cursor-pointer overflow-hidden duration-300',\n {\n 'aiui-dark': data.theme === 'dark',\n }\n )}\n >\n {data?.mImage ? (\n <div className=\"size-full box-border overflow-hidden hover:[&_img]:scale-105\">\n <div className=\"relative inset-0 size-full\">\n <a className=\"size-full\" href={trackUrlRef(data?.link, `${componentType}_${componentName}`)}>\n <Picture\n alt=\"\"\n source={data?.mImage?.url || data?.mImage}\n className=\"size-full [&_img]:object-cover [&_img]:size-full\"\n imgClassName=\"size-full object-cover transition-all duration-300\"\n />\n <div className=\"desktop:p-6 absolute inset-x-0 top-0 box-border overflow-hidden p-4\">\n <p\n className=\"desktop:mb-2 mb-1 text-info-primary desktop:text-base text-sm font-bold\"\n dangerouslySetInnerHTML={{ __html: data?.subTitle }}\n />\n <span\n className=\"text-info-secondary desktop:text-[32px] text-[20px] font-bold desktop:leading-9 line-clamp-4 leading-6\"\n dangerouslySetInnerHTML={{ __html: data?.title }}\n />\n </div>\n </a>\n </div>\n </div>\n ) : (\n <div className=\"size-full desktop:p-6 desktop:pt-4 box-border overflow-hidden flex flex-col justify-between tablet:p-4 p-2 pb-4\">\n <div className=\"flex flex-wrap gap-1 overflow-hidden collection-filter-tags\">\n {showTags?.map?.((item: string, index: number) => (\n <Badge key={index} className=\"whitespace-nowrap max-w-full truncate px-1 box-border font-bold item-badge\">\n {item}\n </Badge>\n ))}\n </div>\n <a\n target=\"_blank\"\n aria-label={displayTitle}\n className=\"my-1\"\n href={trackUrlRef(\n `${locale === 'us' || !locale ? '' : `/${locale}`}/products/${data?.handle}`,\n `${componentType}_${componentName}`\n )}\n >\n <div className={cn('m-auto desktop:size-[196px] size-[120px] overflow-hidden')}>\n <Picture\n alt=\"\"\n source={currentImage}\n className=\"h-full [&_img]:object-cover [&_img]:h-full [&_img]:w-fit\"\n />\n </div>\n </a>\n {data?.options?.map((option: any) => {\n if (option?.displayName === 'color') {\n return (\n <div className=\"flex items-center gap-1\">\n {option?.values?.map((item: any) => {\n const color = item?.hexColors ? item.hexColors?.[0] : item?.label\n return (\n <button\n key={item?.label}\n onClick={() => onColorClick(item?.label)}\n className={cn(\n 'size-4 rounded-full cursor-pointer overflow-hidden border-2 border-transparent',\n `${selectedColor === item?.label ? 'border-[#00BEFA]' : ''}`\n )}\n >\n <img\n alt={color}\n className=\"h-full w-full object-cover\"\n src={`${getShopifyCdnBaseUrl(data?.images?.[0]?.url)}${color\n ?.toLowerCase()\n .split(' ')\n ?.join('-')}_${'50x'}.png`}\n />\n </button>\n )\n })}\n </div>\n )\n }\n })}\n <div>\n {displayTitle ? (\n <span\n dangerouslySetInnerHTML={{ __html: displayTitle || '' }}\n className=\"shelf-display-product-title line-clamp-2 lg-desktop:text-2xl laptop:text-xl text-base font-bold\"\n />\n ) : null}\n {data?.metafields?.judgemeBadge ? (\n <a\n target=\"_blank\"\n className=\"font-bold text-xs [&_.jdgm-star]:text-[#F77234]\"\n dangerouslySetInnerHTML={{ __html: data?.metafields?.judgemeBadge }}\n href={trackUrlRef(\n `${locale === 'us' || !locale ? '' : `/${locale}`}/products/${data?.handle}`,\n `${componentType}_${componentName}`\n )}\n />\n ) : (\n <div\n className=\"font-bold text-xs yotpo-widget-instance [&_.yotpo-sr-bottom-line-new-review]:hidden\"\n data-yotpo-instance-id={yotpoInstanceId(locale)}\n data-yotpo-product-id={id}\n data-yotpo-cart-product-id={id}\n data-yotpo-section-id=\"\"\n />\n )}\n {displayDescription ? (\n <Text\n size={2}\n html={displayDescription || ''}\n className=\"desktop:text-base laptop:text-sm shelf-display-product-description line-clamp-1 text-xs font-bold\"\n />\n ) : null}\n <div className=\"mt-3 mb-2\">\n <p\n dangerouslySetInnerHTML={{\n __html:\n isLogin && plusMemberStatus\n ? discounts?.memberPrice || memberSetting?.member_price || memberSetting?.plus_member_price || ''\n : '',\n }}\n className=\"text-info-primary lg-desktop:text-lg desktop:text-base laptop:text-sm text-xs font-bold\"\n />\n <div className=\"flex items-center\">\n {isSoldOut ? (\n <div className=\"desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold\">\n {soldOutText || ''}\n </div>\n ) : (\n <>\n <div className=\"final-price desktop:text-2xl tablet:text-xl text-info-primary text-base font-bold\">\n {currentVariant?.availableForSale ? priceCollection?.price || '' : ''}\n </div>\n <div className=\"origin-price desktop:text-xl tablet:text-lg text-info-secondary ml-1 text-sm font-bold line-through\">\n {currentVariant?.availableForSale ? priceCollection?.basePrice || '' : ''}\n </div>\n </>\n )}\n </div>\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div\n className={cn('shelf-flex-button-group', 'lg-desktop:gap-3 flex items-center gap-2 m-tablet:flex-col')}\n >\n <Button\n variant=\"secondary\"\n className=\"m-tablet:w-full font-bold\"\n onClick={() => onSecondaryChange?.(data, currentSku)}\n >\n {buttonText?.secondaryButton || 'Learn More'}\n </Button>\n <Button\n variant=\"primary\"\n className=\"m-tablet:w-full font-bold\"\n disabled={isSoldOut}\n onClick={() => onPrimaryChange?.(data, currentSku)}\n >\n {buttonText?.primaryButton || 'Shop Now'}\n </Button>\n </div>\n </div>\n </div>\n )}\n </div>\n )\n}\nexport default FilterCardWrapItem\n"],
5
+ "mappings": "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",
6
+ "names": ["Fragment", "jsx", "jsxs", "cn", "atobID", "yotpoInstanceId", "useAiuiContext", "formatVariantPrice", "Badge", "Text", "Button", "Picture", "trackUrlRef", "getFunctionMemberPrice", "useState", "useEffect", "componentType", "componentName", "SOLD_OUT_PRICE", "getShopifyCdnBaseUrl", "imagePath", "path", "FilterCardWrapItem", "data", "buttonText", "itemShape", "metafields", "onPrimaryChange", "onSecondaryChange", "memberPriceDiscount", "memberSetting", "discounts", "shopCommon", "currentSku", "setCurrentSku", "currentImage", "setCurrentImage", "selectedColor", "setSelectedColor", "isSoldOut", "setIsSoldOut", "currentVariant", "setCurrentVariant", "plusMemberStatus", "setPlusMemberStatus", "priceCollection", "setPriceCollection", "tags", "setTags", "showTags", "setShowTags", "discountCollection", "setDiscountCollection", "soldOutText", "setSoldOutText", "locale", "currencyCode", "isLogin", "displayTitle", "displayDescription", "skuArray", "id", "onColorClick", "color", "handleBasePrice", "discount", "priceCurrency", "salePrice", "status", "findSku", "item", "firstOption", "variant", "infos", "productInfos", "preRender", "coupon", "price", "basePrice", "discountAmount", "showPrice", "amountStr", "match", "prefix", "numeric", "suffix", "updatedNumeric", "result", "hasMemberPrice", "salePriceWithCurrency", "originalPriceWithCurrency", "savePriceWithCurrency", "handleTags", "discountTag", "newTags", "index", "option", "FilterCardWrapItem_default"]
7
7
  }
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as u}from"react/jsx-runtime";import{cloneDeep as W}from"es-toolkit";import{useRef as A,useState as x,useMemo as N,useEffect as S}from"react";import $ from"../../../components/link";import{cn as b}from"../../../helpers/utils.js";import{useAiuiContext as q}from"../../AiuiProvider/index.js";const c="All",F=g=>{const{metafields:m,tabs:l,onTabClick:k,tabShape:r="square",filtersPair:h,filtered:s,filtersData:o}=g,{name:i}=m,{pathname:T}=q(),y=A(null),[d,P]=x([]),[v,w]=x([]),D=e=>{const n=W(s)||{};let a=n?.[t?.value]||[];e?.options===(o?.mainPair?.alltxt||i||c)?a=[]:a=[e?.value||e],n[t?.value]=a,a.length<=0&&Reflect.deleteProperty(n,t?.value),k?.({...n},e);const p=document.getElementById(`tab-${e?.label||e}`),f=y.current;if(p&&f){const L=p.offsetLeft,C=p.offsetWidth,E=f.offsetWidth,R=L-E/2+C/2;f.scrollTo({left:R,behavior:"smooth"})}},t=N(()=>h?.find(e=>e.mainPair),[h]);return S(()=>{if(l?.length)P(l);else{const e=t?.options||[],a=[{label:o?.mainPair?.alltxt||i||c,value:t?.value,options:o?.mainPair?.alltxt||i||c},...e];w(a)}},[t,o,l]),d?.length>0||v?.length>0?u("div",{ref:y,className:b(r==="rounded"?"rounded-[28px]":"","tab-switch-wrap bg-tabs-list-bg relative flex gap-x-1 w-fit max-w-full overflow-x-auto overflow-y-hidden p-1 laptop:m-auto"),children:d?.length>0?d?.map?.(e=>u($,{id:`tab-${e?.label}`,href:e?.href,className:b("relative flex-1 shrink-0 whitespace-nowrap transition-all cursor-pointer","text-info-primary px-5 py-2.5 text-sm lg-desktop:text-base font-bold no-underline","lg-desktop:text-base lg-desktop:px-7 lg-desktop:py-3.5 hover:bg-btn-primary-disabled-foreground hover:text-info-primary",r==="rounded"?"rounded-[28px]":"",e?.href&&e?.href===T?"bg-btn-primary-disabled-foreground":""),children:e?.label||""},e?.label)):v?.map?.(e=>u("div",{id:`tab-${e?.label||e}`,onClick:()=>D(e),className:b("relative flex-1 shrink-0 whitespace-nowrap transition-all cursor-pointer","text-info-primary px-5 py-2.5 text-sm lg-desktop:text-base font-bold no-underline","lg-desktop:text-base lg-desktop:px-7 lg-desktop:py-3.5 hover:bg-btn-primary-disabled-foreground hover:text-info-primary",r==="rounded"?"rounded-[28px]":"",s?.[t?.value]?.includes?.(e?.value||e)||!s?.[t?.value]?.length&&e?.options?"bg-btn-primary-disabled-foreground":""),children:e?.label||e},e?.value||e))}):null};var _=F;export{_ as default};
1
+ "use client";import{jsx as u}from"react/jsx-runtime";import{cloneDeep as W}from"es-toolkit";import{useRef as A,useState as x,useMemo as N,useEffect as S}from"react";import $ from"../../../components/link";import{cn as b}from"../../../helpers/utils.js";import{useAiuiContext as q}from"../../AiuiProvider/index.js";const c="All",F=g=>{const{metafields:m,tabs:o,onTabClick:k,tabShape:r="square",filtersPair:h,filtered:s,filtersData:l}=g,{name:i}=m,{pathname:T}=q(),y=A(null),[d,P]=x([]),[v,w]=x([]),D=e=>{const n=W(s)||{};let a=n?.[t?.value]||[];e?.options===(l?.mainPair?.alltxt||i||c)?a=[]:a=[e?.value||e],n[t?.value]=a,a.length<=0&&Reflect.deleteProperty(n,t?.value),k?.({...n},e);const f=document.getElementById(`tab-${e?.label||e}`),p=y.current;if(f&&p){const L=f.offsetLeft,C=f.offsetWidth,E=p.offsetWidth,R=L-E/2+C/2;p.scrollTo({left:R,behavior:"smooth"})}},t=N(()=>h?.find(e=>e.mainPair),[h]);return S(()=>{if(o?.length)P(o);else{const e=t?.options||[],a=[{label:l?.mainPair?.alltxt||i||c,value:t?.value,options:l?.mainPair?.alltxt||i||c},...e];w(a)}},[t,l,o]),d?.length>0||v?.length>0?u("div",{ref:y,className:b(r==="rounded"?"rounded-[28px]":"","tab-switch-wrap bg-tabs-list-bg relative flex gap-x-1 w-fit max-w-full overflow-x-auto overflow-y-hidden p-1 laptop:m-auto"),children:d?.length>0?d?.map?.(e=>u($,{id:`tab-${e?.label}`,href:e?.href,className:b("relative flex-1 shrink-0 whitespace-nowrap transition-all","text-info-primary px-5 py-2.5 text-sm lg-desktop:text-base font-bold no-underline","lg-desktop:text-base lg-desktop:px-7 lg-desktop:py-3.5 hover:bg-btn-primary-disabled-foreground hover:text-info-primary",r==="rounded"?"rounded-[28px]":"",e?.href&&e?.href===T?"bg-btn-primary-disabled-foreground":""),children:e?.label||""},e?.label)):v?.map?.(e=>u("div",{id:`tab-${e?.label||e}`,onClick:()=>D(e),className:b("relative flex-1 shrink-0 whitespace-nowrap transition-all","text-info-primary px-5 py-2.5 text-sm lg-desktop:text-base font-bold no-underline","lg-desktop:text-base lg-desktop:px-7 lg-desktop:py-3.5 hover:bg-btn-primary-disabled-foreground hover:text-info-primary",r==="rounded"?"rounded-[28px]":"",s?.[t?.value]?.includes?.(e?.value||e)||!s?.[t?.value]?.length&&e?.options?"bg-btn-primary-disabled-foreground":""),children:e?.label||e},e?.value||e))}):null};var _=F;export{_ as default};
2
2
  //# sourceMappingURL=TabFilter.js.map