@anker-in/headless-ui 1.1.16 → 1.1.17-alpha.1765870943164

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 (807) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.d.ts +2 -2
  2. package/dist/cjs/biz-components/AiuiProvider/index.d.ts +1 -1
  3. package/dist/cjs/biz-components/AiuiProvider/index.js.map +1 -1
  4. package/dist/cjs/biz-components/AplusDesc/index.d.ts +3 -2
  5. package/dist/cjs/biz-components/AplusDesc/index.js +1 -1
  6. package/dist/cjs/biz-components/AplusDesc/index.js.map +3 -3
  7. package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +3 -2
  8. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
  9. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  10. package/dist/cjs/biz-components/BrandEquity/types.d.ts +0 -1
  11. package/dist/cjs/biz-components/BrandEquity/types.js +1 -1
  12. package/dist/cjs/biz-components/BrandEquity/types.js.map +1 -1
  13. package/dist/cjs/biz-components/Category/index.d.ts +2 -2
  14. package/dist/cjs/biz-components/Category/index.js +1 -1
  15. package/dist/cjs/biz-components/Category/index.js.map +3 -3
  16. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.d.ts +4 -0
  17. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.js +2 -0
  18. package/dist/cjs/biz-components/CollectionShelves/CollectionShelvesItem.js.map +7 -0
  19. package/dist/cjs/biz-components/CollectionShelves/index.d.ts +7 -0
  20. package/dist/cjs/biz-components/CollectionShelves/index.js +2 -0
  21. package/dist/cjs/biz-components/CollectionShelves/index.js.map +7 -0
  22. package/dist/cjs/biz-components/CollectionsBanner/index.d.ts +7 -0
  23. package/dist/cjs/biz-components/CollectionsBanner/index.js +2 -0
  24. package/dist/cjs/biz-components/CollectionsBanner/index.js.map +7 -0
  25. package/dist/cjs/biz-components/CollectionsBanner/types.d.ts +43 -0
  26. package/dist/cjs/biz-components/CollectionsBanner/types.js +2 -0
  27. package/dist/cjs/biz-components/CollectionsBanner/types.js.map +7 -0
  28. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.d.ts +19 -0
  29. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js +2 -0
  30. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrap.js.map +7 -0
  31. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +10 -0
  32. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js +2 -0
  33. package/dist/cjs/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +7 -0
  34. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.d.ts +13 -0
  35. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.js +2 -0
  36. package/dist/cjs/biz-components/CollectionsFilters/FilterHeader.js.map +7 -0
  37. package/dist/cjs/biz-components/CollectionsFilters/FilterList.d.ts +14 -0
  38. package/dist/cjs/biz-components/CollectionsFilters/FilterList.js +2 -0
  39. package/dist/cjs/biz-components/CollectionsFilters/FilterList.js.map +7 -0
  40. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.d.ts +5 -0
  41. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.js +2 -0
  42. package/dist/cjs/biz-components/CollectionsFilters/component/AnimatedUL.js.map +7 -0
  43. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.d.ts +12 -0
  44. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js +2 -0
  45. package/dist/cjs/biz-components/CollectionsFilters/component/TabFilter.js.map +7 -0
  46. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.d.ts +12 -0
  47. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.js +2 -0
  48. package/dist/cjs/biz-components/CollectionsFilters/component/filtersFun.js.map +7 -0
  49. package/dist/cjs/biz-components/CollectionsFilters/component/helper.d.ts +81 -0
  50. package/dist/cjs/biz-components/CollectionsFilters/component/helper.js +2 -0
  51. package/dist/cjs/biz-components/CollectionsFilters/component/helper.js.map +7 -0
  52. package/dist/cjs/biz-components/CollectionsFilters/component/price.d.ts +25 -0
  53. package/dist/cjs/biz-components/CollectionsFilters/component/price.js +2 -0
  54. package/dist/cjs/biz-components/CollectionsFilters/component/price.js.map +7 -0
  55. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.d.ts +215 -0
  56. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.js +2 -0
  57. package/dist/cjs/biz-components/CollectionsFilters/component/priceProps.js.map +7 -0
  58. package/dist/cjs/biz-components/CollectionsFilters/index.d.ts +24 -0
  59. package/dist/cjs/biz-components/CollectionsFilters/index.js +2 -0
  60. package/dist/cjs/biz-components/CollectionsFilters/index.js.map +7 -0
  61. package/dist/cjs/biz-components/CreativeModule/index.d.ts +3 -2
  62. package/dist/cjs/biz-components/DownLoad/index.d.ts +3 -2
  63. package/dist/cjs/biz-components/Evaluate/index.d.ts +2 -2
  64. package/dist/cjs/biz-components/Faq/Faq.d.ts +2 -2
  65. package/dist/cjs/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  66. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js +2 -0
  67. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  68. package/dist/cjs/biz-components/FeatureCards/index.d.ts +2 -0
  69. package/dist/cjs/biz-components/FeatureCards/index.js +2 -0
  70. package/dist/cjs/biz-components/FeatureCards/index.js.map +7 -0
  71. package/dist/cjs/biz-components/FeatureCards/types.d.ts +27 -0
  72. package/dist/cjs/biz-components/FeatureCards/types.js +2 -0
  73. package/dist/cjs/biz-components/FeatureCards/types.js.map +7 -0
  74. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  75. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  76. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  77. package/dist/cjs/biz-components/FeatureShowcase/index.d.ts +2 -0
  78. package/dist/cjs/biz-components/FeatureShowcase/index.js +2 -0
  79. package/dist/cjs/biz-components/FeatureShowcase/index.js.map +7 -0
  80. package/dist/cjs/biz-components/FeatureShowcase/types.d.ts +23 -0
  81. package/dist/cjs/biz-components/FeatureShowcase/types.js +2 -0
  82. package/dist/cjs/biz-components/FeatureShowcase/types.js.map +7 -0
  83. package/dist/cjs/biz-components/Features/index.d.ts +3 -2
  84. package/dist/cjs/biz-components/Features/index.js +1 -1
  85. package/dist/cjs/biz-components/Features/index.js.map +3 -3
  86. package/dist/cjs/biz-components/FootCharger/index.d.ts +3 -2
  87. package/dist/cjs/biz-components/FooterNavigation/index.d.ts +3 -2
  88. package/dist/cjs/biz-components/GiftBox/index.d.ts +3 -2
  89. package/dist/cjs/biz-components/GiftBox/index.js +1 -1
  90. package/dist/cjs/biz-components/GiftBox/index.js.map +3 -3
  91. package/dist/cjs/biz-components/Graphic/index.d.ts +2 -2
  92. package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +2 -2
  93. package/dist/cjs/biz-components/GraphicMore/index.d.ts +3 -2
  94. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.d.ts +2 -2
  95. package/dist/cjs/biz-components/HeaderNavigation/index.d.ts +2 -5
  96. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  97. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
  98. package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +2 -2
  99. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
  100. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  101. package/dist/cjs/biz-components/HeroBanner/types.d.ts +2 -0
  102. package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
  103. package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
  104. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  105. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  106. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  107. package/dist/cjs/biz-components/ImageTextFeature/index.d.ts +2 -0
  108. package/dist/cjs/biz-components/ImageTextFeature/index.js +2 -0
  109. package/dist/cjs/biz-components/ImageTextFeature/index.js.map +7 -0
  110. package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +31 -0
  111. package/dist/cjs/biz-components/ImageTextFeature/types.js +2 -0
  112. package/dist/cjs/biz-components/ImageTextFeature/types.js.map +7 -0
  113. package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  114. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js +2 -0
  115. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  116. package/dist/cjs/biz-components/ImageWithText/index.d.ts +3 -0
  117. package/dist/cjs/biz-components/ImageWithText/index.js +2 -0
  118. package/dist/cjs/biz-components/ImageWithText/index.js.map +7 -0
  119. package/dist/cjs/biz-components/ImageWithText/types.d.ts +108 -0
  120. package/dist/cjs/biz-components/ImageWithText/types.js +2 -0
  121. package/dist/cjs/biz-components/ImageWithText/types.js.map +7 -0
  122. package/dist/cjs/biz-components/InlineVideo/index.d.ts +16 -0
  123. package/dist/cjs/biz-components/InlineVideo/index.js +2 -0
  124. package/dist/cjs/biz-components/InlineVideo/index.js.map +7 -0
  125. package/dist/cjs/biz-components/Ksp/index.d.ts +44 -0
  126. package/dist/cjs/biz-components/Ksp/index.js +2 -0
  127. package/dist/cjs/biz-components/Ksp/index.js.map +7 -0
  128. package/dist/cjs/biz-components/Listing/BizProductProvider.d.ts +1 -1
  129. package/dist/cjs/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js +1 -1
  130. package/dist/cjs/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js.map +2 -2
  131. package/dist/cjs/biz-components/Listing/components/PaidShipping/index.d.ts +19 -6
  132. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +2 -2
  133. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.js +4 -4
  134. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.js.map +2 -2
  135. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -2
  136. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -2
  137. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -2
  138. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -2
  139. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +3 -3
  140. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +2 -2
  141. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -2
  142. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -2
  143. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js +1 -1
  144. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +2 -2
  145. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -2
  146. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +1 -1
  147. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +3 -3
  148. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +1 -0
  149. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/useScrollSpy.js +1 -1
  150. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/useScrollSpy.js.map +2 -2
  151. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -2
  152. package/dist/cjs/biz-components/Marquee/Marquee.d.ts +2 -2
  153. package/dist/cjs/biz-components/MarqueeReview/index.d.ts +42 -0
  154. package/dist/cjs/biz-components/MarqueeReview/index.js +2 -0
  155. package/dist/cjs/biz-components/MarqueeReview/index.js.map +7 -0
  156. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.d.ts +7 -0
  157. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.js +2 -0
  158. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.js.map +7 -0
  159. package/dist/cjs/biz-components/MediaPlayerBase/index.d.ts +3 -2
  160. package/dist/cjs/biz-components/MediaPlayerBase/index.js +1 -1
  161. package/dist/cjs/biz-components/MediaPlayerBase/index.js.map +2 -2
  162. package/dist/cjs/biz-components/MediaPlayerMulti/index.d.ts +3 -2
  163. package/dist/cjs/biz-components/MediaPlayerSticky/index.d.ts +2 -2
  164. package/dist/cjs/biz-components/MediaPlayerSticky/index.js +1 -1
  165. package/dist/cjs/biz-components/MediaPlayerSticky/index.js.map +3 -3
  166. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +8 -0
  167. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js +11 -0
  168. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js.map +7 -0
  169. package/dist/cjs/biz-components/MediaSceneSwitcher/index.d.ts +2 -0
  170. package/dist/cjs/biz-components/MediaSceneSwitcher/index.js +2 -0
  171. package/dist/cjs/biz-components/MediaSceneSwitcher/index.js.map +7 -0
  172. package/dist/cjs/biz-components/MediaSceneSwitcher/types.d.ts +21 -0
  173. package/dist/cjs/biz-components/MediaSceneSwitcher/types.js +2 -0
  174. package/dist/cjs/biz-components/MediaSceneSwitcher/types.js.map +7 -0
  175. package/dist/cjs/biz-components/MemberEquity/index.d.ts +2 -2
  176. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +2 -2
  177. package/dist/cjs/biz-components/NavigationSearch/index.d.ts +1 -0
  178. package/dist/cjs/biz-components/NavigationSearch/index.js +2 -2
  179. package/dist/cjs/biz-components/NavigationSearch/index.js.map +2 -2
  180. package/dist/cjs/biz-components/Paginator/index.d.ts +7 -0
  181. package/dist/cjs/biz-components/Paginator/index.js +7 -0
  182. package/dist/cjs/biz-components/Paginator/index.js.map +7 -0
  183. package/dist/cjs/biz-components/ProductCompare/index.d.ts +54 -0
  184. package/dist/cjs/biz-components/ProductCompare/index.js +2 -0
  185. package/dist/cjs/biz-components/ProductCompare/index.js.map +7 -0
  186. package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +7 -0
  187. package/dist/cjs/biz-components/ProductHero/ProductHero.js +2 -0
  188. package/dist/cjs/biz-components/ProductHero/ProductHero.js.map +7 -0
  189. package/dist/cjs/biz-components/ProductHero/index.d.ts +2 -0
  190. package/dist/cjs/biz-components/ProductHero/index.js +2 -0
  191. package/dist/cjs/biz-components/ProductHero/index.js.map +7 -0
  192. package/dist/cjs/biz-components/ProductHero/types.d.ts +23 -0
  193. package/dist/cjs/biz-components/ProductHero/types.js +2 -0
  194. package/dist/cjs/biz-components/ProductHero/types.js.map +7 -0
  195. package/dist/cjs/biz-components/ProductNav/ProductNav.d.ts +7 -0
  196. package/dist/cjs/biz-components/ProductNav/ProductNav.js +2 -0
  197. package/dist/cjs/biz-components/ProductNav/ProductNav.js.map +7 -0
  198. package/dist/cjs/biz-components/ProductNav/index.d.ts +2 -0
  199. package/dist/cjs/biz-components/ProductNav/index.js +2 -0
  200. package/dist/cjs/biz-components/ProductNav/index.js.map +7 -0
  201. package/dist/cjs/biz-components/ProductNav/types.d.ts +35 -0
  202. package/dist/cjs/biz-components/ProductNav/types.js +2 -0
  203. package/dist/cjs/biz-components/ProductNav/types.js.map +7 -0
  204. package/dist/cjs/biz-components/SelectStore/index.d.ts +3 -2
  205. package/dist/cjs/biz-components/SelectStore/index.js +1 -1
  206. package/dist/cjs/biz-components/SelectStore/index.js.map +3 -3
  207. package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +2 -2
  208. package/dist/cjs/biz-components/ShelfDisplay/index.js +1 -1
  209. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +2 -2
  210. package/dist/cjs/biz-components/Slogan/index.d.ts +2 -2
  211. package/dist/cjs/biz-components/Slogan/index.js +1 -1
  212. package/dist/cjs/biz-components/Slogan/index.js.map +1 -1
  213. package/dist/cjs/biz-components/Spacer/index.d.ts +2 -2
  214. package/dist/cjs/biz-components/Spacer/index.js +1 -1
  215. package/dist/cjs/biz-components/Spacer/index.js.map +2 -2
  216. package/dist/cjs/biz-components/Specs/index.d.ts +2 -2
  217. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  218. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  219. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  220. package/dist/cjs/biz-components/SpecsComparison/index.d.ts +2 -0
  221. package/dist/cjs/biz-components/SpecsComparison/index.js +2 -0
  222. package/dist/cjs/biz-components/SpecsComparison/index.js.map +7 -0
  223. package/dist/cjs/biz-components/SpecsComparison/types.d.ts +34 -0
  224. package/dist/cjs/biz-components/SpecsComparison/types.js +2 -0
  225. package/dist/cjs/biz-components/SpecsComparison/types.js.map +7 -0
  226. package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  227. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js +2 -0
  228. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  229. package/dist/cjs/biz-components/TabWithImage/index.d.ts +2 -0
  230. package/dist/cjs/biz-components/TabWithImage/index.js +2 -0
  231. package/dist/cjs/biz-components/TabWithImage/index.js.map +7 -0
  232. package/dist/cjs/biz-components/TabWithImage/types.d.ts +29 -0
  233. package/dist/cjs/biz-components/TabWithImage/types.js +2 -0
  234. package/dist/cjs/biz-components/TabWithImage/types.js.map +7 -0
  235. package/dist/cjs/biz-components/Tabs/Tabs.d.ts +2 -2
  236. package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
  237. package/dist/cjs/biz-components/Tabs/Tabs.js.map +1 -1
  238. package/dist/cjs/biz-components/Tabs/types.d.ts +11 -0
  239. package/dist/cjs/biz-components/Tabs/types.js +1 -1
  240. package/dist/cjs/biz-components/Tabs/types.js.map +1 -1
  241. package/dist/cjs/biz-components/TabsGroup/index.d.ts +2 -2
  242. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  243. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  244. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  245. package/dist/cjs/biz-components/TabsWithMedia/index.d.ts +2 -0
  246. package/dist/cjs/biz-components/TabsWithMedia/index.js +2 -0
  247. package/dist/cjs/biz-components/TabsWithMedia/index.js.map +7 -0
  248. package/dist/cjs/biz-components/TabsWithMedia/types.d.ts +43 -0
  249. package/dist/cjs/biz-components/TabsWithMedia/types.js +2 -0
  250. package/dist/cjs/biz-components/TabsWithMedia/types.js.map +7 -0
  251. package/dist/cjs/biz-components/TextMarquee/index.d.ts +10 -0
  252. package/dist/cjs/biz-components/TextMarquee/index.js +2 -0
  253. package/dist/cjs/biz-components/TextMarquee/index.js.map +7 -0
  254. package/dist/cjs/biz-components/TextModal/index.js +1 -1
  255. package/dist/cjs/biz-components/TextModal/index.js.map +3 -3
  256. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +11 -0
  257. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.js +2 -0
  258. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.js.map +7 -0
  259. package/dist/cjs/biz-components/ThreeDCarousel/index.d.ts +2 -0
  260. package/dist/cjs/biz-components/ThreeDCarousel/index.js +2 -0
  261. package/dist/cjs/biz-components/ThreeDCarousel/index.js.map +7 -0
  262. package/dist/cjs/biz-components/ThreeDCarousel/types.d.ts +26 -0
  263. package/dist/cjs/biz-components/ThreeDCarousel/types.js +2 -0
  264. package/dist/cjs/biz-components/ThreeDCarousel/types.js.map +7 -0
  265. package/dist/cjs/biz-components/Title/index.d.ts +2 -2
  266. package/dist/cjs/biz-components/Title/index.js +1 -1
  267. package/dist/cjs/biz-components/Title/index.js.map +3 -3
  268. package/dist/cjs/biz-components/Title/types.d.ts +1 -0
  269. package/dist/cjs/biz-components/Title/types.js +1 -1
  270. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  271. package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  272. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js +2 -0
  273. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  274. package/dist/cjs/biz-components/VideoFeature/index.d.ts +2 -0
  275. package/dist/cjs/biz-components/VideoFeature/index.js +2 -0
  276. package/dist/cjs/biz-components/VideoFeature/index.js.map +7 -0
  277. package/dist/cjs/biz-components/VideoFeature/types.d.ts +19 -0
  278. package/dist/cjs/biz-components/VideoFeature/types.js +2 -0
  279. package/dist/cjs/biz-components/VideoFeature/types.js.map +7 -0
  280. package/dist/cjs/biz-components/VideoModal/index.js +1 -1
  281. package/dist/cjs/biz-components/VideoModal/index.js.map +2 -2
  282. package/dist/cjs/biz-components/WhyChoose/WhyChoose.d.ts +2 -2
  283. package/dist/cjs/biz-components/index.d.ts +42 -0
  284. package/dist/cjs/biz-components/index.js +1 -1
  285. package/dist/cjs/biz-components/index.js.map +3 -3
  286. package/dist/cjs/components/alert.d.ts +2 -2
  287. package/dist/cjs/components/avatar.d.ts +8 -8
  288. package/dist/cjs/components/board.d.ts +2 -1
  289. package/dist/cjs/components/board.js +1 -1
  290. package/dist/cjs/components/board.js.map +3 -3
  291. package/dist/cjs/components/breadcrumb.d.ts +12 -0
  292. package/dist/cjs/components/breadcrumb.js +2 -0
  293. package/dist/cjs/components/breadcrumb.js.map +7 -0
  294. package/dist/cjs/components/container.d.ts +7 -7
  295. package/dist/cjs/components/dialog.d.ts +1 -1
  296. package/dist/cjs/components/drop-down.d.ts +3 -3
  297. package/dist/cjs/components/heading.d.ts +1 -0
  298. package/dist/cjs/components/heading.js +1 -1
  299. package/dist/cjs/components/heading.js.map +3 -3
  300. package/dist/cjs/components/index.d.ts +1 -0
  301. package/dist/cjs/components/index.js +1 -1
  302. package/dist/cjs/components/index.js.map +3 -3
  303. package/dist/cjs/components/input-number.d.ts +15 -15
  304. package/dist/cjs/components/link.d.ts +6 -6
  305. package/dist/cjs/components/picture.js +1 -1
  306. package/dist/cjs/components/picture.js.map +3 -3
  307. package/dist/cjs/components/tabs.d.ts +2 -2
  308. package/dist/cjs/components/tabs.js +1 -1
  309. package/dist/cjs/components/tabs.js.map +2 -2
  310. package/dist/cjs/helpers/utils.d.ts +1 -0
  311. package/dist/cjs/helpers/utils.js +1 -1
  312. package/dist/cjs/helpers/utils.js.map +3 -3
  313. package/dist/cjs/hooks/useRollout.d.ts +2 -2
  314. package/dist/cjs/hooks/useRollout.js +1 -1
  315. package/dist/cjs/hooks/useRollout.js.map +2 -2
  316. package/dist/cjs/shared/ErrorBoundary.d.ts +18 -0
  317. package/dist/cjs/shared/ErrorBoundary.js +2 -0
  318. package/dist/cjs/shared/ErrorBoundary.js.map +7 -0
  319. package/dist/cjs/shared/Styles.d.ts +4 -4
  320. package/dist/cjs/shared/Styles.js +1 -1
  321. package/dist/cjs/shared/Styles.js.map +3 -3
  322. package/dist/cjs/stories/InlineVideo.stories.js +164 -0
  323. package/dist/cjs/stories/InlineVideo.stories.js.map +7 -0
  324. package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
  325. package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
  326. package/dist/cjs/stories/MediaSceneSwitcher.stories.js +2 -0
  327. package/dist/cjs/stories/MediaSceneSwitcher.stories.js.map +7 -0
  328. package/dist/cjs/stories/ProductNav.stories.js +2 -0
  329. package/dist/cjs/stories/ProductNav.stories.js.map +7 -0
  330. package/dist/cjs/stories/ThreeDCarousel.stories.js +118 -0
  331. package/dist/cjs/stories/ThreeDCarousel.stories.js.map +7 -0
  332. package/dist/cjs/stories/featureCards.stories.js +61 -0
  333. package/dist/cjs/stories/featureCards.stories.js.map +7 -0
  334. package/dist/cjs/stories/featureShowcase.stories.js +44 -0
  335. package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
  336. package/dist/cjs/stories/imageTextFeature.stories.js +50 -0
  337. package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
  338. package/dist/cjs/stories/imageWithText.stories.js +84 -0
  339. package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
  340. package/dist/cjs/stories/ksp.stories.js +128 -0
  341. package/dist/cjs/stories/ksp.stories.js.map +7 -0
  342. package/dist/cjs/stories/picture.stories.js +2 -2
  343. package/dist/cjs/stories/picture.stories.js.map +3 -3
  344. package/dist/cjs/stories/productCompare.stories.js +54 -0
  345. package/dist/cjs/stories/productCompare.stories.js.map +7 -0
  346. package/dist/cjs/stories/productHero.stories.js +50 -0
  347. package/dist/cjs/stories/productHero.stories.js.map +7 -0
  348. package/dist/cjs/stories/shelfDisplay.stories.js +1 -1
  349. package/dist/cjs/stories/shelfDisplay.stories.js.map +3 -3
  350. package/dist/cjs/stories/specsComparison.stories.js +105 -0
  351. package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
  352. package/dist/cjs/stories/tabWithImage.stories.js +53 -0
  353. package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
  354. package/dist/cjs/stories/tabsWithMedia.stories.js +68 -0
  355. package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
  356. package/dist/cjs/stories/videoFeature.stories.js +56 -0
  357. package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
  358. package/dist/cjs/types/props.d.ts +9 -2
  359. package/dist/cjs/types/props.js +1 -1
  360. package/dist/cjs/types/props.js.map +1 -1
  361. package/dist/esm/biz-components/AccordionCards/index.d.ts +2 -2
  362. package/dist/esm/biz-components/AiuiProvider/index.d.ts +1 -1
  363. package/dist/esm/biz-components/AiuiProvider/index.js.map +1 -1
  364. package/dist/esm/biz-components/AplusDesc/index.d.ts +3 -2
  365. package/dist/esm/biz-components/AplusDesc/index.js +1 -1
  366. package/dist/esm/biz-components/AplusDesc/index.js.map +3 -3
  367. package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +3 -2
  368. package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
  369. package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  370. package/dist/esm/biz-components/BrandEquity/types.d.ts +0 -1
  371. package/dist/esm/biz-components/Category/index.d.ts +2 -2
  372. package/dist/esm/biz-components/Category/index.js +1 -1
  373. package/dist/esm/biz-components/Category/index.js.map +3 -3
  374. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.d.ts +4 -0
  375. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.js +2 -0
  376. package/dist/esm/biz-components/CollectionShelves/CollectionShelvesItem.js.map +7 -0
  377. package/dist/esm/biz-components/CollectionShelves/index.d.ts +7 -0
  378. package/dist/esm/biz-components/CollectionShelves/index.js +2 -0
  379. package/dist/esm/biz-components/CollectionShelves/index.js.map +7 -0
  380. package/dist/esm/biz-components/CollectionsBanner/index.d.ts +7 -0
  381. package/dist/esm/biz-components/CollectionsBanner/index.js +2 -0
  382. package/dist/esm/biz-components/CollectionsBanner/index.js.map +7 -0
  383. package/dist/esm/biz-components/CollectionsBanner/types.d.ts +43 -0
  384. package/dist/esm/biz-components/CollectionsBanner/types.js +1 -0
  385. package/dist/esm/biz-components/CollectionsBanner/types.js.map +7 -0
  386. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.d.ts +19 -0
  387. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js +2 -0
  388. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrap.js.map +7 -0
  389. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.d.ts +10 -0
  390. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js +2 -0
  391. package/dist/esm/biz-components/CollectionsFilters/FilterCardWrapItem.js.map +7 -0
  392. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.d.ts +13 -0
  393. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.js +2 -0
  394. package/dist/esm/biz-components/CollectionsFilters/FilterHeader.js.map +7 -0
  395. package/dist/esm/biz-components/CollectionsFilters/FilterList.d.ts +14 -0
  396. package/dist/esm/biz-components/CollectionsFilters/FilterList.js +2 -0
  397. package/dist/esm/biz-components/CollectionsFilters/FilterList.js.map +7 -0
  398. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.d.ts +5 -0
  399. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.js +2 -0
  400. package/dist/esm/biz-components/CollectionsFilters/component/AnimatedUL.js.map +7 -0
  401. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.d.ts +12 -0
  402. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js +2 -0
  403. package/dist/esm/biz-components/CollectionsFilters/component/TabFilter.js.map +7 -0
  404. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.d.ts +12 -0
  405. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.js +2 -0
  406. package/dist/esm/biz-components/CollectionsFilters/component/filtersFun.js.map +7 -0
  407. package/dist/esm/biz-components/CollectionsFilters/component/helper.d.ts +81 -0
  408. package/dist/esm/biz-components/CollectionsFilters/component/helper.js +2 -0
  409. package/dist/esm/biz-components/CollectionsFilters/component/helper.js.map +7 -0
  410. package/dist/esm/biz-components/CollectionsFilters/component/price.d.ts +25 -0
  411. package/dist/esm/biz-components/CollectionsFilters/component/price.js +2 -0
  412. package/dist/esm/biz-components/CollectionsFilters/component/price.js.map +7 -0
  413. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.d.ts +215 -0
  414. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.js +2 -0
  415. package/dist/esm/biz-components/CollectionsFilters/component/priceProps.js.map +7 -0
  416. package/dist/esm/biz-components/CollectionsFilters/index.d.ts +24 -0
  417. package/dist/esm/biz-components/CollectionsFilters/index.js +2 -0
  418. package/dist/esm/biz-components/CollectionsFilters/index.js.map +7 -0
  419. package/dist/esm/biz-components/CreativeModule/index.d.ts +3 -2
  420. package/dist/esm/biz-components/DownLoad/index.d.ts +3 -2
  421. package/dist/esm/biz-components/Evaluate/index.d.ts +2 -2
  422. package/dist/esm/biz-components/Faq/Faq.d.ts +2 -2
  423. package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  424. package/dist/esm/biz-components/FeatureCards/FeatureCards.js +2 -0
  425. package/dist/esm/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  426. package/dist/esm/biz-components/FeatureCards/index.d.ts +2 -0
  427. package/dist/esm/biz-components/FeatureCards/index.js +2 -0
  428. package/dist/esm/biz-components/FeatureCards/index.js.map +7 -0
  429. package/dist/esm/biz-components/FeatureCards/types.d.ts +27 -0
  430. package/dist/esm/biz-components/FeatureCards/types.js +1 -0
  431. package/dist/esm/biz-components/FeatureCards/types.js.map +7 -0
  432. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  433. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  434. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  435. package/dist/esm/biz-components/FeatureShowcase/index.d.ts +2 -0
  436. package/dist/esm/biz-components/FeatureShowcase/index.js +2 -0
  437. package/dist/esm/biz-components/FeatureShowcase/index.js.map +7 -0
  438. package/dist/esm/biz-components/FeatureShowcase/types.d.ts +23 -0
  439. package/dist/esm/biz-components/FeatureShowcase/types.js +1 -0
  440. package/dist/esm/biz-components/FeatureShowcase/types.js.map +7 -0
  441. package/dist/esm/biz-components/Features/index.d.ts +3 -2
  442. package/dist/esm/biz-components/Features/index.js +1 -1
  443. package/dist/esm/biz-components/Features/index.js.map +3 -3
  444. package/dist/esm/biz-components/FootCharger/index.d.ts +3 -2
  445. package/dist/esm/biz-components/FooterNavigation/index.d.ts +3 -2
  446. package/dist/esm/biz-components/GiftBox/index.d.ts +3 -2
  447. package/dist/esm/biz-components/GiftBox/index.js +1 -1
  448. package/dist/esm/biz-components/GiftBox/index.js.map +3 -3
  449. package/dist/esm/biz-components/Graphic/index.d.ts +2 -2
  450. package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +2 -2
  451. package/dist/esm/biz-components/GraphicMore/index.d.ts +3 -2
  452. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.d.ts +2 -2
  453. package/dist/esm/biz-components/HeaderNavigation/index.d.ts +2 -5
  454. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  455. package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
  456. package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +2 -2
  457. package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
  458. package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  459. package/dist/esm/biz-components/HeroBanner/types.d.ts +2 -0
  460. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  461. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  462. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  463. package/dist/esm/biz-components/ImageTextFeature/index.d.ts +2 -0
  464. package/dist/esm/biz-components/ImageTextFeature/index.js +2 -0
  465. package/dist/esm/biz-components/ImageTextFeature/index.js.map +7 -0
  466. package/dist/esm/biz-components/ImageTextFeature/types.d.ts +31 -0
  467. package/dist/esm/biz-components/ImageTextFeature/types.js +1 -0
  468. package/dist/esm/biz-components/ImageTextFeature/types.js.map +7 -0
  469. package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  470. package/dist/esm/biz-components/ImageWithText/ImageWithText.js +2 -0
  471. package/dist/esm/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  472. package/dist/esm/biz-components/ImageWithText/index.d.ts +3 -0
  473. package/dist/esm/biz-components/ImageWithText/index.js +2 -0
  474. package/dist/esm/biz-components/ImageWithText/index.js.map +7 -0
  475. package/dist/esm/biz-components/ImageWithText/types.d.ts +108 -0
  476. package/dist/esm/biz-components/ImageWithText/types.js +2 -0
  477. package/dist/esm/biz-components/ImageWithText/types.js.map +7 -0
  478. package/dist/esm/biz-components/InlineVideo/index.d.ts +16 -0
  479. package/dist/esm/biz-components/InlineVideo/index.js +2 -0
  480. package/dist/esm/biz-components/InlineVideo/index.js.map +7 -0
  481. package/dist/esm/biz-components/Ksp/index.d.ts +44 -0
  482. package/dist/esm/biz-components/Ksp/index.js +2 -0
  483. package/dist/esm/biz-components/Ksp/index.js.map +7 -0
  484. package/dist/esm/biz-components/Listing/BizProductProvider.d.ts +1 -1
  485. package/dist/esm/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js +1 -1
  486. package/dist/esm/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js.map +3 -3
  487. package/dist/esm/biz-components/Listing/components/PaidShipping/index.d.ts +19 -6
  488. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +2 -2
  489. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.js +4 -4
  490. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.js.map +2 -2
  491. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -2
  492. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -2
  493. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -2
  494. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -2
  495. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js +2 -2
  496. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.js.map +2 -2
  497. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -2
  498. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -2
  499. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js +1 -1
  500. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +2 -2
  501. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -2
  502. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js +1 -1
  503. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/index.js.map +3 -3
  504. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +1 -0
  505. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/useScrollSpy.js +1 -1
  506. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/useScrollSpy.js.map +2 -2
  507. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -2
  508. package/dist/esm/biz-components/Marquee/Marquee.d.ts +2 -2
  509. package/dist/esm/biz-components/MarqueeReview/index.d.ts +42 -0
  510. package/dist/esm/biz-components/MarqueeReview/index.js +2 -0
  511. package/dist/esm/biz-components/MarqueeReview/index.js.map +7 -0
  512. package/dist/esm/biz-components/MediaPlayerBase/index.backup.d.ts +7 -0
  513. package/dist/esm/biz-components/MediaPlayerBase/index.backup.js +2 -0
  514. package/dist/esm/biz-components/MediaPlayerBase/index.backup.js.map +7 -0
  515. package/dist/esm/biz-components/MediaPlayerBase/index.d.ts +3 -2
  516. package/dist/esm/biz-components/MediaPlayerBase/index.js +1 -1
  517. package/dist/esm/biz-components/MediaPlayerBase/index.js.map +2 -2
  518. package/dist/esm/biz-components/MediaPlayerMulti/index.d.ts +3 -2
  519. package/dist/esm/biz-components/MediaPlayerSticky/index.d.ts +2 -2
  520. package/dist/esm/biz-components/MediaPlayerSticky/index.js +1 -1
  521. package/dist/esm/biz-components/MediaPlayerSticky/index.js.map +3 -3
  522. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +8 -0
  523. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js +11 -0
  524. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js.map +7 -0
  525. package/dist/esm/biz-components/MediaSceneSwitcher/index.d.ts +2 -0
  526. package/dist/esm/biz-components/MediaSceneSwitcher/index.js +2 -0
  527. package/dist/esm/biz-components/MediaSceneSwitcher/index.js.map +7 -0
  528. package/dist/esm/biz-components/MediaSceneSwitcher/types.d.ts +21 -0
  529. package/dist/esm/biz-components/MediaSceneSwitcher/types.js +1 -0
  530. package/dist/esm/biz-components/MediaSceneSwitcher/types.js.map +7 -0
  531. package/dist/esm/biz-components/MemberEquity/index.d.ts +2 -2
  532. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +2 -2
  533. package/dist/esm/biz-components/NavigationSearch/index.d.ts +1 -0
  534. package/dist/esm/biz-components/NavigationSearch/index.js +2 -2
  535. package/dist/esm/biz-components/NavigationSearch/index.js.map +2 -2
  536. package/dist/esm/biz-components/Paginator/index.d.ts +7 -0
  537. package/dist/esm/biz-components/Paginator/index.js +7 -0
  538. package/dist/esm/biz-components/Paginator/index.js.map +7 -0
  539. package/dist/esm/biz-components/ProductCompare/index.d.ts +54 -0
  540. package/dist/esm/biz-components/ProductCompare/index.js +2 -0
  541. package/dist/esm/biz-components/ProductCompare/index.js.map +7 -0
  542. package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +7 -0
  543. package/dist/esm/biz-components/ProductHero/ProductHero.js +2 -0
  544. package/dist/esm/biz-components/ProductHero/ProductHero.js.map +7 -0
  545. package/dist/esm/biz-components/ProductHero/index.d.ts +2 -0
  546. package/dist/esm/biz-components/ProductHero/index.js +2 -0
  547. package/dist/esm/biz-components/ProductHero/index.js.map +7 -0
  548. package/dist/esm/biz-components/ProductHero/types.d.ts +23 -0
  549. package/dist/esm/biz-components/ProductHero/types.js +1 -0
  550. package/dist/esm/biz-components/ProductHero/types.js.map +7 -0
  551. package/dist/esm/biz-components/ProductNav/ProductNav.d.ts +7 -0
  552. package/dist/esm/biz-components/ProductNav/ProductNav.js +2 -0
  553. package/dist/esm/biz-components/ProductNav/ProductNav.js.map +7 -0
  554. package/dist/esm/biz-components/ProductNav/index.d.ts +2 -0
  555. package/dist/esm/biz-components/ProductNav/index.js +2 -0
  556. package/dist/esm/biz-components/ProductNav/index.js.map +7 -0
  557. package/dist/esm/biz-components/ProductNav/types.d.ts +35 -0
  558. package/dist/esm/biz-components/ProductNav/types.js +1 -0
  559. package/dist/esm/biz-components/ProductNav/types.js.map +7 -0
  560. package/dist/esm/biz-components/SelectStore/index.d.ts +3 -2
  561. package/dist/esm/biz-components/SelectStore/index.js +1 -1
  562. package/dist/esm/biz-components/SelectStore/index.js.map +3 -3
  563. package/dist/esm/biz-components/ShelfDisplay/index.d.ts +2 -2
  564. package/dist/esm/biz-components/ShelfDisplay/index.js +1 -1
  565. package/dist/esm/biz-components/ShelfDisplay/index.js.map +2 -2
  566. package/dist/esm/biz-components/Slogan/index.d.ts +2 -2
  567. package/dist/esm/biz-components/Slogan/index.js +1 -1
  568. package/dist/esm/biz-components/Slogan/index.js.map +1 -1
  569. package/dist/esm/biz-components/Spacer/index.d.ts +2 -2
  570. package/dist/esm/biz-components/Spacer/index.js +1 -1
  571. package/dist/esm/biz-components/Spacer/index.js.map +2 -2
  572. package/dist/esm/biz-components/Specs/index.d.ts +2 -2
  573. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  574. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  575. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  576. package/dist/esm/biz-components/SpecsComparison/index.d.ts +2 -0
  577. package/dist/esm/biz-components/SpecsComparison/index.js +2 -0
  578. package/dist/esm/biz-components/SpecsComparison/index.js.map +7 -0
  579. package/dist/esm/biz-components/SpecsComparison/types.d.ts +34 -0
  580. package/dist/esm/biz-components/SpecsComparison/types.js +1 -0
  581. package/dist/esm/biz-components/SpecsComparison/types.js.map +7 -0
  582. package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  583. package/dist/esm/biz-components/TabWithImage/TabWithImage.js +2 -0
  584. package/dist/esm/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  585. package/dist/esm/biz-components/TabWithImage/index.d.ts +2 -0
  586. package/dist/esm/biz-components/TabWithImage/index.js +2 -0
  587. package/dist/esm/biz-components/TabWithImage/index.js.map +7 -0
  588. package/dist/esm/biz-components/TabWithImage/types.d.ts +29 -0
  589. package/dist/esm/biz-components/TabWithImage/types.js +1 -0
  590. package/dist/esm/biz-components/TabWithImage/types.js.map +7 -0
  591. package/dist/esm/biz-components/Tabs/Tabs.d.ts +2 -2
  592. package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
  593. package/dist/esm/biz-components/Tabs/Tabs.js.map +1 -1
  594. package/dist/esm/biz-components/Tabs/types.d.ts +11 -0
  595. package/dist/esm/biz-components/TabsGroup/index.d.ts +2 -2
  596. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  597. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  598. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  599. package/dist/esm/biz-components/TabsWithMedia/index.d.ts +2 -0
  600. package/dist/esm/biz-components/TabsWithMedia/index.js +2 -0
  601. package/dist/esm/biz-components/TabsWithMedia/index.js.map +7 -0
  602. package/dist/esm/biz-components/TabsWithMedia/types.d.ts +43 -0
  603. package/dist/esm/biz-components/TabsWithMedia/types.js +1 -0
  604. package/dist/esm/biz-components/TabsWithMedia/types.js.map +7 -0
  605. package/dist/esm/biz-components/TextMarquee/index.d.ts +10 -0
  606. package/dist/esm/biz-components/TextMarquee/index.js +2 -0
  607. package/dist/esm/biz-components/TextMarquee/index.js.map +7 -0
  608. package/dist/esm/biz-components/TextModal/index.js +1 -1
  609. package/dist/esm/biz-components/TextModal/index.js.map +2 -2
  610. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +11 -0
  611. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.js +2 -0
  612. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.js.map +7 -0
  613. package/dist/esm/biz-components/ThreeDCarousel/index.d.ts +2 -0
  614. package/dist/esm/biz-components/ThreeDCarousel/index.js +2 -0
  615. package/dist/esm/biz-components/ThreeDCarousel/index.js.map +7 -0
  616. package/dist/esm/biz-components/ThreeDCarousel/types.d.ts +26 -0
  617. package/dist/esm/biz-components/ThreeDCarousel/types.js +1 -0
  618. package/dist/esm/biz-components/ThreeDCarousel/types.js.map +7 -0
  619. package/dist/esm/biz-components/Title/index.d.ts +2 -2
  620. package/dist/esm/biz-components/Title/index.js +1 -1
  621. package/dist/esm/biz-components/Title/index.js.map +3 -3
  622. package/dist/esm/biz-components/Title/types.d.ts +1 -0
  623. package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  624. package/dist/esm/biz-components/VideoFeature/VideoFeature.js +2 -0
  625. package/dist/esm/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  626. package/dist/esm/biz-components/VideoFeature/index.d.ts +2 -0
  627. package/dist/esm/biz-components/VideoFeature/index.js +2 -0
  628. package/dist/esm/biz-components/VideoFeature/index.js.map +7 -0
  629. package/dist/esm/biz-components/VideoFeature/types.d.ts +19 -0
  630. package/dist/esm/biz-components/VideoFeature/types.js +1 -0
  631. package/dist/esm/biz-components/VideoFeature/types.js.map +7 -0
  632. package/dist/esm/biz-components/VideoModal/index.js +1 -1
  633. package/dist/esm/biz-components/VideoModal/index.js.map +2 -2
  634. package/dist/esm/biz-components/WhyChoose/WhyChoose.d.ts +2 -2
  635. package/dist/esm/biz-components/index.d.ts +42 -0
  636. package/dist/esm/biz-components/index.js +1 -1
  637. package/dist/esm/biz-components/index.js.map +2 -2
  638. package/dist/esm/components/alert.d.ts +2 -2
  639. package/dist/esm/components/avatar.d.ts +8 -8
  640. package/dist/esm/components/board.d.ts +2 -1
  641. package/dist/esm/components/board.js +1 -1
  642. package/dist/esm/components/board.js.map +3 -3
  643. package/dist/esm/components/breadcrumb.d.ts +12 -0
  644. package/dist/esm/components/breadcrumb.js +2 -0
  645. package/dist/esm/components/breadcrumb.js.map +7 -0
  646. package/dist/esm/components/container.d.ts +7 -7
  647. package/dist/esm/components/dialog.d.ts +1 -1
  648. package/dist/esm/components/drop-down.d.ts +3 -3
  649. package/dist/esm/components/heading.d.ts +1 -0
  650. package/dist/esm/components/heading.js +1 -1
  651. package/dist/esm/components/heading.js.map +3 -3
  652. package/dist/esm/components/index.d.ts +1 -0
  653. package/dist/esm/components/index.js +1 -1
  654. package/dist/esm/components/index.js.map +2 -2
  655. package/dist/esm/components/input-number.d.ts +15 -15
  656. package/dist/esm/components/link.d.ts +6 -6
  657. package/dist/esm/components/picture.js +1 -1
  658. package/dist/esm/components/picture.js.map +3 -3
  659. package/dist/esm/components/tabs.d.ts +2 -2
  660. package/dist/esm/components/tabs.js +1 -1
  661. package/dist/esm/components/tabs.js.map +2 -2
  662. package/dist/esm/helpers/utils.d.ts +1 -0
  663. package/dist/esm/helpers/utils.js +1 -1
  664. package/dist/esm/helpers/utils.js.map +3 -3
  665. package/dist/esm/hooks/useRollout.d.ts +2 -2
  666. package/dist/esm/hooks/useRollout.js +1 -1
  667. package/dist/esm/hooks/useRollout.js.map +3 -3
  668. package/dist/esm/shared/ErrorBoundary.d.ts +18 -0
  669. package/dist/esm/shared/ErrorBoundary.js +2 -0
  670. package/dist/esm/shared/ErrorBoundary.js.map +7 -0
  671. package/dist/esm/shared/Styles.d.ts +4 -4
  672. package/dist/esm/shared/Styles.js +1 -1
  673. package/dist/esm/shared/Styles.js.map +3 -3
  674. package/dist/esm/stories/InlineVideo.stories.js +164 -0
  675. package/dist/esm/stories/InlineVideo.stories.js.map +7 -0
  676. package/dist/esm/stories/MarqueeReview.stories.js +19 -0
  677. package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
  678. package/dist/esm/stories/MediaSceneSwitcher.stories.js +2 -0
  679. package/dist/esm/stories/MediaSceneSwitcher.stories.js.map +7 -0
  680. package/dist/esm/stories/ProductNav.stories.js +2 -0
  681. package/dist/esm/stories/ProductNav.stories.js.map +7 -0
  682. package/dist/esm/stories/ThreeDCarousel.stories.js +118 -0
  683. package/dist/esm/stories/ThreeDCarousel.stories.js.map +7 -0
  684. package/dist/esm/stories/featureCards.stories.js +61 -0
  685. package/dist/esm/stories/featureCards.stories.js.map +7 -0
  686. package/dist/esm/stories/featureShowcase.stories.js +44 -0
  687. package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
  688. package/dist/esm/stories/imageTextFeature.stories.js +50 -0
  689. package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
  690. package/dist/esm/stories/imageWithText.stories.js +84 -0
  691. package/dist/esm/stories/imageWithText.stories.js.map +7 -0
  692. package/dist/esm/stories/ksp.stories.js +128 -0
  693. package/dist/esm/stories/ksp.stories.js.map +7 -0
  694. package/dist/esm/stories/picture.stories.js +2 -2
  695. package/dist/esm/stories/picture.stories.js.map +3 -3
  696. package/dist/esm/stories/productCompare.stories.js +54 -0
  697. package/dist/esm/stories/productCompare.stories.js.map +7 -0
  698. package/dist/esm/stories/productHero.stories.js +50 -0
  699. package/dist/esm/stories/productHero.stories.js.map +7 -0
  700. package/dist/esm/stories/shelfDisplay.stories.js +1 -1
  701. package/dist/esm/stories/shelfDisplay.stories.js.map +2 -2
  702. package/dist/esm/stories/specsComparison.stories.js +105 -0
  703. package/dist/esm/stories/specsComparison.stories.js.map +7 -0
  704. package/dist/esm/stories/tabWithImage.stories.js +53 -0
  705. package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
  706. package/dist/esm/stories/tabsWithMedia.stories.js +68 -0
  707. package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
  708. package/dist/esm/stories/videoFeature.stories.js +56 -0
  709. package/dist/esm/stories/videoFeature.stories.js.map +7 -0
  710. package/dist/esm/types/props.d.ts +9 -2
  711. package/package.json +20 -17
  712. package/style.css +39 -0
  713. package/tailwind.config.js +24 -0
  714. package/dist/cjs/stories/HeroBanner.stories.d.ts +0 -28
  715. package/dist/cjs/stories/MemberEquity.stories.d.ts +0 -9
  716. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.d.ts +0 -9
  717. package/dist/cjs/stories/accordionCards.stories.d.ts +0 -17
  718. package/dist/cjs/stories/alert.stories.d.ts +0 -27
  719. package/dist/cjs/stories/avatar.stories.d.ts +0 -39
  720. package/dist/cjs/stories/badge.stories.d.ts +0 -31
  721. package/dist/cjs/stories/bizTabs.stories.d.ts +0 -7
  722. package/dist/cjs/stories/board.stories.d.ts +0 -6
  723. package/dist/cjs/stories/brandEquity.stories.d.ts +0 -16
  724. package/dist/cjs/stories/button.stories.d.ts +0 -56
  725. package/dist/cjs/stories/card.stories.d.ts +0 -27
  726. package/dist/cjs/stories/carousel.stories.d.ts +0 -8
  727. package/dist/cjs/stories/category.stories.d.ts +0 -17
  728. package/dist/cjs/stories/checkbox.stories.d.ts +0 -46
  729. package/dist/cjs/stories/container.stories.d.ts +0 -28
  730. package/dist/cjs/stories/cpnBanner.stories.d.ts +0 -14
  731. package/dist/cjs/stories/cpnCountdown.stories.d.ts +0 -12
  732. package/dist/cjs/stories/cpnNavigation.stories.d.ts +0 -14
  733. package/dist/cjs/stories/cpnProductcard.stories.d.ts +0 -14
  734. package/dist/cjs/stories/cpnTitle.stories.d.ts +0 -14
  735. package/dist/cjs/stories/creativeModule.stories.d.ts +0 -19
  736. package/dist/cjs/stories/dialog.stories.d.ts +0 -20
  737. package/dist/cjs/stories/drawer.stories.d.ts +0 -20
  738. package/dist/cjs/stories/drop-down.stories.d.ts +0 -16
  739. package/dist/cjs/stories/evaluate.stories.d.ts +0 -16
  740. package/dist/cjs/stories/faq.stories.d.ts +0 -21
  741. package/dist/cjs/stories/graphic.stories.d.ts +0 -64
  742. package/dist/cjs/stories/graphicAttractionBlock.stories.d.ts +0 -6
  743. package/dist/cjs/stories/grid.stories.d.ts +0 -22
  744. package/dist/cjs/stories/heading.stories.d.ts +0 -84
  745. package/dist/cjs/stories/input-number.stories.d.ts +0 -39
  746. package/dist/cjs/stories/input.stories.d.ts +0 -35
  747. package/dist/cjs/stories/link.stories.d.ts +0 -69
  748. package/dist/cjs/stories/marquee.stories.d.ts +0 -30
  749. package/dist/cjs/stories/mediaplayerBase.stories.d.ts +0 -6
  750. package/dist/cjs/stories/mediaplayerMulti.stories.d.ts +0 -16
  751. package/dist/cjs/stories/picture.stories.d.ts +0 -23
  752. package/dist/cjs/stories/popover.stories.d.ts +0 -17
  753. package/dist/cjs/stories/radio.stories.d.ts +0 -39
  754. package/dist/cjs/stories/shelfDisplay.stories.d.ts +0 -16
  755. package/dist/cjs/stories/skeleton.stories.d.ts +0 -20
  756. package/dist/cjs/stories/slogan.stories.d.ts +0 -20
  757. package/dist/cjs/stories/specs.stories.d.ts +0 -13
  758. package/dist/cjs/stories/tabs.stories.d.ts +0 -373
  759. package/dist/cjs/stories/text.stories.d.ts +0 -86
  760. package/dist/cjs/stories/whychoose.stories.d.ts +0 -21
  761. package/dist/esm/stories/HeroBanner.stories.d.ts +0 -28
  762. package/dist/esm/stories/MemberEquity.stories.d.ts +0 -9
  763. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.d.ts +0 -9
  764. package/dist/esm/stories/accordionCards.stories.d.ts +0 -17
  765. package/dist/esm/stories/alert.stories.d.ts +0 -27
  766. package/dist/esm/stories/avatar.stories.d.ts +0 -39
  767. package/dist/esm/stories/badge.stories.d.ts +0 -31
  768. package/dist/esm/stories/bizTabs.stories.d.ts +0 -7
  769. package/dist/esm/stories/board.stories.d.ts +0 -6
  770. package/dist/esm/stories/brandEquity.stories.d.ts +0 -16
  771. package/dist/esm/stories/button.stories.d.ts +0 -56
  772. package/dist/esm/stories/card.stories.d.ts +0 -27
  773. package/dist/esm/stories/carousel.stories.d.ts +0 -8
  774. package/dist/esm/stories/category.stories.d.ts +0 -17
  775. package/dist/esm/stories/checkbox.stories.d.ts +0 -46
  776. package/dist/esm/stories/container.stories.d.ts +0 -28
  777. package/dist/esm/stories/cpnBanner.stories.d.ts +0 -14
  778. package/dist/esm/stories/cpnCountdown.stories.d.ts +0 -12
  779. package/dist/esm/stories/cpnNavigation.stories.d.ts +0 -14
  780. package/dist/esm/stories/cpnProductcard.stories.d.ts +0 -14
  781. package/dist/esm/stories/cpnTitle.stories.d.ts +0 -14
  782. package/dist/esm/stories/creativeModule.stories.d.ts +0 -19
  783. package/dist/esm/stories/dialog.stories.d.ts +0 -20
  784. package/dist/esm/stories/drawer.stories.d.ts +0 -20
  785. package/dist/esm/stories/drop-down.stories.d.ts +0 -16
  786. package/dist/esm/stories/evaluate.stories.d.ts +0 -16
  787. package/dist/esm/stories/faq.stories.d.ts +0 -21
  788. package/dist/esm/stories/graphic.stories.d.ts +0 -64
  789. package/dist/esm/stories/graphicAttractionBlock.stories.d.ts +0 -6
  790. package/dist/esm/stories/grid.stories.d.ts +0 -22
  791. package/dist/esm/stories/heading.stories.d.ts +0 -84
  792. package/dist/esm/stories/input-number.stories.d.ts +0 -39
  793. package/dist/esm/stories/input.stories.d.ts +0 -35
  794. package/dist/esm/stories/link.stories.d.ts +0 -69
  795. package/dist/esm/stories/marquee.stories.d.ts +0 -30
  796. package/dist/esm/stories/mediaplayerBase.stories.d.ts +0 -6
  797. package/dist/esm/stories/mediaplayerMulti.stories.d.ts +0 -16
  798. package/dist/esm/stories/picture.stories.d.ts +0 -23
  799. package/dist/esm/stories/popover.stories.d.ts +0 -17
  800. package/dist/esm/stories/radio.stories.d.ts +0 -39
  801. package/dist/esm/stories/shelfDisplay.stories.d.ts +0 -16
  802. package/dist/esm/stories/skeleton.stories.d.ts +0 -20
  803. package/dist/esm/stories/slogan.stories.d.ts +0 -20
  804. package/dist/esm/stories/specs.stories.d.ts +0 -13
  805. package/dist/esm/stories/tabs.stories.d.ts +0 -373
  806. package/dist/esm/stories/text.stories.d.ts +0 -86
  807. package/dist/esm/stories/whychoose.stories.d.ts +0 -21
