@anker-in/headless-ui 1.0.19-temp-101407 → 1.0.19-temp-101408

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 (357) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.js.map +2 -2
  2. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js +1 -1
  3. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js.map +3 -3
  4. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.js.map +1 -1
  5. package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
  6. package/dist/cjs/biz-components/FooterNavigation/index.js.map +3 -3
  7. package/dist/cjs/biz-components/FooterNavigation/types.d.ts +1 -2
  8. package/dist/cjs/biz-components/FooterNavigation/types.js +1 -1
  9. package/dist/cjs/biz-components/FooterNavigation/types.js.map +2 -2
  10. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.d.ts +5 -6
  11. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js +1 -1
  12. package/dist/cjs/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  13. package/dist/cjs/biz-components/HeaderNavigation/icons/index.d.ts +1 -2
  14. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js +1 -1
  15. package/dist/cjs/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  16. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  17. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
  18. package/dist/cjs/biz-components/HeaderNavigation/types.d.ts +2 -16
  19. package/dist/cjs/biz-components/HeaderNavigation/types.js +1 -1
  20. package/dist/cjs/biz-components/HeaderNavigation/types.js.map +2 -2
  21. package/dist/cjs/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  22. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js +1 -1
  23. package/dist/cjs/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  24. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  25. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  26. package/dist/cjs/biz-components/ShelfDisplay/index.js +1 -1
  27. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
  28. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  29. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  30. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js +4 -4
  31. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  32. package/dist/cjs/biz-components/Subscribe/index.d.ts +1 -7
  33. package/dist/cjs/biz-components/Subscribe/index.js +1 -1
  34. package/dist/cjs/biz-components/Subscribe/index.js.map +3 -3
  35. package/dist/cjs/biz-components/Title/index.js +1 -1
  36. package/dist/cjs/biz-components/Title/index.js.map +2 -2
  37. package/dist/cjs/biz-components/Title/types.d.ts +1 -3
  38. package/dist/cjs/biz-components/Title/types.js +1 -1
  39. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  40. package/dist/cjs/biz-components/index.d.ts +0 -25
  41. package/dist/cjs/biz-components/index.js +1 -1
  42. package/dist/cjs/biz-components/index.js.map +3 -3
  43. package/dist/cjs/components/button.js +1 -1
  44. package/dist/cjs/components/button.js.map +2 -2
  45. package/dist/cjs/components/container.js +1 -1
  46. package/dist/cjs/components/container.js.map +2 -2
  47. package/dist/cjs/components/dialog.d.ts +1 -3
  48. package/dist/cjs/components/dialog.js +1 -1
  49. package/dist/cjs/components/dialog.js.map +3 -3
  50. package/dist/cjs/components/index.d.ts +0 -1
  51. package/dist/cjs/components/index.js +1 -1
  52. package/dist/cjs/components/index.js.map +3 -3
  53. package/dist/cjs/helpers/utils.d.ts +0 -1
  54. package/dist/cjs/helpers/utils.js +1 -1
  55. package/dist/cjs/helpers/utils.js.map +3 -3
  56. package/dist/cjs/stories/shelfDisplay.stories.js +1 -644
  57. package/dist/cjs/stories/shelfDisplay.stories.js.map +2 -2
  58. package/dist/cjs/stories/tabs.stories.js +1 -1
  59. package/dist/cjs/stories/tabs.stories.js.map +3 -3
  60. package/dist/cjs/tsconfig.tsbuildinfo +1 -1
  61. package/dist/esm/biz-components/AccordionCards/index.js.map +2 -2
  62. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js +1 -1
  63. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js.map +3 -3
  64. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.js.map +1 -1
  65. package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
  66. package/dist/esm/biz-components/FooterNavigation/index.js.map +3 -3
  67. package/dist/esm/biz-components/FooterNavigation/types.d.ts +1 -2
  68. package/dist/esm/biz-components/FooterNavigation/types.js +1 -1
  69. package/dist/esm/biz-components/FooterNavigation/types.js.map +2 -2
  70. package/dist/esm/biz-components/HeaderNavigation/NavProvider.d.ts +5 -6
  71. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js +1 -1
  72. package/dist/esm/biz-components/HeaderNavigation/NavProvider.js.map +3 -3
  73. package/dist/esm/biz-components/HeaderNavigation/icons/index.d.ts +1 -2
  74. package/dist/esm/biz-components/HeaderNavigation/icons/index.js +1 -1
  75. package/dist/esm/biz-components/HeaderNavigation/icons/index.js.map +3 -3
  76. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  77. package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
  78. package/dist/esm/biz-components/HeaderNavigation/types.d.ts +2 -16
  79. package/dist/esm/biz-components/HeaderNavigation/types.js +1 -1
  80. package/dist/esm/biz-components/HeaderNavigation/types.js.map +2 -2
  81. package/dist/esm/biz-components/HeaderNavigation/withCategory.d.ts +1 -1
  82. package/dist/esm/biz-components/HeaderNavigation/withCategory.js +1 -1
  83. package/dist/esm/biz-components/HeaderNavigation/withCategory.js.map +3 -3
  84. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  85. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +2 -2
  86. package/dist/esm/biz-components/ShelfDisplay/index.js +1 -1
  87. package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
  88. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  89. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  90. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js +9 -9
  91. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  92. package/dist/esm/biz-components/Subscribe/index.d.ts +1 -7
  93. package/dist/esm/biz-components/Subscribe/index.js +1 -1
  94. package/dist/esm/biz-components/Subscribe/index.js.map +3 -3
  95. package/dist/esm/biz-components/Title/index.js +1 -1
  96. package/dist/esm/biz-components/Title/index.js.map +2 -2
  97. package/dist/esm/biz-components/Title/types.d.ts +1 -3
  98. package/dist/esm/biz-components/index.d.ts +0 -25
  99. package/dist/esm/biz-components/index.js +1 -1
  100. package/dist/esm/biz-components/index.js.map +3 -3
  101. package/dist/esm/components/button.js +1 -1
  102. package/dist/esm/components/button.js.map +2 -2
  103. package/dist/esm/components/container.js +1 -1
  104. package/dist/esm/components/container.js.map +2 -2
  105. package/dist/esm/components/dialog.d.ts +1 -3
  106. package/dist/esm/components/dialog.js +1 -1
  107. package/dist/esm/components/dialog.js.map +3 -3
  108. package/dist/esm/components/index.d.ts +0 -1
  109. package/dist/esm/components/index.js +1 -1
  110. package/dist/esm/components/index.js.map +2 -2
  111. package/dist/esm/helpers/utils.d.ts +0 -1
  112. package/dist/esm/helpers/utils.js +1 -1
  113. package/dist/esm/helpers/utils.js.map +3 -3
  114. package/dist/esm/stories/shelfDisplay.stories.js +1 -644
  115. package/dist/esm/stories/shelfDisplay.stories.js.map +2 -2
  116. package/dist/esm/stories/tabs.stories.js +1 -1
  117. package/dist/esm/stories/tabs.stories.js.map +3 -3
  118. package/dist/esm/tsconfig.tsbuildinfo +1 -1
  119. package/dist/tokens/base.css +1 -1
  120. package/package.json +1 -1
  121. package/style.css +0 -4
  122. package/dist/cjs/biz-components/AplusDesc/index.js +0 -2
  123. package/dist/cjs/biz-components/AplusDesc/index.js.map +0 -7
  124. package/dist/cjs/biz-components/DownLoad/index.js +0 -2
  125. package/dist/cjs/biz-components/DownLoad/index.js.map +0 -7
  126. package/dist/cjs/biz-components/Features/index.js +0 -2
  127. package/dist/cjs/biz-components/Features/index.js.map +0 -7
  128. package/dist/cjs/biz-components/FootCharger/index.js +0 -2
  129. package/dist/cjs/biz-components/FootCharger/index.js.map +0 -7
  130. package/dist/cjs/biz-components/GiftBox/index.js +0 -2
  131. package/dist/cjs/biz-components/GiftBox/index.js.map +0 -7
  132. package/dist/cjs/biz-components/GraphicMore/index.js +0 -2
  133. package/dist/cjs/biz-components/GraphicMore/index.js.map +0 -7
  134. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js +0 -2
  135. package/dist/cjs/biz-components/HeaderNavigation/icons/Polygon.js.map +0 -7
  136. package/dist/cjs/biz-components/Listing/ProductProvider.js +0 -2
  137. package/dist/cjs/biz-components/Listing/ProductProvider.js.map +0 -7
  138. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js +0 -2
  139. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js.map +0 -7
  140. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +0 -2
  141. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +0 -7
  142. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +0 -2
  143. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +0 -7
  144. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +0 -2
  145. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +0 -7
  146. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +0 -2
  147. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +0 -7
  148. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js +0 -2
  149. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +0 -7
  150. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js +0 -2
  151. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +0 -7
  152. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +0 -2
  153. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +0 -7
  154. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +0 -2
  155. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +0 -7
  156. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +0 -2
  157. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +0 -7
  158. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +0 -2
  159. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +0 -7
  160. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js +0 -2
  161. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +0 -7
  162. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js +0 -2
  163. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +0 -7
  164. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js +0 -2
  165. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +0 -7
  166. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js +0 -2
  167. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +0 -7
  168. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js +0 -2
  169. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +0 -7
  170. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js +0 -2
  171. package/dist/cjs/biz-components/Listing/components/ProductCard/index.js.map +0 -7
  172. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +0 -2
  173. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +0 -7
  174. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +0 -2
  175. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +0 -7
  176. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +0 -2
  177. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +0 -7
  178. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js +0 -2
  179. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.js.map +0 -7
  180. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js +0 -2
  181. package/dist/cjs/biz-components/Listing/components/PurchaseBar/types.js.map +0 -7
  182. package/dist/cjs/biz-components/Listing/components/index.js +0 -2
  183. package/dist/cjs/biz-components/Listing/components/index.js.map +0 -7
  184. package/dist/cjs/biz-components/Listing/const.js +0 -2
  185. package/dist/cjs/biz-components/Listing/const.js.map +0 -7
  186. package/dist/cjs/biz-components/Listing/hooks/use-options.js +0 -2
  187. package/dist/cjs/biz-components/Listing/hooks/use-options.js.map +0 -7
  188. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js +0 -2
  189. package/dist/cjs/biz-components/Listing/hooks/use-variant-media.js.map +0 -7
  190. package/dist/cjs/biz-components/Listing/hooks/use-variant.js +0 -2
  191. package/dist/cjs/biz-components/Listing/hooks/use-variant.js.map +0 -7
  192. package/dist/cjs/biz-components/Listing/hooks/useCopy.js +0 -2
  193. package/dist/cjs/biz-components/Listing/hooks/useCopy.js.map +0 -7
  194. package/dist/cjs/biz-components/Listing/index.js +0 -2
  195. package/dist/cjs/biz-components/Listing/index.js.map +0 -7
  196. package/dist/cjs/biz-components/Listing/types/graphql.js +0 -2
  197. package/dist/cjs/biz-components/Listing/types/graphql.js.map +0 -7
  198. package/dist/cjs/biz-components/Listing/types/product.js +0 -2
  199. package/dist/cjs/biz-components/Listing/types/product.js.map +0 -7
  200. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js +0 -2
  201. package/dist/cjs/biz-components/Listing/types/productMetafields.d.js.map +0 -7
  202. package/dist/cjs/biz-components/Listing/types/type-helper.js +0 -2
  203. package/dist/cjs/biz-components/Listing/types/type-helper.js.map +0 -7
  204. package/dist/cjs/biz-components/Listing/types.js +0 -2
  205. package/dist/cjs/biz-components/Listing/types.js.map +0 -7
  206. package/dist/cjs/biz-components/Listing/utils/helper.js +0 -2
  207. package/dist/cjs/biz-components/Listing/utils/helper.js.map +0 -7
  208. package/dist/cjs/biz-components/Listing/utils/index.js +0 -2
  209. package/dist/cjs/biz-components/Listing/utils/index.js.map +0 -7
  210. package/dist/cjs/biz-components/NavigationSearch/index.js +0 -2
  211. package/dist/cjs/biz-components/NavigationSearch/index.js.map +0 -7
  212. package/dist/cjs/biz-components/NavigationSearch/types.js +0 -2
  213. package/dist/cjs/biz-components/NavigationSearch/types.js.map +0 -7
  214. package/dist/cjs/biz-components/SearchPage/index.js +0 -2
  215. package/dist/cjs/biz-components/SearchPage/index.js.map +0 -7
  216. package/dist/cjs/biz-components/SearchPage/types.js +0 -2
  217. package/dist/cjs/biz-components/SearchPage/types.js.map +0 -7
  218. package/dist/cjs/biz-components/SelectStore/index.js +0 -2
  219. package/dist/cjs/biz-components/SelectStore/index.js.map +0 -7
  220. package/dist/cjs/biz-components/Specs/dropdown.js +0 -3
  221. package/dist/cjs/biz-components/Specs/dropdown.js.map +0 -7
  222. package/dist/cjs/biz-components/Specs/index.js +0 -2
  223. package/dist/cjs/biz-components/Specs/index.js.map +0 -7
  224. package/dist/cjs/components/loadingDots.js +0 -42
  225. package/dist/cjs/components/loadingDots.js.map +0 -7
  226. package/dist/cjs/stories/aplusdesc.stories.js +0 -2
  227. package/dist/cjs/stories/aplusdesc.stories.js.map +0 -7
  228. package/dist/cjs/stories/download.stories.js +0 -2
  229. package/dist/cjs/stories/download.stories.js.map +0 -7
  230. package/dist/cjs/stories/features.stories.js +0 -2
  231. package/dist/cjs/stories/features.stories.js.map +0 -7
  232. package/dist/cjs/stories/footcharger.stories.js +0 -2
  233. package/dist/cjs/stories/footcharger.stories.js.map +0 -7
  234. package/dist/cjs/stories/giftbox.stories.js +0 -2
  235. package/dist/cjs/stories/giftbox.stories.js.map +0 -7
  236. package/dist/cjs/stories/graphicMore.stories.js +0 -2
  237. package/dist/cjs/stories/graphicMore.stories.js.map +0 -7
  238. package/dist/cjs/stories/selectstore.stories.js +0 -2
  239. package/dist/cjs/stories/selectstore.stories.js.map +0 -7
  240. package/dist/esm/biz-components/AplusDesc/index.js +0 -2
  241. package/dist/esm/biz-components/AplusDesc/index.js.map +0 -7
  242. package/dist/esm/biz-components/DownLoad/index.js +0 -2
  243. package/dist/esm/biz-components/DownLoad/index.js.map +0 -7
  244. package/dist/esm/biz-components/Features/index.js +0 -2
  245. package/dist/esm/biz-components/Features/index.js.map +0 -7
  246. package/dist/esm/biz-components/FootCharger/index.js +0 -2
  247. package/dist/esm/biz-components/FootCharger/index.js.map +0 -7
  248. package/dist/esm/biz-components/GiftBox/index.js +0 -2
  249. package/dist/esm/biz-components/GiftBox/index.js.map +0 -7
  250. package/dist/esm/biz-components/GraphicMore/index.js +0 -2
  251. package/dist/esm/biz-components/GraphicMore/index.js.map +0 -7
  252. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js +0 -2
  253. package/dist/esm/biz-components/HeaderNavigation/icons/Polygon.js.map +0 -7
  254. package/dist/esm/biz-components/Listing/ProductProvider.js +0 -2
  255. package/dist/esm/biz-components/Listing/ProductProvider.js.map +0 -7
  256. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js +0 -2
  257. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBenefitsTabs/index.js.map +0 -7
  258. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js +0 -2
  259. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.js.map +0 -7
  260. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +0 -2
  261. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +0 -7
  262. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +0 -2
  263. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +0 -7
  264. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js +0 -2
  265. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.js.map +0 -7
  266. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js +0 -2
  267. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/index.js.map +0 -7
  268. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js +0 -2
  269. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/types.js.map +0 -7
  270. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +0 -2
  271. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +0 -7
  272. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js +0 -2
  273. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/Select.js.map +0 -7
  274. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js +0 -2
  275. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/ShopifyColorOption.js.map +0 -7
  276. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js +0 -2
  277. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/SpecsModal.js.map +0 -7
  278. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js +0 -2
  279. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +0 -7
  280. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js +0 -2
  281. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/types.js.map +0 -7
  282. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js +0 -2
  283. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGridBox.js.map +0 -7
  284. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js +0 -2
  285. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.js.map +0 -7
  286. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js +0 -1
  287. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/types.js.map +0 -7
  288. package/dist/esm/biz-components/Listing/components/ProductCard/index.js +0 -2
  289. package/dist/esm/biz-components/Listing/components/ProductCard/index.js.map +0 -7
  290. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js +0 -2
  291. package/dist/esm/biz-components/Listing/components/PurchaseBar/ProductActions/index.js.map +0 -7
  292. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +0 -2
  293. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +0 -7
  294. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js +0 -1
  295. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.js.map +0 -7
  296. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js +0 -2
  297. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.js.map +0 -7
  298. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js +0 -1
  299. package/dist/esm/biz-components/Listing/components/PurchaseBar/types.js.map +0 -7
  300. package/dist/esm/biz-components/Listing/components/index.js +0 -2
  301. package/dist/esm/biz-components/Listing/components/index.js.map +0 -7
  302. package/dist/esm/biz-components/Listing/const.js +0 -2
  303. package/dist/esm/biz-components/Listing/const.js.map +0 -7
  304. package/dist/esm/biz-components/Listing/hooks/use-options.js +0 -2
  305. package/dist/esm/biz-components/Listing/hooks/use-options.js.map +0 -7
  306. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js +0 -2
  307. package/dist/esm/biz-components/Listing/hooks/use-variant-media.js.map +0 -7
  308. package/dist/esm/biz-components/Listing/hooks/use-variant.js +0 -2
  309. package/dist/esm/biz-components/Listing/hooks/use-variant.js.map +0 -7
  310. package/dist/esm/biz-components/Listing/hooks/useCopy.js +0 -2
  311. package/dist/esm/biz-components/Listing/hooks/useCopy.js.map +0 -7
  312. package/dist/esm/biz-components/Listing/index.js +0 -2
  313. package/dist/esm/biz-components/Listing/index.js.map +0 -7
  314. package/dist/esm/biz-components/Listing/types/graphql.js +0 -2
  315. package/dist/esm/biz-components/Listing/types/graphql.js.map +0 -7
  316. package/dist/esm/biz-components/Listing/types/product.js +0 -2
  317. package/dist/esm/biz-components/Listing/types/product.js.map +0 -7
  318. package/dist/esm/biz-components/Listing/types/productMetafields.d.js +0 -2
  319. package/dist/esm/biz-components/Listing/types/productMetafields.d.js.map +0 -7
  320. package/dist/esm/biz-components/Listing/types/type-helper.js +0 -1
  321. package/dist/esm/biz-components/Listing/types/type-helper.js.map +0 -7
  322. package/dist/esm/biz-components/Listing/types.js +0 -1
  323. package/dist/esm/biz-components/Listing/types.js.map +0 -7
  324. package/dist/esm/biz-components/Listing/utils/helper.js +0 -2
  325. package/dist/esm/biz-components/Listing/utils/helper.js.map +0 -7
  326. package/dist/esm/biz-components/Listing/utils/index.js +0 -2
  327. package/dist/esm/biz-components/Listing/utils/index.js.map +0 -7
  328. package/dist/esm/biz-components/NavigationSearch/index.js +0 -2
  329. package/dist/esm/biz-components/NavigationSearch/index.js.map +0 -7
  330. package/dist/esm/biz-components/NavigationSearch/types.js +0 -2
  331. package/dist/esm/biz-components/NavigationSearch/types.js.map +0 -7
  332. package/dist/esm/biz-components/SearchPage/index.js +0 -2
  333. package/dist/esm/biz-components/SearchPage/index.js.map +0 -7
  334. package/dist/esm/biz-components/SearchPage/types.js +0 -2
  335. package/dist/esm/biz-components/SearchPage/types.js.map +0 -7
  336. package/dist/esm/biz-components/SelectStore/index.js +0 -2
  337. package/dist/esm/biz-components/SelectStore/index.js.map +0 -7
  338. package/dist/esm/biz-components/Specs/dropdown.js +0 -3
  339. package/dist/esm/biz-components/Specs/dropdown.js.map +0 -7
  340. package/dist/esm/biz-components/Specs/index.js +0 -2
  341. package/dist/esm/biz-components/Specs/index.js.map +0 -7
  342. package/dist/esm/components/loadingDots.js +0 -42
  343. package/dist/esm/components/loadingDots.js.map +0 -7
  344. package/dist/esm/stories/aplusdesc.stories.js +0 -2
  345. package/dist/esm/stories/aplusdesc.stories.js.map +0 -7
  346. package/dist/esm/stories/download.stories.js +0 -2
  347. package/dist/esm/stories/download.stories.js.map +0 -7
  348. package/dist/esm/stories/features.stories.js +0 -2
  349. package/dist/esm/stories/features.stories.js.map +0 -7
  350. package/dist/esm/stories/footcharger.stories.js +0 -2
  351. package/dist/esm/stories/footcharger.stories.js.map +0 -7
  352. package/dist/esm/stories/giftbox.stories.js +0 -2
  353. package/dist/esm/stories/giftbox.stories.js.map +0 -7
  354. package/dist/esm/stories/graphicMore.stories.js +0 -2
  355. package/dist/esm/stories/graphicMore.stories.js.map +0 -7
  356. package/dist/esm/stories/selectstore.stories.js +0 -2
  357. package/dist/esm/stories/selectstore.stories.js.map +0 -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 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\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,OA2IJ,YAAAA,EA3II,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,EAIL,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
  }