@@ -1,4 +1,4 @@
1
- "use strict";var b=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var W=Object.getOwnPropertyNames;var _=Object.prototype.hasOwnProperty;var G=(t,o)=>{for(var r in o)b(t,r,{get:o[r],enumerable:!0})},j=(t,o,r,i)=>{if(o&&typeof o=="object"||typeof o=="function")for(let l of W(o))!_.call(t,l)&&l!==r&&b(t,l,{get:()=>o[l],enumerable:!(i=B(o,l))||i.enumerable});return t};var q=t=>j(b({},"__esModule",{value:!0}),t);var M={};G(M,{canSearch:()=>L,default:()=>H});module.exports=q(M);var e=require("react/jsx-runtime"),a=require("../../components/index.js"),h=require("../HeaderNavigation/icons/index.js"),p=require("react"),w=require("../AiuiProvider/index.js"),m=require("./types.js"),C=require("es-toolkit"),c=require("../../helpers/utils.js");const L=t=>!(t.metafields?.global?.HideSearch||t.metafields?.seo?.hidden||t.metafields?.seo?.setting?.noindex),z=(0,p.forwardRef)(({data:t,onSearch:o,onClose:r,searchResult:i,isSearching:l,keywords:d},D)=>{const{locale:g="us",copyWriting:V}=(0,w.useAiuiContext)(),[n,F]=(0,p.useState)(""),[f,N]=(0,p.useState)(!1),$=(0,C.debounce)(s=>{o(s)},300),P=(0,p.useCallback)(s=>{s.key==="Enter"&&!f&&o(n)},[f,n,o]),S=(0,p.useMemo)(()=>Array.isArray(d)&&d?.length?d.map(s=>s.search_term):Array.isArray(t?.popularWords)&&t?.popularWords?.length?t?.popularWords.map(s=>s.popularWord):[],[d,t?.popularWords]),E=(0,p.useCallback)(s=>{switch(s.type){case"Product":return`/products${s.path}?q=${n.toLowerCase()}`;case"Article":return`/blogs/${s.blog.handle}/${s.handle.replace("storefront-","")}?q=${n.toLowerCase()}`;default:break}},[n]),k=(0,p.useMemo)(()=>{if(n){if(i?.totalCount)return m.SearchStatus.Predict;if(!l)return m.SearchStatus.Empty}else return m.SearchStatus.Default},[i?.totalCount,n]);return(0,e.jsxs)(a.Container,{childClassName:"!bg-white",className:"relative",ref:D,children:[(0,e.jsx)("style",{jsx:!0,global:!0,children:`
1
+ "use strict";var b=Object.defineProperty;var B=Object.getOwnPropertyDescriptor;var _=Object.getOwnPropertyNames;var W=Object.prototype.hasOwnProperty;var q=(t,a)=>{for(var r in a)b(t,r,{get:a[r],enumerable:!0})},G=(t,a,r,i)=>{if(a&&typeof a=="object"||typeof a=="function")for(let l of _(a))!W.call(t,l)&&l!==r&&b(t,l,{get:()=>a[l],enumerable:!(i=B(a,l))||i.enumerable});return t};var j=t=>G(b({},"__esModule",{value:!0}),t);var M={};q(M,{canSearch:()=>C,default:()=>H});module.exports=j(M);var e=require("react/jsx-runtime"),s=require("../../components/index.js"),h=require("../HeaderNavigation/icons/index.js"),p=require("react"),w=require("../AiuiProvider/index.js"),g=require("./types.js"),L=require("es-toolkit"),c=require("../../helpers/utils.js");const C=t=>!(t.metafields?.global?.HideSearch||t.metafields?.seo?.hidden||t.metafields?.seo?.setting?.noindex),z=(0,p.forwardRef)(({data:t,onSearch:a,onClose:r,searchResult:i,isSearching:l,keywords:m},$)=>{const{locale:d="us",copyWriting:V}=(0,w.useAiuiContext)(),[n,D]=(0,p.useState)(""),[f,N]=(0,p.useState)(!1),F=(0,L.debounce)(o=>{a(o)},300),S=(0,p.useCallback)(o=>{o.key==="Enter"&&!f&&window.open(`${d==="us"?"":d}${t?.moreLink}?q=${n.toLowerCase()}`,"_self")},[f,n,d,t?.moreLink]),P=(0,p.useMemo)(()=>Array.isArray(m)&&m?.length?m.map(o=>o.search_term):Array.isArray(t?.popularWords)&&t?.popularWords?.length?t?.popularWords.map(o=>o.popularWord):[],[m,t?.popularWords]),E=(0,p.useCallback)(o=>{switch(o.type){case"Product":return`/products${o.path}?q=${n.toLowerCase()}`;case"Article":return`/blogs/${o.blog.handle}/${o.handle.replace("storefront-","")}?q=${n.toLowerCase()}`;default:break}},[n]),k=(0,p.useMemo)(()=>{if(n){if(i?.totalCount)return g.SearchStatus.Predict;if(!l)return g.SearchStatus.Empty}else return g.SearchStatus.Default},[i?.totalCount,n,l]);return(0,e.jsxs)(s.Container,{childClassName:"!bg-white",className:"relative",ref:$,children:[(0,e.jsx)("style",{jsx:!0,global:!0,children:`
2
2
  .navigation-search-component input:-webkit-autofill,
3
3
  .navigation-search-component input:-webkit-autofill:hover,
4
4
  .navigation-search-component input:-webkit-autofill:focus {
@@ -7,5 +7,5 @@
7
7
  transition: background-color 9999s ease-in-out 0s !important;
8
8
  caret-color: #000;
9
9
  }
10
- `}),(0,e.jsxs)("div",{className:"navigation-search-component laptop:h-[52px] desktop:h-[60px] desktop:pt-6 flex items-center justify-between border-b border-b-gray-200 py-4 text-black",children:[(0,e.jsx)("input",{value:n,onCompositionStart:()=>N(!0),onCompositionEnd:()=>N(!1),onKeyDown:P,onChange:s=>{F(s.target.value),s.target.value&&$(s.target.value)},type:"text",className:"basis-[200px] bg-white text-sm font-bold leading-[1.4] outline-none focus-visible:!outline-none",placeholder:t?.placeholder}),(0,e.jsxs)("div",{className:"flex items-center gap-3",children:[(0,e.jsx)(h.Search,{className:"size-5 cursor-pointer",onClick:()=>o(n)}),(0,e.jsx)("div",{className:"h-[20px] w-px bg-[#E4E5E6]"}),(0,e.jsx)(h.Close,{className:"size-5 cursor-pointer",onClick:r})]})]}),(0,e.jsx)("div",{className:"desktop:gap-12 desktop:py-6 flex flex-col gap-6 py-4 text-black",children:k===m.SearchStatus.Predict?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(a.Text,{html:t?.suggestText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),i?.items?.length>6&&(0,e.jsx)(a.Button,{as:"a",href:`${g==="us"?"":g}${t?.moreLink}?q=${n.toLowerCase()}`,className:"!p-0 !text-sm font-bold leading-[1.2]",variant:"link",children:t?.moreText})]}),(0,e.jsx)("div",{className:"mt-2 flex flex-col",children:i?.items?.filter(s=>L(s)).slice(0,6)?.map(s=>(0,e.jsx)(a.Link,{className:"w-full p-4 no-underline hover:bg-[#F5F5F7] hover:text-current",href:E(s),children:(0,e.jsx)(a.Text,{html:(0,c.highlightSearchWord)(s.title,n),className:"cursor-pointer text-sm font-bold leading-[1.4]"})},s.id))})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)(a.Text,{html:t?.hotProductsText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2",children:[(0,e.jsx)(a.Link,{asChild:!t?.advertisingLink,href:t?.advertisingLink,children:(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)(a.Picture,{source:t?.advertisingBgImg?.url,className:"laptop:h-[120px] h-[114px]",imgClassName:"object-cover h-full"}),(0,e.jsxs)("div",{className:"absolute inset-x-0 bottom-0 p-4",children:[(0,e.jsx)(a.Heading,{size:2,html:t?.advertisingTitle||"Buy in Guide",className:(0,c.cn)("font-bold text-white",{"text-black":t?.advertisingTheme==="dark"})}),(0,e.jsx)(a.Text,{html:t?.advertisingSubtitle||"20.000mAh",className:(0,c.cn)("text-sm font-bold text-white",{"text-black":t?.advertisingTheme==="dark"})})]})]})}),i?.items?.filter(s=>s.type.toLowerCase()==="product").slice(0,7)?.map(s=>{const u=s?.variants?.[0],v=`${u?.image?.url||s?.images?.[0]?.url}`,x=s?.title||s?.name,I=s?.description,T=s?.badge||"",A=`/products/${s?.handle}?variant=${(0,c.atobID)(u?.id)}`;return(0,e.jsx)(y,{productImage:v,productName:x,productDesc:I,productBadge:T,listingLink:A},s.id)})]})]})]}):(0,e.jsxs)(e.Fragment,{children:[k===m.SearchStatus.Empty&&(0,e.jsx)(a.Text,{html:t?.noResultText,as:"p",className:"border-b border-[#E4E5E6] pb-6 text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{children:[(0,e.jsx)(a.Text,{html:t?.popularText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"mt-2",children:[(0,e.jsx)(K,{data:t,keywords:S,locale:g}),Array.isArray(t?.popularPages)&&!!t?.popularPages?.length&&(0,e.jsx)(a.Grid,{className:"laptop:gap-4 laptop:mt-4 mt-3 gap-3",children:t?.popularPages?.map(s=>(0,e.jsx)(a.GridItem,{className:"tablet:col-span-6 laptop:p-3 desktop:p-4 laptop:col-span-3 col-span-12 p-2 hover:bg-[#F5F5F7]",children:(0,e.jsx)("a",{href:`${g==="us"?"":g}${t?.moreLink}?q=${s?.popularPage.toLowerCase()}`,className:"line-clamp-1 cursor-pointer text-sm font-bold leading-[1.4]",children:s?.popularPage})},s?.id))})]})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)(a.Text,{html:t?.hotProductsText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2",children:[(0,e.jsx)(a.Link,{asChild:!t?.advertisingLink,href:t?.advertisingLink,children:(0,e.jsxs)("div",{className:"[&_img]:hover:duration-600 relative [&_img]:hover:scale-110 [&_img]:hover:transition-all",children:[(0,e.jsx)(a.Picture,{source:t?.advertisingBgImg?.url,className:"laptop:h-[120px] h-[114px]",imgClassName:"object-cover h-full"}),(0,e.jsxs)("div",{className:"absolute inset-x-0 bottom-0 p-4",children:[(0,e.jsx)(a.Heading,{size:2,html:t?.advertisingTitle||"Buy in Guide",className:"font-bold text-white"}),(0,e.jsx)(a.Text,{html:t?.advertisingSubtitle||"20.000mAh",className:"text-sm font-bold text-white"})]})]})}),t?.hotProducts?.slice(0,7)?.map(s=>{const u=s?.custom_description,v=s?.badge||"",x=`/products/${s?.handle}?variant=${(0,c.atobID)(s?.shopify_id)}`;return(0,e.jsx)(y,{productImage:s?.image,productName:s?.name,productDesc:u,productBadge:v,listingLink:x},s.id)})]})]})]})})]})}),y=({productImage:t,productName:o,productDesc:r,productBadge:i,className:l,listingLink:d})=>(0,e.jsxs)("div",{className:(0,c.cn)("flex shrink-0 gap-4 bg-[#F5F5F7] px-4 py-3 [&_img]:hover:scale-110",l),children:[(0,e.jsx)("div",{className:"shrink-0",children:(0,e.jsx)(a.Picture,{source:t,width:90,height:90,className:"size-[96px]",imgClassName:"object-contain h-full"})}),(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)("div",{className:" h-[24px] ",children:i&&(0,e.jsx)(a.Text,{as:"p",html:i,className:"text-brand-0 mb-1 inline-block h-full rounded-full border-[1.6px] border-[#00BEFA] px-[6px] text-sm font-bold !leading-[24px]"})}),(0,e.jsxs)("div",{children:[(0,e.jsx)(a.Link,{href:d,className:"no-underline hover:text-current",children:(0,e.jsx)(a.Text,{className:"lg-desktop:h-[44px] lg-desktop:text-base line-clamp-2 h-[40px] text-sm font-bold leading-[1.4]",html:o})}),r&&(0,e.jsx)(a.Text,{as:"p",html:r,className:"lg-desktop:text-sm mt-1 line-clamp-1 text-xs font-bold leading-[1.4] text-[#6D6D6F]"})]})]})]}),K=({data:t,keywords:o,locale:r})=>(0,e.jsx)("div",{className:"laptop:gap-4 flex flex-wrap gap-3",children:o?.map((i,l)=>(0,e.jsx)("a",{href:`${r==="us"?"":r}${t?.moreLink}?q=${i?.toLowerCase()}`,className:"laptop:p-3 desktop:p-4 cursor-pointer p-2 text-sm font-bold leading-[1.4] hover:bg-[#F5F5F7]",children:i},l))});var H=z;
10
+ `}),(0,e.jsxs)("div",{className:"navigation-search-component laptop:h-[52px] desktop:h-[60px] desktop:pt-6 flex items-center justify-between border-b border-b-gray-200 py-4 text-black",children:[(0,e.jsx)("input",{value:n,onCompositionStart:()=>N(!0),onCompositionEnd:()=>N(!1),onKeyDown:S,onChange:o=>{D(o.target.value),o.target.value&&F(o.target.value)},type:"text",className:"basis-[200px] bg-white text-sm font-bold leading-[1.4] outline-none focus-visible:!outline-none",placeholder:t?.placeholder}),(0,e.jsxs)("div",{className:"flex items-center gap-3",children:[(0,e.jsx)(h.Search,{className:"size-5 cursor-pointer",onClick:()=>a(n)}),(0,e.jsx)("div",{className:"h-[20px] w-px bg-[#E4E5E6]"}),(0,e.jsx)(h.Close,{className:"size-5 cursor-pointer",onClick:r})]})]}),(0,e.jsx)("div",{className:"desktop:gap-12 desktop:py-6 flex flex-col gap-6 py-4 text-black",children:k===g.SearchStatus.Predict?(0,e.jsxs)(e.Fragment,{children:[(0,e.jsxs)("div",{children:[(0,e.jsxs)("div",{className:"flex items-center gap-2",children:[(0,e.jsx)(s.Text,{html:t?.suggestText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),i?.items?.length>6&&(0,e.jsx)(s.Button,{as:"a",href:`${d==="us"?"":d}${t?.moreLink}?q=${n.toLowerCase()}`,className:"!p-0 !text-sm font-bold leading-[1.2]",variant:"link",children:t?.moreText})]}),(0,e.jsx)("div",{className:"mt-2 flex flex-col",children:i?.items?.filter(o=>C(o)).slice(0,6)?.map(o=>(0,e.jsx)(s.Link,{className:"w-full p-4 no-underline hover:bg-[#F5F5F7] hover:text-current",href:E(o),children:(0,e.jsx)(s.Text,{html:(0,c.highlightSearchWord)(o.title,n),className:"cursor-pointer text-sm font-bold leading-[1.4]"})},o.id))})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)(s.Text,{html:t?.hotProductsText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2",children:[(0,e.jsx)(s.Link,{asChild:!t?.advertisingLink,href:t?.advertisingLink,children:(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)(s.Picture,{source:t?.advertisingBgImg?.url,className:"laptop:h-[120px] h-[114px]",imgClassName:"object-cover h-full"}),(0,e.jsxs)("div",{className:"absolute inset-x-0 bottom-0 p-4",children:[(0,e.jsx)(s.Heading,{size:2,html:t?.advertisingTitle||"Buy in Guide",className:(0,c.cn)("font-bold text-white",{"text-black":t?.advertisingTheme==="dark"})}),(0,e.jsx)(s.Text,{html:t?.advertisingSubtitle||"20.000mAh",className:(0,c.cn)("text-sm font-bold text-white",{"text-black":t?.advertisingTheme==="dark"})})]})]})}),i?.items?.filter(o=>o.type.toLowerCase()==="product").slice(0,7)?.map(o=>{const u=o?.variants?.[0],v=`${u?.image?.url||o?.images?.[0]?.url}`,x=o?.title||o?.name,I=o?.description,T=o?.badge||"",A=`/products/${o?.handle}?variant=${(0,c.atobID)(u?.id)}`;return(0,e.jsx)(y,{productImage:v,productName:x,productDesc:I,productBadge:T,listingLink:A},o.id)})]})]})]}):(0,e.jsxs)(e.Fragment,{children:[k===g.SearchStatus.Empty&&(0,e.jsx)(s.Text,{html:t?.noResultText,as:"p",className:"border-b border-[#E4E5E6] pb-6 text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{children:[(0,e.jsx)(s.Text,{html:t?.popularText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"mt-2",children:[(0,e.jsx)(K,{data:t,keywords:P,locale:d}),Array.isArray(t?.popularPages)&&!!t?.popularPages?.length&&(0,e.jsx)(s.Grid,{className:"laptop:gap-4 laptop:mt-4 mt-3 gap-3",children:t?.popularPages?.map(o=>(0,e.jsx)(s.GridItem,{className:"tablet:col-span-6 laptop:p-3 desktop:p-4 laptop:col-span-3 col-span-12 p-2 hover:bg-[#F5F5F7]",children:(0,e.jsx)("a",{href:`${d==="us"?"":d}${t?.moreLink}?q=${o?.popularPage.toLowerCase()}`,className:"line-clamp-1 cursor-pointer text-sm font-bold leading-[1.4]",children:o?.popularPage})},o?.id))})]})]}),(0,e.jsxs)("div",{children:[(0,e.jsx)(s.Text,{html:t?.hotProductsText,className:"text-sm font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2",children:[(0,e.jsx)(s.Link,{asChild:!t?.advertisingLink,href:t?.advertisingLink,children:(0,e.jsxs)("div",{className:"[&_img]:hover:duration-600 relative [&_img]:hover:scale-110 [&_img]:hover:transition-all",children:[(0,e.jsx)(s.Picture,{source:t?.advertisingBgImg?.url,className:"laptop:h-[120px] h-[114px]",imgClassName:"object-cover h-full"}),(0,e.jsxs)("div",{className:"absolute inset-x-0 bottom-0 p-4",children:[(0,e.jsx)(s.Heading,{size:2,html:t?.advertisingTitle||"Buy in Guide",className:"font-bold text-white"}),(0,e.jsx)(s.Text,{html:t?.advertisingSubtitle||"20.000mAh",className:"text-sm font-bold text-white"})]})]})}),t?.hotProducts?.slice(0,7)?.map(o=>{const u=o?.custom_description,v=o?.badge||"",x=`/products/${o?.handle}?variant=${(0,c.atobID)(o?.shopify_id)}`;return(0,e.jsx)(y,{productImage:o?.image,productName:o?.name,productDesc:u,productBadge:v,listingLink:x},o.id)})]})]})]})})]})}),y=({productImage:t,productName:a,productDesc:r,productBadge:i,className:l,listingLink:m})=>(0,e.jsxs)("div",{className:(0,c.cn)("flex shrink-0 gap-4 bg-[#F5F5F7] px-4 py-3 [&_img]:hover:scale-110",l),children:[(0,e.jsx)("div",{className:"shrink-0",children:(0,e.jsx)(s.Picture,{source:t,width:90,height:90,className:"size-[96px]",imgClassName:"object-contain h-full"})}),(0,e.jsxs)("div",{className:"relative",children:[(0,e.jsx)("div",{className:" h-[24px] ",children:i&&(0,e.jsx)(s.Text,{as:"p",html:i,className:"text-brand-0 mb-1 inline-block h-full rounded-full border-[1.6px] border-[#00BEFA] px-[6px] text-sm font-bold !leading-[24px]"})}),(0,e.jsxs)("div",{children:[(0,e.jsx)(s.Link,{href:m,className:"no-underline hover:text-current",children:(0,e.jsx)(s.Text,{className:"lg-desktop:h-[44px] lg-desktop:text-base line-clamp-2 h-[40px] text-sm font-bold leading-[1.4]",html:a})}),r&&(0,e.jsx)(s.Text,{as:"p",html:r,className:"lg-desktop:text-sm mt-1 line-clamp-1 text-xs font-bold leading-[1.4] text-[#6D6D6F]"})]})]})]}),K=({data:t,keywords:a,locale:r})=>(0,e.jsx)("div",{className:"laptop:gap-4 flex flex-wrap gap-3",children:a?.map((i,l)=>(0,e.jsx)("a",{href:`${r==="us"?"":r}${t?.moreLink}?q=${i?.toLowerCase()}`,className:"laptop:p-3 desktop:p-4 cursor-pointer p-2 text-sm font-bold leading-[1.4] hover:bg-[#F5F5F7]",children:i},l))});var H=z;
11
11
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/NavigationSearch/index.tsx"],
4
- "sourcesContent": ["import { Picture, Text, Button, Container, Link, Heading, Grid, GridItem } from '../../components/index.js'\nimport { Search as SearchIcon, Close as CloseIcon } from '../HeaderNavigation/icons/index.js'\nimport { forwardRef, useCallback, useMemo, useState } from 'react'\nimport type { NavigationSearchProps } from './types.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\n\nimport { SearchStatus } from './types.js'\n\nimport { debounce } from 'es-toolkit'\nimport { cn, atobID, highlightSearchWord } from '../../helpers/utils.js'\n\nexport const canSearch = (target: any) => {\n return !(\n target.metafields?.global?.HideSearch ||\n target.metafields?.seo?.hidden ||\n target.metafields?.seo?.setting?.noindex\n )\n}\n\nconst NavigationSearch = forwardRef<HTMLDivElement, NavigationSearchProps>(\n ({ data, onSearch, onClose, searchResult, isSearching, keywords }, ref) => {\n const { locale = 'us', copyWriting } = useAiuiContext()\n\n const [searchValue, setSearchValue] = useState('')\n const [isComposing, setIsComposing] = useState(false)\n\n const debouncedFunction = debounce((value: string) => {\n onSearch(value)\n }, 300)\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter' && !isComposing) {\n onSearch(searchValue)\n }\n },\n [isComposing, searchValue, onSearch]\n )\n\n const searchKeywords = useMemo(() => {\n if (Array.isArray(keywords) && keywords?.length) {\n return keywords.map((keyword: any) => keyword.search_term)\n }\n if (Array.isArray(data?.popularWords) && data?.popularWords?.length) {\n return data?.popularWords.map((word: any) => word.popularWord)\n }\n return []\n }, [keywords, data?.popularWords])\n\n const getLink = useCallback(\n (item: any) => {\n switch (item.type) {\n case 'Product':\n return `/products${item.path}?q=${searchValue.toLowerCase()}`\n case 'Article':\n return `/blogs/${item.blog.handle}/${item.handle.replace('storefront-', '')}?q=${searchValue.toLowerCase()}`\n default:\n break\n }\n },\n [searchValue]\n )\n\n const searchStatus = useMemo(() => {\n if (!searchValue) {\n // \u6CA1\u6709\u641C\u7D22\u503C\n return SearchStatus.Default\n } else if (searchResult?.totalCount) {\n // \u6709\u641C\u7D22\u7ED3\u679C\n return SearchStatus.Predict\n } else if (!isSearching) {\n // \u6CA1\u6709\u641C\u7D22\u7ED3\u679C\n return SearchStatus.Empty\n }\n }, [searchResult?.totalCount, searchValue])\n\n return (\n <Container childClassName=\"!bg-white\" className=\"relative\" ref={ref}>\n <style jsx global>\n {`\n .navigation-search-component input:-webkit-autofill,\n .navigation-search-component input:-webkit-autofill:hover,\n .navigation-search-component input:-webkit-autofill:focus {\n -webkit-box-shadow: 0 0 0 1000px transparent inset !important; /* \u80CC\u666F\u900F\u660E */\n -webkit-text-fill-color: #000 !important;\n transition: background-color 9999s ease-in-out 0s !important;\n caret-color: #000;\n }\n `}\n </style>\n <div className=\"navigation-search-component laptop:h-[52px] desktop:h-[60px] desktop:pt-6 flex items-center justify-between border-b border-b-gray-200 py-4 text-black\">\n <input\n value={searchValue}\n onCompositionStart={() => setIsComposing(true)}\n onCompositionEnd={() => setIsComposing(false)}\n onKeyDown={handleKeyDown}\n onChange={e => {\n setSearchValue(e.target.value)\n if (e.target.value) {\n debouncedFunction(e.target.value)\n }\n }}\n type=\"text\"\n className=\"basis-[200px] bg-white text-sm font-bold leading-[1.4] outline-none focus-visible:!outline-none\"\n placeholder={data?.placeholder}\n />\n <div className=\"flex items-center gap-3\">\n <SearchIcon className=\"size-5 cursor-pointer\" onClick={() => onSearch(searchValue)} />\n <div className=\"h-[20px] w-px bg-[#E4E5E6]\" />\n <CloseIcon className=\"size-5 cursor-pointer\" onClick={onClose} />\n </div>\n </div>\n\n <div className=\"desktop:gap-12 desktop:py-6 flex flex-col gap-6 py-4 text-black\">\n {searchStatus === SearchStatus.Predict ? (\n <>\n <div>\n <div className=\"flex items-center gap-2\">\n <Text html={data?.suggestText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n {searchResult?.items?.length > 6 && (\n <Button\n as=\"a\"\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${searchValue.toLowerCase()}`}\n className=\"!p-0 !text-sm font-bold leading-[1.2]\"\n variant=\"link\"\n >\n {data?.moreText}\n </Button>\n )}\n </div>\n <div className=\"mt-2 flex flex-col\">\n {searchResult?.items\n ?.filter((item: any) => canSearch(item))\n .slice(0, 6)\n ?.map((item: any) => (\n <Link\n className=\"w-full p-4 no-underline hover:bg-[#F5F5F7] hover:text-current\"\n href={getLink(item)}\n key={item.id}\n >\n <Text\n html={highlightSearchWord(item.title, searchValue)}\n className=\"cursor-pointer text-sm font-bold leading-[1.4]\"\n />\n </Link>\n ))}\n </div>\n </div>\n <div>\n <Text html={data?.hotProductsText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2\">\n <Link asChild={!data?.advertisingLink} href={data?.advertisingLink}>\n <div className=\"relative\">\n <Picture\n source={data?.advertisingBgImg?.url}\n className=\"laptop:h-[120px] h-[114px]\"\n imgClassName=\"object-cover h-full\"\n />\n <div className=\"absolute inset-x-0 bottom-0 p-4\">\n <Heading\n size={2}\n html={data?.advertisingTitle || 'Buy in Guide'}\n className={cn('font-bold text-white', {\n 'text-black': data?.advertisingTheme === 'dark',\n })}\n />\n <Text\n html={data?.advertisingSubtitle || '20.000mAh'}\n className={cn('text-sm font-bold text-white', {\n 'text-black': data?.advertisingTheme === 'dark',\n })}\n />\n </div>\n </div>\n </Link>\n {searchResult?.items\n ?.filter((item: any) => item.type.toLowerCase() === 'product')\n .slice(0, 7)\n ?.map((item: any) => {\n const variant = item?.variants?.[0]\n const productImage = `${variant?.image?.url || item?.images?.[0]?.url}`\n const productName = item?.title || item?.name\n const productDesc = item?.description\n const productBadge = item?.badge || ''\n const listingLink = `/products/${item?.handle}?variant=${atobID(variant?.id as string)}`\n return (\n <SearchProduct\n productImage={productImage}\n productName={productName}\n productDesc={productDesc}\n productBadge={productBadge}\n listingLink={listingLink}\n key={item.id}\n />\n )\n })}\n </div>\n </div>\n </>\n ) : (\n <>\n {searchStatus === SearchStatus.Empty && (\n <Text\n html={data?.noResultText}\n as=\"p\"\n className=\"border-b border-[#E4E5E6] pb-6 text-sm font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n )}\n <div>\n <Text html={data?.popularText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"mt-2\">\n <SearchKeyword data={data} keywords={searchKeywords} locale={locale} />\n {Array.isArray(data?.popularPages) && !!data?.popularPages?.length && (\n <Grid className=\"laptop:gap-4 laptop:mt-4 mt-3 gap-3\">\n {data?.popularPages?.map((item: any) => (\n <GridItem\n key={item?.id}\n className=\"tablet:col-span-6 laptop:p-3 desktop:p-4 laptop:col-span-3 col-span-12 p-2 hover:bg-[#F5F5F7]\"\n >\n <a\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${item?.popularPage.toLowerCase()}`}\n className=\"line-clamp-1 cursor-pointer text-sm font-bold leading-[1.4]\"\n >\n {item?.popularPage}\n </a>\n </GridItem>\n ))}\n </Grid>\n )}\n </div>\n </div>\n <div>\n <Text html={data?.hotProductsText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2\">\n <Link asChild={!data?.advertisingLink} href={data?.advertisingLink}>\n <div className=\"[&_img]:hover:duration-600 relative [&_img]:hover:scale-110 [&_img]:hover:transition-all\">\n <Picture\n source={data?.advertisingBgImg?.url}\n className=\"laptop:h-[120px] h-[114px]\"\n imgClassName=\"object-cover h-full\"\n />\n <div className=\"absolute inset-x-0 bottom-0 p-4\">\n <Heading\n size={2}\n html={data?.advertisingTitle || 'Buy in Guide'}\n className=\"font-bold text-white\"\n />\n <Text\n html={data?.advertisingSubtitle || '20.000mAh'}\n className=\"text-sm font-bold text-white\"\n />\n </div>\n </div>\n </Link>\n {data?.hotProducts?.slice(0, 7)?.map((item: any) => {\n const productDesc = item?.custom_description\n const productBadge = item?.badge || ''\n const listingLink = `/products/${item?.handle}?variant=${atobID(item?.shopify_id as string)}`\n return (\n <SearchProduct\n productImage={item?.image}\n productName={item?.name}\n productDesc={productDesc}\n productBadge={productBadge}\n listingLink={listingLink}\n key={item.id}\n />\n )\n })}\n </div>\n </div>\n </>\n )}\n </div>\n </Container>\n )\n }\n)\n\nconst SearchProduct = ({\n productImage,\n productName,\n productDesc,\n productBadge,\n className,\n listingLink,\n}: {\n productImage: string\n productName: string\n productDesc: string\n productBadge: string\n className?: string\n listingLink: string\n}) => {\n return (\n <div className={cn('flex shrink-0 gap-4 bg-[#F5F5F7] px-4 py-3 [&_img]:hover:scale-110', className)}>\n <div className=\"shrink-0\">\n <Picture\n source={productImage}\n width={90}\n height={90}\n className=\"size-[96px]\"\n imgClassName=\"object-contain h-full\"\n />\n </div>\n <div className=\"relative\">\n <div className=\" h-[24px] \">\n {productBadge && (\n <Text\n as=\"p\"\n html={productBadge}\n className=\"text-brand-0 mb-1 inline-block h-full rounded-full border-[1.6px] border-[#00BEFA] px-[6px] text-sm font-bold !leading-[24px]\"\n />\n )}\n </div>\n <div>\n <Link href={listingLink} className=\"no-underline hover:text-current\">\n <Text\n className=\"lg-desktop:h-[44px] lg-desktop:text-base line-clamp-2 h-[40px] text-sm font-bold leading-[1.4]\"\n html={productName}\n />\n </Link>\n {productDesc && (\n <Text\n as=\"p\"\n html={productDesc}\n className=\"lg-desktop:text-sm mt-1 line-clamp-1 text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n )}\n </div>\n </div>\n </div>\n )\n}\n\nconst SearchKeyword = ({ data, keywords, locale }: { data: any; keywords: any[]; locale: string }) => {\n return (\n <div className=\"laptop:gap-4 flex flex-wrap gap-3\">\n {keywords?.map((keyword: any, index) => (\n <a\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${keyword?.toLowerCase()}`}\n key={index}\n className=\"laptop:p-3 desktop:p-4 cursor-pointer p-2 text-sm font-bold leading-[1.4] hover:bg-[#F5F5F7]\"\n >\n {keyword}\n </a>\n ))}\n </div>\n )\n}\n\nexport default NavigationSearch\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["import { Picture, Text, Button, Container, Link, Heading, Grid, GridItem } from '../../components/index.js'\nimport { Search as SearchIcon, Close as CloseIcon } from '../HeaderNavigation/icons/index.js'\nimport { forwardRef, useCallback, useMemo, useState } from 'react'\nimport type { NavigationSearchProps } from './types.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\n\nimport { SearchStatus } from './types.js'\n\nimport { debounce } from 'es-toolkit'\nimport { cn, atobID, highlightSearchWord } from '../../helpers/utils.js'\n\nexport const canSearch = (target: any) => {\n return !(\n target.metafields?.global?.HideSearch ||\n target.metafields?.seo?.hidden ||\n target.metafields?.seo?.setting?.noindex\n )\n}\n\nconst NavigationSearch = forwardRef<HTMLDivElement, NavigationSearchProps>(\n ({ data, onSearch, onClose, searchResult, isSearching, keywords }, ref) => {\n const { locale = 'us', copyWriting } = useAiuiContext()\n\n const [searchValue, setSearchValue] = useState('')\n const [isComposing, setIsComposing] = useState(false)\n\n const debouncedFunction = debounce((value: string) => {\n onSearch(value)\n }, 300)\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent<HTMLInputElement>) => {\n if (e.key === 'Enter' && !isComposing) {\n window.open(`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${searchValue.toLowerCase()}`, '_self')\n }\n },\n [isComposing, searchValue, locale, data?.moreLink]\n )\n\n const searchKeywords = useMemo(() => {\n if (Array.isArray(keywords) && keywords?.length) {\n return keywords.map((keyword: any) => keyword.search_term)\n }\n if (Array.isArray(data?.popularWords) && data?.popularWords?.length) {\n return data?.popularWords.map((word: any) => word.popularWord)\n }\n return []\n }, [keywords, data?.popularWords])\n\n const getLink = useCallback(\n (item: any) => {\n switch (item.type) {\n case 'Product':\n return `/products${item.path}?q=${searchValue.toLowerCase()}`\n case 'Article':\n return `/blogs/${item.blog.handle}/${item.handle.replace('storefront-', '')}?q=${searchValue.toLowerCase()}`\n default:\n break\n }\n },\n [searchValue]\n )\n\n const searchStatus = useMemo(() => {\n if (!searchValue) {\n // \u6CA1\u6709\u641C\u7D22\u503C\n return SearchStatus.Default\n } else if (searchResult?.totalCount) {\n // \u6709\u641C\u7D22\u7ED3\u679C\n return SearchStatus.Predict\n } else if (!isSearching) {\n // \u6CA1\u6709\u641C\u7D22\u7ED3\u679C\n return SearchStatus.Empty\n }\n }, [searchResult?.totalCount, searchValue, isSearching])\n\n return (\n <Container childClassName=\"!bg-white\" className=\"relative\" ref={ref}>\n <style jsx global>\n {`\n .navigation-search-component input:-webkit-autofill,\n .navigation-search-component input:-webkit-autofill:hover,\n .navigation-search-component input:-webkit-autofill:focus {\n -webkit-box-shadow: 0 0 0 1000px transparent inset !important; /* \u80CC\u666F\u900F\u660E */\n -webkit-text-fill-color: #000 !important;\n transition: background-color 9999s ease-in-out 0s !important;\n caret-color: #000;\n }\n `}\n </style>\n <div className=\"navigation-search-component laptop:h-[52px] desktop:h-[60px] desktop:pt-6 flex items-center justify-between border-b border-b-gray-200 py-4 text-black\">\n <input\n value={searchValue}\n onCompositionStart={() => setIsComposing(true)}\n onCompositionEnd={() => setIsComposing(false)}\n onKeyDown={handleKeyDown}\n onChange={e => {\n setSearchValue(e.target.value)\n if (e.target.value) {\n debouncedFunction(e.target.value)\n }\n }}\n type=\"text\"\n className=\"basis-[200px] bg-white text-sm font-bold leading-[1.4] outline-none focus-visible:!outline-none\"\n placeholder={data?.placeholder}\n />\n <div className=\"flex items-center gap-3\">\n <SearchIcon className=\"size-5 cursor-pointer\" onClick={() => onSearch(searchValue)} />\n <div className=\"h-[20px] w-px bg-[#E4E5E6]\" />\n <CloseIcon className=\"size-5 cursor-pointer\" onClick={onClose} />\n </div>\n </div>\n\n <div className=\"desktop:gap-12 desktop:py-6 flex flex-col gap-6 py-4 text-black\">\n {searchStatus === SearchStatus.Predict ? (\n <>\n <div>\n <div className=\"flex items-center gap-2\">\n <Text html={data?.suggestText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n {searchResult?.items?.length > 6 && (\n <Button\n as=\"a\"\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${searchValue.toLowerCase()}`}\n className=\"!p-0 !text-sm font-bold leading-[1.2]\"\n variant=\"link\"\n >\n {data?.moreText}\n </Button>\n )}\n </div>\n <div className=\"mt-2 flex flex-col\">\n {searchResult?.items\n ?.filter((item: any) => canSearch(item))\n .slice(0, 6)\n ?.map((item: any) => (\n <Link\n className=\"w-full p-4 no-underline hover:bg-[#F5F5F7] hover:text-current\"\n href={getLink(item)}\n key={item.id}\n >\n <Text\n html={highlightSearchWord(item.title, searchValue)}\n className=\"cursor-pointer text-sm font-bold leading-[1.4]\"\n />\n </Link>\n ))}\n </div>\n </div>\n <div>\n <Text html={data?.hotProductsText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2\">\n <Link asChild={!data?.advertisingLink} href={data?.advertisingLink}>\n <div className=\"relative\">\n <Picture\n source={data?.advertisingBgImg?.url}\n className=\"laptop:h-[120px] h-[114px]\"\n imgClassName=\"object-cover h-full\"\n />\n <div className=\"absolute inset-x-0 bottom-0 p-4\">\n <Heading\n size={2}\n html={data?.advertisingTitle || 'Buy in Guide'}\n className={cn('font-bold text-white', {\n 'text-black': data?.advertisingTheme === 'dark',\n })}\n />\n <Text\n html={data?.advertisingSubtitle || '20.000mAh'}\n className={cn('text-sm font-bold text-white', {\n 'text-black': data?.advertisingTheme === 'dark',\n })}\n />\n </div>\n </div>\n </Link>\n {searchResult?.items\n ?.filter((item: any) => item.type.toLowerCase() === 'product')\n .slice(0, 7)\n ?.map((item: any) => {\n const variant = item?.variants?.[0]\n const productImage = `${variant?.image?.url || item?.images?.[0]?.url}`\n const productName = item?.title || item?.name\n const productDesc = item?.description\n const productBadge = item?.badge || ''\n const listingLink = `/products/${item?.handle}?variant=${atobID(variant?.id as string)}`\n return (\n <SearchProduct\n productImage={productImage}\n productName={productName}\n productDesc={productDesc}\n productBadge={productBadge}\n listingLink={listingLink}\n key={item.id}\n />\n )\n })}\n </div>\n </div>\n </>\n ) : (\n <>\n {searchStatus === SearchStatus.Empty && (\n <Text\n html={data?.noResultText}\n as=\"p\"\n className=\"border-b border-[#E4E5E6] pb-6 text-sm font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n )}\n <div>\n <Text html={data?.popularText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"mt-2\">\n <SearchKeyword data={data} keywords={searchKeywords} locale={locale} />\n {Array.isArray(data?.popularPages) && !!data?.popularPages?.length && (\n <Grid className=\"laptop:gap-4 laptop:mt-4 mt-3 gap-3\">\n {data?.popularPages?.map((item: any) => (\n <GridItem\n key={item?.id}\n className=\"tablet:col-span-6 laptop:p-3 desktop:p-4 laptop:col-span-3 col-span-12 p-2 hover:bg-[#F5F5F7]\"\n >\n <a\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${item?.popularPage.toLowerCase()}`}\n className=\"line-clamp-1 cursor-pointer text-sm font-bold leading-[1.4]\"\n >\n {item?.popularPage}\n </a>\n </GridItem>\n ))}\n </Grid>\n )}\n </div>\n </div>\n <div>\n <Text html={data?.hotProductsText} className=\"text-sm font-bold leading-[1.4] text-[#6D6D6F]\" />\n <div className=\"tablet:grid-cols-2 laptop:grid-cols-3 desktop:grid-cols-4 tablet:gap-x-3 tablet:gap-y-4 laptop:gap-4 mt-2 grid grid-cols-1 gap-2\">\n <Link asChild={!data?.advertisingLink} href={data?.advertisingLink}>\n <div className=\"[&_img]:hover:duration-600 relative [&_img]:hover:scale-110 [&_img]:hover:transition-all\">\n <Picture\n source={data?.advertisingBgImg?.url}\n className=\"laptop:h-[120px] h-[114px]\"\n imgClassName=\"object-cover h-full\"\n />\n <div className=\"absolute inset-x-0 bottom-0 p-4\">\n <Heading\n size={2}\n html={data?.advertisingTitle || 'Buy in Guide'}\n className=\"font-bold text-white\"\n />\n <Text\n html={data?.advertisingSubtitle || '20.000mAh'}\n className=\"text-sm font-bold text-white\"\n />\n </div>\n </div>\n </Link>\n {data?.hotProducts?.slice(0, 7)?.map((item: any) => {\n const productDesc = item?.custom_description\n const productBadge = item?.badge || ''\n const listingLink = `/products/${item?.handle}?variant=${atobID(item?.shopify_id as string)}`\n return (\n <SearchProduct\n productImage={item?.image}\n productName={item?.name}\n productDesc={productDesc}\n productBadge={productBadge}\n listingLink={listingLink}\n key={item.id}\n />\n )\n })}\n </div>\n </div>\n </>\n )}\n </div>\n </Container>\n )\n }\n)\n\nconst SearchProduct = ({\n productImage,\n productName,\n productDesc,\n productBadge,\n className,\n listingLink,\n}: {\n productImage: string\n productName: string\n productDesc: string\n productBadge: string\n className?: string\n listingLink: string\n}) => {\n return (\n <div className={cn('flex shrink-0 gap-4 bg-[#F5F5F7] px-4 py-3 [&_img]:hover:scale-110', className)}>\n <div className=\"shrink-0\">\n <Picture\n source={productImage}\n width={90}\n height={90}\n className=\"size-[96px]\"\n imgClassName=\"object-contain h-full\"\n />\n </div>\n <div className=\"relative\">\n <div className=\" h-[24px] \">\n {productBadge && (\n <Text\n as=\"p\"\n html={productBadge}\n className=\"text-brand-0 mb-1 inline-block h-full rounded-full border-[1.6px] border-[#00BEFA] px-[6px] text-sm font-bold !leading-[24px]\"\n />\n )}\n </div>\n <div>\n <Link href={listingLink} className=\"no-underline hover:text-current\">\n <Text\n className=\"lg-desktop:h-[44px] lg-desktop:text-base line-clamp-2 h-[40px] text-sm font-bold leading-[1.4]\"\n html={productName}\n />\n </Link>\n {productDesc && (\n <Text\n as=\"p\"\n html={productDesc}\n className=\"lg-desktop:text-sm mt-1 line-clamp-1 text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n )}\n </div>\n </div>\n </div>\n )\n}\n\nconst SearchKeyword = ({ data, keywords, locale }: { data: any; keywords: any[]; locale: string }) => {\n return (\n <div className=\"laptop:gap-4 flex flex-wrap gap-3\">\n {keywords?.map((keyword: any, index) => (\n <a\n href={`${locale === 'us' ? '' : locale}${data?.moreLink}?q=${keyword?.toLowerCase()}`}\n key={index}\n className=\"laptop:p-3 desktop:p-4 cursor-pointer p-2 text-sm font-bold leading-[1.4] hover:bg-[#F5F5F7]\"\n >\n {keyword}\n </a>\n ))}\n </div>\n )\n}\n\nexport default NavigationSearch\n"],
5
+ "mappings": "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",
6
6
  "names": ["NavigationSearch_exports", "__export", "canSearch", "NavigationSearch_default", "__toCommonJS", "import_jsx_runtime", "import_components", "import_icons", "import_react", "import_AiuiProvider", "import_types", "import_es_toolkit", "import_utils", "target", "NavigationSearch", "data", "onSearch", "onClose", "searchResult", "isSearching", "keywords", "ref", "locale", "copyWriting", "searchValue", "setSearchValue", "isComposing", "setIsComposing", "debouncedFunction", "value", "handleKeyDown", "e", "searchKeywords", "keyword", "word", "getLink", "item", "searchStatus", "SearchIcon", "CloseIcon", "variant", "productImage", "productName", "productDesc", "productBadge", "listingLink", "SearchProduct", "SearchKeyword", "className", "index"]
7
7
  }
@@ -0,0 +1,7 @@
1
+ declare function Paginator({ items, // 仅用来计算总数;若数据很大,建议传长度 itemsLength
2
+ itemsLength, // 优先使用 itemsLength(如果你不想把整个数组传进来)
3
+ pageSize, currentPage: controlledPage, // 受控 current
4
+ onPageChange, // 当受控时由父组件接管
5
+ initialPage, // 非受控时的初始页
6
+ className, }: any): import("react/jsx-runtime").JSX.Element;
7
+ export default Paginator;
@@ -0,0 +1,7 @@
1
+ "use strict";var y=Object.defineProperty;var k=Object.getOwnPropertyDescriptor;var N=Object.getOwnPropertyNames;var $=Object.prototype.hasOwnProperty;var v=(e,t)=>{for(var a in t)y(e,a,{get:t[a],enumerable:!0})},w=(e,t,a,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of N(t))!$.call(e,r)&&r!==a&&y(e,r,{get:()=>t[r],enumerable:!(n=k(t,r))||n.enumerable});return e};var F=e=>w(y({},"__esModule",{value:!0}),e);var j={};v(j,{default:()=>D});module.exports=F(j);var o=require("react/jsx-runtime"),d=require("react"),z=require("../../shared/Styles.js");function S(e,t){const a=[];for(let n=e;n<=t;n++)a.push(n);return a}function I(e,t){if(e<=8)return S(1,e);const a=new Set;a.add(1),a.add(2),a.add(e-1),a.add(e),a.add(t-1),a.add(t),a.add(t+1);const n=[...a].filter(s=>s>=1&&s<=e).sort((s,u)=>s-u),r=[];for(let s=0;s<n.length;s++){const u=n[s];r.push(u);const p=n[s+1];p&&p-u>1&&r.push("...")}return r}function A({items:e=[],itemsLength:t,pageSize:a=10,currentPage:n,onPageChange:r,initialPage:s=1,className:u=""}){const p=typeof t=="number"?t:e.length,l=Math.max(1,Math.ceil(p/Math.max(1,a))),[h,M]=(0,d.useState)(()=>Math.min(Math.max(1,s||1),l)),i=typeof n=="number"?n:h,f=(0,d.useCallback)(c=>{if(c===i)return;const m=Math.min(Math.max(1,c),l);typeof r=="function"&&r?.(m),typeof n!="number"&&M(m)},[i,l,r,n]),g=(0,d.useMemo)(()=>I(l,i),[l,i]);return(0,o.jsxs)("nav",{className:`paginator-wrapper flex items-center justify-center gap-2 ${u}`,"aria-label":"\u5206\u9875\u5BFC\u822A",children:[(0,o.jsx)("style",{children:`
2
+ .pg-btn[aria-disabled='true'] {
3
+ opacity: 0.45;
4
+ cursor: not-allowed;
5
+ }
6
+ `}),(0,o.jsx)("button",{"aria-label":"\u4E0A\u4E00\u9875","aria-disabled":i===1,disabled:i===1,className:"mr-1 cursor-pointer text-xl",onClick:()=>f(i-1),children:"\u2039"}),g.map((c,m)=>{if(c==="...")return(0,o.jsx)("span",{className:"pg-ellipsis","aria-hidden":!0,children:"\u2026"},`e-${m}`);const b=c,x=b===i;return(0,o.jsx)("button",{"aria-label":`\u7B2C ${b} \u9875`,onClick:()=>f(b),"aria-current":x?"page":void 0,className:`box-border border-transparent px-3.5 py-2 text-sm font-bold ${x?"bg-black text-[#FFF]":""}`,children:b},b)}),(0,o.jsx)("button",{"aria-label":"\u4E0B\u4E00\u9875","aria-disabled":i===l,disabled:i===l,className:"ml-1 cursor-pointer text-xl",onClick:()=>f(i+1),children:"\u203A"})]})}var D=A;
7
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Paginator/index.tsx"],
4
+ "sourcesContent": ["import { useMemo, useState, useCallback } from 'react'\nimport { withLayout } from '../../shared/Styles.js'\n\nfunction range(start: number, end: number) {\n const out = []\n for (let i = start; i <= end; i++) out.push(i)\n return out\n}\n/**\n * \u751F\u6210\u8981\u663E\u793A\u7684\u9875\u7801\u6570\u7EC4\uFF0C\u8FD4\u56DE\u7684\u6570\u7EC4\u4E2D\u5305\u542B\u6570\u5B57\u9875\u7801\u548C\u5B57\u7B26\u4E32 '...' \u8868\u793A\u7701\u7565\u53F7\n * \u7B97\u6CD5\u7279\u70B9\uFF1A\u4E0D\u521B\u5EFA\u957F\u6570\u7EC4\uFF08\u4E0D\u4F1A\u5BF9 pageCount \u505A map\uFF09\u2014\u2014\u53EA\u5C06\u9700\u8981\u663E\u793A\u7684\u9875\u7801\u52A0\u5165\u96C6\u5408\u5E76\u6392\u5E8F\n */\nfunction getDisplayPages(pageCount: any, currentPage: any) {\n // pageCount \u5F88\u5C0F\u65F6\uFF0C\u76F4\u63A5\u8FD4\u56DE\u5168\u90E8\u9875\u7801\n if (pageCount <= 8) return range(1, pageCount)\n\n const pagesSet = new Set()\n // \u524D\u4E24\u9875\u4E0E\u540E\u4E24\u9875\n pagesSet.add(1)\n pagesSet.add(2)\n pagesSet.add(pageCount - 1)\n pagesSet.add(pageCount)\n // \u5F53\u524D\u9875\u4EE5\u53CA\u5DE6\u53F3\u5404\u4E00\u9875\n pagesSet.add(currentPage - 1)\n pagesSet.add(currentPage)\n pagesSet.add(currentPage + 1)\n\n // \u8FC7\u6EE4\u8D8A\u754C\u5E76\u8F6C\u4E3A\u6392\u5E8F\u6570\u7EC4\n const pages = [...(pagesSet as any)].filter(p => p >= 1 && p <= pageCount).sort((a, b) => a - b)\n // \u6700\u7EC8\u6570\u7EC4\uFF0C\u9047\u5230\u76F8\u90BB\u95F4\u9699 > 1 \u65F6\u63D2\u5165\u7701\u7565\u53F7\n const result = []\n for (let i = 0; i < pages.length; i++) {\n const p = pages[i]\n result.push(p)\n const next = pages[i + 1]\n if (next && next - p > 1) {\n result.push('...')\n }\n }\n return result\n}\n\n// Paginator \u7EC4\u4EF6\nfunction Paginator({\n items = [], // \u4EC5\u7528\u6765\u8BA1\u7B97\u603B\u6570\uFF1B\u82E5\u6570\u636E\u5F88\u5927\uFF0C\u5EFA\u8BAE\u4F20\u957F\u5EA6 itemsLength\n itemsLength, // \u4F18\u5148\u4F7F\u7528 itemsLength\uFF08\u5982\u679C\u4F60\u4E0D\u60F3\u628A\u6574\u4E2A\u6570\u7EC4\u4F20\u8FDB\u6765\uFF09\n pageSize = 10,\n currentPage: controlledPage, // \u53D7\u63A7 current\n onPageChange, // \u5F53\u53D7\u63A7\u65F6\u7531\u7236\u7EC4\u4EF6\u63A5\u7BA1\n initialPage = 1, // \u975E\u53D7\u63A7\u65F6\u7684\u521D\u59CB\u9875\n className = '',\n}: any) {\n const totalItems = typeof itemsLength === 'number' ? itemsLength : items.length\n const pageCount = Math.max(1, Math.ceil(totalItems / Math.max(1, pageSize)))\n\n const [internalPage, setInternalPage] = useState(() => {\n const start = initialPage || 1\n return Math.min(Math.max(1, start), pageCount)\n })\n\n const current = typeof controlledPage === 'number' ? controlledPage : internalPage\n\n const changePage = useCallback(\n (newPage: number) => {\n if (newPage === current) return\n const clamped = Math.min(Math.max(1, newPage), pageCount)\n if (typeof onPageChange === 'function') {\n onPageChange?.(clamped)\n }\n if (typeof controlledPage !== 'number') {\n setInternalPage(clamped)\n }\n },\n [current, pageCount, onPageChange, controlledPage]\n )\n\n const displayPages = useMemo(() => getDisplayPages(pageCount, current), [pageCount, current])\n\n return (\n <nav className={`paginator-wrapper flex items-center justify-center gap-2 ${className}`} aria-label=\"\u5206\u9875\u5BFC\u822A\">\n <style>\n {`\n .pg-btn[aria-disabled='true'] {\n opacity: 0.45;\n cursor: not-allowed;\n }\n `}\n </style>\n {/* \u8DF3\u5230\u9996\u9875 */}\n {/* <button\n className=\"pg-btn\"\n onClick={() => changePage(1)}\n aria-label=\"\u8DF3\u5230\u7B2C\u4E00\u9875\"\n aria-disabled={current === 1}\n disabled={current === 1}>\n \u00AB\n </button> */}\n {/* \u4E0A\u4E00\u9875 */}\n <button\n aria-label=\"\u4E0A\u4E00\u9875\"\n aria-disabled={current === 1}\n disabled={current === 1}\n className=\"mr-1 cursor-pointer text-xl\"\n onClick={() => changePage(current - 1)}\n >\n \u2039\n </button>\n {displayPages.map((p, idx) => {\n if (p === '...') {\n return (\n <span key={`e-${idx}`} className=\"pg-ellipsis\" aria-hidden>\n \u2026\n </span>\n )\n }\n const pageNum = p\n const isActive = pageNum === current\n return (\n <button\n key={pageNum}\n aria-label={`\u7B2C ${pageNum} \u9875`}\n onClick={() => changePage(pageNum)}\n aria-current={isActive ? 'page' : undefined}\n className={`box-border border-transparent px-3.5 py-2 text-sm font-bold ${isActive ? 'bg-black text-[#FFF]' : ''}`}\n >\n {pageNum}\n </button>\n )\n })}\n {/* \u4E0B\u4E00\u9875 */}\n <button\n aria-label=\"\u4E0B\u4E00\u9875\"\n aria-disabled={current === pageCount}\n disabled={current === pageCount}\n className=\"ml-1 cursor-pointer text-xl\"\n onClick={() => changePage(current + 1)}\n >\n \u203A\n </button>\n {/* \u8DF3\u5230\u672B\u9875 */}\n {/* <button\n className=\"pg-btn\"\n onClick={() => changePage(pageCount)}\n aria-label=\"\u8DF3\u5230\u6700\u540E\u4E00\u9875\"\n aria-disabled={current === pageCount}\n disabled={current === pageCount}>\n \u00BB\n </button> */}\n\n {/* \u603B\u6570\u5C55\u793A\uFF08\u53EF\u9009\uFF09 */}\n {/* <div style={{ marginLeft: 8, color: \"rgba(0,0,0,0.55)\" }}>\n \u7B2C {current} / {pageCount} \u9875 \u2022 {totalItems} \u9879\n </div> */}\n </nav>\n )\n}\n\nexport default Paginator\n"],
5
+ "mappings": "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",
6
+ "names": ["Paginator_exports", "__export", "Paginator_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_Styles", "range", "start", "end", "out", "i", "getDisplayPages", "pageCount", "currentPage", "pagesSet", "pages", "p", "a", "b", "result", "next", "Paginator", "items", "itemsLength", "pageSize", "controlledPage", "onPageChange", "initialPage", "className", "totalItems", "internalPage", "setInternalPage", "current", "changePage", "newPage", "clamped", "displayPages", "idx", "pageNum", "isActive"]
7
+ }
@@ -0,0 +1,54 @@
1
+ /// <reference types="react" />
2
+ import type { Media, Theme } from '../../types/props.js';
3
+ export interface ProductItemData {
4
+ /** 产品标签文本 */
5
+ text?: string;
6
+ /** 桌面端媒体(视频或图片) */
7
+ media?: Media;
8
+ /** 移动端媒体(视频或图片) */
9
+ mobMedia?: Media;
10
+ /** 桌面端封面图(仅用于视频) */
11
+ poster?: Media;
12
+ /** 移动端封面图(仅用于视频) */
13
+ mobPoster?: Media;
14
+ }
15
+ /** 标题类型 */
16
+ export type TitleType = 'selling-point' | 'primary' | 'secondary';
17
+ /** 文本对齐方式 */
18
+ export type TextAlign = 'left' | 'center';
19
+ /** 图片宽度比例(2张图片时) */
20
+ export type TwoImageRatio = '2:3' | '1:1';
21
+ /** 图片宽度比例(3张图片时) */
22
+ export type ThreeImageRatio = '1:1:1';
23
+ export interface ProductCompareProps {
24
+ /** 组件数据 */
25
+ data: {
26
+ /** 主标题 */
27
+ title?: string;
28
+ /** 标题类型:selling-point(卖点)、primary(一级标题)、secondary(二级标题) */
29
+ titleType?: TitleType;
30
+ /** 标题图标(仅当 titleType 为 selling-point 时有效) */
31
+ titleIcon?: Media;
32
+ /** 副标题 */
33
+ subtitle?: string;
34
+ /** 副标题下方的图片 */
35
+ subtitleImage?: Media;
36
+ /** 文本对齐方式:left(左对齐)、center(居中) */
37
+ textAlign?: TextAlign;
38
+ /** 产品列表(支持2-3个产品) */
39
+ products?: ProductItemData[];
40
+ /** 2张图片时的宽度比例 */
41
+ twoImageRatio?: TwoImageRatio;
42
+ /** 3张图片时的宽度比例 */
43
+ threeImageRatio?: ThreeImageRatio;
44
+ /** 主题:light 或 dark */
45
+ theme?: Theme;
46
+ };
47
+ /** 外层容器类名 */
48
+ className?: string;
49
+ }
50
+ declare const _default: import("react").ForwardRefExoticComponent<Omit<ProductCompareProps, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
51
+ className?: string | undefined;
52
+ data?: Record<string, any> | undefined;
53
+ } & import("react").RefAttributes<any>>;
54
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";var f=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var R=Object.prototype.hasOwnProperty;var k=(e,t)=>{for(var r in t)f(e,r,{get:t[r],enumerable:!0})},z=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of P(t))!R.call(e,o)&&o!==r&&f(e,o,{get:()=>t[o],enumerable:!(i=M(t,o))||i.enumerable});return e};var C=e=>z(f({},"__esModule",{value:!0}),e);var D={};k(D,{default:()=>j});module.exports=C(D);var a=require("react/jsx-runtime"),c=require("react"),n=require("../../components/index.js"),s=require("../../helpers/index.js"),b=require("../../shared/Styles.js");function L({children:e,offset:t=800}){const[r,i]=(0,c.useState)(!1),o=(0,c.useRef)(null);return(0,c.useEffect)(()=>{const p=new IntersectionObserver(([x])=>x.isIntersecting&&i(!0),{rootMargin:`${t}px`});return o.current&&p.observe(o.current),()=>p.disconnect()},[t]),(0,a.jsx)("div",{ref:o,className:"size-full",children:r&&e})}function h({media:e,poster:t,className:r}){return e?.url?e.mimeType?.startsWith("video/")?(0,a.jsx)("video",{src:e.url,playsInline:!0,autoPlay:!0,muted:!0,loop:!0,poster:t?.url||"",preload:"metadata",disablePictureInPicture:!0,disableRemotePlayback:!0,"webkit-playsinline":"true","x5-video-player-type":"h5","x5-video-player-fullscreen":"false","x5-playsinline":"true",className:r,width:e.width,height:e.height}):(0,a.jsx)("img",{src:e.url,alt:e.alt||"",className:r,width:e.width,height:e.height}):null}function A(e,t,r){return t===2?r==="1:1"?"laptop:flex-[1]":e===0?"laptop:flex-[2]":"laptop:flex-[3]":"laptop:flex-[1]"}function E(e){const{title:t,titleType:r="primary",titleIcon:i,subtitle:o,subtitleImage:p,textAlign:x="left",products:m=[],twoImageRatio:y="2:3",threeImageRatio:H="1:1:1",theme:v="light"}=e.data,u=x==="center"?"text-center":"text-left laptop:text-left",g=()=>r==="secondary"?3:4,w=()=>t?r==="selling-point"&&i?(0,a.jsxs)("div",{className:(0,s.cn)("product-compare-title-wrapper flex items-center gap-[8px]",u==="text-center"?"justify-center":""),children:[(0,a.jsx)("img",{src:i.url,alt:i.alt||"",className:"product-compare-title-icon laptop:size-[32px] size-[24px]"}),(0,a.jsx)(n.Heading,{as:"h2",size:g(),html:t,className:"product-compare-title",style:{color:"#00BEFA"}})]}):(0,a.jsx)(n.Heading,{as:"h2",size:g(),html:t,className:(0,s.cn)("product-compare-title",u)}):null;return(0,a.jsxs)("section",{className:(0,s.cn)("product-compare text-info-primary",e.className,{"aiui-dark":v==="dark"}),children:[w(),o&&(0,a.jsx)(n.Text,{as:"p",size:2,html:o,className:(0,s.cn)("product-compare-subtitle tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px] mt-[4px] text-[14px]",u)}),p&&(0,a.jsx)("div",{className:(0,s.cn)("product-compare-subtitle-image laptop:mt-[24px] mt-[16px]",u==="text-center"?"flex justify-center":""),children:(0,a.jsx)("img",{src:p.url,alt:p.alt||"",className:"max-w-full",width:p.width,height:p.height})}),(0,a.jsx)("div",{className:"product-compare-container tablet:flex-row tablet:flex-nowrap laptop:mt-[32px] mt-[24px] flex w-full flex-col items-stretch gap-[16px]",children:m.map((l,d)=>{const N=d===m.length-1,T=A(d,m.length,y),I=N?"bg-brand-0":"bg-[rgba(0,0,0,0.2)]";return(0,a.jsxs)("div",{className:(0,s.cn)("product-compare-item rounded-box relative shrink overflow-hidden",T,{"order-2 tablet:order-1":d===0&&m.length===2,"order-1 tablet:order-2":d===1&&m.length===2}),children:[l.text&&(0,a.jsx)("div",{className:(0,s.cn)("product-compare-label rounded-btn laptop:left-[28px] laptop:top-[28px] laptop:px-[28px] laptop:pb-[14px] laptop:pt-[15px] desktop:left-[32px] desktop:top-[32px] absolute left-[16px] top-[16px] z-10 px-[20px] pb-[10px] pt-[11px] font-bold text-white",I),children:(0,a.jsx)(n.Heading,{as:"h6",className:"font-bold",size:1,children:l.text})}),(0,a.jsxs)(L,{offset:1500,children:[(0,a.jsx)(h,{media:l.media,poster:l.poster,className:"product-compare-media laptop:block hidden size-full object-cover"}),(0,a.jsx)(h,{media:l.mobMedia?.id?l.mobMedia:l.media,poster:l.mobPoster?.id?l.mobPoster:l.poster,className:"product-compare-media-mobile laptop:hidden block w-full"})]})]},d)})})]})}var j=(0,b.withLayout)(E);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductCompare/index.tsx"],
4
+ "sourcesContent": ["import { useEffect, useRef, useState } from 'react'\nimport { Heading, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/index.js'\nimport type { Media, Theme } from '../../types/props.js'\nimport { withLayout } from '../../shared/Styles.js'\n\nfunction LazyMedia({ children, offset = 800 }: { children: React.ReactNode; offset?: number }) {\n const [loaded, setLoaded] = useState(false)\n const ref = useRef<HTMLDivElement>(null)\n\n useEffect(() => {\n const observer = new IntersectionObserver(([entry]) => entry.isIntersecting && setLoaded(true), {\n rootMargin: `${offset}px`,\n })\n ref.current && observer.observe(ref.current)\n return () => observer.disconnect()\n }, [offset])\n\n return (\n <div ref={ref} className=\"size-full\">\n {loaded && children}\n </div>\n )\n}\n\nfunction MediaElement({ media, poster, className }: { media?: Media; poster?: Media; className?: string }) {\n if (!media?.url) return null\n\n const isVideo = media.mimeType?.startsWith('video/')\n\n if (isVideo) {\n return (\n <video\n src={media.url}\n playsInline\n autoPlay\n muted\n loop\n poster={poster?.url || ''}\n preload=\"metadata\"\n disablePictureInPicture\n disableRemotePlayback\n webkit-playsinline=\"true\"\n x5-video-player-type=\"h5\"\n x5-video-player-fullscreen=\"false\"\n x5-playsinline=\"true\"\n className={className}\n width={media.width}\n height={media.height}\n />\n )\n }\n\n return <img src={media.url} alt={media.alt || ''} className={className} width={media.width} height={media.height} />\n}\n\nexport interface ProductItemData {\n /** \u4EA7\u54C1\u6807\u7B7E\u6587\u672C */\n text?: string\n /** \u684C\u9762\u7AEF\u5A92\u4F53\uFF08\u89C6\u9891\u6216\u56FE\u7247\uFF09 */\n media?: Media\n /** \u79FB\u52A8\u7AEF\u5A92\u4F53\uFF08\u89C6\u9891\u6216\u56FE\u7247\uFF09 */\n mobMedia?: Media\n /** \u684C\u9762\u7AEF\u5C01\u9762\u56FE\uFF08\u4EC5\u7528\u4E8E\u89C6\u9891\uFF09 */\n poster?: Media\n /** \u79FB\u52A8\u7AEF\u5C01\u9762\u56FE\uFF08\u4EC5\u7528\u4E8E\u89C6\u9891\uFF09 */\n mobPoster?: Media\n}\n\n/** \u6807\u9898\u7C7B\u578B */\nexport type TitleType = 'selling-point' | 'primary' | 'secondary'\n\n/** \u6587\u672C\u5BF9\u9F50\u65B9\u5F0F */\nexport type TextAlign = 'left' | 'center'\n\n/** \u56FE\u7247\u5BBD\u5EA6\u6BD4\u4F8B\uFF082\u5F20\u56FE\u7247\u65F6\uFF09 */\nexport type TwoImageRatio = '2:3' | '1:1'\n\n/** \u56FE\u7247\u5BBD\u5EA6\u6BD4\u4F8B\uFF083\u5F20\u56FE\u7247\u65F6\uFF09 */\nexport type ThreeImageRatio = '1:1:1'\n\nexport interface ProductCompareProps {\n /** \u7EC4\u4EF6\u6570\u636E */\n data: {\n /** \u4E3B\u6807\u9898 */\n title?: string\n /** \u6807\u9898\u7C7B\u578B\uFF1Aselling-point\uFF08\u5356\u70B9\uFF09\u3001primary\uFF08\u4E00\u7EA7\u6807\u9898\uFF09\u3001secondary\uFF08\u4E8C\u7EA7\u6807\u9898\uFF09 */\n titleType?: TitleType\n /** \u6807\u9898\u56FE\u6807\uFF08\u4EC5\u5F53 titleType \u4E3A selling-point \u65F6\u6709\u6548\uFF09 */\n titleIcon?: Media\n /** \u526F\u6807\u9898 */\n subtitle?: string\n /** \u526F\u6807\u9898\u4E0B\u65B9\u7684\u56FE\u7247 */\n subtitleImage?: Media\n /** \u6587\u672C\u5BF9\u9F50\u65B9\u5F0F\uFF1Aleft\uFF08\u5DE6\u5BF9\u9F50\uFF09\u3001center\uFF08\u5C45\u4E2D\uFF09 */\n textAlign?: TextAlign\n /** \u4EA7\u54C1\u5217\u8868\uFF08\u652F\u63012-3\u4E2A\u4EA7\u54C1\uFF09 */\n products?: ProductItemData[]\n /** 2\u5F20\u56FE\u7247\u65F6\u7684\u5BBD\u5EA6\u6BD4\u4F8B */\n twoImageRatio?: TwoImageRatio\n /** 3\u5F20\u56FE\u7247\u65F6\u7684\u5BBD\u5EA6\u6BD4\u4F8B */\n threeImageRatio?: ThreeImageRatio\n /** \u4E3B\u9898\uFF1Alight \u6216 dark */\n theme?: Theme\n }\n /** \u5916\u5C42\u5BB9\u5668\u7C7B\u540D */\n className?: string\n}\n\n/**\n * \u6839\u636E\u4EA7\u54C1\u6570\u91CF\u548C\u6BD4\u4F8B\u83B7\u53D6\u5E03\u5C40\u7C7B\u540D\n */\nfunction getProductLayoutClasses(index: number, totalProducts: number, twoImageRatio?: TwoImageRatio): string {\n if (totalProducts === 2) {\n if (twoImageRatio === '1:1') {\n return 'laptop:flex-[1]'\n }\n // \u9ED8\u8BA4 2:3 \u6BD4\u4F8B\n return index === 0 ? 'laptop:flex-[2]' : 'laptop:flex-[3]'\n }\n\n if (totalProducts === 3) {\n // 1:1:1 \u6BD4\u4F8B\n return 'laptop:flex-[1]'\n }\n\n return 'laptop:flex-[1]'\n}\n\nfunction ProductCompare(props: ProductCompareProps) {\n const {\n title,\n titleType = 'primary',\n titleIcon,\n subtitle,\n subtitleImage,\n textAlign = 'left',\n products = [],\n twoImageRatio = '2:3',\n threeImageRatio = '1:1:1',\n theme = 'light',\n } = props.data\n\n // \u6587\u672C\u5BF9\u9F50\u7C7B\u540D\n const alignClasses = textAlign === 'center' ? 'text-center' : 'text-left laptop:text-left'\n\n // \u6839\u636E\u6807\u9898\u7C7B\u578B\u786E\u5B9A Heading size \u548C\u6837\u5F0F\n const getTitleSize = () => {\n if (titleType === 'secondary') return 3\n return 4\n }\n\n // \u6E32\u67D3\u6807\u9898\n const renderTitle = () => {\n if (!title) return null\n\n // \u5356\u70B9\u6807\u9898\uFF08\u5305\u542B\u56FE\u6807\uFF09\n if (titleType === 'selling-point' && titleIcon) {\n return (\n <div\n className={cn(\n 'product-compare-title-wrapper flex items-center gap-[8px]',\n alignClasses === 'text-center' ? 'justify-center' : ''\n )}\n >\n <img\n src={titleIcon.url}\n alt={titleIcon.alt || ''}\n className=\"product-compare-title-icon laptop:size-[32px] size-[24px]\"\n />\n <Heading\n as=\"h2\"\n size={getTitleSize()}\n html={title}\n className=\"product-compare-title\"\n style={{ color: '#00BEFA' }}\n />\n </div>\n )\n }\n\n // \u666E\u901A\u6807\u9898\n return <Heading as=\"h2\" size={getTitleSize()} html={title} className={cn('product-compare-title', alignClasses)} />\n }\n\n return (\n <section\n className={cn('product-compare text-info-primary', props.className, {\n 'aiui-dark': theme === 'dark',\n })}\n >\n {/* \u6807\u9898\u533A\u57DF */}\n {renderTitle()}\n\n {/* \u526F\u6807\u9898 */}\n {subtitle && (\n <Text\n as=\"p\"\n size={2}\n html={subtitle}\n className={cn(\n 'product-compare-subtitle tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px] mt-[4px] text-[14px]',\n alignClasses\n )}\n />\n )}\n\n {/* \u526F\u6807\u9898\u4E0B\u65B9\u56FE\u7247 */}\n {subtitleImage && (\n <div\n className={cn(\n 'product-compare-subtitle-image laptop:mt-[24px] mt-[16px]',\n alignClasses === 'text-center' ? 'flex justify-center' : ''\n )}\n >\n <img\n src={subtitleImage.url}\n alt={subtitleImage.alt || ''}\n className=\"max-w-full\"\n width={subtitleImage.width}\n height={subtitleImage.height}\n />\n </div>\n )}\n\n {/* \u4EA7\u54C1\u5BF9\u6BD4\u5361\u7247\u5BB9\u5668 */}\n <div className=\"product-compare-container tablet:flex-row tablet:flex-nowrap laptop:mt-[32px] mt-[24px] flex w-full flex-col items-stretch gap-[16px]\">\n {products.map((product, index) => {\n const isLastProduct = index === products.length - 1\n const layoutClasses = getProductLayoutClasses(index, products.length, twoImageRatio)\n\n // \u6807\u7B7E\u6837\u5F0F\uFF1A\u6700\u540E\u4E00\u4E2A\u4EA7\u54C1\u7528 bg-brand-0\uFF0C\u5176\u4ED6\u7528 rgba(0,0,0,0.2)\n const labelBgClass = isLastProduct ? 'bg-brand-0' : 'bg-[rgba(0,0,0,0.2)]'\n\n return (\n <div\n key={index}\n className={cn('product-compare-item rounded-box relative shrink overflow-hidden', layoutClasses, {\n 'order-2 tablet:order-1': index === 0 && products.length === 2,\n 'order-1 tablet:order-2': index === 1 && products.length === 2,\n })}\n >\n {/* \u4EA7\u54C1\u6807\u7B7E */}\n {product.text && (\n <div\n className={cn(\n 'product-compare-label rounded-btn laptop:left-[28px] laptop:top-[28px] laptop:px-[28px] laptop:pb-[14px] laptop:pt-[15px] desktop:left-[32px] desktop:top-[32px] absolute left-[16px] top-[16px] z-10 px-[20px] pb-[10px] pt-[11px] font-bold text-white',\n labelBgClass\n )}\n >\n <Heading as=\"h6\" className=\"font-bold\" size={1}>\n {product.text}\n </Heading>\n </div>\n )}\n\n {/* \u4EA7\u54C1\u5A92\u4F53 */}\n <LazyMedia offset={1500}>\n <MediaElement\n media={product.media}\n poster={product.poster}\n className=\"product-compare-media laptop:block hidden size-full object-cover\"\n />\n <MediaElement\n media={product.mobMedia?.id ? product.mobMedia : product.media}\n poster={product.mobPoster?.id ? product.mobPoster : product.poster}\n className=\"product-compare-media-mobile laptop:hidden block w-full\"\n />\n </LazyMedia>\n </div>\n )\n })}\n </div>\n </section>\n )\n}\n\nexport default withLayout(ProductCompare)\n"],
5
+ "mappings": "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",
6
+ "names": ["ProductCompare_exports", "__export", "ProductCompare_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_helpers", "import_Styles", "LazyMedia", "children", "offset", "loaded", "setLoaded", "ref", "observer", "entry", "MediaElement", "media", "poster", "className", "getProductLayoutClasses", "index", "totalProducts", "twoImageRatio", "ProductCompare", "props", "title", "titleType", "titleIcon", "subtitle", "subtitleImage", "textAlign", "products", "threeImageRatio", "theme", "alignClasses", "getTitleSize", "renderTitle", "product", "isLastProduct", "layoutClasses", "labelBgClass"]
7
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { ProductHeroProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<ProductHeroProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
+ className?: string | undefined;
5
+ data?: Record<string, any> | undefined;
6
+ }, "ref"> & React.RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";"use client";var k=Object.create;var c=Object.defineProperty;var g=Object.getOwnPropertyDescriptor;var H=Object.getOwnPropertyNames;var v=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var w=(t,e)=>{for(var r in e)c(t,r,{get:e[r],enumerable:!0})},u=(t,e,r,l)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of H(e))!P.call(t,s)&&s!==r&&c(t,s,{get:()=>e[s],enumerable:!(l=g(e,s))||l.enumerable});return t};var y=(t,e,r)=>(r=t!=null?k(v(t)):{},u(e||!t||!t.__esModule?c(r,"default",{value:t,enumerable:!0}):r,t)),T=t=>u(c({},"__esModule",{value:!0}),t);var R={};w(R,{default:()=>E});module.exports=T(R);var o=require("react/jsx-runtime"),p=y(require("react")),a=require("../../components/index.js"),d=require("../../helpers/utils.js"),h=require("../../shared/Styles.js"),f=require("../../hooks/useExposure.js");const L="image",D="product_hero",n=p.default.forwardRef(({data:t,className:e},r)=>{const{title:l,subtitle:s,ctaText:m,poster:b,mobPoster:x,ctaLink:_,theme:N="light"}=t,i=(0,p.useRef)(null);return(0,f.useExposure)(i,{componentType:L,componentName:D,componentTitle:l,componentDescription:s}),(0,p.useImperativeHandle)(r,()=>i.current),(0,o.jsxs)("section",{ref:i,"data-ui-component-id":"ProductHero",className:(0,d.cn)("product-hero text-info-primary tablet:flex-row tablet:gap-[16px] lg-desktop:gap-[64px] flex w-full flex-col items-center justify-between gap-[32px]",{"aiui-dark":N==="dark"},e),children:[(0,o.jsxs)("div",{className:"product-hero__content tablet:basis-[42%] laptop:basis-[36%] flex w-full flex-col items-start gap-[24px]",children:[(0,o.jsxs)("div",{className:"product-hero__text",children:[(0,o.jsx)(a.Heading,{as:"h3",size:4,html:l,className:"product-hero__title"}),(0,o.jsx)(a.Heading,{as:"h4",size:2,html:s,className:"product-hero__subtitle product-hero__subtitle--desktop laptop:mt-[12px] laptop:block desktop:mt-[16px] mt-[4px] hidden"}),(0,o.jsx)(a.Text,{as:"p",size:2,html:s,className:"product-hero__subtitle product-hero__subtitle--mobile laptop:mt-[12px] laptop:hidden desktop:mt-[16px] mt-[4px] block"})]}),m&&(0,o.jsx)("a",{href:_,className:"product-hero__cta-link",children:(0,o.jsx)(a.Button,{className:"product-hero__cta-button w-fit",children:m})})]}),(0,o.jsx)(a.Picture,{className:"product-hero__image tablet:aspect-[824/640] tablet:basis-[58%] laptop:basis-[64%] rounded-box aspect-[358/360] shrink",source:`${b?.url}, ${x?.url} 768`,imgClassName:"h-full object-cover"})]})});n.displayName="ProductHero";var E=(0,h.withLayout)(n);
2
+ //# sourceMappingURL=ProductHero.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductHero/ProductHero.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useRef, useImperativeHandle } from 'react'\nimport { Heading, Button, Picture, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport type { ProductHeroProps } from './types.js'\n\nconst componentType = 'image'\nconst componentName = 'product_hero'\n\nconst ProductHero = React.forwardRef<HTMLDivElement, ProductHeroProps>(({ data, className }, ref) => {\n const { title, subtitle, ctaText, poster, mobPoster, ctaLink, theme = 'light' } = data\n\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n componentDescription: subtitle,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n return (\n <section\n ref={boxRef}\n data-ui-component-id=\"ProductHero\"\n className={cn(\n 'product-hero text-info-primary tablet:flex-row tablet:gap-[16px] lg-desktop:gap-[64px] flex w-full flex-col items-center justify-between gap-[32px]',\n {\n 'aiui-dark': theme === 'dark',\n },\n className\n )}\n >\n <div className=\"product-hero__content tablet:basis-[42%] laptop:basis-[36%] flex w-full flex-col items-start gap-[24px]\">\n <div className=\"product-hero__text\">\n <Heading as={'h3'} size={4} html={title} className=\"product-hero__title\" />\n <Heading\n as={'h4'}\n size={2}\n html={subtitle}\n className=\"product-hero__subtitle product-hero__subtitle--desktop laptop:mt-[12px] laptop:block desktop:mt-[16px] mt-[4px] hidden\"\n />\n <Text\n as={'p'}\n size={2}\n html={subtitle}\n className=\"product-hero__subtitle product-hero__subtitle--mobile laptop:mt-[12px] laptop:hidden desktop:mt-[16px] mt-[4px] block\"\n />\n </div>\n {ctaText && (\n <a href={ctaLink} className=\"product-hero__cta-link\">\n <Button className=\"product-hero__cta-button w-fit\">{ctaText}</Button>\n </a>\n )}\n </div>\n <Picture\n className=\"product-hero__image tablet:aspect-[824/640] tablet:basis-[58%] laptop:basis-[64%] rounded-box aspect-[358/360] shrink\"\n source={`${poster?.url}, ${mobPoster?.url} 768`}\n imgClassName=\"h-full object-cover\"\n />\n </section>\n )\n})\n\nProductHero.displayName = 'ProductHero'\n\nexport default withLayout(ProductHero)\n"],
5
+ "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAsCQ,IAAAI,EAAA,6BArCRC,EAAmD,oBACnDC,EAA+C,qCAC/CC,EAAmB,kCACnBC,EAA2B,kCAC3BC,EAA4B,sCAG5B,MAAMC,EAAgB,QAChBC,EAAgB,eAEhBC,EAAc,EAAAC,QAAM,WAA6C,CAAC,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAGC,IAAQ,CACnG,KAAM,CAAE,MAAAC,EAAO,SAAAC,EAAU,QAAAC,EAAS,OAAAC,EAAQ,UAAAC,EAAW,QAAAC,EAAS,MAAAC,EAAQ,OAAQ,EAAIT,EAE5EU,KAAS,UAAuB,IAAI,EAE1C,wBAAYA,EAAQ,CAClB,cAAAd,EACA,cAAAC,EACA,eAAgBM,EAChB,qBAAsBC,CACxB,CAAC,KAED,uBAAoBF,EAAK,IAAMQ,EAAO,OAAyB,KAG7D,QAAC,WACC,IAAKA,EACL,uBAAqB,cACrB,aAAW,MACT,sJACA,CACE,YAAaD,IAAU,MACzB,EACAR,CACF,EAEA,qBAAC,OAAI,UAAU,0GACb,qBAAC,OAAI,UAAU,qBACb,oBAAC,WAAQ,GAAI,KAAM,KAAM,EAAG,KAAME,EAAO,UAAU,sBAAsB,KACzE,OAAC,WACC,GAAI,KACJ,KAAM,EACN,KAAMC,EACN,UAAU,yHACZ,KACA,OAAC,QACC,GAAI,IACJ,KAAM,EACN,KAAMA,EACN,UAAU,wHACZ,GACF,EACCC,MACC,OAAC,KAAE,KAAMG,EAAS,UAAU,yBAC1B,mBAAC,UAAO,UAAU,iCAAkC,SAAAH,EAAQ,EAC9D,GAEJ,KACA,OAAC,WACC,UAAU,wHACV,OAAQ,GAAGC,GAAQ,GAAG,KAAKC,GAAW,GAAG,OACzC,aAAa,sBACf,GACF,CAEJ,CAAC,EAEDT,EAAY,YAAc,cAE1B,IAAOV,KAAQ,cAAWU,CAAW",
6
+ "names": ["ProductHero_exports", "__export", "ProductHero_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_utils", "import_Styles", "import_useExposure", "componentType", "componentName", "ProductHero", "React", "data", "className", "ref", "title", "subtitle", "ctaText", "poster", "mobPoster", "ctaLink", "theme", "boxRef"]
7
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './ProductHero.js';
2
+ export type { ProductHeroProps } from './types.js';
@@ -0,0 +1,2 @@
1
+ "use strict";var m=Object.create;var p=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var x=Object.getOwnPropertyNames;var y=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var a=(o,r)=>{for(var e in r)p(o,e,{get:r[e],enumerable:!0})},s=(o,r,e,f)=>{if(r&&typeof r=="object"||typeof r=="function")for(let t of x(r))!P.call(o,t)&&t!==e&&p(o,t,{get:()=>r[t],enumerable:!(f=u(r,t))||f.enumerable});return o};var c=(o,r,e)=>(e=o!=null?m(y(o)):{},s(r||!o||!o.__esModule?p(e,"default",{value:o,enumerable:!0}):e,o)),j=o=>s(p({},"__esModule",{value:!0}),o);var l={};a(l,{default:()=>d.default});module.exports=j(l);var d=c(require("./ProductHero.js"));
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductHero/index.ts"],
4
+ "sourcesContent": ["export { default } from './ProductHero.js'\nexport type { ProductHeroProps } from './types.js'\n"],
5
+ "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wCAAAE,EAAAF,GAAA,IAAAG,EAAwB",
6
+ "names": ["ProductHero_exports", "__export", "__toCommonJS", "import_ProductHero"]
7
+ }
@@ -0,0 +1,23 @@
1
+ import type { Media, Theme } from '../../types/props';
2
+ export interface ProductHeroProps {
3
+ data: {
4
+ /** 主标题 */
5
+ title: string;
6
+ /** 副标题 */
7
+ subtitle: string;
8
+ /** CTA 按钮文本 */
9
+ ctaText: string;
10
+ /** CTA 按钮链接 */
11
+ ctaLink: string;
12
+ /** 桌面端图片 URL */
13
+ poster: Media;
14
+ /** 移动端图片 URL */
15
+ mobPoster: Media;
16
+ /** 3D 模型源(可选,暂未使用) */
17
+ modelSrc?: string;
18
+ /** 主题,默认 light */
19
+ theme?: Theme;
20
+ };
21
+ /** 自定义类名 */
22
+ className?: string;
23
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var s=Object.defineProperty;var a=Object.getOwnPropertyDescriptor;var m=Object.getOwnPropertyNames;var n=Object.prototype.hasOwnProperty;var p=(e,t,o,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of m(t))!n.call(e,r)&&r!==o&&s(e,r,{get:()=>t[r],enumerable:!(i=a(t,r))||i.enumerable});return e};var c=e=>p(s({},"__esModule",{value:!0}),e);var d={};module.exports=c(d);
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductHero/types.ts"],
4
+ "sourcesContent": ["import type { Media, Theme } from '../../types/props'\n\nexport interface ProductHeroProps {\n data: {\n /** \u4E3B\u6807\u9898 */\n title: string\n /** \u526F\u6807\u9898 */\n subtitle: string\n /** CTA \u6309\u94AE\u6587\u672C */\n ctaText: string\n /** CTA \u6309\u94AE\u94FE\u63A5 */\n ctaLink: string\n /** \u684C\u9762\u7AEF\u56FE\u7247 URL */\n poster: Media\n /** \u79FB\u52A8\u7AEF\u56FE\u7247 URL */\n mobPoster: Media\n /** 3D \u6A21\u578B\u6E90\uFF08\u53EF\u9009\uFF0C\u6682\u672A\u4F7F\u7528\uFF09 */\n modelSrc?: string\n /** \u4E3B\u9898\uFF0C\u9ED8\u8BA4 light */\n theme?: Theme\n }\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["types_exports", "__toCommonJS"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import type { ProductNavProps } from './types.js';
3
+ declare const _default: import("react").ForwardRefExoticComponent<Omit<Omit<ProductNavProps & import("react").RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
+ className?: string | undefined;
5
+ data?: Record<string, any> | undefined;
6
+ }, "ref"> & import("react").RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use strict";"use client";var P=Object.create;var m=Object.defineProperty;var C=Object.getOwnPropertyDescriptor;var S=Object.getOwnPropertyNames;var H=Object.getPrototypeOf,M=Object.prototype.hasOwnProperty;var D=(o,a)=>{for(var r in a)m(o,r,{get:a[r],enumerable:!0})},k=(o,a,r,x)=>{if(a&&typeof a=="object"||typeof a=="function")for(let s of S(a))!M.call(o,s)&&s!==r&&m(o,s,{get:()=>a[s],enumerable:!(x=C(a,s))||x.enumerable});return o};var R=(o,a,r)=>(r=o!=null?P(H(o)):{},k(a||!o||!o.__esModule?m(r,"default",{value:o,enumerable:!0}):r,o)),z=o=>k(m({},"__esModule",{value:!0}),o);var I={};D(I,{default:()=>G});module.exports=z(I);var e=require("react/jsx-runtime"),n=require("react"),u=require("../../helpers/utils.js"),w=require("../../shared/Styles.js"),d=require("../../components/index.js"),b=require("../../hooks/useExposure.js"),f=R(require("@radix-ui/react-popover"));const B="navigation",j="product_nav",V=o=>(0,e.jsx)("svg",{width:"20",height:"20",viewBox:"0 0 20 20",fill:"none",xmlns:"http://www.w3.org/2000/svg",...o,children:(0,e.jsx)("path",{d:"M5 7.5L10 12.5L15 7.5",stroke:"currentColor",strokeWidth:"1.66667",strokeLinecap:"round",strokeLinejoin:"round"})}),g=(0,n.forwardRef)(({className:o="",data:a,id:r},x)=>{const{tabLinks:s=[],anchorList:y=[],textLink:l,buyBtn:c,theme:N="light"}=a||{},[E,T]=(0,n.useState)(""),v=(0,n.useRef)(null);(0,n.useImperativeHandle)(x,()=>v.current),(0,b.useExposure)(v,{componentType:B,componentName:j}),(0,n.useEffect)(()=>{const t=()=>{T(window.location.hash)};return t(),window.addEventListener("hashchange",t),()=>{window.removeEventListener("hashchange",t)}},[]),(0,n.useEffect)(()=>{const t=document.querySelectorAll(".header"),p=[];return t.forEach(h=>{const i=h;p.push({element:i,originalPosition:i.style.position||getComputedStyle(i).position}),i.style.position="relative"}),()=>{p.forEach(({element:h,originalPosition:i})=>{h.style.position=i==="static"?"":i})}},[]);const L=t=>{t.target.scrollIntoView({behavior:"smooth",block:"nearest",inline:"center"})};return(0,e.jsxs)("div",{id:r,ref:v,className:(0,u.cn)("product-nav text-info-primary bg-container-primary tablet:px-8 laptop:px-16 desktop:px-16 lg-desktop:px-[calc(50%-832px)] !sticky top-0 !z-[51] flex w-full justify-between overflow-hidden px-4 py-0",{"aiui-dark":N==="dark"},o),children:[(0,e.jsxs)("div",{className:"product-nav-main desktop:flex-row desktop:gap-[48px] flex w-full flex-col justify-start",children:[(0,e.jsxs)("div",{className:"product-nav-header laptop:w-full desktop:w-fit desktop:gap-[24px] desktop:py-0 flex w-full flex-row items-center justify-between gap-[16px] pt-[14px]",children:[(0,e.jsxs)("div",{className:"product-nav-tabs flex flex-row items-center gap-[8px]",children:[s.map((t,p)=>(0,e.jsxs)("div",{className:"product-nav-tab-item flex items-center gap-[8px]",children:[(0,e.jsx)("a",{href:t.link,className:(0,u.cn)("product-nav-tab-link hover:text-brand-color text-nowrap text-[14px] font-bold tracking-[-0.04em]",{"text-[#6D6D6F]":p!==0,"hidden desktop:block":p===1}),children:(0,e.jsx)("span",{children:t.label})}),p!==s.length-1&&(0,e.jsx)("div",{className:"product-nav-tab-divider desktop:inline-block hidden h-[14px] w-px bg-[#E4E5E6]"})]},t.link||p)),s.length>1&&(0,e.jsxs)(f.Root,{children:[(0,e.jsx)(f.Trigger,{asChild:!0,children:(0,e.jsx)("button",{className:"product-nav-dropdown-trigger desktop:hidden -ml-1 inline-block","aria-label":"More products",children:(0,e.jsx)(V,{className:"text-[#1D1D1F]"})})}),(0,e.jsx)(f.Content,{className:"product-nav-dropdown-content rounded-[6px] border border-[#E4E5E6] bg-white p-[6px] px-[8px] py-[4px]",style:{boxShadow:"0px 4px 8px 0px rgba(0,0,0,0.12)"},side:"bottom",align:"end",alignOffset:10,sideOffset:10,children:s.slice(1).map(t=>(0,e.jsx)("a",{href:t.link,className:"product-nav-dropdown-link hover:text-brand-color text-nowrap",children:(0,e.jsx)("span",{children:t.label})},t.link))})]})]}),(0,e.jsxs)("div",{className:"product-nav-mobile-actions desktop:hidden desktop:gap-[24px] flex items-center gap-[16px]",children:[l?.link&&(0,e.jsx)("a",{href:l.link,target:l.target||"_self",className:"product-nav-text-link hover:text-brand-color cursor-pointer",children:(0,e.jsx)(d.Text,{size:2,className:"text-nowrap",children:l.text})}),c?.link&&(0,e.jsx)(d.Button,{as:"a",href:c.link,size:"sm",className:"product-nav-buy-button text-nowrap",children:c.text})]})]}),(0,e.jsx)("div",{className:"product-nav-anchors hide-scrollbar laptop:w-fit desktop:gap-[24px] desktop:py-[8px] flex w-full items-center gap-[16px] overflow-x-scroll py-[12px]",children:y.map(t=>(0,e.jsxs)("a",{href:`#${t.id}`,className:"product-nav-anchor-link",onClick:p=>{L(p)},children:[(0,e.jsx)(d.Text,{size:2,className:"product-nav-anchor-text text-nowrap",children:t.label}),(0,e.jsx)("div",{className:(0,u.cn)("product-nav-anchor-indicator laptop:top-[12px] desktop:top-[10px] relative top-[12px] h-[4px] w-full bg-transparent",{"bg-brand-color":E===`#${t.id}`})})]},t.id))})]}),(0,e.jsxs)("div",{className:"product-nav-desktop-actions desktop:flex desktop:gap-[24px] desktop:py-[8px] hidden items-center gap-[16px]",children:[l?.link&&(0,e.jsx)("a",{href:l.link,target:l.target||"_self",className:"product-nav-text-link hover:text-brand-color cursor-pointer text-black",children:(0,e.jsx)(d.Text,{size:2,className:"text-nowrap",children:l.text})}),c?.link&&(0,e.jsx)(d.Button,{as:"a",href:c.link,size:"sm",className:"product-nav-buy-button text-nowrap",children:c.text})]})]})});g.displayName="ProductNav";var G=(0,w.withLayout)(g);
2
+ //# sourceMappingURL=ProductNav.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductNav/ProductNav.tsx"],
4
+ "sourcesContent": ["'use client'\nimport { useState, useEffect, forwardRef, useImperativeHandle, useRef } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Button, Text } from '../../components/index.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport type { ProductNavProps } from './types.js'\nimport * as Popover from '@radix-ui/react-popover'\n\nconst componentType = 'navigation'\nconst componentName = 'product_nav'\n\nconst ChevronDownIcon = (props: React.SVGProps<SVGSVGElement>) => {\n return (\n <svg width=\"20\" height=\"20\" viewBox=\"0 0 20 20\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\" {...props}>\n <path\n d=\"M5 7.5L10 12.5L15 7.5\"\n stroke=\"currentColor\"\n strokeWidth=\"1.66667\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\n\nconst ProductNav = forwardRef<HTMLDivElement, ProductNavProps>(({ className = '', data, id }, ref) => {\n const { tabLinks = [], anchorList = [], textLink, buyBtn, theme = 'light' } = data || {}\n const [hash, setHash] = useState('')\n const innerRef = useRef<HTMLDivElement>(null)\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType,\n componentName,\n })\n\n // \u76D1\u542Chash\u53D8\u5316\n useEffect(() => {\n const handleHashChange = () => {\n setHash(window.location.hash)\n }\n handleHashChange()\n window.addEventListener('hashchange', handleHashChange)\n return () => {\n window.removeEventListener('hashchange', handleHashChange)\n }\n }, [])\n\n // \u8BBE\u7F6E\u9875\u9762\u4E2Dheader\u5143\u7D20\u7684position\u4E3Arelative\n useEffect(() => {\n const headerElements = document.querySelectorAll('.header')\n const originalStyles: { element: HTMLElement; originalPosition: string }[] = []\n\n headerElements.forEach(element => {\n const htmlElement = element as HTMLElement\n // \u4FDD\u5B58\u539F\u59CB\u6837\u5F0F\n originalStyles.push({\n element: htmlElement,\n originalPosition: htmlElement.style.position || getComputedStyle(htmlElement).position,\n })\n // \u8BBE\u7F6E\u4E3Arelative\n htmlElement.style.position = 'relative'\n })\n\n // \u6E05\u7406\u51FD\u6570\uFF1A\u6062\u590D\u539F\u59CB\u6837\u5F0F\n return () => {\n originalStyles.forEach(({ element, originalPosition }) => {\n element.style.position = originalPosition === 'static' ? '' : originalPosition\n })\n }\n }, [])\n\n // \u5904\u7406\u951A\u70B9\u70B9\u51FB\u6EDA\u52A8\n const handleAnchorClick = (e: React.MouseEvent) => {\n const target = e.target as HTMLElement\n target.scrollIntoView({\n behavior: 'smooth',\n block: 'nearest',\n inline: 'center',\n })\n }\n\n return (\n <div\n id={id}\n ref={innerRef}\n className={cn(\n 'product-nav text-info-primary bg-container-primary tablet:px-8 laptop:px-16 desktop:px-16 lg-desktop:px-[calc(50%-832px)] !sticky top-0 !z-[51] flex w-full justify-between overflow-hidden px-4 py-0',\n {\n 'aiui-dark': theme === 'dark',\n },\n className\n )}\n >\n <div className=\"product-nav-main desktop:flex-row desktop:gap-[48px] flex w-full flex-col justify-start\">\n {/* Tab Links Section */}\n <div className=\"product-nav-header laptop:w-full desktop:w-fit desktop:gap-[24px] desktop:py-0 flex w-full flex-row items-center justify-between gap-[16px] pt-[14px]\">\n <div className=\"product-nav-tabs flex flex-row items-center gap-[8px]\">\n {tabLinks.map((tabLink, index) => {\n return (\n <div key={tabLink.link || index} className=\"product-nav-tab-item flex items-center gap-[8px]\">\n <a\n href={tabLink.link}\n className={cn(\n 'product-nav-tab-link hover:text-brand-color text-nowrap text-[14px] font-bold tracking-[-0.04em]',\n {\n 'text-[#6D6D6F]': index !== 0,\n 'hidden desktop:block': index === 1,\n }\n )}\n // onClick={() => onShowSpecs?.(false)}\n >\n <span>{tabLink.label}</span>\n </a>\n {index !== tabLinks.length - 1 && (\n <div className=\"product-nav-tab-divider desktop:inline-block hidden h-[14px] w-px bg-[#E4E5E6]\" />\n )}\n </div>\n )\n })}\n\n {/* Mobile Dropdown */}\n {tabLinks.length > 1 && (\n <Popover.Root>\n <Popover.Trigger asChild>\n <button\n className=\"product-nav-dropdown-trigger desktop:hidden -ml-1 inline-block\"\n aria-label=\"More products\"\n >\n <ChevronDownIcon className=\"text-[#1D1D1F]\" />\n </button>\n </Popover.Trigger>\n <Popover.Content\n className=\"product-nav-dropdown-content rounded-[6px] border border-[#E4E5E6] bg-white p-[6px] px-[8px] py-[4px]\"\n style={{\n boxShadow: '0px 4px 8px 0px rgba(0,0,0,0.12)',\n }}\n side=\"bottom\"\n align=\"end\"\n alignOffset={10}\n sideOffset={10}\n >\n {tabLinks.slice(1).map(tabLink => (\n <a\n key={tabLink.link}\n href={tabLink.link}\n className=\"product-nav-dropdown-link hover:text-brand-color text-nowrap\"\n >\n <span>{tabLink.label}</span>\n </a>\n ))}\n </Popover.Content>\n </Popover.Root>\n )}\n </div>\n\n {/* Mobile Actions */}\n <div className=\"product-nav-mobile-actions desktop:hidden desktop:gap-[24px] flex items-center gap-[16px]\">\n {/* {specs?.text && (\n <Text\n size={2}\n onClick={handleSpecsClick}\n className=\"product-nav-specs-button cursor-pointer hover:text-brand-color\"\n >\n {specs.text}\n </Text>\n )} */}\n {textLink?.link && (\n <a\n href={textLink.link}\n target={textLink.target || '_self'}\n className=\"product-nav-text-link hover:text-brand-color cursor-pointer\"\n >\n <Text size={2} className=\"text-nowrap\">\n {textLink.text}\n </Text>\n </a>\n )}\n {buyBtn?.link && (\n <Button as=\"a\" href={buyBtn.link} size=\"sm\" className=\"product-nav-buy-button text-nowrap\">\n {buyBtn.text}\n </Button>\n )}\n </div>\n </div>\n\n {/* Anchor Navigation */}\n <div className=\"product-nav-anchors hide-scrollbar laptop:w-fit desktop:gap-[24px] desktop:py-[8px] flex w-full items-center gap-[16px] overflow-x-scroll py-[12px]\">\n {anchorList.map(anchor => (\n <a\n key={anchor.id}\n href={`#${anchor.id}`}\n className=\"product-nav-anchor-link\"\n onClick={e => {\n handleAnchorClick(e)\n }}\n >\n <Text size={2} className=\"product-nav-anchor-text text-nowrap\">\n {anchor.label}\n </Text>\n <div\n className={cn(\n 'product-nav-anchor-indicator laptop:top-[12px] desktop:top-[10px] relative top-[12px] h-[4px] w-full bg-transparent',\n {\n 'bg-brand-color': hash === `#${anchor.id}`,\n }\n )}\n />\n </a>\n ))}\n </div>\n </div>\n\n {/* Desktop Actions */}\n <div className=\"product-nav-desktop-actions desktop:flex desktop:gap-[24px] desktop:py-[8px] hidden items-center gap-[16px]\">\n {/* {specs?.text && (\n <Text\n size={2}\n onClick={handleSpecsClick}\n className=\"product-nav-specs-button cursor-pointer text-black hover:text-brand-color\"\n >\n {specs.text}\n </Text>\n )} */}\n {textLink?.link && (\n <a\n href={textLink.link}\n target={textLink.target || '_self'}\n className=\"product-nav-text-link hover:text-brand-color cursor-pointer text-black\"\n >\n <Text size={2} className=\"text-nowrap\">\n {textLink.text}\n </Text>\n </a>\n )}\n {buyBtn?.link && (\n <Button as=\"a\" href={buyBtn.link} size=\"sm\" className=\"product-nav-buy-button text-nowrap\">\n {buyBtn.text}\n </Button>\n )}\n </div>\n </div>\n )\n})\n\nProductNav.displayName = 'ProductNav'\n\nexport default withLayout(ProductNav)\n"],
5
+ "mappings": "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",
6
+ "names": ["ProductNav_exports", "__export", "ProductNav_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_utils", "import_Styles", "import_components", "import_useExposure", "Popover", "componentType", "componentName", "ChevronDownIcon", "props", "ProductNav", "className", "data", "id", "ref", "tabLinks", "anchorList", "textLink", "buyBtn", "theme", "hash", "setHash", "innerRef", "handleHashChange", "headerElements", "originalStyles", "element", "htmlElement", "originalPosition", "handleAnchorClick", "e", "tabLink", "index", "anchor"]
7
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './ProductNav.js';
2
+ export * from './types.js';
@@ -0,0 +1,2 @@
1
+ "use strict";var l=Object.create;var m=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var c=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty;var h=(o,r)=>{for(var e in r)m(o,e,{get:r[e],enumerable:!0})},t=(o,r,e,a)=>{if(r&&typeof r=="object"||typeof r=="function")for(let f of b(r))!g.call(o,f)&&f!==e&&m(o,f,{get:()=>r[f],enumerable:!(a=u(r,f))||a.enumerable});return o},x=(o,r,e)=>(t(o,r,"default"),e&&t(e,r,"default")),i=(o,r,e)=>(e=o!=null?l(c(o)):{},t(r||!o||!o.__esModule?m(e,"default",{value:o,enumerable:!0}):e,o)),j=o=>t(m({},"__esModule",{value:!0}),o);var p={};h(p,{default:()=>d.default});module.exports=j(p);var d=i(require("./ProductNav.js"));x(p,require("./types.js"),module.exports);
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductNav/index.ts"],
4
+ "sourcesContent": ["export { default } from './ProductNav.js'\nexport * from './types.js'\n"],
5
+ "mappings": "wmBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,wCAAAE,EAAAF,GAAA,IAAAG,EAAwB,8BACxBC,EAAAJ,EAAc,sBADd",
6
+ "names": ["ProductNav_exports", "__export", "__toCommonJS", "import_ProductNav", "__reExport"]
7
+ }
@@ -0,0 +1,35 @@
1
+ import type { ComponentCommonProps, Theme } from '../../types/props.js';
2
+ export interface TabLink {
3
+ link: string;
4
+ label: string;
5
+ }
6
+ export interface AnchorItem {
7
+ id: string;
8
+ label: string;
9
+ }
10
+ export interface BuyButton {
11
+ link: string;
12
+ text: string;
13
+ }
14
+ export interface TextLink {
15
+ /** 链接地址 */
16
+ link: string;
17
+ /** 链接文字 */
18
+ text: string;
19
+ /** 打开方式,默认为当前窗口 */
20
+ target?: '_self' | '_blank';
21
+ }
22
+ export interface ProductNavProps extends ComponentCommonProps {
23
+ data: {
24
+ /** 产品页签链接 */
25
+ tabLinks?: TabLink[];
26
+ /** 锚点导航列表 */
27
+ anchorList?: AnchorItem[];
28
+ /** 文字链接,显示在购买按钮左边 */
29
+ textLink?: TextLink;
30
+ /** 购买按钮 */
31
+ buyBtn?: BuyButton;
32
+ /** 主题,默认 light */
33
+ theme?: Theme;
34
+ };
35
+ }
@@ -0,0 +1,2 @@
1
+ "use strict";var i=Object.defineProperty;var s=Object.getOwnPropertyDescriptor;var a=Object.getOwnPropertyNames;var p=Object.prototype.hasOwnProperty;var m=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let n of a(t))!p.call(e,n)&&n!==o&&i(e,n,{get:()=>t[n],enumerable:!(r=s(t,n))||r.enumerable});return e};var x=e=>m(i({},"__esModule",{value:!0}),e);var k={};module.exports=x(k);
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ProductNav/types.ts"],
4
+ "sourcesContent": ["import type { ComponentCommonProps, Theme } from '../../types/props.js'\n\nexport interface TabLink {\n link: string\n label: string\n}\n\nexport interface AnchorItem {\n id: string\n label: string\n}\n\nexport interface BuyButton {\n link: string\n text: string\n}\n\nexport interface TextLink {\n /** \u94FE\u63A5\u5730\u5740 */\n link: string\n /** \u94FE\u63A5\u6587\u5B57 */\n text: string\n /** \u6253\u5F00\u65B9\u5F0F\uFF0C\u9ED8\u8BA4\u4E3A\u5F53\u524D\u7A97\u53E3 */\n target?: '_self' | '_blank'\n}\n\nexport interface ProductNavProps extends ComponentCommonProps {\n data: {\n /** \u4EA7\u54C1\u9875\u7B7E\u94FE\u63A5 */\n tabLinks?: TabLink[]\n /** \u951A\u70B9\u5BFC\u822A\u5217\u8868 */\n anchorList?: AnchorItem[]\n /** \u6587\u5B57\u94FE\u63A5\uFF0C\u663E\u793A\u5728\u8D2D\u4E70\u6309\u94AE\u5DE6\u8FB9 */\n textLink?: TextLink\n /** \u8D2D\u4E70\u6309\u94AE */\n buyBtn?: BuyButton\n /** \u4E3B\u9898\uFF0C\u9ED8\u8BA4 light */\n theme?: Theme\n }\n}\n"],
5
+ "mappings": "+WAAA,IAAAA,EAAA,kBAAAC,EAAAD",
6
+ "names": ["types_exports", "__toCommonJS"]
7
+ }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import type { Img } from '../../types/props.js';
2
3
  export type SelectStoreDataType = {
3
4
  title: string;
@@ -14,7 +15,7 @@ type SelectStoreType = {
14
15
  className?: string;
15
16
  };
16
17
  declare const _default: import("react").ForwardRefExoticComponent<Omit<SelectStoreType, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
17
- className?: string;
18
- data?: Record<string, any>;
18
+ className?: string | undefined;
19
+ data?: Record<string, any> | undefined;
19
20
  } & import("react").RefAttributes<any>>;
20
21
  export default _default;