@@ -1,2 +1,2 @@
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};
1
+ import{jsx as r,jsxs as v}from"react/jsx-runtime";import{cn as m}from"../../helpers/utils.js";import{useMediaQuery as W}from"react-responsive";import B from"./FilterCardWrapItem";import{useRef as A,useState as O,useEffect as h,forwardRef as V,useImperativeHandle as Y}from"react";import{cloneDeep as q}from"es-toolkit";const E=(k,F)=>{const{shopifyData:w={},isSale:D=!1,total:I,result:a,closeFilter:g,page:f,metafields:y,refreshStarRating:N,onPrimaryChange:L,onSecondaryChange:M,onNextPage:x,onPrevPage:R}=k,{advertisingSpace:b}=y,{buttonText:j,loadMoreText:z}=w,d=b||w?.advertisingSpace,C=A(null),[p,u]=O([]),i=W({query:"(max-width: 1024px)"}),S=n=>{const e=q(n||[]);if(d){const t=e.findIndex(c=>c.mImage);if(t===-1){const c=Math.min(g?d?.maxLocation||7:d?.minLocation||5,e.length);e.splice(c,0,d)}else{e.splice(t,1);const c=Math.min(g?d?.maxLocation||7:d?.minLocation||5,e.length);e.splice(c,0,d)}}return e};Y(F,()=>({clearData(){u([])}}));const P=()=>{const n=C.current;if(!n)return;const e=n.getBoundingClientRect()?.top+window?.pageYOffset-120;window?.scrollTo?.({top:e,behavior:"smooth"})},T=n=>n?.metafields?.seoSetting?.noindex;return h(()=>{(a?.slug||a?.id)&&((f===1||!i)&&u([]),a?.products&&u(n=>{const e=a.products?.filter?.(o=>!n.some(s=>s.id===o.id));let t=[...n,...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}))},[a?.products,f,i,b]),h(()=>{p?.length&&f===1&&!i&&u(S(p))},[g]),h(()=>{p?.length&&N?.()},[p]),v("div",{className:"filter-card-wrap-container",ref:C,children:[r("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":g&&!i,"laptop:grid-cols-3 tablet:grid-cols-2":!g&&!i},"filter-card-wrap"),children:p?.map?.(n=>T(n)?null:r(B,{data:n,buttonText:j,metafields:y,onPrimaryChange:(e,t)=>L?.(e,t),onSecondaryChange:(e,t)=>M?.(e,t)},n.id))}),i?v("div",{onClick:()=>{x?.(a?.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:z||"View More"}),r("div",{className:"size-[18px]",children: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,!i&&I>18?v("div",{className:"mt-6 flex items-center justify-end gap-4 cursor-pointer",children:[r("button",{name:"perv page",disabled:!a?.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":!a?.pageInfo?.hasPreviousPage}),onClick:()=>{P?.(),R?.(a?.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: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":!a?.pageInfo?.hasNextPage}),disabled:!a?.pageInfo?.hasNextPage,onClick:()=>{P?.(),x?.(a?.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 U=V(E);export{U 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 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"]
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 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 (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 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 {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", "hasNoIndex", "product", "prevProducts", "newProducts", "prev", "soldOutProducts", "isShow", "params", "isVariants", "FilterCardWrap_default"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/biz-components/CollectionsFilters/component/filtersFun.ts"],
4
- "sourcesContent": ["const handleFilters = (filtered: any) => {\n const allFilters: any[] = []\n let chunkNumber: number = 18\n Object.keys(filtered).forEach(key => {\n if (key === 'price') {\n const priceOptions =\n filtered[key]\n ?.join('|')\n ?.split('|')\n ?.map((item: any) => Number(item)) || []\n const maxValue = Math.max(...priceOptions)\n const minValue = Math.min(...priceOptions)\n maxValue &&\n minValue &&\n allFilters.push({\n price: {\n max: maxValue,\n min: minValue,\n },\n })\n }\n if (key.includes('filter.p.tag')) {\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n tag: item,\n })\n })\n }\n if (key.includes('filter.p.product_type')) {\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n productType: item,\n })\n })\n }\n if (key.includes('filter.v.availability')) {\n filtered[key]?.forEach((item: string) => {\n const val = item.split('filter.v.availability.')?.pop()\n allFilters.push({\n available: val === '1',\n })\n })\n }\n if (key.includes('filter.v.m.filter.')) {\n const metafieldsKey = key.split('filter.v.m.filter.')?.pop()\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n variantMetafield: {\n namespace: 'filter',\n key: metafieldsKey,\n value: item,\n },\n })\n })\n }\n if (key.includes('offers')) {\n chunkNumber = 150\n }\n })\n return { allFilters: allFilters, chunkNumber: chunkNumber }\n}\n\nconst handleSortKeyAndReverse = (sortList: any, sortKeyIndx: number) => {\n if (sortList && sortKeyIndx >= 0) {\n const current = sortList?.[sortKeyIndx]\n if (!current?.type?.includes('filter.')) {\n const [sortKey, reverse] = current?.type?.split('|')\n return [sortKey, !!reverse]\n }\n }\n return ['COLLECTION_DEFAULT', false]\n}\n\nconst handleChunkNumber = (filtered: any) => {\n if (Object.keys(filtered)?.some(key => key === 'offers')) return 150\n return 18\n}\n\n\nconst handleFilterOptions = (result: any, filterPrice: any, shop_filters_pair: any, filterProductData?: any) => {\n const Offers = {\n label: shop_filters_pair?.filter_txt?.offers?.name || 'Offers',\n value: 'offers',\n mainPair: false,\n options: [\n {\n label: shop_filters_pair?.filter_txt?.offers?.onsale || 'On Sale',\n value: 'onsale',\n },\n ],\n }\n filterPrice.mainPair = false\n const initOption = [filterPrice, Offers]\n return (\n result?.filters &&\n result.filters.reduce((ac: any, cu: any) => {\n const filter = {\n label: cu?.label,\n options: [],\n value: cu?.id,\n mainPair: filterProductData?.mainPair?.type === cu?.id ? true : false,\n }\n // if (cu?.id === 'filter.p.tag') return ac\n if (cu?.id === 'filter.v.price') return ac\n if (cu?.id === 'filter.p.product_type') return ac\n if (cu?.id === 'filter.v.availability') {\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n if (cuV.id === 'filter.v.availability.1') {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.id,\n })\n }\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }\n if (cu?.id === 'filter.v.m.filter.capacity') {\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n if (cuV?.label?.includes('Over')) {\n acV.unshift({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n } else {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n }\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }, initOption)\n )\n}\n\nfunction getComponentData(\n metafields: any,\n dataKey: string,\n variant: any = null,\n components: any = null\n) {\n // console.log(\"metafields\", metafields)\n // \u83B7\u53D6 component \u7684\u6587\u6848\n\n let data = {}\n if (components) {\n data = components[dataKey?.trim()] || {}\n } else {\n data = metafields?.components ? metafields.components[dataKey?.trim()] : {}\n }\n\n if (variant) {\n // \u5982\u679C\u6709\u4E14 variant \u6709\u5BF9\u5E94\u6587\u6848\uFF0Cvariant \u8986\u76D6 component\n const { variantsMetafields = {} } =\n components || metafields?.components || {}\n\n const variantMetafields = Array.isArray(variantsMetafields)\n ? variantsMetafields?.find((f) => f.id === variant?.id)\n : {}\n if (\n variantMetafields?.metafields &&\n variantMetafields.metafields[dataKey]\n ) {\n data = variantMetafields.metafields[dataKey]\n }\n }\n\n return {\n key: dataKey.split('_')[0],\n data,\n }\n}\n\nexport { handleFilters, handleSortKeyAndReverse, handleChunkNumber, handleFilterOptions, getComponentData }\n"],
4
+ "sourcesContent": ["const handleFilters = (filtered: any) => {\n const allFilters: any[] = []\n let chunkNumber: number = 18\n Object.keys(filtered).forEach(key => {\n if (key === 'price') {\n const priceOptions =\n filtered[key]\n ?.join('|')\n ?.split('|')\n ?.map((item: any) => Number(item)) || []\n const maxValue = Math.max(...priceOptions)\n const minValue = Math.min(...priceOptions)\n maxValue &&\n minValue &&\n allFilters.push({\n price: {\n max: maxValue,\n min: minValue,\n },\n })\n }\n if (key.includes('filter.p.tag')) {\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n tag: item,\n })\n })\n }\n if (key.includes('filter.p.product_type')) {\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n productType: item,\n })\n })\n }\n if (key.includes('filter.v.availability')) {\n filtered[key]?.forEach((item: string) => {\n const val = item.split('filter.v.availability.')?.pop()\n allFilters.push({\n available: val === '1',\n })\n })\n }\n if (key.includes('filter.v.m.filter.')) {\n const metafieldsKey = key.split('filter.v.m.filter.')?.pop()\n filtered[key]?.forEach((item: any) => {\n allFilters.push({\n variantMetafield: {\n namespace: 'filter',\n key: metafieldsKey,\n value: item,\n },\n })\n })\n }\n if (key.includes('offers')) {\n chunkNumber = 150\n }\n })\n return { allFilters: allFilters, chunkNumber: chunkNumber }\n}\n\nconst handleSortKeyAndReverse = (sortList: any, sortKeyIndx: number) => {\n if (sortList && sortKeyIndx >= 0) {\n const current = sortList?.[sortKeyIndx]\n if (!current?.type?.includes('filter.')) {\n const [sortKey, reverse] = current?.type?.split('|')\n return [sortKey, !!reverse]\n }\n }\n return ['COLLECTION_DEFAULT', false]\n}\n\nconst handleChunkNumber = (filtered: any) => {\n if (Object.keys(filtered)?.some(key => key === 'offers')) return 150\n return 18\n}\n\n\nconst handleFilterOptions = (result: any, filterPrice: any, shop_filters_pair: any, filterProductData?: any) => {\n const Offers = {\n label: shop_filters_pair?.filter_txt?.offers?.name || 'Offers',\n value: 'offers',\n mainPair: false,\n options: [\n {\n label: shop_filters_pair?.filter_txt?.offers?.onsale || 'On Sale',\n value: 'onsale',\n },\n ],\n }\n filterPrice.mainPair = false\n const initOption = [filterPrice, Offers]\n return (\n result?.filters &&\n result.filters.reduce((ac: any, cu: any) => {\n const filter = {\n label: cu?.label,\n options: [],\n value: cu?.id,\n mainPair: filterProductData?.mainPair?.type === cu?.id ? true : false,\n }\n // if (cu?.id === 'filter.p.tag') return ac\n if (cu?.id === 'filter.v.price') return ac\n if (cu?.id === 'filter.p.product_type') return ac\n if (cu?.id === 'filter.v.availability') {\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n if (cuV.id === 'filter.v.availability.1') {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.id,\n })\n }\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }\n if (cu?.id === 'filter.v.m.filter.capacity') {\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n if (cuV?.label?.includes('Over')) {\n acV.unshift({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n } else {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n }\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }\n filter.options = cu.values.reduce((acV: any, cuV: any) => {\n acV.push({\n count: cuV.count,\n label: cuV.label,\n value: cuV.label,\n })\n return [...acV]\n }, [])\n ac.push(filter)\n return [...ac]\n }, initOption)\n )\n}\n\nfunction getComponentData(\n metafields: any,\n dataKey: string,\n variant: any = null,\n components: any = null\n) {\n // console.log(\"metafields\", metafields)\n // \u83B7\u53D6 component \u7684\u6587\u6848\n\n let data = {}\n if (components) {\n data = components[dataKey?.trim()] || {}\n } else {\n data = metafields?.components ? metafields.components[dataKey?.trim()] : {}\n }\n\n if (variant) {\n // \u5982\u679C\u6709\u4E14 variant \u6709\u5BF9\u5E94\u6587\u6848\uFF0Cvariant \u8986\u76D6 component\n const { variantsMetafields = {} } =\n components || metafields?.components || {}\n\n const variantMetafields = Array.isArray(variantsMetafields)\n ? variantsMetafields?.find((f) => f.id === variant?.id)\n : {}\n if (\n variantMetafields?.metafields &&\n variantMetafields.metafields[dataKey]\n ) {\n data = variantMetafields.metafields[dataKey]\n }\n }\n\n return {\n key: dataKey.split('_')[0],\n data,\n }\n}\n\nexport { handleFilters, handleSortKeyAndReverse, handleChunkNumber, handleFilterOptions, getComponentData }"],
5
5
  "mappings": "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",
6
6
  "names": ["handleFilters", "filtered", "allFilters", "chunkNumber", "key", "priceOptions", "item", "maxValue", "minValue", "val", "metafieldsKey", "handleSortKeyAndReverse", "sortList", "sortKeyIndx", "current", "sortKey", "reverse", "handleChunkNumber", "handleFilterOptions", "result", "filterPrice", "shop_filters_pair", "filterProductData", "Offers", "initOption", "ac", "cu", "filter", "acV", "cuV", "getComponentData", "metafields", "dataKey", "variant", "components", "data", "variantsMetafields", "variantMetafields", "f"]
7
7
  }
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as l}from"react/jsx-runtime";import{useEffect as h,useMemo as M,useState as b}from"react";import{Picture as m,Text as n,Container as C,Link as c}from"../../components/index.js";import F from"../Subscribe/index.js";import{FooterNavigationBlockType as u}from"./types.js";import{AddIcon as N,SubtractIcon as g,ArrowRightIcon as D,CountryIcon as A}from"./icons/index.js";import{useMediaQuery as y}from"react-responsive";import{cn as f}from"../../helpers/utils.js";import{withLayout as L}from"../../shared/Styles.js";const E=({data:{footerNavigation:s}={},currentCountry:r,event:t})=>{const[i,d]=b(!1),x=y({query:"(max-width: 1440px)"});h(()=>{d(x)},[x]);const p=M(()=>s?.footerBlocks?.find(a=>a?.blockType===u.Brand)?.country||{},[s]);return l(C,{childClassName:"bg-black py-8 flex flex-col desktop:gap-16 gap-8",children:[e(n,{html:s?.story,className:"desktop:text-sm text-xs font-bold text-[#6D6D6F]"}),s?.footerBlocks?.map(a=>{if(a?.blockType===u.Signup)return e(S,{data:a,onSubmit:t?.signup});if(a?.blockType===u.Brand)return e(z,{data:a,isMobile:i,event:t,currentCountry:r});if(a?.blockType===u.Main)return e(T,{data:{...a,country:p},event:t,isMobile:i,currentCountry:r})})]})},S=({data:s,onSubmit:r})=>l("div",{className:"desktop:py-16 desktop:gap-16 laptop:rounded-2xl laptop:px-8 desktop:flex-row flex flex-col gap-8 rounded-xl bg-[#1D1D1F] px-4 py-8",children:[e(F,{subscribeMetadata:s?.signup,className:"desktop:flex-[744]",onSubmit:r}),e("div",{className:"desktop:hidden h-px w-full bg-[#3D3E3F]"}),l("div",{className:"desktop:gap-6 desktop:flex-row desktop:flex-[792] flex flex-col gap-4",children:[l("div",{className:"flex-1",children:[e(n,{html:s?.enjoy?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex flex-col gap-2",children:s?.enjoy?.enjoys?.map(t=>l("div",{className:"flex-start flex gap-2",children:[e(m,{source:t?.icon?.url,alt:t?.icon?.alt,className:"size-5 shrink-0"}),e(n,{html:t?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})]},t?.id))})]}),e("div",{className:"w-px bg-[#3D3E3F]"}),l("div",{className:"flex-1",children:[e(n,{html:s?.benefit?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex flex-col gap-2",children:s?.benefit?.benefits?.map(t=>e(c,{href:t?.link,asChild:!t?.link,className:"no-underline",children:e(n,{html:t?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})},t?.id))})]})]})]}),T=({data:s,event:r,isMobile:t,currentCountry:i})=>{const[d,x]=b(!1),{services:p,mainNav:a,country:k}=s;return l("div",{className:"flex flex-col gap-8",children:[l("div",{className:f({"desktop:gap-16 flex":p?.download?.title}),children:[l("div",{className:f({"desktop:flex-[1260]":p?.download?.title}),children:[e(n,{html:p?.storeBenefits?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:f("desktop:flex-row desktop:gap-4 desktop:flex-wrap mt-4 flex flex-col gap-2",{"desktop:max-w-[648px]":p?.download?.title}),children:p?.storeBenefits?.reasons?.map(o=>l("div",{className:"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2",children:[e(m,{source:o?.icon?.url,alt:o?.icon?.alt,className:"size-5 shrink-0"}),e(c,{href:o?.link,asChild:!o?.link,className:"no-underline",children:e(n,{html:o?.label,className:"text-base font-bold leading-[1.2] text-[#B6B6BA]"})})]},o?.id))})]}),e(w,{className:f({"desktop:flex-[404] hidden desktop:block":p?.download?.title}),title:p?.download?.title,apps:p?.download?.apps})]}),e("div",{className:"desktop:block hidden h-px bg-[#3D3E3F]"}),l("div",{className:"desktop:grid grid-cols-4 gap-4",children:[e(v,{title:a?.products?.title,lists:a?.products?.products}),e(v,{title:a?.explore?.title,lists:a?.explore?.explores}),e(v,{title:a?.support?.title,lists:a?.support?.supports}),l("div",{className:"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4",children:[l("div",{className:"desktop:pb-0 flex items-center justify-between pb-4",children:[e(n,{as:"p",html:a?.contact?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),t&&e("button",{onClick:()=>x(!d),children:d?e(g,{width:16,height:16}):e(N,{width:16,height:16})})]}),(d&&t||!t)&&e("div",{className:"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2",children:a?.contact?.contacts?.map(o=>l("div",{className:"flex items-start gap-2",children:[e(m,{source:o?.icon?.url,alt:o?.icon?.alt,className:"size-5 shrink-0"}),e(c,{href:o?.link,className:"no-underline",children:e(n,{html:o?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-brand-0"})})]},o?.id))}),e(B,{country:i||k,className:"desktop:hidden border-b border-[#3D3E3F]",isMobile:t,onChangeCountry:r?.country}),e("div",{className:"desktop:hidden mt-8",children:e(w,{title:p?.download?.title,apps:p?.download?.apps})}),e("div",{className:"mt-8 flex items-center gap-2",children:a?.socials?.map(o=>e(c,{href:o?.link,children:e(m,{source:o?.icon?.url,alt:o?.icon?.alt,className:"size-8 shrink-0"})},o?.id))}),e("div",{className:"mt-4 flex flex-wrap gap-2",children:a?.payment?.map(o=>e(c,{href:o?.link,children:e(m,{source:o?.icon?.url,alt:o?.icon?.alt,className:"h-[28px] w-[44px] shrink-0"})},o?.id))})]})]})]})},z=({data:s,isMobile:r,event:t,currentCountry:i})=>l("div",{className:"flex flex-col gap-4",children:[l("div",{className:"desktop:flex-row desktop:flex desktop:gap-4",children:[l("div",{className:"laptop:flex-row laptop:items-end desktop:flex-[980] flex flex-col items-start gap-4",children:[e(n,{html:s?.brand?.currentBrand,className:"text-[#B6B6BA]"}),e("div",{className:"laptop:block hidden h-[20px] w-px bg-[#B6B6BA] laptop:mb-[10px]"}),e("div",{className:"desktop:gap-6 flex flex-wrap items-center gap-4 laptop:mb-[10px]",children:s?.brand?.brands?.map(d=>e(c,{href:d?.link,children:e(n,{html:d?.icon,className:"text-[#B6B6BA] hover:text-[#ddd]"})},d?.id))})]}),e(B,{country:i||s?.country,className:"desktop:flex-[316] desktop:block hidden",isMobile:r,onChangeCountry:t?.country})]}),e("div",{className:"h-px bg-[#3D3E3F]"}),l("div",{className:"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1",children:[e(n,{html:s?.copyright?.label,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]"}),e("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:s?.policy?.policies?.map(d=>e(c,{href:d?.link,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline",children:d?.label},d?.id))})]})]}),v=({title:s,lists:r,className:t})=>{const[i,d]=b(!1),[x,p]=b(!1),a=y({query:"(max-width: 1440px)"});return h(()=>{p(a)},[a]),l("div",{className:f("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",t),children:[l("div",{className:"flex items-center justify-between",children:[e(n,{as:"p",html:s,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),x&&e("button",{onClick:()=>d(!i),children:i?e(g,{width:20,height:20}):e(N,{width:20,height:20})})]}),(i&&x||!x)&&e("div",{className:"mt-4 flex flex-col gap-2",children:r?.map(k=>e(c,{href:k?.link,className:"no-underline",children:e(n,{html:k?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-brand-0"})},k?.id))})]})},w=({title:s,apps:r,className:t})=>l("div",{className:t,children:[e(n,{html:s,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex items-center gap-4",children:r?.map(i=>l("div",{className:"flex flex-col items-center gap-[6px]",children:[e(c,{href:i?.link,children:e(m,{source:i?.icon?.url,alt:i?.icon?.alt,className:"size-10 shrink-0"})}),i?.label&&e(n,{html:i?.label,className:"text-xs font-bold text-[#999999]"})]},i?.id))})]}),B=({country:s,isMobile:r,className:t,onChangeCountry:i})=>e("div",{className:f("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",t),children:l("div",{className:"flex items-center justify-between",children:[l("button",{className:"flex cursor-pointer items-center gap-2",onClick:()=>i?.(),children:[e(A,{width:20,height:20,className:"shrink-0"}),e(n,{as:"p",html:s?.countryName||s?.country,className:"desktop:text-[#B6B6BA] text-base font-bold leading-[1.4] text-white hover:text-[#ddd]"})]}),r&&e("button",{children:e(D,{width:16,height:16})})]})});var J=L(E);export{J as default};
1
+ import{jsx as e,jsxs as a}from"react/jsx-runtime";import{useEffect as u,useMemo as B,useState as k}from"react";import{Picture as x,Text as r,Container as M,Link as p}from"../../components/index.js";import C from"../Subscribe/index.js";import{FooterNavigationBlockType as b}from"./types.js";import{AddIcon as N,SubtractIcon as h,ArrowRightIcon as F,CountryIcon as D}from"./icons/index.js";import{useMediaQuery as g}from"react-responsive";import{cn as m}from"../../helpers/utils.js";import{withLayout as A}from"../../shared/Styles.js";const L=({data:{footerNavigation:s}={},event:d})=>{const[o,t]=k(!1);console.log("footerNavigation",s);const c=g({query:"(max-width: 1440px)"});u(()=>{t(c)},[c]);const n=B(()=>s?.footerBlocks?.find(i=>i?.blockType===b.Brand)?.country||{},[s]);return a(M,{childClassName:"bg-black py-16 flex flex-col desktop:gap-16 gap-8",children:[e(r,{html:s?.story,className:"desktop:text-sm text-xs font-bold text-[#6D6D6F]"}),s?.footerBlocks?.map(i=>{if(i?.blockType===b.Signup)return e(E,{data:i,onSubmit:d?.signup});if(i?.blockType===b.Brand)return e(T,{data:i,isMobile:o,event:d});if(i?.blockType===b.Main)return e(S,{data:{...i,country:n},event:d,isMobile:o})})]})},E=({data:s,onSubmit:d})=>a("div",{className:"desktop:py-16 desktop:gap-16 laptop:rounded-2xl laptop:px-8 desktop:flex-row flex flex-col gap-8 rounded-xl bg-[#1D1D1F] px-4 py-8",children:[e(C,{subscribeMetadata:s?.signup,className:"desktop:flex-[744]",onSubmit:d}),e("div",{className:"desktop:hidden h-px w-full bg-[#3D3E3F]"}),a("div",{className:"desktop:gap-6 desktop:flex-row desktop:flex-[792] flex flex-col gap-4",children:[a("div",{className:"flex-1",children:[e(r,{html:s?.enjoy?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex flex-col gap-2",children:s?.enjoy?.enjoys?.map(o=>a("div",{className:"flex-start flex gap-2",children:[e(x,{source:o?.icon?.url,alt:o?.icon?.alt,className:"size-5 shrink-0"}),e(r,{html:o?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})]},o?.id))})]}),e("div",{className:"w-px bg-[#3D3E3F]"}),a("div",{className:"flex-1",children:[e(r,{html:s?.benefit?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex flex-col gap-2",children:s?.benefit?.benefits?.map(o=>e(r,{html:o?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"},o?.id))})]})]})]}),S=({data:s,event:d,isMobile:o})=>{const[t,c]=k(!1),{services:n,mainNav:i,country:f}=s;return a("div",{className:"flex flex-col gap-8",children:[a("div",{className:m({"desktop:gap-16 flex":n?.download?.title}),children:[a("div",{className:m({"desktop:flex-[1260]":n?.download?.title}),children:[e(r,{html:n?.storeBenefits?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:m("desktop:flex-row desktop:gap-4 desktop:flex-wrap mt-4 flex flex-col gap-2",{"desktop:max-w-[648px]":n?.download?.title}),children:n?.storeBenefits?.reasons?.map(l=>a("div",{className:"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2",children:[e(x,{source:l?.icon?.url,alt:l?.icon?.alt,className:"size-5 shrink-0"}),e(r,{html:l?.label,className:"text-base font-bold leading-[1.2] text-[#B6B6BA]"})]},l?.id))})]}),e(y,{className:m({"desktop:flex-[404] hidden desktop:block":n?.download?.title}),title:n?.download?.title,apps:n?.download?.apps})]}),e("div",{className:"desktop:block hidden h-px bg-[#3D3E3F]"}),a("div",{className:"desktop:grid grid-cols-4 gap-4",children:[e(v,{title:i?.products?.title,lists:i?.products?.products}),e(v,{title:i?.explore?.title,lists:i?.explore?.explores}),e(v,{title:i?.support?.title,lists:i?.support?.supports}),a("div",{className:"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4",children:[a("div",{className:"desktop:pb-0 flex items-center justify-between pb-4",children:[e(r,{as:"p",html:i?.contact?.title,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),o&&e("button",{onClick:()=>c(!t),children:t?e(h,{width:16,height:16}):e(N,{width:16,height:16})})]}),(t&&o||!o)&&e("div",{className:"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2",children:i?.contact?.contacts?.map(l=>a("div",{className:"flex items-start gap-2",children:[e(x,{source:l?.icon?.url,alt:l?.icon?.alt,className:"size-5 shrink-0"}),e(p,{href:l?.link,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] no-underline",children:l?.label})]},l?.id))}),e(w,{country:f,className:"desktop:hidden",isMobile:o,onChangeCountry:d?.country}),e("div",{className:"desktop:hidden mt-8",children:e(y,{title:n?.download?.title,apps:n?.download?.apps})}),e("div",{className:"mt-8 flex items-center gap-2",children:i?.socials?.map(l=>e(p,{href:l?.link,children:e(x,{source:l?.icon?.url,alt:l?.icon?.alt,className:"size-8 shrink-0"})},l?.id))}),e("div",{className:"mt-4 flex flex-wrap gap-2",children:i?.payment?.map(l=>e(p,{href:l?.link,children:e(x,{source:l?.icon?.url,alt:l?.icon?.alt,className:"h-[28px] w-[44px] shrink-0"})},l?.id))})]})]})]})},T=({data:s,isMobile:d,event:o})=>a("div",{className:"flex flex-col gap-4",children:[a("div",{className:"desktop:flex-row desktop:flex desktop:gap-4",children:[a("div",{className:"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4",children:[e(r,{html:s?.brand?.currentBrand,className:"text-[#B6B6BA]"}),e("div",{className:"laptop:block hidden h-[20px] w-px bg-[#B6B6BA] "}),e("div",{className:"desktop:gap-6 flex flex-wrap items-center gap-4",children:s?.brand?.brands?.map(t=>e(p,{href:t?.link,children:e(r,{html:t?.icon,className:"text-[#B6B6BA] hover:text-[#ddd]"})},t?.id))})]}),e(w,{country:s?.country,className:"desktop:flex-[316] desktop:block hidden",isMobile:d,onChangeCountry:o?.country})]}),e("div",{className:"h-px bg-[#3D3E3F]"}),a("div",{className:"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1",children:[e(r,{html:s?.copyright?.label,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]"}),e("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:s?.policy?.policies?.map(t=>e(p,{href:t?.link,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline",children:t?.label},t?.id))})]})]}),v=({title:s,lists:d,className:o})=>{const[t,c]=k(!1),[n,i]=k(!1),f=g({query:"(max-width: 1440px)"});return u(()=>{i(f)},[f]),a("div",{className:m("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",o),children:[a("div",{className:"flex items-center justify-between",children:[e(r,{as:"p",html:s,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),n&&e("button",{onClick:()=>c(!t),children:t?e(h,{width:16,height:16}):e(N,{width:16,height:16})})]}),(t&&n||!n)&&e("div",{className:"mt-4 flex flex-col gap-2",children:d?.map(l=>e(p,{href:l?.url,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] no-underline",children:l?.label},l?.id))})]})},y=({title:s,apps:d,className:o})=>a("div",{className:o,children:[e(r,{html:s,className:"desktop:text-2xl text-xl font-bold leading-[1.2] text-white"}),e("div",{className:"mt-4 flex items-center gap-4",children:d?.map(t=>a("div",{className:"flex flex-col items-center gap-[6px]",children:[e(p,{href:t?.link,children:e(x,{source:t?.icon?.url,alt:t?.icon?.alt,className:"size-10 shrink-0"})}),t?.label&&e(r,{html:t?.label,className:"text-xs font-bold text-[#999999]"})]},t?.id))})]}),w=({country:s,isMobile:d,className:o,onChangeCountry:t})=>e("div",{className:m("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",o),children:a("div",{className:"flex items-center justify-between",children:[a("button",{className:"flex cursor-pointer items-center gap-2",onClick:()=>t?.(),children:[e(D,{width:20,height:20,className:"shrink-0"}),e(r,{as:"p",html:s?.country,className:"desktop:text-[#B6B6BA] text-base font-bold leading-[1.4] text-white hover:text-[#ddd]"})]}),d&&e("button",{children:e(F,{width:16,height:16})})]})});var H=A(L);export{H as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/FooterNavigation/index.tsx"],
4
- "sourcesContent": ["import { useEffect, useMemo, useState } from 'react'\nimport { Picture, Text, Container, Link } from '../../components/index.js'\nimport Subscribe from '../Subscribe/index.js'\nimport type { FooterNavigationProps } from './types.js'\nimport { FooterNavigationBlockType } from './types.js'\nimport { AddIcon, SubtractIcon, ArrowRightIcon, CountryIcon } from './icons/index.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\n\nconst FooterNavigation = ({ data: { footerNavigation } = {}, currentCountry, event }: FooterNavigationProps) => {\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1440px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const country = useMemo(() => {\n return (\n footerNavigation?.footerBlocks?.find((block: any) => block?.blockType === FooterNavigationBlockType.Brand)\n ?.country || {}\n )\n }, [footerNavigation])\n\n return (\n <Container childClassName=\"bg-black py-8 flex flex-col desktop:gap-16 gap-8\">\n <Text html={footerNavigation?.story} className=\"desktop:text-sm text-xs font-bold text-[#6D6D6F]\" />\n {footerNavigation?.footerBlocks?.map((block: any) => {\n if (block?.blockType === FooterNavigationBlockType.Signup) {\n return <MarketingConversion data={block} onSubmit={event?.signup} />\n }\n if (block?.blockType === FooterNavigationBlockType.Brand) {\n return <FooterBrand data={block} isMobile={isMobile} event={event} currentCountry={currentCountry} />\n }\n if (block?.blockType === FooterNavigationBlockType.Main) {\n return (\n <MainServices\n data={{ ...block, country }}\n event={event}\n isMobile={isMobile}\n currentCountry={currentCountry}\n />\n )\n }\n })}\n </Container>\n )\n}\n\n/**\n * MarketingConversion \u8425\u9500\u8F6C\u5316\u6A21\u5757\n * @param data\n * @param onSubmit signup\u63D0\u4EA4\u4E8B\u4EF6\n * @returns\n */\nconst MarketingConversion = ({ data, onSubmit }: { data: any; onSubmit?: (params: any) => void }) => {\n return (\n <div className=\"desktop:py-16 desktop:gap-16 laptop:rounded-2xl laptop:px-8 desktop:flex-row flex flex-col gap-8 rounded-xl bg-[#1D1D1F] px-4 py-8\">\n <Subscribe subscribeMetadata={data?.signup} className=\"desktop:flex-[744]\" onSubmit={onSubmit} />\n <div className=\"desktop:hidden h-px w-full bg-[#3D3E3F]\" />\n <div className=\"desktop:gap-6 desktop:flex-row desktop:flex-[792] flex flex-col gap-4\">\n <div className=\"flex-1\">\n <Text html={data?.enjoy?.title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.enjoy?.enjoys?.map((enjoyItem: any) => (\n <div key={enjoyItem?.id} className=\"flex-start flex gap-2\">\n <Picture source={enjoyItem?.icon?.url} alt={enjoyItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Text\n html={enjoyItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </div>\n ))}\n </div>\n </div>\n <div className=\"w-px bg-[#3D3E3F]\" />\n <div className=\"flex-1\">\n <Text html={data?.benefit?.title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.benefit?.benefits?.map((benefitItem: any) => (\n <Link\n href={benefitItem?.link}\n asChild={!benefitItem?.link}\n key={benefitItem?.id}\n className=\"no-underline\"\n >\n <Text\n html={benefitItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\n/**\n * MainServices \u4E3B\u5BFC\u822A\u4E0E\u670D\u52A1\u6A21\u5757\n * @param services \u670D\u52A1\n * @param mainNav \u4E3B\u5BFC\u822A\n * @param event \u4E8B\u4EF6\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @param currentCountry \u5F53\u524D\u56FD\u5BB6\n * @returns\n */\nconst MainServices = ({\n data,\n event,\n isMobile,\n currentCountry,\n}: {\n data: any\n event: any\n isMobile: boolean\n currentCountry: any\n}) => {\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const { services, mainNav, country } = data\n return (\n <div className=\"flex flex-col gap-8\">\n <div\n className={cn({\n 'desktop:gap-16 flex': services?.download?.title,\n })}\n >\n <div\n className={cn({\n 'desktop:flex-[1260]': services?.download?.title,\n })}\n >\n <Text\n html={services?.storeBenefits?.title}\n className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\"\n />\n <div\n className={cn('desktop:flex-row desktop:gap-4 desktop:flex-wrap mt-4 flex flex-col gap-2', {\n 'desktop:max-w-[648px]': services?.download?.title,\n })}\n >\n {services?.storeBenefits?.reasons?.map((reasonItem: any) => (\n <div key={reasonItem?.id} className=\"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2\">\n <Picture source={reasonItem?.icon?.url} alt={reasonItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Link href={reasonItem?.link} asChild={!reasonItem?.link} className=\"no-underline\">\n <Text html={reasonItem?.label} className=\"text-base font-bold leading-[1.2] text-[#B6B6BA]\" />\n </Link>\n </div>\n ))}\n </div>\n </div>\n <DownloadApp\n className={cn({\n 'desktop:flex-[404] hidden desktop:block': services?.download?.title,\n })}\n title={services?.download?.title}\n apps={services?.download?.apps}\n />\n </div>\n <div className=\"desktop:block hidden h-px bg-[#3D3E3F]\" />\n <div className=\"desktop:grid grid-cols-4 gap-4\">\n <MainNavMenu title={mainNav?.products?.title} lists={mainNav?.products?.products} />\n <MainNavMenu title={mainNav?.explore?.title} lists={mainNav?.explore?.explores} />\n <MainNavMenu title={mainNav?.support?.title} lists={mainNav?.support?.supports} />\n <div className=\"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4\">\n <div className=\"desktop:pb-0 flex items-center justify-between pb-4\">\n <Text\n as=\"p\"\n html={mainNav?.contact?.title}\n className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\"\n />\n {isMobile && (\n <button onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}>\n {mainNavMenuOpen ? <SubtractIcon width={16} height={16} /> : <AddIcon width={16} height={16} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div className=\"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2\">\n {mainNav?.contact?.contacts?.map((contactItem: any) => (\n <div key={contactItem?.id} className=\"flex items-start gap-2\">\n <Picture source={contactItem?.icon?.url} alt={contactItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Link href={contactItem?.link} className=\"no-underline\">\n <Text\n html={contactItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-brand-0\"\n />\n </Link>\n </div>\n ))}\n </div>\n )}\n <ChangeCountry\n country={currentCountry || country}\n className=\"desktop:hidden border-b border-[#3D3E3F]\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n <div className=\"desktop:hidden mt-8\">\n <DownloadApp title={services?.download?.title} apps={services?.download?.apps} />\n </div>\n <div className=\"mt-8 flex items-center gap-2\">\n {mainNav?.socials?.map((socialItem: any) => (\n <Link href={socialItem?.link} key={socialItem?.id}>\n <Picture source={socialItem?.icon?.url} alt={socialItem?.icon?.alt} className=\"size-8 shrink-0\" />\n </Link>\n ))}\n </div>\n <div className=\"mt-4 flex flex-wrap gap-2\">\n {mainNav?.payment?.map((paymentItem: any) => (\n <Link href={paymentItem?.link} key={paymentItem?.id}>\n <Picture\n source={paymentItem?.icon?.url}\n alt={paymentItem?.icon?.alt}\n className=\"h-[28px] w-[44px] shrink-0\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nconst FooterBrand = ({\n data,\n isMobile,\n event,\n currentCountry,\n}: {\n data: any\n isMobile: boolean\n event: any\n currentCountry: any\n}) => {\n return (\n <div className=\"flex flex-col gap-4\">\n <div className=\"desktop:flex-row desktop:flex desktop:gap-4\">\n <div className=\"laptop:flex-row laptop:items-end desktop:flex-[980] flex flex-col items-start gap-4\">\n <Text html={data?.brand?.currentBrand} className=\"text-[#B6B6BA]\" />\n <div className=\"laptop:block hidden h-[20px] w-px bg-[#B6B6BA] laptop:mb-[10px]\" />\n <div className=\"desktop:gap-6 flex flex-wrap items-center gap-4 laptop:mb-[10px]\">\n {data?.brand?.brands?.map((brandItem: any) => (\n <Link href={brandItem?.link} key={brandItem?.id}>\n <Text html={brandItem?.icon} className=\"text-[#B6B6BA] hover:text-[#ddd]\" />\n </Link>\n ))}\n </div>\n </div>\n <ChangeCountry\n country={currentCountry || data?.country}\n className=\"desktop:flex-[316] desktop:block hidden\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n </div>\n <div className=\"h-px bg-[#3D3E3F]\" />\n <div className=\"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1\">\n <Text\n html={data?.copyright?.label}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n <div className=\"flex flex-wrap items-center gap-x-2 gap-y-1\">\n {data?.policy?.policies?.map((policyItem: any) => (\n <Link\n href={policyItem?.link}\n key={policyItem?.id}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline\"\n >\n {policyItem?.label}\n </Link>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nconst MainNavMenu = ({ title, lists, className }: { title: string; lists: any[]; className?: string }) => {\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1440px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <Text as=\"p\" html={title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n {isMobile && (\n <button onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}>\n {mainNavMenuOpen ? <SubtractIcon width={20} height={20} /> : <AddIcon width={20} height={20} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div className=\"mt-4 flex flex-col gap-2\">\n {lists?.map((item: any) => (\n <Link href={item?.link} key={item?.id} className=\"no-underline\">\n <Text\n html={item?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-brand-0\"\n />\n </Link>\n ))}\n </div>\n )}\n </div>\n )\n}\n\n/**\n * DownloadApp \u4E0B\u8F7D\u5E94\u7528\u6A21\u5757\n * @param title\n * @param apps\n * @param className\n * @returns\n */\nconst DownloadApp = ({ title, apps, className }: { title: string; apps: any[]; className?: string }) => {\n return (\n <div className={className}>\n <Text html={title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex items-center gap-4\">\n {apps?.map((appItem: any) => (\n <div key={appItem?.id} className=\"flex flex-col items-center gap-[6px]\">\n <Link href={appItem?.link}>\n <Picture source={appItem?.icon?.url} alt={appItem?.icon?.alt} className=\"size-10 shrink-0\" />\n </Link>\n {appItem?.label && <Text html={appItem?.label} className=\"text-xs font-bold text-[#999999]\" />}\n </div>\n ))}\n </div>\n </div>\n )\n}\n\n/**\n * ChangeCountry \u5207\u6362\u56FD\u5BB6\u6A21\u5757\n * @param data \u6570\u636E\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @returns\n */\nconst ChangeCountry = ({\n country,\n isMobile,\n className,\n onChangeCountry,\n}: {\n country: any\n isMobile: boolean\n className?: string\n onChangeCountry?: () => void\n}) => {\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <button className=\"flex cursor-pointer items-center gap-2\" onClick={() => onChangeCountry?.()}>\n <CountryIcon width={20} height={20} className=\"shrink-0\" />\n <Text\n as=\"p\"\n html={country?.countryName || country?.country}\n className=\"desktop:text-[#B6B6BA] text-base font-bold leading-[1.4] text-white hover:text-[#ddd]\"\n />\n </button>\n {isMobile && (\n <button>\n <ArrowRightIcon width={16} height={16} />\n </button>\n )}\n </div>\n </div>\n )\n}\n\nexport default withLayout(FooterNavigation)\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "useEffect", "useMemo", "useState", "Picture", "Text", "Container", "Link", "Subscribe", "FooterNavigationBlockType", "AddIcon", "SubtractIcon", "ArrowRightIcon", "CountryIcon", "useMediaQuery", "cn", "withLayout", "FooterNavigation", "footerNavigation", "currentCountry", "event", "isMobile", "setIsMobile", "mediaQuery", "country", "block", "MarketingConversion", "FooterBrand", "MainServices", "data", "onSubmit", "enjoyItem", "benefitItem", "mainNavMenuOpen", "setMainNavMenuOpen", "services", "mainNav", "reasonItem", "DownloadApp", "MainNavMenu", "contactItem", "ChangeCountry", "socialItem", "paymentItem", "brandItem", "policyItem", "title", "lists", "className", "item", "apps", "appItem", "onChangeCountry", "FooterNavigation_default"]
4
+ "sourcesContent": ["import { useEffect, useMemo, useState } from 'react'\nimport { Picture, Text, Container, Link } from '../../components/index.js'\nimport Subscribe from '../Subscribe/index.js'\nimport type { FooterNavigationProps } from './types.js'\nimport { FooterNavigationBlockType } from './types.js'\nimport { AddIcon, SubtractIcon, ArrowRightIcon, CountryIcon } from './icons/index.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\n\nconst FooterNavigation = ({ data: { footerNavigation } = {}, event }: FooterNavigationProps) => {\n const [isMobile, setIsMobile] = useState(false)\n console.log('footerNavigation', footerNavigation)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1440px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const country = useMemo(() => {\n return (\n footerNavigation?.footerBlocks?.find((block: any) => block?.blockType === FooterNavigationBlockType.Brand)\n ?.country || {}\n )\n }, [footerNavigation])\n\n // useEffect(() => {\n // const {\n // mainNav: { products, explore, support, contact },\n // } = footerNavigation\n // const mainNavMenu = [products, explore, support, contact]\n // if (mainNavMenu?.length) {\n // setExpandedMainNavMenu(mainNavMenu?.map((_: any, index: number) => ({ index, open: false })))\n // }\n // }, [footerNavigation])\n\n return (\n <Container childClassName=\"bg-black py-16 flex flex-col desktop:gap-16 gap-8\">\n <Text html={footerNavigation?.story} className=\"desktop:text-sm text-xs font-bold text-[#6D6D6F]\" />\n {footerNavigation?.footerBlocks?.map((block: any) => {\n if (block?.blockType === FooterNavigationBlockType.Signup) {\n return <MarketingConversion data={block} onSubmit={event?.signup} />\n }\n if (block?.blockType === FooterNavigationBlockType.Brand) {\n return <FooterBrand data={block} isMobile={isMobile} event={event} />\n }\n if (block?.blockType === FooterNavigationBlockType.Main) {\n return <MainServices data={{ ...block, country }} event={event} isMobile={isMobile} />\n }\n })}\n </Container>\n )\n}\n\n/**\n * MarketingConversion \u8425\u9500\u8F6C\u5316\u6A21\u5757\n * @param data\n * @param onSubmit signup\u63D0\u4EA4\u4E8B\u4EF6\n * @returns\n */\nconst MarketingConversion = ({ data, onSubmit }: { data: any; onSubmit?: () => void }) => {\n return (\n <div className=\"desktop:py-16 desktop:gap-16 laptop:rounded-2xl laptop:px-8 desktop:flex-row flex flex-col gap-8 rounded-xl bg-[#1D1D1F] px-4 py-8\">\n <Subscribe subscribeMetadata={data?.signup} className=\"desktop:flex-[744]\" onSubmit={onSubmit} />\n <div className=\"desktop:hidden h-px w-full bg-[#3D3E3F]\" />\n <div className=\"desktop:gap-6 desktop:flex-row desktop:flex-[792] flex flex-col gap-4\">\n <div className=\"flex-1\">\n <Text html={data?.enjoy?.title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.enjoy?.enjoys?.map((enjoyItem: any) => (\n <div key={enjoyItem?.id} className=\"flex-start flex gap-2\">\n <Picture source={enjoyItem?.icon?.url} alt={enjoyItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Text\n html={enjoyItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </div>\n ))}\n </div>\n </div>\n <div className=\"w-px bg-[#3D3E3F]\" />\n <div className=\"flex-1\">\n <Text html={data?.benefit?.title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.benefit?.benefits?.map((benefitItem: any) => (\n <Text\n key={benefitItem?.id}\n html={benefitItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\n/**\n * MainServices \u4E3B\u5BFC\u822A\u4E0E\u670D\u52A1\u6A21\u5757\n * @param services \u670D\u52A1\n * @param mainNav \u4E3B\u5BFC\u822A\n * @param event \u4E8B\u4EF6\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @returns\n */\nconst MainServices = ({ data, event, isMobile }: { data: any; event: any; isMobile: boolean }) => {\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const { services, mainNav, country } = data\n return (\n <div className=\"flex flex-col gap-8\">\n <div\n className={cn({\n 'desktop:gap-16 flex': services?.download?.title,\n })}\n >\n <div\n className={cn({\n 'desktop:flex-[1260]': services?.download?.title,\n })}\n >\n <Text\n html={services?.storeBenefits?.title}\n className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\"\n />\n <div\n className={cn('desktop:flex-row desktop:gap-4 desktop:flex-wrap mt-4 flex flex-col gap-2', {\n 'desktop:max-w-[648px]': services?.download?.title,\n })}\n >\n {services?.storeBenefits?.reasons?.map((reasonItem: any) => (\n <div key={reasonItem?.id} className=\"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2\">\n <Picture source={reasonItem?.icon?.url} alt={reasonItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Text html={reasonItem?.label} className=\"text-base font-bold leading-[1.2] text-[#B6B6BA]\" />\n </div>\n ))}\n </div>\n </div>\n <DownloadApp\n className={cn({\n 'desktop:flex-[404] hidden desktop:block': services?.download?.title,\n })}\n title={services?.download?.title}\n apps={services?.download?.apps}\n />\n </div>\n <div className=\"desktop:block hidden h-px bg-[#3D3E3F]\" />\n <div className=\"desktop:grid grid-cols-4 gap-4\">\n <MainNavMenu title={mainNav?.products?.title} lists={mainNav?.products?.products} />\n <MainNavMenu title={mainNav?.explore?.title} lists={mainNav?.explore?.explores} />\n <MainNavMenu title={mainNav?.support?.title} lists={mainNav?.support?.supports} />\n <div className=\"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4\">\n <div className=\"desktop:pb-0 flex items-center justify-between pb-4\">\n <Text\n as=\"p\"\n html={mainNav?.contact?.title}\n className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\"\n />\n {isMobile && (\n <button onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}>\n {mainNavMenuOpen ? <SubtractIcon width={16} height={16} /> : <AddIcon width={16} height={16} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div className=\"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2\">\n {mainNav?.contact?.contacts?.map((contactItem: any) => (\n <div key={contactItem?.id} className=\"flex items-start gap-2\">\n <Picture source={contactItem?.icon?.url} alt={contactItem?.icon?.alt} className=\"size-5 shrink-0\" />\n <Link\n href={contactItem?.link}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] no-underline\"\n >\n {contactItem?.label}\n </Link>\n </div>\n ))}\n </div>\n )}\n <ChangeCountry\n country={country}\n className=\"desktop:hidden\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n <div className=\"desktop:hidden mt-8\">\n <DownloadApp title={services?.download?.title} apps={services?.download?.apps} />\n </div>\n <div className=\"mt-8 flex items-center gap-2\">\n {mainNav?.socials?.map((socialItem: any) => (\n <Link href={socialItem?.link} key={socialItem?.id}>\n <Picture source={socialItem?.icon?.url} alt={socialItem?.icon?.alt} className=\"size-8 shrink-0\" />\n </Link>\n ))}\n </div>\n <div className=\"mt-4 flex flex-wrap gap-2\">\n {mainNav?.payment?.map((paymentItem: any) => (\n <Link href={paymentItem?.link} key={paymentItem?.id}>\n <Picture\n source={paymentItem?.icon?.url}\n alt={paymentItem?.icon?.alt}\n className=\"h-[28px] w-[44px] shrink-0\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nconst FooterBrand = ({ data, isMobile, event }: { data: any; isMobile: boolean; event: any }) => {\n return (\n <div className=\"flex flex-col gap-4\">\n <div className=\"desktop:flex-row desktop:flex desktop:gap-4\">\n <div className=\"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4\">\n <Text html={data?.brand?.currentBrand} className=\"text-[#B6B6BA]\" />\n <div className=\"laptop:block hidden h-[20px] w-px bg-[#B6B6BA] \" />\n <div className=\"desktop:gap-6 flex flex-wrap items-center gap-4\">\n {data?.brand?.brands?.map((brandItem: any) => (\n <Link href={brandItem?.link} key={brandItem?.id}>\n <Text html={brandItem?.icon} className=\"text-[#B6B6BA] hover:text-[#ddd]\" />\n </Link>\n ))}\n </div>\n </div>\n <ChangeCountry\n country={data?.country}\n className=\"desktop:flex-[316] desktop:block hidden\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n </div>\n <div className=\"h-px bg-[#3D3E3F]\" />\n <div className=\"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1\">\n <Text\n html={data?.copyright?.label}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n <div className=\"flex flex-wrap items-center gap-x-2 gap-y-1\">\n {data?.policy?.policies?.map((policyItem: any) => (\n <Link\n href={policyItem?.link}\n key={policyItem?.id}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline\"\n >\n {policyItem?.label}\n </Link>\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nconst MainNavMenu = ({ title, lists, className }: { title: string; lists: any[]; className?: string }) => {\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1440px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <Text as=\"p\" html={title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n {isMobile && (\n <button onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}>\n {mainNavMenuOpen ? <SubtractIcon width={16} height={16} /> : <AddIcon width={16} height={16} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div className=\"mt-4 flex flex-col gap-2\">\n {lists?.map((productItem: any) => (\n <Link\n href={productItem?.url}\n key={productItem?.id}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] no-underline\"\n >\n {productItem?.label}\n </Link>\n ))}\n </div>\n )}\n </div>\n )\n}\n\n/**\n * DownloadApp \u4E0B\u8F7D\u5E94\u7528\u6A21\u5757\n * @param title\n * @param apps\n * @param className\n * @returns\n */\nconst DownloadApp = ({ title, apps, className }: { title: string; apps: any[]; className?: string }) => {\n return (\n <div className={className}>\n <Text html={title} className=\"desktop:text-2xl text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex items-center gap-4\">\n {apps?.map((appItem: any) => (\n <div key={appItem?.id} className=\"flex flex-col items-center gap-[6px]\">\n <Link href={appItem?.link}>\n <Picture source={appItem?.icon?.url} alt={appItem?.icon?.alt} className=\"size-10 shrink-0\" />\n </Link>\n {appItem?.label && <Text html={appItem?.label} className=\"text-xs font-bold text-[#999999]\" />}\n </div>\n ))}\n </div>\n </div>\n )\n}\n\n/**\n * ChangeCountry \u5207\u6362\u56FD\u5BB6\u6A21\u5757\n * @param data \u6570\u636E\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @returns\n */\nconst ChangeCountry = ({\n country,\n isMobile,\n className,\n onChangeCountry,\n}: {\n country: any\n isMobile: boolean\n className?: string\n onChangeCountry?: () => void\n}) => {\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <button className=\"flex cursor-pointer items-center gap-2\" onClick={() => onChangeCountry?.()}>\n <CountryIcon width={20} height={20} className=\"shrink-0\" />\n <Text\n as=\"p\"\n html={country?.country}\n className=\"desktop:text-[#B6B6BA] text-base font-bold leading-[1.4] text-white hover:text-[#ddd]\"\n />\n </button>\n {isMobile && (\n <button>\n <ArrowRightIcon width={16} height={16} />\n </button>\n )}\n </div>\n </div>\n )\n}\n\nexport default withLayout(FooterNavigation)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "useEffect", "useMemo", "useState", "Picture", "Text", "Container", "Link", "Subscribe", "FooterNavigationBlockType", "AddIcon", "SubtractIcon", "ArrowRightIcon", "CountryIcon", "useMediaQuery", "cn", "withLayout", "FooterNavigation", "footerNavigation", "event", "isMobile", "setIsMobile", "mediaQuery", "country", "block", "MarketingConversion", "FooterBrand", "MainServices", "data", "onSubmit", "enjoyItem", "benefitItem", "mainNavMenuOpen", "setMainNavMenuOpen", "services", "mainNav", "reasonItem", "DownloadApp", "MainNavMenu", "contactItem", "ChangeCountry", "socialItem", "paymentItem", "brandItem", "policyItem", "title", "lists", "className", "productItem", "apps", "appItem", "onChangeCountry", "FooterNavigation_default"]
7
7
  }
@@ -1,8 +1,7 @@
1
1
  export interface FooterNavigationProps {
2
2
  data: any;
3
- currentCountry?: any;
4
3
  event?: {
5
- signup?: (params: any) => void;
4
+ signup?: () => void;
6
5
  download?: () => void;
7
6
  country?: () => void;
8
7
  };
@@ -1,2 +1,2 @@
1
- var r=(n=>(n.Signup="ipc-footer-signup",n.Main="ipc-footer-main",n.Brand="ipc-footer-brand",n))(r||{});export{r as FooterNavigationBlockType};
1
+ var d=(n=>(n.Signup="ipc-footer-signup",n.Main="ipc-footer-main",n.Brand="ipc-footer-brand",n))(d||{});export{d as FooterNavigationBlockType};
2
2
  //# sourceMappingURL=types.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/FooterNavigation/types.ts"],
4
- "sourcesContent": ["export interface FooterNavigationProps {\n data: any\n currentCountry?: any\n event?: {\n signup?: (params: any) => void\n download?: () => void\n country?: () => void\n }\n}\n\nexport enum FooterNavigationBlockType {\n Signup = 'ipc-footer-signup',\n Main = 'ipc-footer-main',\n Brand = 'ipc-footer-brand',\n}\n"],
5
- "mappings": "AAUO,IAAKA,OACVA,EAAA,OAAS,oBACTA,EAAA,KAAO,kBACPA,EAAA,MAAQ,mBAHEA,OAAA",
4
+ "sourcesContent": ["export interface FooterNavigationProps {\n data: any\n event?: {\n signup?: () => void\n download?: () => void\n country?: () => void\n }\n}\n\nexport enum FooterNavigationBlockType {\n Signup = 'ipc-footer-signup',\n Main = 'ipc-footer-main',\n Brand = 'ipc-footer-brand',\n}\n"],
5
+ "mappings": "AASO,IAAKA,OACVA,EAAA,OAAS,oBACTA,EAAA,KAAO,kBACPA,EAAA,MAAQ,mBAHEA,OAAA",
6
6
  "names": ["FooterNavigationBlockType"]
7
7
  }
@@ -4,8 +4,7 @@ import { HeaderNavigationMenu } from './types.js';
4
4
  import type { UserProfile } from './types.js';
5
5
  interface NavContextType {
6
6
  buildProps: {
7
- products?: Product[];
8
- categories?: Record<string, any>;
7
+ products: Product[];
9
8
  };
10
9
  event?: {
11
10
  search?: () => void;
@@ -20,10 +19,10 @@ interface NavContextType {
20
19
  payloadData: any;
21
20
  currentMenu?: HeaderNavigationMenu;
22
21
  setCurrentMenu?: (menu: HeaderNavigationMenu) => void;
23
- currentSeriesMetadata?: any;
24
- setCurrentSeriesMetadata?: (metadata: any) => void;
25
- subSubCategory?: any;
26
- setSubSubCategory?: (category: any) => void;
22
+ thirdNavTitle?: string;
23
+ setThirdNavTitle?: (title: string) => void;
24
+ matchSeriesMetadata?: any;
25
+ setMatchSeriesMetadata?: (metadata: any) => void;
27
26
  }
28
27
  export declare const NavContext: React.Context<NavContextType>;
29
28
  export declare const useNavContext: () => NavContextType;
@@ -1,2 +1,2 @@
1
- import{jsx as l}from"react/jsx-runtime";import{createContext as C,useCallback as n,useContext as d,useMemo as S,useReducer as E}from"react";import{HeaderNavigationMenu as v}from"./types.js";const p={isMobile:!1,payloadData:{},buildProps:{products:[],categories:{}},currentMenu:v.Primary,setCurrentMenu:()=>{},currentSeriesMetadata:{},setCurrentSeriesMetadata:()=>{}},o=C(p),U=()=>{if(!d(o))throw new Error("useNavContext must be used in <NavProvider>");return d(o)},T=(e,t)=>{switch(t.type){case"SET_CURRENT_MENU":return{...e,currentMenu:t.value};case"SET_CURRENT_SERIES_METADATA":return{...e,currentSeriesMetadata:t.value};case"SET_SUB_SUB_CATEGORY":return{...e,subSubCategory:t.value}}},M=({children:e,...t})=>{const[u,r]=E(T,{...p,currentMenu:v.Primary,setCurrentMenu:()=>{}}),i=n(a=>r({type:"SET_CURRENT_MENU",value:a}),[r]),s=n(a=>r({type:"SET_CURRENT_SERIES_METADATA",value:a}),[r]),c=n(a=>r({type:"SET_SUB_SUB_CATEGORY",value:a}),[r]),y=S(()=>({...u,setCurrentMenu:i,setCurrentSeriesMetadata:s,setSubSubCategory:c}),[i,s,c,u]);return l(o.Provider,{value:{...y,...t},children:e})};var b=M;export{o as NavContext,b as default,U as useNavContext};
1
+ import{jsx as C}from"react/jsx-runtime";import{createContext as l,useCallback as n,useContext as v,useMemo as M,useReducer as N}from"react";import{HeaderNavigationMenu as c}from"./types.js";const T={isMobile:!1,payloadData:{},buildProps:{products:[]},currentMenu:c.Primary,setCurrentMenu:()=>{},thirdNavTitle:"",setThirdNavTitle:()=>{},matchSeriesMetadata:{},setMatchSeriesMetadata:()=>{}},o=l(T),h=()=>{if(!v(o))throw new Error("useNavContext must be used in <NavProvider>");return v(o)},E=(e,t)=>{switch(t.type){case"SET_CURRENT_MENU":return{...e,currentMenu:t.value};case"SET_THIRD_NAV_TITLE":return{...e,thirdNavTitle:t.value};case"SET_MATCH_SERIES_METADATA":return{...e,matchSeriesMetadata:t.value}}},y=({children:e,...t})=>{const[i,r]=N(E,{...T,currentMenu:c.Primary,setCurrentMenu:()=>{}}),s=n(a=>r({type:"SET_CURRENT_MENU",value:a}),[r]),u=n(a=>r({type:"SET_THIRD_NAV_TITLE",value:a}),[r]),d=n(a=>r({type:"SET_MATCH_SERIES_METADATA",value:a}),[r]),p=M(()=>({...i,setCurrentMenu:s,setThirdNavTitle:u,setMatchSeriesMetadata:d}),[s,u,d,i]);return C(o.Provider,{value:{...p,...t},children:e})};var A=y;export{o as NavContext,A as default,h as useNavContext};
2
2
  //# sourceMappingURL=NavProvider.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/HeaderNavigation/NavProvider.tsx"],
4
- "sourcesContent": ["import React, { createContext, useCallback, useContext, useMemo, useReducer } from 'react'\nimport type { Product } from '../../cpn-components/CpnProductCard/types.js'\nimport { HeaderNavigationMenu } from './types.js'\nimport type { UserProfile } from './types.js'\n\ninterface NavContextType {\n buildProps: {\n products?: Product[] // \u4EA7\u54C1\u6570\u636E\n categories?: Record<string, any> // \u5206\u7C7B\u6570\u636E\n }\n event?: {\n search?: () => void\n cart?: () => void\n profile?: () => void\n livestream?: () => void\n join?: () => void\n login?: () => void\n }\n profile?: UserProfile // \u7528\u6237\u4FE1\u606F\n isMobile?: boolean\n payloadData: any\n currentMenu?: HeaderNavigationMenu // \u5F53\u524D\u83DC\u5355\n setCurrentMenu?: (menu: HeaderNavigationMenu) => void // \u8BBE\u7F6E\u5F53\u524D\u83DC\u5355\n currentSeriesMetadata?: any // \u5F53\u524D\u7CFB\u5217\u5143\u6570\u636E\n setCurrentSeriesMetadata?: (metadata: any) => void // \u8BBE\u7F6E\u5F53\u524D\u7CFB\u5217\u5143\u6570\u636E\n subSubCategory?: any // \u5B50\u5B50\u5206\u7C7B\n setSubSubCategory?: (category: any) => void // \u8BBE\u7F6E\u5B50\u5B50\u5206\u7C7B\n}\n\nconst initialState: NavContextType = {\n isMobile: false,\n payloadData: {},\n buildProps: {\n products: [],\n categories: {},\n },\n currentMenu: HeaderNavigationMenu.Primary,\n setCurrentMenu: () => {},\n currentSeriesMetadata: {},\n setCurrentSeriesMetadata: () => {},\n}\n\ntype Action =\n | {\n type: 'SET_CURRENT_MENU'\n value: HeaderNavigationMenu\n }\n | {\n type: 'SET_CURRENT_SERIES_METADATA'\n value: any\n }\n | {\n type: 'SET_SUB_SUB_CATEGORY'\n value: any\n }\n\nexport const NavContext = createContext<NavContextType>(initialState)\n\nexport const useNavContext = () => {\n const context = useContext(NavContext)\n if (!context) {\n throw new Error('useNavContext must be used in <NavProvider>')\n }\n return useContext(NavContext)\n}\n\nconst reducer = (state: NavContextType, action: Action) => {\n switch (action.type) {\n case 'SET_CURRENT_MENU': {\n return {\n ...state,\n currentMenu: action.value,\n }\n }\n case 'SET_CURRENT_SERIES_METADATA': {\n return {\n ...state,\n currentSeriesMetadata: action.value,\n }\n }\n case 'SET_SUB_SUB_CATEGORY': {\n return {\n ...state,\n subSubCategory: action.value,\n }\n }\n }\n}\n\nconst NavProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n} & NavContextType) => {\n const [state, dispatch] = useReducer(reducer, {\n ...initialState,\n currentMenu: HeaderNavigationMenu.Primary,\n setCurrentMenu: () => {},\n })\n\n const setCurrentMenu = useCallback(\n (value: HeaderNavigationMenu) => {\n return dispatch({ type: 'SET_CURRENT_MENU', value })\n },\n [dispatch]\n )\n\n const setCurrentSeriesMetadata = useCallback(\n (value: any) => {\n return dispatch({ type: 'SET_CURRENT_SERIES_METADATA', value })\n },\n [dispatch]\n )\n\n const setSubSubCategory = useCallback((value: any) => {\n return dispatch({ type: 'SET_SUB_SUB_CATEGORY', value })\n }, [dispatch])\n\n const value = useMemo(\n () => ({\n ...state,\n setCurrentMenu,\n setCurrentSeriesMetadata,\n setSubSubCategory,\n }),\n [setCurrentMenu, setCurrentSeriesMetadata, setSubSubCategory, state]\n )\n\n return <NavContext.Provider value={{ ...value, ...rest }}>{children}</NavContext.Provider>\n}\n\nexport default NavProvider\n"],
5
- "mappings": "AAiIS,cAAAA,MAAA,oBAjIT,OAAgB,iBAAAC,EAAe,eAAAC,EAAa,cAAAC,EAAY,WAAAC,EAAS,cAAAC,MAAkB,QAEnF,OAAS,wBAAAC,MAA4B,aA2BrC,MAAMC,EAA+B,CACnC,SAAU,GACV,YAAa,CAAC,EACd,WAAY,CACV,SAAU,CAAC,EACX,WAAY,CAAC,CACf,EACA,YAAaD,EAAqB,QAClC,eAAgB,IAAM,CAAC,EACvB,sBAAuB,CAAC,EACxB,yBAA0B,IAAM,CAAC,CACnC,EAgBaE,EAAaP,EAA8BM,CAAY,EAEvDE,EAAgB,IAAM,CAEjC,GAAI,CADYN,EAAWK,CAAU,EAEnC,MAAM,IAAI,MAAM,6CAA6C,EAE/D,OAAOL,EAAWK,CAAU,CAC9B,EAEME,EAAU,CAACC,EAAuBC,IAAmB,CACzD,OAAQA,EAAO,KAAM,CACnB,IAAK,mBACH,MAAO,CACL,GAAGD,EACH,YAAaC,EAAO,KACtB,EAEF,IAAK,8BACH,MAAO,CACL,GAAGD,EACH,sBAAuBC,EAAO,KAChC,EAEF,IAAK,uBACH,MAAO,CACL,GAAGD,EACH,eAAgBC,EAAO,KACzB,CAEJ,CACF,EAEMC,EAAc,CAAC,CACnB,SAAAC,EACA,GAAGC,CACL,IAEuB,CACrB,KAAM,CAACJ,EAAOK,CAAQ,EAAIX,EAAWK,EAAS,CAC5C,GAAGH,EACH,YAAaD,EAAqB,QAClC,eAAgB,IAAM,CAAC,CACzB,CAAC,EAEKW,EAAiBf,EACpBgB,GACQF,EAAS,CAAE,KAAM,mBAAoB,MAAAE,CAAM,CAAC,EAErD,CAACF,CAAQ,CACX,EAEMG,EAA2BjB,EAC9BgB,GACQF,EAAS,CAAE,KAAM,8BAA+B,MAAAE,CAAM,CAAC,EAEhE,CAACF,CAAQ,CACX,EAEMI,EAAoBlB,EAAagB,GAC9BF,EAAS,CAAE,KAAM,uBAAwB,MAAAE,CAAM,CAAC,EACtD,CAACF,CAAQ,CAAC,EAEPE,EAAQd,EACZ,KAAO,CACL,GAAGO,EACH,eAAAM,EACA,yBAAAE,EACA,kBAAAC,CACF,GACA,CAACH,EAAgBE,EAA0BC,EAAmBT,CAAK,CACrE,EAEA,OAAOX,EAACQ,EAAW,SAAX,CAAoB,MAAO,CAAE,GAAGU,EAAO,GAAGH,CAAK,EAAI,SAAAD,EAAS,CACtE,EAEA,IAAOO,EAAQR",
6
- "names": ["jsx", "createContext", "useCallback", "useContext", "useMemo", "useReducer", "HeaderNavigationMenu", "initialState", "NavContext", "useNavContext", "reducer", "state", "action", "NavProvider", "children", "rest", "dispatch", "setCurrentMenu", "value", "setCurrentSeriesMetadata", "setSubSubCategory", "NavProvider_default"]
4
+ "sourcesContent": ["import React, { createContext, useCallback, useContext, useMemo, useReducer } from 'react'\nimport type { Product } from '../../cpn-components/CpnProductCard/types.js'\nimport { HeaderNavigationMenu } from './types.js'\nimport type { UserProfile } from './types.js'\n\ninterface NavContextType {\n buildProps: {\n products: Product[] // \u4EA7\u54C1\u6570\u636E\n }\n event?: {\n search?: () => void\n cart?: () => void\n profile?: () => void\n livestream?: () => void\n join?: () => void\n login?: () => void\n }\n profile?: UserProfile // \u7528\u6237\u4FE1\u606F\n isMobile?: boolean\n payloadData: any\n currentMenu?: HeaderNavigationMenu // \u5F53\u524D\u83DC\u5355\n setCurrentMenu?: (menu: HeaderNavigationMenu) => void // \u8BBE\u7F6E\u5F53\u524D\u83DC\u5355\n thirdNavTitle?: string // \u7B2C\u4E09\u7EA7\u5BFC\u822A\u6807\u9898\n setThirdNavTitle?: (title: string) => void // \u8BBE\u7F6E\u7B2C\u4E09\u7EA7\u5BFC\u822A\u6807\u9898\n matchSeriesMetadata?: any // \u5339\u914D\u7684\u7CFB\u5217\u5143\u6570\u636E\n setMatchSeriesMetadata?: (metadata: any) => void // \u8BBE\u7F6E\u5339\u914D\u7684\u7CFB\u5217\u5143\u6570\u636E\n}\n\nconst initialState: NavContextType = {\n isMobile: false,\n payloadData: {},\n buildProps: {\n products: [],\n },\n currentMenu: HeaderNavigationMenu.Primary,\n setCurrentMenu: () => {},\n thirdNavTitle: '',\n setThirdNavTitle: () => {},\n matchSeriesMetadata: {},\n setMatchSeriesMetadata: () => {},\n}\n\ntype Action =\n | {\n type: 'SET_CURRENT_MENU'\n value: HeaderNavigationMenu\n }\n | {\n type: 'SET_THIRD_NAV_TITLE'\n value: string\n }\n | {\n type: 'SET_MATCH_SERIES_METADATA'\n value: any\n }\n\nexport const NavContext = createContext<NavContextType>(initialState)\n\nexport const useNavContext = () => {\n const context = useContext(NavContext)\n if (!context) {\n throw new Error('useNavContext must be used in <NavProvider>')\n }\n return useContext(NavContext)\n}\n\nconst reducer = (state: NavContextType, action: Action) => {\n switch (action.type) {\n case 'SET_CURRENT_MENU': {\n return {\n ...state,\n currentMenu: action.value,\n }\n }\n case 'SET_THIRD_NAV_TITLE': {\n return {\n ...state,\n thirdNavTitle: action.value,\n }\n }\n case 'SET_MATCH_SERIES_METADATA': {\n return {\n ...state,\n matchSeriesMetadata: action.value,\n }\n }\n }\n}\n\nconst NavProvider = ({\n children,\n ...rest\n}: {\n children: React.ReactNode\n} & NavContextType) => {\n const [state, dispatch] = useReducer(reducer, {\n ...initialState,\n currentMenu: HeaderNavigationMenu.Primary,\n setCurrentMenu: () => {},\n })\n\n const setCurrentMenu = useCallback(\n (value: HeaderNavigationMenu) => {\n return dispatch({ type: 'SET_CURRENT_MENU', value })\n },\n [dispatch]\n )\n\n const setThirdNavTitle = useCallback(\n (value: string) => {\n return dispatch({ type: 'SET_THIRD_NAV_TITLE', value })\n },\n [dispatch]\n )\n\n const setMatchSeriesMetadata = useCallback(\n (value: any) => {\n return dispatch({ type: 'SET_MATCH_SERIES_METADATA', value })\n },\n [dispatch]\n )\n\n const value = useMemo(\n () => ({\n ...state,\n setCurrentMenu,\n setThirdNavTitle,\n setMatchSeriesMetadata,\n }),\n [setCurrentMenu, setThirdNavTitle, setMatchSeriesMetadata, state]\n )\n\n return <NavContext.Provider value={{ ...value, ...rest }}>{children}</NavContext.Provider>\n}\n\nexport default NavProvider\n"],
5
+ "mappings": "AAoIS,cAAAA,MAAA,oBApIT,OAAgB,iBAAAC,EAAe,eAAAC,EAAa,cAAAC,EAAY,WAAAC,EAAS,cAAAC,MAAkB,QAEnF,OAAS,wBAAAC,MAA4B,aA0BrC,MAAMC,EAA+B,CACnC,SAAU,GACV,YAAa,CAAC,EACd,WAAY,CACV,SAAU,CAAC,CACb,EACA,YAAaD,EAAqB,QAClC,eAAgB,IAAM,CAAC,EACvB,cAAe,GACf,iBAAkB,IAAM,CAAC,EACzB,oBAAqB,CAAC,EACtB,uBAAwB,IAAM,CAAC,CACjC,EAgBaE,EAAaP,EAA8BM,CAAY,EAEvDE,EAAgB,IAAM,CAEjC,GAAI,CADYN,EAAWK,CAAU,EAEnC,MAAM,IAAI,MAAM,6CAA6C,EAE/D,OAAOL,EAAWK,CAAU,CAC9B,EAEME,EAAU,CAACC,EAAuBC,IAAmB,CACzD,OAAQA,EAAO,KAAM,CACnB,IAAK,mBACH,MAAO,CACL,GAAGD,EACH,YAAaC,EAAO,KACtB,EAEF,IAAK,sBACH,MAAO,CACL,GAAGD,EACH,cAAeC,EAAO,KACxB,EAEF,IAAK,4BACH,MAAO,CACL,GAAGD,EACH,oBAAqBC,EAAO,KAC9B,CAEJ,CACF,EAEMC,EAAc,CAAC,CACnB,SAAAC,EACA,GAAGC,CACL,IAEuB,CACrB,KAAM,CAACJ,EAAOK,CAAQ,EAAIX,EAAWK,EAAS,CAC5C,GAAGH,EACH,YAAaD,EAAqB,QAClC,eAAgB,IAAM,CAAC,CACzB,CAAC,EAEKW,EAAiBf,EACpBgB,GACQF,EAAS,CAAE,KAAM,mBAAoB,MAAAE,CAAM,CAAC,EAErD,CAACF,CAAQ,CACX,EAEMG,EAAmBjB,EACtBgB,GACQF,EAAS,CAAE,KAAM,sBAAuB,MAAAE,CAAM,CAAC,EAExD,CAACF,CAAQ,CACX,EAEMI,EAAyBlB,EAC5BgB,GACQF,EAAS,CAAE,KAAM,4BAA6B,MAAAE,CAAM,CAAC,EAE9D,CAACF,CAAQ,CACX,EAEME,EAAQd,EACZ,KAAO,CACL,GAAGO,EACH,eAAAM,EACA,iBAAAE,EACA,uBAAAC,CACF,GACA,CAACH,EAAgBE,EAAkBC,EAAwBT,CAAK,CAClE,EAEA,OAAOX,EAACQ,EAAW,SAAX,CAAoB,MAAO,CAAE,GAAGU,EAAO,GAAGH,CAAK,EAAI,SAAAD,EAAS,CACtE,EAEA,IAAOO,EAAQR",
6
+ "names": ["jsx", "createContext", "useCallback", "useContext", "useMemo", "useReducer", "HeaderNavigationMenu", "initialState", "NavContext", "useNavContext", "reducer", "state", "action", "NavProvider", "children", "rest", "dispatch", "setCurrentMenu", "value", "setThirdNavTitle", "setMatchSeriesMetadata", "NavProvider_default"]
7
7
  }
@@ -8,5 +8,4 @@ import User from './User.js';
8
8
  import RightArrow from './RightArrow.js';
9
9
  import LeftArrow from './LeftArrow.js';
10
10
  import DownArrow from './DownArrow.js';
11
- import Polygon from './Polygon.js';
12
- export { AnkerLogo, Menu, Search, Cart, Close, User, RightArrow, LeftArrow, DownArrow, LogoLine, Polygon };
11
+ export { AnkerLogo, Menu, Search, Cart, Close, User, RightArrow, LeftArrow, DownArrow, LogoLine };
@@ -1,2 +1,2 @@
1
- import o from"./AnkerLogo.js";import r from"./LogoLine.js";import m from"./Menu.js";import t from"./Search.js";import i from"./Cart.js";import f from"./Close.js";import p from"./User.js";import e from"./RightArrow.js";import n from"./LeftArrow.js";import g from"./DownArrow.js";import w from"./Polygon.js";export{o as AnkerLogo,i as Cart,f as Close,g as DownArrow,n as LeftArrow,r as LogoLine,m as Menu,w as Polygon,e as RightArrow,t as Search,p as User};
1
+ import r from"./AnkerLogo.js";import o from"./LogoLine.js";import m from"./Menu.js";import t from"./Search.js";import i from"./Cart.js";import f from"./Close.js";import p from"./User.js";import e from"./RightArrow.js";import n from"./LeftArrow.js";import w from"./DownArrow.js";export{r as AnkerLogo,i as Cart,f as Close,w as DownArrow,n as LeftArrow,o as LogoLine,m as Menu,e as RightArrow,t as Search,p as User};
2
2
  //# sourceMappingURL=index.js.map