@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,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/SelectStore/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport type { Img } from '../../types/props.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Picture, Text } from '../../components/index.js'\n\nexport type SelectStoreDataType = {\n title: string\n desc: string\n img: Img\n mobileImg: Img\n padImg: Img\n miniImg: Img\n // pay: {\n // img: Img\n // }[]\n // delivery: {\n // img: Img\n // }[]\n // service: {\n // title: string\n // img: Img\n // }[]\n}\n\ntype SelectStoreType = {\n data: {\n list: SelectStoreDataType[]\n }\n className?: string\n}\n\nconst SelectStore = (props: SelectStoreType) => {\n const { data, className } = props\n const { list } = data\n // const number = list?.[2]?.service?.length || 0\n return (\n <>\n <div className=\"\">\n <div className=\"laptop:grid-cols-3 tablet:grid-cols-2 grid grid-cols-1 gap-4\">\n {list.map((item, index) => (\n <div\n key={index}\n className=\"lg-desktop:aspect-[543/320] laptop:aspect-[440/280] tablet:aspect-[346/240] select-store-wrapper rounded-box relative flex aspect-[358/240] flex-col overflow-hidden bg-[#EAEAEC]\"\n >\n <Picture\n className=\"object-cover\"\n imgClassName=\"w-full object-cover\"\n source={`${item?.img?.url}, ${item?.padImg?.url} 1439, ${item?.miniImg?.url} 1023, ${item?.mobileImg?.url} 767`}\n />\n <div className=\"laptop:px-6 laptop:pb-4 lg-desktop:px-8 lg-desktop:pb-8 px-4 pb-4\">\n <Text\n html={item?.title}\n className=\"lg-desktop:text-[24px] text-[20px] leading-[1.2] text-[#080A0F] [&_*_strong]:!font-bold\"\n />\n <Text\n html={item?.desc}\n className=\"lg-desktop:text-[16px] line-clamp-1 text-[14px] leading-[1.4] text-[#080A0F]\"\n />\n </div>\n </div>\n ))}\n </div>\n {/* <div className='grid desktop:grid-cols-3 tablet:grid-cols-2 grid-cols-1 gap-4'>\n {list.map((item, index) => (\n <div key={index} className='bg-[#EAEAEC] rounded-2xl min-h-[240px] laptop:min-h-[280px] lg-desktop:min-h-[320px]'>\n <div className='flex flex-col laptop:p-[24px] lg-desktop:p-[32px] p-[16px] justify-start h-full'>\n <div className=\"flex flex-col justify-center flex-1\">\n \n {item?.pay && (\n <div className='flex gap-[16px] flex-wrap items-center justify-center laptop:gap-[24px]'>\n {item?.pay?.map((pay, ind)=>{\n return (\n <div key={ind} className='laptop:w-[60px] w-[48px]'>\n <Picture\n className=\" w-full\"\n imgClassName=\"\"\n source={pay?.img?.url}\n alt={pay?.img?.alt || ''}\n />\n </div>\n )\n })}\n </div>\n )}\n \n {\n item?.delivery && (\n <div className='flex gap-[24px] items-center justify-center'>\n {item?.delivery?.map((delivery, ind)=>{\n return (\n <div key={ind} className=''>\n <Picture\n className={` ${ind === 0 ? 'laptop:w-[174px] w-[116px]' : 'laptop:w-[75px] w-[50px]'}`}\n imgClassName=\"\"\n source={delivery?.img?.url}\n alt={delivery?.img?.alt || ''}\n />\n </div>\n )\n })}\n </div>\n ) \n }\n \n {\n item?.service && (\n <div className=' desktop:gap-[24px] gap-[8px] tablet:gap-[12px] laptop:gap-[28px] grid l-tablet:grid-cols-2 tablet:flex flex-wrap desktop:grid-cols-4 items-center justify-center'>\n {item?.service?.map((service, ind)=>{\n // \u5224\u65AD\uFF1A\u53EA\u5BF9\u7B2C\u4E94\u6761\uFF08index === 4\uFF09\u5E94\u7528\u54CD\u5E94\u5F0F\u663E\u793A/\u9690\u85CF\n const isFifth = ind === 4;\n return (\n <div key={ind} className={`\n flex flex-col items-center desktop:h-full w-[157px] justify-start desktop:w-[81px]\n ${isFifth ? 'laptop:flex desktop:hidden hidden' : ''} \n `}>\n <div className='w-[70px] desktop:w-[54px]'>\n <Picture\n className=\"\"\n imgClassName=\"w-full h-auto\"\n source={service?.img?.url}\n alt={service?.img?.alt || ''}\n />\n </div>\n <div className='text-center'>\n <Text html={service?.title} className=' font-bold text-[12px] mt-[8px] leading-[1.4]' />\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n </div>\n <div className='mt-auto'>\n <Text html={item?.title} className='text-[20px] lg-desktop:text-[24px] [&_*_strong]:!font-bold leading-[1.2] text-[#080A0F]'/>\n <Text html={item?.desc} className='text-[14px] line-clamp-1 lg-desktop:text-[16px] leading-[1.4] text-[#080A0F]'/>\n </div>\n \n </div>\n </div>\n ))}\n </div> */}\n </div>\n </>\n )\n}\n\nexport default withLayout(SelectStore)\n"],
5
- "mappings": "aAsCI,mBAAAA,EAQU,OAAAC,EAKA,QAAAC,MAbV,oBArCJ,MAAmB,yBACnB,MAAsB,wBAEtB,OAAS,cAAAC,MAAkB,yBAC3B,OAAS,WAAAC,EAAS,QAAAC,MAAY,4BA4B9B,MAAMC,EAAeC,GAA2B,CAC9C,KAAM,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAIF,EACtB,CAAE,KAAAG,CAAK,EAAIF,EAEjB,OACEP,EAAAD,EAAA,CACE,SAAAC,EAAC,OAAI,UAAU,GACb,SAAAA,EAAC,OAAI,UAAU,+DACZ,SAAAS,EAAK,IAAI,CAACC,EAAMC,IACfV,EAAC,OAEC,UAAU,oLAEV,UAAAD,EAACG,EAAA,CACC,UAAU,eACV,aAAa,sBACb,OAAQ,GAAGO,GAAM,KAAK,GAAG,KAAKA,GAAM,QAAQ,GAAG,UAAUA,GAAM,SAAS,GAAG,UAAUA,GAAM,WAAW,GAAG,OAC3G,EACAT,EAAC,OAAI,UAAU,oEACb,UAAAD,EAACI,EAAA,CACC,KAAMM,GAAM,MACZ,UAAU,0FACZ,EACAV,EAACI,EAAA,CACC,KAAMM,GAAM,KACZ,UAAU,+EACZ,GACF,IAjBKC,CAkBP,CACD,EACH,EAiFF,EACF,CAEJ,EAEA,IAAOC,EAAQV,EAAWG,CAAW",
6
- "names": ["Fragment", "jsx", "jsxs", "withLayout", "Picture", "Text", "SelectStore", "props", "data", "className", "list", "item", "index", "SelectStore_default"]
4
+ "sourcesContent": ["'use client'\nimport { cn } from '../../helpers/utils.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport type { Img } from '../../types/props.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Picture, Text } from '../../components/index.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { useRef } from 'react'\n\nexport type SelectStoreDataType = {\n title: string\n desc: string\n img: Img\n mobileImg: Img\n padImg: Img\n miniImg: Img\n // pay: {\n // img: Img\n // }[]\n // delivery: {\n // img: Img\n // }[]\n // service: {\n // title: string\n // img: Img\n // }[]\n}\n\ntype SelectStoreType = {\n data: {\n list: SelectStoreDataType[]\n }\n className?: string\n}\n\nconst componentType = 'image'\nconst componentName = 'select_store'\n\nconst Item = ({ index, item }: { index: number; item: SelectStoreDataType }) => {\n const ref = useRef<HTMLDivElement>(null)\n\n useExposure(ref, {\n componentType: componentType,\n componentName: componentName,\n position: index + 1,\n componentTitle: item.title,\n componentDescription: item.desc,\n })\n\n return (\n <div\n ref={ref}\n className=\"lg-desktop:aspect-[543/320] laptop:aspect-[440/280] tablet:aspect-[346/240] select-store-wrapper rounded-box relative flex aspect-[358/240] flex-col overflow-hidden bg-[#EAEAEC]\"\n >\n <Picture\n className=\"object-cover\"\n imgClassName=\"w-full object-cover\"\n source={`${item?.img?.url}, ${item?.padImg?.url} 1439, ${item?.miniImg?.url} 1023, ${item?.mobileImg?.url} 767`}\n />\n <div className=\"laptop:px-6 laptop:pb-6 lg-desktop:px-8 lg-desktop:pb-8 px-4 pb-4\">\n <Text\n html={item?.title}\n className=\"lg-desktop:text-[24px] text-[20px] leading-[1.2] text-[#1d1d1f] [&_*_strong]:!font-bold\"\n />\n <Text\n html={item?.desc}\n className=\"lg-desktop:text-[16px] line-clamp-1 text-[14px] leading-[1.4] text-[#1d1d1f]\"\n />\n </div>\n </div>\n )\n}\n\nconst SelectStore = (props: SelectStoreType) => {\n const { data, className } = props\n const { list } = data\n // const number = list?.[2]?.service?.length || 0\n return (\n <>\n <div className=\"\">\n <div className=\"laptop:grid-cols-3 tablet:grid-cols-2 grid grid-cols-1 gap-4\">\n {list.map((item, index) => (\n <Item key={index} index={index} item={item} />\n ))}\n </div>\n {/* <div className='grid desktop:grid-cols-3 tablet:grid-cols-2 grid-cols-1 gap-4'>\n {list.map((item, index) => (\n <div key={index} className='bg-[#EAEAEC] rounded-2xl min-h-[240px] laptop:min-h-[280px] lg-desktop:min-h-[320px]'>\n <div className='flex flex-col laptop:p-[24px] lg-desktop:p-[32px] p-[16px] justify-start h-full'>\n <div className=\"flex flex-col justify-center flex-1\">\n \n {item?.pay && (\n <div className='flex gap-[16px] flex-wrap items-center justify-center laptop:gap-[24px]'>\n {item?.pay?.map((pay, ind)=>{\n return (\n <div key={ind} className='laptop:w-[60px] w-[48px]'>\n <Picture\n className=\" w-full\"\n imgClassName=\"\"\n source={pay?.img?.url}\n alt={pay?.img?.alt || ''}\n />\n </div>\n )\n })}\n </div>\n )}\n \n {\n item?.delivery && (\n <div className='flex gap-[24px] items-center justify-center'>\n {item?.delivery?.map((delivery, ind)=>{\n return (\n <div key={ind} className=''>\n <Picture\n className={` ${ind === 0 ? 'laptop:w-[174px] w-[116px]' : 'laptop:w-[75px] w-[50px]'}`}\n imgClassName=\"\"\n source={delivery?.img?.url}\n alt={delivery?.img?.alt || ''}\n />\n </div>\n )\n })}\n </div>\n ) \n }\n \n {\n item?.service && (\n <div className=' desktop:gap-[24px] gap-[8px] tablet:gap-[12px] laptop:gap-[28px] grid l-tablet:grid-cols-2 tablet:flex flex-wrap desktop:grid-cols-4 items-center justify-center'>\n {item?.service?.map((service, ind)=>{\n // \u5224\u65AD\uFF1A\u53EA\u5BF9\u7B2C\u4E94\u6761\uFF08index === 4\uFF09\u5E94\u7528\u54CD\u5E94\u5F0F\u663E\u793A/\u9690\u85CF\n const isFifth = ind === 4;\n return (\n <div key={ind} className={`\n flex flex-col items-center desktop:h-full w-[157px] justify-start desktop:w-[81px]\n ${isFifth ? 'laptop:flex desktop:hidden hidden' : ''} \n `}>\n <div className='w-[70px] desktop:w-[54px]'>\n <Picture\n className=\"\"\n imgClassName=\"w-full h-auto\"\n source={service?.img?.url}\n alt={service?.img?.alt || ''}\n />\n </div>\n <div className='text-center'>\n <Text html={service?.title} className=' font-bold text-[12px] mt-[8px] leading-[1.4]' />\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n </div>\n <div className='mt-auto'>\n <Text html={item?.title} className='text-[20px] lg-desktop:text-[24px] [&_*_strong]:!font-bold leading-[1.2] text-[#080A0F]'/>\n <Text html={item?.desc} className='text-[14px] line-clamp-1 lg-desktop:text-[16px] leading-[1.4] text-[#080A0F]'/>\n </div>\n \n </div>\n </div>\n ))}\n </div> */}\n </div>\n </>\n )\n}\n\nexport default withLayout(SelectStore)\n"],
5
+ "mappings": "aAsDM,OAwBF,YAAAA,EAxBE,OAAAC,EAKA,QAAAC,MALA,oBArDN,MAAmB,yBACnB,MAAsB,wBAEtB,OAAS,cAAAC,MAAkB,yBAC3B,OAAS,WAAAC,EAAS,QAAAC,MAAY,4BAC9B,OAAS,eAAAC,MAAmB,6BAC5B,OAAS,UAAAC,MAAc,QA4BvB,MAAMC,EAAgB,QAChBC,EAAgB,eAEhBC,EAAO,CAAC,CAAE,MAAAC,EAAO,KAAAC,CAAK,IAAoD,CAC9E,MAAMC,EAAMN,EAAuB,IAAI,EAEvC,OAAAD,EAAYO,EAAK,CACf,cAAeL,EACf,cAAeC,EACf,SAAUE,EAAQ,EAClB,eAAgBC,EAAK,MACrB,qBAAsBA,EAAK,IAC7B,CAAC,EAGCV,EAAC,OACC,IAAKW,EACL,UAAU,oLAEV,UAAAZ,EAACG,EAAA,CACC,UAAU,eACV,aAAa,sBACb,OAAQ,GAAGQ,GAAM,KAAK,GAAG,KAAKA,GAAM,QAAQ,GAAG,UAAUA,GAAM,SAAS,GAAG,UAAUA,GAAM,WAAW,GAAG,OAC3G,EACAV,EAAC,OAAI,UAAU,oEACb,UAAAD,EAACI,EAAA,CACC,KAAMO,GAAM,MACZ,UAAU,0FACZ,EACAX,EAACI,EAAA,CACC,KAAMO,GAAM,KACZ,UAAU,+EACZ,GACF,GACF,CAEJ,EAEME,EAAeC,GAA2B,CAC9C,KAAM,CAAE,KAAAC,EAAM,UAAAC,CAAU,EAAIF,EACtB,CAAE,KAAAG,CAAK,EAAIF,EAEjB,OACEf,EAAAD,EAAA,CACE,SAAAC,EAAC,OAAI,UAAU,GACb,SAAAA,EAAC,OAAI,UAAU,+DACZ,SAAAiB,EAAK,IAAI,CAACN,EAAMD,IACfV,EAACS,EAAA,CAAiB,MAAOC,EAAO,KAAMC,GAA3BD,CAAiC,CAC7C,EACH,EAiFF,EACF,CAEJ,EAEA,IAAOQ,EAAQhB,EAAWW,CAAW",
6
+ "names": ["Fragment", "jsx", "jsxs", "withLayout", "Picture", "Text", "useExposure", "useRef", "componentType", "componentName", "Item", "index", "item", "ref", "SelectStore", "props", "data", "className", "list", "SelectStore_default"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { ShelfDisplayProps } from './shelfDisplay.js';
3
3
  declare const _default: React.ForwardRefExoticComponent<Omit<Omit<ShelfDisplayProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
- className?: string;
5
- data?: Record<string, any>;
4
+ className?: string | undefined;
5
+ data?: Record<string, any> | undefined;
6
6
  }, "ref"> & React.RefAttributes<any>>;
7
7
  export default _default;
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as m,jsxs as de}from"react/jsx-runtime";import U,{useState as B,useEffect as S,useRef as h,useImperativeHandle as X}from"react";import{cn as Y}from"../../helpers/utils.js";import ee from"./tabSwitch.js";import te from"../Title/index.js";import ne from"../SwiperBox/index.js";import{withLayout as se}from"../../shared/Styles.js";import{gaTrack as E}from"../../shared/track.js";import{useMediaQuery as ae}from"react-responsive";import{useRollout as ie}from"../../hooks/useRollout.js";import{ShelfDisplayWrapItem as re,ShelfDisplayHorizontalItem as oe}from"./shelfDisplayItem.js";const le="image",me="product_shelf",ce=c=>c==null?"default":String(c).replace(/[^a-zA-Z0-9_-]/g,"")||"default",fe=()=>`shelf-display-${Math.random().toString(36).slice(2,9)}`,pe=U.forwardRef(({key:c,data:f,event:V,buildData:y,breakpoints:L,className:N="",recommendedData:a,target:z="_self",metafields:A,isDisplayGudgments:v=!1,isDisplayBackImage:$=!1},q)=>{const{productsTab:i=[],productsCard:T=[],title:k,isShowTab:p=!0,tabShape:O="square",isShowTag:K=!1,isShowOriginalPrice:Q=!0,isShowRecommendedCard:I=!1,...W}=f,[w,R]=B(""),[s,g]=B([]),M=h(!1),b=h(!1),D=h(null),Z=h(fe()),j=ae({query:"(max-width: 768px)"}),[F,P]=ie({threshold:0}),d=s?.length<=1&&v,r=!j&&s?.length<=2&&v,_=e=>{switch(e){case 1440:return r?s?.length:4;case 1024:return r?s?.length:3;default:return r?s?.length:2.3}},x=()=>{E({event:"ga4Event",event_name:"view_item_list",event_parameters:{page_group:"Home Page",item_list_name:"Home_Page_Bundle",items:a?.map((e,l)=>{const n=e?.variants?.find(t=>t?.sku===e?.sku)||e?.variants?.[0];return{item_id:e?.sku||n?.sku,item_name:e?.name,item_variant:n?.name,price:n?.price,index:l+1}})}})},o=(e,l)=>{if(l){const u=a?.map?.(n=>({...n,isShowRecommended:!0}));g(u?.length?u||[]:[])}else if(Array.isArray(e)){const n=e?.map?.(t=>{const H=y?.products?.find(J=>J?.handle===t?.handle);if(H)return{sku:t.sku,isShowRecommended:!1,custom_name:t.custom_name,custom_description:t.custom_description,custom_image:t.custom_image,custom_theme:t.custom_theme,...H}})?.filter(t=>t);g(n?.length?n||[]:[])}else g([])};X(q,()=>D.current),S(()=>{P&&a?.length&&!M.current&&(M.current=!0,x())},[P,a]),S(()=>{if(!b.current){if(!b.current&&a?.length&&(b.current=!0),p){R(i?.[0]?.tab||""),o(i?.[0]?.data||[],i?.[0]?.isShowRecommendedTab);return}o(T,I)}},[a]),S(()=>{if(p){const e=i?.find(l=>l?.tab===w)||i?.[0];o(e?.data||[],e?.isShowRecommendedTab);return}o(T,I)},[y]);const G=ce(w),C=`${Z.current}-${G}`;return de("div",{ref:D,className:Y("shelf-display-wrap w-full",N,{"aiui-dark":f?.theme==="dark"}),children:[k&&m(te,{data:{title:k}}),p&&m("div",{className:"md-tablet:w-full md-tablet:overflow-hidden",children:m(ee,{value:w,tabs:i,tabShape:O,onTabClick:e=>{if(R(e?.tab),o(e?.data||[],e?.isShowRecommendedTab),!e?.isShowRecommendedTab){E({event:"ga4Event",event_name:"component_click",event_parameters:{page_group:"Home Page",component_type:le,component_name:me,component_title:f?.title,component_position:1,navigation:e?.tab}});return}x()}})}),m("div",{ref:F,className:"tablet:min-h-[393px] laptop:min-h-[425px] desktop:min-h-[405px] lg-desktop:min-h-[409px]",children:m(ne,{data:{list:s,configuration:{...W,event:V,isShowTag:K,isShowOriginalPrice:Q,target:z,metafields:A,itemLength:s?.length,isDisplayBackImage:$}},id:C,className:`${p?"mt-6":""} shelf-display-swiper-box !overflow-visible`,itemClassName:r?"flex-1":"",Slide:r?oe:re,breakpoints:L||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:d?1:1.2},768:{spaceBetween:d?0:16,freeMode:!1,slidesPerView:_()},1024:{spaceBetween:d?0:16,freeMode:!1,slidesPerView:_(1024)},1440:{spaceBetween:d?0:16,freeMode:!1,slidesPerView:_(1440)}}},C)})]})});var ke=se(pe);export{ke as default};
1
+ "use client";import{jsx as c,jsxs as de}from"react/jsx-runtime";import U,{useState as B,useEffect as S,useRef as w,useImperativeHandle as X}from"react";import{cn as Y}from"../../helpers/utils.js";import ee from"./tabSwitch.js";import te from"../Title/index.js";import ne from"../SwiperBox/index.js";import{withLayout as se}from"../../shared/Styles.js";import{gaTrack as E}from"../../shared/track.js";import{useMediaQuery as ae}from"react-responsive";import{useRollout as ie}from"../../hooks/useRollout.js";import{ShelfDisplayWrapItem as re,ShelfDisplayHorizontalItem as oe}from"./shelfDisplayItem.js";const le="image",ce="product_shelf",me=m=>m==null?"default":String(m).replace(/[^a-zA-Z0-9_-]/g,"")||"default",fe=()=>`shelf-display-${Math.random().toString(36).slice(2,9)}`,pe=U.forwardRef(({key:m,data:f,event:V,buildData:y,breakpoints:L,className:N="",recommendedData:i,target:z="_self",metafields:A,isDisplayGudgments:v=!1,isDisplayBackImage:$=!1},q)=>{const{productsTab:r=[],productsCard:T=[],title:k,isShowTab:p=!0,tabShape:O="square",isShowTag:K=!1,isShowOriginalPrice:Q=!0,isShowRecommendedCard:I=!1,...W}=f,[d,R]=B(""),[s,g]=B([]),M=w(!1),b=w(!1),D=w(null),Z=w(fe()),j=ae({query:"(max-width: 768px)"}),[F,P]=ie({threshold:0}),u=s?.length<=1&&v,o=!j&&s?.length<=2&&v,_=e=>{switch(e){case 1440:return o?s?.length:4;case 1024:return o?s?.length:3;default:return o?s?.length:2.3}},x=()=>{E({event:"ga4Event",event_name:"view_item_list",event_parameters:{page_group:"Home Page",item_list_name:"Home_Page_Bundle",items:i?.map((e,a)=>{const n=e?.variants?.find(t=>t?.sku===e?.sku)||e?.variants?.[0];return{item_id:e?.sku||n?.sku,item_name:e?.name,item_variant:n?.name,price:n?.price,index:a+1}})}})},l=(e,a)=>{if(a){const h=i?.map?.(n=>({...n,isShowRecommended:!0}));g(h?.length?h||[]:[])}else if(Array.isArray(e)){const n=e?.map?.(t=>{const H=y?.products?.find(J=>J?.handle===t?.handle);if(H)return{sku:t.sku,isShowRecommended:!1,custom_name:t.custom_name,custom_description:t.custom_description,custom_image:t.custom_image,custom_theme:t.custom_theme,...H}})?.filter(t=>t);g(n?.length?n||[]:[])}else g([])};X(q,()=>D.current),S(()=>{P&&i?.length&&!M.current&&(M.current=!0,x())},[P,i]),S(()=>{if(!b.current){if(!b.current&&i?.length&&(b.current=!0),p){const e=r?.find(a=>a?.tab===d)||r?.[0];R(e?.tab||""),l(e?.data||[],e?.isShowRecommendedTab);return}l(T,I)}},[i]),S(()=>{if(p){const e=r?.find(a=>a?.tab===d)||r?.[0];l(e?.data||[],e?.isShowRecommendedTab);return}l(T,I)},[y]);const G=me(d),C=`${Z.current}-${G}`;return de("div",{ref:D,className:Y("shelf-display-wrap w-full",N,{"aiui-dark":f?.theme==="dark"}),children:[k&&c(te,{data:{title:k}}),p&&c("div",{className:"md-tablet:w-full md-tablet:overflow-hidden",children:c(ee,{value:d,tabs:r,tabShape:O,onTabClick:e=>{if(R(e?.tab),l(e?.data||[],e?.isShowRecommendedTab),!e?.isShowRecommendedTab){E({event:"ga4Event",event_name:"component_click",event_parameters:{page_group:"Home Page",component_type:le,component_name:ce,component_title:f?.title,component_position:1,navigation:e?.tab}});return}x()}})}),c("div",{ref:F,className:"tablet:min-h-[393px] laptop:min-h-[425px] desktop:min-h-[405px] lg-desktop:min-h-[409px]",children:c(ne,{data:{list:s,configuration:{...W,event:V,isShowTag:K,isShowOriginalPrice:Q,target:z,metafields:A,itemLength:s?.length,isDisplayBackImage:$}},id:C,className:`${p?"mt-6":""} shelf-display-swiper-box !overflow-visible`,itemClassName:o?"flex-1":"",Slide:o?oe:re,breakpoints:L||{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:u?1:1.2},768:{spaceBetween:u?0:16,freeMode:!1,slidesPerView:_()},1024:{spaceBetween:u?0:16,freeMode:!1,slidesPerView:_(1024)},1440:{spaceBetween:u?0:16,freeMode:!1,slidesPerView:_(1440)}}},C)})]})});var ke=se(pe);export{ke as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/ShelfDisplay/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport React, { useState, useEffect, useRef, useImperativeHandle } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport TabSwitch from './tabSwitch.js'\nimport Title from '../Title/index.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { useRollout } from '../../hooks/useRollout.js'\nimport { ShelfDisplayWrapItem, ShelfDisplayHorizontalItem } from './shelfDisplayItem.js'\nimport type { ShelfDisplayProps, ShelfDisplayItem } from './shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'product_shelf'\n\nconst sanitizeCssSelector = (value?: string | number) => {\n if (value === undefined || value === null) return 'default'\n const sanitized = String(value).replace(/[^a-zA-Z0-9_-]/g, '')\n return sanitized || 'default'\n}\n\nconst createInstanceId = () => `shelf-display-${Math.random().toString(36).slice(2, 9)}`\n\nconst ShelfDisplay = React.forwardRef<HTMLDivElement, ShelfDisplayProps>(\n (\n {\n key,\n data,\n event,\n buildData,\n breakpoints,\n className = '',\n recommendedData,\n target = '_self',\n metafields,\n isDisplayGudgments = false,\n isDisplayBackImage = false,\n },\n ref\n ) => {\n const {\n productsTab = [],\n productsCard = [],\n title,\n isShowTab = true,\n tabShape = 'square',\n isShowTag = false,\n isShowOriginalPrice = true,\n isShowRecommendedCard = false,\n ...other\n } = data\n\n const [tabId, setTabId] = useState<string>('')\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n const isView = useRef<boolean>(false)\n const isRecommend = useRef<boolean>(false)\n const innerRef = useRef<HTMLDivElement>(null)\n const instanceIdRef = useRef<string>(createInstanceId())\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const [viewRef, inView] = useRollout<HTMLDivElement>({ threshold: 0 })\n\n const isOnce = currentItems?.length <= 1 && isDisplayGudgments\n const isShowGudgments = !isMobile && currentItems?.length <= 2 && isDisplayGudgments\n\n const showItemLength = (size?: number) => {\n switch (size) {\n case 1440:\n return isShowGudgments ? currentItems?.length : 4\n case 1024:\n return isShowGudgments ? currentItems?.length : 3\n default:\n return isShowGudgments ? currentItems?.length : 2.3\n }\n }\n\n const gackViewEvent = () => {\n gaTrack({\n event: 'ga4Event',\n event_name: 'view_item_list',\n event_parameters: {\n page_group: 'Home Page',\n item_list_name: 'Home_Page_Bundle',\n items: recommendedData?.map((item, index) => {\n const findData = item?.variants?.find((v: any) => v?.sku === item?.sku)\n const variant = findData || item?.variants?.[0]\n return {\n item_id: item?.sku || variant?.sku,\n item_name: item?.name,\n item_variant: variant?.name,\n price: variant?.price,\n index: index + 1,\n }\n }),\n },\n })\n }\n\n const handleCurrentTab = (currentData: ShelfDisplayItem[], flag: boolean) => {\n if (flag) {\n const newCurrentData = recommendedData?.map?.(item => {\n return {\n ...item,\n isShowRecommended: true,\n }\n })\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n } else {\n const isArray = Array.isArray(currentData)\n if (isArray) {\n const newCurrentData = currentData\n ?.map?.(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n isShowRecommended: false,\n custom_name: item.custom_name,\n custom_description: item.custom_description,\n custom_image: item.custom_image,\n custom_theme: item.custom_theme,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n } else {\n setCurrentItems([])\n }\n }\n }\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useEffect(() => {\n if (inView && recommendedData?.length && !isView.current) {\n isView.current = true\n gackViewEvent()\n }\n }, [inView, recommendedData])\n\n // \u7B97\u6CD5\u6570\u636E\u4F1A\u7A0D\u5FAE\u5EF6\u8FDF\uFF0C\u6240\u4EE5\u9700\u76D1\u542CrecommendedData\uFF0C\u4E3A\u4E86\u9632\u6B62\u5728\u6709\u7B97\u6CD5\u6570\u636E\u4E14\u5BF9\u9ED8\u8BA4\u6E32\u67D3\u7B2C\u4E00\u4E2A\u540E\u53CD\u590D\u89E6\u53D1\uFF0C\u7528isRecommend\u5173\u95ED\n useEffect(() => {\n if (isRecommend.current) return\n if (!isRecommend.current && recommendedData?.length) {\n isRecommend.current = true\n }\n if (isShowTab) {\n setTabId(productsTab?.[0]?.tab || '')\n handleCurrentTab(productsTab?.[0]?.data || [], productsTab?.[0]?.isShowRecommendedTab)\n return\n }\n handleCurrentTab(productsCard, isShowRecommendedCard)\n }, [recommendedData])\n\n useEffect(() => {\n if (isShowTab) {\n const currentTab = productsTab?.find(item => item?.tab === tabId) || productsTab?.[0]\n handleCurrentTab(currentTab?.data || [], currentTab?.isShowRecommendedTab)\n return\n }\n handleCurrentTab(productsCard, isShowRecommendedCard)\n // buildData \u66F4\u65B0\u65F6\u9700\u8981\u91CD\u65B0\u8BA1\u7B97\u5F53\u524D\u5217\u8868\n }, [buildData])\n\n const safeTabKey = sanitizeCssSelector(tabId)\n const swiperInstanceId = `${instanceIdRef.current}-${safeTabKey}`\n\n return (\n <div\n ref={innerRef}\n className={cn('shelf-display-wrap w-full', className, { 'aiui-dark': data?.theme === 'dark' })}\n >\n {title && <Title data={{ title: title }} />}\n {isShowTab && (\n <div className=\"md-tablet:w-full md-tablet:overflow-hidden\">\n <TabSwitch\n value={tabId}\n tabs={productsTab}\n tabShape={tabShape}\n onTabClick={v => {\n setTabId(v?.tab)\n handleCurrentTab(v?.data || [], v?.isShowRecommendedTab)\n if (!v?.isShowRecommendedTab) {\n gaTrack({\n event: 'ga4Event',\n event_name: 'component_click',\n event_parameters: {\n page_group: 'Home Page',\n component_type: componentType,\n component_name: componentName,\n component_title: data?.title,\n component_position: 1,\n navigation: v?.tab,\n },\n })\n return\n }\n gackViewEvent()\n }}\n />\n </div>\n )}\n <div\n ref={viewRef as any}\n className=\"tablet:min-h-[393px] laptop:min-h-[425px] desktop:min-h-[405px] lg-desktop:min-h-[409px]\"\n >\n <SwiperBox\n key={swiperInstanceId}\n data={{\n list: currentItems,\n configuration: {\n ...other,\n event: event,\n isShowTag,\n isShowOriginalPrice,\n target: target,\n metafields: metafields,\n itemLength: currentItems?.length,\n isDisplayBackImage: isDisplayBackImage,\n },\n }}\n id={swiperInstanceId}\n className={`${isShowTab ? 'mt-6' : ''} shelf-display-swiper-box !overflow-visible`}\n itemClassName={isShowGudgments ? 'flex-1' : ''}\n Slide={isShowGudgments ? ShelfDisplayHorizontalItem : ShelfDisplayWrapItem}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: isOnce ? 1 : 1.2,\n },\n 768: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(),\n },\n 1024: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(1024),\n },\n 1440: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(1440),\n },\n }\n }\n />\n </div>\n </div>\n )\n }\n)\n\nexport default withLayout(ShelfDisplay)\n"],
5
- "mappings": "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",
4
+ "sourcesContent": ["'use client'\nimport React, { useState, useEffect, useRef, useImperativeHandle } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport TabSwitch from './tabSwitch.js'\nimport Title from '../Title/index.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { gaTrack } from '../../shared/track.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { useRollout } from '../../hooks/useRollout.js'\nimport { ShelfDisplayWrapItem, ShelfDisplayHorizontalItem } from './shelfDisplayItem.js'\nimport type { ShelfDisplayProps, ShelfDisplayItem } from './shelfDisplay.js'\n\nconst componentType = 'image'\nconst componentName = 'product_shelf'\n\nconst sanitizeCssSelector = (value?: string | number) => {\n if (value === undefined || value === null) return 'default'\n const sanitized = String(value).replace(/[^a-zA-Z0-9_-]/g, '')\n return sanitized || 'default'\n}\n\nconst createInstanceId = () => `shelf-display-${Math.random().toString(36).slice(2, 9)}`\n\nconst ShelfDisplay = React.forwardRef<HTMLDivElement, ShelfDisplayProps>(\n (\n {\n key,\n data,\n event,\n buildData,\n breakpoints,\n className = '',\n recommendedData,\n target = '_self',\n metafields,\n isDisplayGudgments = false,\n isDisplayBackImage = false,\n },\n ref\n ) => {\n const {\n productsTab = [],\n productsCard = [],\n title,\n isShowTab = true,\n tabShape = 'square',\n isShowTag = false,\n isShowOriginalPrice = true,\n isShowRecommendedCard = false,\n ...other\n } = data\n\n const [tabId, setTabId] = useState<string>('')\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n const isView = useRef<boolean>(false)\n const isRecommend = useRef<boolean>(false)\n const innerRef = useRef<HTMLDivElement>(null)\n const instanceIdRef = useRef<string>(createInstanceId())\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const [viewRef, inView] = useRollout<HTMLDivElement>({ threshold: 0 })\n\n const isOnce = currentItems?.length <= 1 && isDisplayGudgments\n const isShowGudgments = !isMobile && currentItems?.length <= 2 && isDisplayGudgments\n\n const showItemLength = (size?: number) => {\n switch (size) {\n case 1440:\n return isShowGudgments ? currentItems?.length : 4\n case 1024:\n return isShowGudgments ? currentItems?.length : 3\n default:\n return isShowGudgments ? currentItems?.length : 2.3\n }\n }\n\n const gackViewEvent = () => {\n gaTrack({\n event: 'ga4Event',\n event_name: 'view_item_list',\n event_parameters: {\n page_group: 'Home Page',\n item_list_name: 'Home_Page_Bundle',\n items: recommendedData?.map((item, index) => {\n const findData = item?.variants?.find((v: any) => v?.sku === item?.sku)\n const variant = findData || item?.variants?.[0]\n return {\n item_id: item?.sku || variant?.sku,\n item_name: item?.name,\n item_variant: variant?.name,\n price: variant?.price,\n index: index + 1,\n }\n }),\n },\n })\n }\n\n const handleCurrentTab = (currentData: ShelfDisplayItem[], flag: boolean) => {\n if (flag) {\n const newCurrentData = recommendedData?.map?.(item => {\n return {\n ...item,\n isShowRecommended: true,\n }\n })\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n } else {\n const isArray = Array.isArray(currentData)\n if (isArray) {\n const newCurrentData = currentData\n ?.map?.(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n isShowRecommended: false,\n custom_name: item.custom_name,\n custom_description: item.custom_description,\n custom_image: item.custom_image,\n custom_theme: item.custom_theme,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData?.length ? newCurrentData || [] : [])\n } else {\n setCurrentItems([])\n }\n }\n }\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useEffect(() => {\n if (inView && recommendedData?.length && !isView.current) {\n isView.current = true\n gackViewEvent()\n }\n }, [inView, recommendedData])\n\n // \u7B97\u6CD5\u6570\u636E\u4F1A\u7A0D\u5FAE\u5EF6\u8FDF\uFF0C\u6240\u4EE5\u9700\u76D1\u542CrecommendedData\uFF0C\u4E3A\u4E86\u9632\u6B62\u5728\u6709\u7B97\u6CD5\u6570\u636E\u4E14\u5BF9\u9ED8\u8BA4\u6E32\u67D3\u7B2C\u4E00\u4E2A\u540E\u53CD\u590D\u89E6\u53D1\uFF0C\u7528isRecommend\u5173\u95ED\n useEffect(() => {\n if (isRecommend.current) return\n if (!isRecommend.current && recommendedData?.length) {\n isRecommend.current = true\n }\n if (isShowTab) {\n const currentTab = productsTab?.find(item => item?.tab === tabId) || productsTab?.[0]\n setTabId(currentTab?.tab || '')\n handleCurrentTab(currentTab?.data || [], currentTab?.isShowRecommendedTab)\n return\n }\n handleCurrentTab(productsCard, isShowRecommendedCard)\n }, [recommendedData])\n\n useEffect(() => {\n if (isShowTab) {\n const currentTab = productsTab?.find(item => item?.tab === tabId) || productsTab?.[0]\n handleCurrentTab(currentTab?.data || [], currentTab?.isShowRecommendedTab)\n return\n }\n handleCurrentTab(productsCard, isShowRecommendedCard)\n // buildData \u66F4\u65B0\u65F6\u9700\u8981\u91CD\u65B0\u8BA1\u7B97\u5F53\u524D\u5217\u8868\n }, [buildData])\n\n const safeTabKey = sanitizeCssSelector(tabId)\n const swiperInstanceId = `${instanceIdRef.current}-${safeTabKey}`\n\n return (\n <div\n ref={innerRef}\n className={cn('shelf-display-wrap w-full', className, { 'aiui-dark': data?.theme === 'dark' })}\n >\n {title && <Title data={{ title: title }} />}\n {isShowTab && (\n <div className=\"md-tablet:w-full md-tablet:overflow-hidden\">\n <TabSwitch\n value={tabId}\n tabs={productsTab}\n tabShape={tabShape}\n onTabClick={v => {\n setTabId(v?.tab)\n handleCurrentTab(v?.data || [], v?.isShowRecommendedTab)\n if (!v?.isShowRecommendedTab) {\n gaTrack({\n event: 'ga4Event',\n event_name: 'component_click',\n event_parameters: {\n page_group: 'Home Page',\n component_type: componentType,\n component_name: componentName,\n component_title: data?.title,\n component_position: 1,\n navigation: v?.tab,\n },\n })\n return\n }\n gackViewEvent()\n }}\n />\n </div>\n )}\n <div\n ref={viewRef as any}\n className=\"tablet:min-h-[393px] laptop:min-h-[425px] desktop:min-h-[405px] lg-desktop:min-h-[409px]\"\n >\n <SwiperBox\n key={swiperInstanceId}\n data={{\n list: currentItems,\n configuration: {\n ...other,\n event: event,\n isShowTag,\n isShowOriginalPrice,\n target: target,\n metafields: metafields,\n itemLength: currentItems?.length,\n isDisplayBackImage: isDisplayBackImage,\n },\n }}\n id={swiperInstanceId}\n className={`${isShowTab ? 'mt-6' : ''} shelf-display-swiper-box !overflow-visible`}\n itemClassName={isShowGudgments ? 'flex-1' : ''}\n Slide={isShowGudgments ? ShelfDisplayHorizontalItem : ShelfDisplayWrapItem}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: isOnce ? 1 : 1.2,\n },\n 768: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(),\n },\n 1024: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(1024),\n },\n 1440: {\n spaceBetween: isOnce ? 0 : 16,\n freeMode: false,\n slidesPerView: showItemLength(1440),\n },\n }\n }\n />\n </div>\n </div>\n )\n }\n)\n\nexport default withLayout(ShelfDisplay)\n"],
5
+ "mappings": "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",
6
6
  "names": ["jsx", "jsxs", "React", "useState", "useEffect", "useRef", "useImperativeHandle", "cn", "TabSwitch", "Title", "SwiperBox", "withLayout", "gaTrack", "useMediaQuery", "useRollout", "ShelfDisplayWrapItem", "ShelfDisplayHorizontalItem", "componentType", "componentName", "sanitizeCssSelector", "value", "createInstanceId", "ShelfDisplay", "key", "data", "event", "buildData", "breakpoints", "className", "recommendedData", "target", "metafields", "isDisplayGudgments", "isDisplayBackImage", "ref", "productsTab", "productsCard", "title", "isShowTab", "tabShape", "isShowTag", "isShowOriginalPrice", "isShowRecommendedCard", "other", "tabId", "setTabId", "currentItems", "setCurrentItems", "isView", "isRecommend", "innerRef", "instanceIdRef", "isMobile", "viewRef", "inView", "isOnce", "isShowGudgments", "showItemLength", "size", "gackViewEvent", "item", "index", "variant", "v", "handleCurrentTab", "currentData", "flag", "newCurrentData", "findData", "params", "currentTab", "safeTabKey", "swiperInstanceId", "ShelfDisplay_default"]
7
7
  }
@@ -3,7 +3,7 @@ import type { SloganProps } from './types.js';
3
3
  export declare const componentType = "copy";
4
4
  export declare const componentName = "brand_slogan";
5
5
  declare const _default: React.ForwardRefExoticComponent<Omit<Omit<SloganProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
6
- className?: string;
7
- data?: Record<string, any>;
6
+ className?: string | undefined;
7
+ data?: Record<string, any> | undefined;
8
8
  }, "ref"> & React.RefAttributes<any>>;
9
9
  export default _default;
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as r,jsxs as G}from"react/jsx-runtime";import l,{useImperativeHandle as q,useRef as i,useEffect as B}from"react";import{gsap as h}from"gsap";import{SplitText as z}from"gsap/dist/SplitText";import{ScrollTrigger as R}from"gsap/dist/ScrollTrigger";import{cn as p}from"../../helpers/utils.js";import{Heading as J,Text as K}from"../../components/index.js";import{withLayout as O}from"../../shared/Styles.js";import{useInView as Q}from"react-intersection-observer";const lt="copy",it="brand_slogan";function W(f=[],m=3){const g=[];for(let n=0;n<f.length;n+=m)g.push(f.slice(n,n+m));return g}const D=l.forwardRef(({data:f,className:m=""},g)=>{const{title:n,features:o=[],featureChunkSize:H=3}=f,[v,N]=l.useState(0),[j,w]=l.useState(!0),k=i(null),y=i(null),b=i(null),d=W(o,H),T=d.length,a=o.length>H,C=a?[...d,d[0]]:d,E=40;q(g,()=>k.current);const{ref:P,inView:I}=Q();l.useEffect(()=>{if(!a)return;const t=setInterval(()=>{N(e=>e+1),w(!0)},3e3);return()=>clearInterval(t)},[T,a]),l.useEffect(()=>{if(a)if(v===T){const t=setTimeout(()=>{w(!1),N(0)},500);return()=>clearTimeout(t)}else w(!0)},[v,T,a]);const c=i(null),M=i(null),x=i(null);return B(()=>{h.registerPlugin(R,z);function t(){if(!c.current)return;x.current=new z(c.current,{type:"words",wordsClass:"word"});const e=c.current?.clientHeight||100,u=x.current.words;h.set(u,{opacity:0}),y.current=R.create({trigger:c.current,start:"bottom bottom-=4%",end:`bottom+=${e*1.5}px bottom-=4%`,scrub:!0,onUpdate:s=>{const V=s.progress,L=u.length,F=1/L,$=.5;u.forEach((U,A)=>{const Y=A/L*(1-$),_=F*(1+$);let S=(V-Y)/_;S=Math.max(0,Math.min(S,1)),h.set(U,{opacity:S})})}}),o&&o.length>0&&(b.current=R.create({trigger:M.current,start:`bottom+=${e*2}px bottom-=6%`,end:`bottom+=${e*2+100}px bottom-=6%`,onUpdate:s=>{h.set(M.current,{opacity:s.progress})}}))}return I&&t(),()=>{x.current&&x.current.revert(),y.current&&y.current.kill(),b.current&&b.current.kill()}},[I]),r("div",{ref:P,children:G("div",{ref:k,className:p("slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center",m),children:[r(J,{ref:c,as:"h1",size:2,weight:"bold",align:"left",className:p("slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none"),html:n}),o&&o.length>0&&r("div",{className:p("relative w-full max-w-[500px] overflow-hidden",`tablet:h-[${E}px]`),children:r("div",{className:p(["flex flex-col",j?"transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]":"!transition-none"]),style:{transform:`translateY(-${v*E}px)`},children:C.map((t,e)=>r("div",{className:p("laptop:justify-end flex w-full flex-row items-stretch gap-3 overflow-hidden",`tablet:h-[${E}px]`),children:t.map((u,s)=>G(l.Fragment,{children:[s>0&&r("div",{className:"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]"}),r(K,{size:3,align:"left",as:"p",className:"slogan-feature-text laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]",html:u.title})]},s))},e))})})]})})});D.displayName="Slogan";var at=O(D);export{it as componentName,lt as componentType,at as default};
1
+ "use client";import{jsx as r,jsxs as G}from"react/jsx-runtime";import l,{useImperativeHandle as q,useRef as i,useEffect as B}from"react";import{gsap as h}from"gsap";import{SplitText as z}from"gsap/dist/SplitText";import{ScrollTrigger as R}from"gsap/dist/ScrollTrigger";import{cn as p}from"../../helpers/utils.js";import{Heading as J,Text as K}from"../../components/index.js";import{withLayout as O}from"../../shared/Styles.js";import{useInView as Q}from"react-intersection-observer";const lt="copy",it="brand_slogan";function W(f=[],m=3){const g=[];for(let n=0;n<f.length;n+=m)g.push(f.slice(n,n+m));return g}const D=l.forwardRef(({data:f,className:m=""},g)=>{const{title:n,features:o=[],featureChunkSize:H=3}=f,[v,N]=l.useState(0),[j,w]=l.useState(!0),k=i(null),y=i(null),b=i(null),d=W(o,H),T=d.length,a=o.length>H,C=a?[...d,d[0]]:d,E=40;q(g,()=>k.current);const{ref:P,inView:I}=Q();l.useEffect(()=>{if(!a)return;const t=setInterval(()=>{N(e=>e+1),w(!0)},3e3);return()=>clearInterval(t)},[T,a]),l.useEffect(()=>{if(a)if(v===T){const t=setTimeout(()=>{w(!1),N(0)},500);return()=>clearTimeout(t)}else w(!0)},[v,T,a]);const c=i(null),M=i(null),x=i(null);return B(()=>{h.registerPlugin(R,z);function t(){if(!c.current)return;x.current=new z(c.current,{type:"words",wordsClass:"word"});const e=c.current?.clientHeight||100,u=x.current.words;h.set(u,{opacity:0}),y.current=R.create({trigger:c.current,start:"bottom bottom-=4%",end:`bottom+=${e*1.5}px bottom-=4%`,scrub:!0,onUpdate:s=>{const V=s.progress,L=u.length,F=1/L,$=.5;u.forEach((U,A)=>{const Y=A/L*(1-$),_=F*(1+$);let S=(V-Y)/_;S=Math.max(0,Math.min(S,1)),h.set(U,{opacity:S})})}}),o&&o.length>0&&(b.current=R.create({trigger:M.current,start:`bottom+=${e*2}px bottom-=6%`,end:`bottom+=${e*2+100}px bottom-=6%`,onUpdate:s=>{h.set(M.current,{opacity:s.progress})}}))}return I&&t(),()=>{x.current&&x.current.revert(),y.current&&y.current.kill(),b.current&&b.current.kill()}},[I]),r("div",{ref:P,children:G("div",{ref:k,className:p("slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center",m),children:[r(J,{ref:c,as:"h2",size:2,weight:"bold",align:"left",className:p("slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none"),html:n}),o&&o.length>0&&r("div",{className:p("relative w-full max-w-[500px] overflow-hidden",`tablet:h-[${E}px]`),children:r("div",{className:p(["flex flex-col",j?"transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]":"!transition-none"]),style:{transform:`translateY(-${v*E}px)`},children:C.map((t,e)=>r("div",{className:p("laptop:justify-end flex w-full flex-row items-stretch gap-3 overflow-hidden",`tablet:h-[${E}px]`),children:t.map((u,s)=>G(l.Fragment,{children:[s>0&&r("div",{className:"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]"}),r(K,{size:3,align:"left",as:"p",className:"slogan-feature-text laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]",html:u.title})]},s))},e))})})]})})});D.displayName="Slogan";var at=O(D);export{it as componentName,lt as componentType,at as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/Slogan/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport React, { useImperativeHandle, useRef, useEffect } from 'react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\nimport { useInView } from 'react-intersection-observer'\n\nexport const componentType = 'copy'\nexport const componentName = 'brand_slogan'\n\nfunction chunkArray(array: { title: string }[] = [], size: number = 3) {\n const result = []\n for (let i = 0; i < array.length; i += size) {\n result.push(array.slice(i, i + size))\n }\n return result\n}\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ data, className = '' }, ref) => {\n const { title, features = [], featureChunkSize = 3 } = data\n const [groupIndex, setGroupIndex] = React.useState(0)\n const [isTransitioning, setIsTransitioning] = React.useState(true)\n const innerRef = useRef<HTMLDivElement>(null)\n const scrollTriggerRef = useRef<ScrollTrigger | null>(null)\n const featuresTriggerRef = useRef<ScrollTrigger | null>(null)\n const featuresGroups = chunkArray(features, featureChunkSize)\n const totalGroups = featuresGroups.length\n const needCarousel = features.length > featureChunkSize\n const displayGroups = needCarousel ? [...featuresGroups, featuresGroups[0]] : featuresGroups\n const groupHeight = 40\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n const { ref: inViewRef, inView } = useInView()\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u542F\u7528\u5B9A\u65F6\u5668\n React.useEffect(() => {\n if (!needCarousel) return\n const timer = setInterval(() => {\n setGroupIndex(i => i + 1)\n setIsTransitioning(true)\n }, 3000)\n return () => clearInterval(timer)\n }, [totalGroups, needCarousel])\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u5904\u7406\u65E0\u7F1D\u8DF3\u8F6C\n React.useEffect(() => {\n if (!needCarousel) return\n if (groupIndex === totalGroups) {\n const handle = setTimeout(() => {\n setIsTransitioning(false)\n setGroupIndex(0)\n }, 500) // 500ms\u7B49\u4E8E\u52A8\u753B\u65F6\u957F\n return () => clearTimeout(handle)\n } else {\n setIsTransitioning(true)\n }\n }, [groupIndex, totalGroups, needCarousel])\n\n // \u6807\u9898\u52A8\u753B\u903B\u8F91\u4FDD\u6301\u4E0D\u53D8\n const titleRef = useRef<HTMLHeadingElement>(null)\n const featuresRef = useRef<HTMLDivElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n\n useEffect(() => {\n gsap.registerPlugin(ScrollTrigger, SplitText)\n\n function gsapResize() {\n if (!titleRef.current) return\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const height = titleRef.current?.clientHeight || 100\n\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n scrollTriggerRef.current = ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=4%',\n end: `bottom+=${height * 1.5}px bottom-=4%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n\n if (features && features.length > 0) {\n featuresTriggerRef.current = ScrollTrigger.create({\n trigger: featuresRef.current,\n start: `bottom+=${height * 2}px bottom-=6%`,\n end: `bottom+=${height * 2 + 100}px bottom-=6%`,\n onUpdate: (self: any) => {\n gsap.set(featuresRef.current, { opacity: self.progress })\n },\n })\n }\n }\n\n if (inView) {\n gsapResize()\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n // ScrollTrigger.getAll().forEach((t: any) => t.kill())\n scrollTriggerRef.current && scrollTriggerRef.current.kill()\n featuresTriggerRef.current && featuresTriggerRef.current.kill()\n }\n }, [inView])\n\n return (\n <div ref={inViewRef}>\n <div\n ref={innerRef}\n className={cn(\n 'slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center',\n className\n )}\n >\n <Heading\n ref={titleRef}\n as=\"h1\"\n size={2}\n weight={'bold'}\n align={'left'}\n className={cn(\n 'slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none'\n )}\n html={title}\n />\n {features && features.length > 0 && (\n <div className={cn('relative w-full max-w-[500px] overflow-hidden', `tablet:h-[${groupHeight}px]`)}>\n <div\n className={cn([\n 'flex flex-col',\n isTransitioning\n ? 'transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]'\n : '!transition-none',\n ])}\n style={{\n transform: `translateY(-${groupIndex * groupHeight}px)`,\n }}\n >\n {displayGroups.map((group, idx) => (\n <div\n className={cn(\n 'laptop:justify-end flex w-full flex-row items-stretch gap-3 overflow-hidden',\n `tablet:h-[${groupHeight}px]`\n )}\n key={idx}\n >\n {group.map((feature, index) => (\n <React.Fragment key={index}>\n {index > 0 && <div className=\"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]\" />}\n <Text\n size={3}\n align=\"left\"\n as=\"p\"\n className=\"slogan-feature-text laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]\"\n html={feature.title}\n />\n </React.Fragment>\n ))}\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n </div>\n )\n})\n\nSlogan.displayName = 'Slogan'\n\nexport default withLayout(Slogan)\n"],
4
+ "sourcesContent": ["'use client'\nimport React, { useImperativeHandle, useRef, useEffect } from 'react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\nimport { useInView } from 'react-intersection-observer'\n\nexport const componentType = 'copy'\nexport const componentName = 'brand_slogan'\n\nfunction chunkArray(array: { title: string }[] = [], size: number = 3) {\n const result = []\n for (let i = 0; i < array.length; i += size) {\n result.push(array.slice(i, i + size))\n }\n return result\n}\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ data, className = '' }, ref) => {\n const { title, features = [], featureChunkSize = 3 } = data\n const [groupIndex, setGroupIndex] = React.useState(0)\n const [isTransitioning, setIsTransitioning] = React.useState(true)\n const innerRef = useRef<HTMLDivElement>(null)\n const scrollTriggerRef = useRef<ScrollTrigger | null>(null)\n const featuresTriggerRef = useRef<ScrollTrigger | null>(null)\n const featuresGroups = chunkArray(features, featureChunkSize)\n const totalGroups = featuresGroups.length\n const needCarousel = features.length > featureChunkSize\n const displayGroups = needCarousel ? [...featuresGroups, featuresGroups[0]] : featuresGroups\n const groupHeight = 40\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n const { ref: inViewRef, inView } = useInView()\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u542F\u7528\u5B9A\u65F6\u5668\n React.useEffect(() => {\n if (!needCarousel) return\n const timer = setInterval(() => {\n setGroupIndex(i => i + 1)\n setIsTransitioning(true)\n }, 3000)\n return () => clearInterval(timer)\n }, [totalGroups, needCarousel])\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u5904\u7406\u65E0\u7F1D\u8DF3\u8F6C\n React.useEffect(() => {\n if (!needCarousel) return\n if (groupIndex === totalGroups) {\n const handle = setTimeout(() => {\n setIsTransitioning(false)\n setGroupIndex(0)\n }, 500) // 500ms\u7B49\u4E8E\u52A8\u753B\u65F6\u957F\n return () => clearTimeout(handle)\n } else {\n setIsTransitioning(true)\n }\n }, [groupIndex, totalGroups, needCarousel])\n\n // \u6807\u9898\u52A8\u753B\u903B\u8F91\u4FDD\u6301\u4E0D\u53D8\n const titleRef = useRef<HTMLHeadingElement>(null)\n const featuresRef = useRef<HTMLDivElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n\n useEffect(() => {\n gsap.registerPlugin(ScrollTrigger, SplitText)\n\n function gsapResize() {\n if (!titleRef.current) return\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const height = titleRef.current?.clientHeight || 100\n\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n scrollTriggerRef.current = ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=4%',\n end: `bottom+=${height * 1.5}px bottom-=4%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n\n if (features && features.length > 0) {\n featuresTriggerRef.current = ScrollTrigger.create({\n trigger: featuresRef.current,\n start: `bottom+=${height * 2}px bottom-=6%`,\n end: `bottom+=${height * 2 + 100}px bottom-=6%`,\n onUpdate: (self: any) => {\n gsap.set(featuresRef.current, { opacity: self.progress })\n },\n })\n }\n }\n\n if (inView) {\n gsapResize()\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n // ScrollTrigger.getAll().forEach((t: any) => t.kill())\n scrollTriggerRef.current && scrollTriggerRef.current.kill()\n featuresTriggerRef.current && featuresTriggerRef.current.kill()\n }\n }, [inView])\n\n return (\n <div ref={inViewRef}>\n <div\n ref={innerRef}\n className={cn(\n 'slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center',\n className\n )}\n >\n <Heading\n ref={titleRef}\n as=\"h2\"\n size={2}\n weight={'bold'}\n align={'left'}\n className={cn(\n 'slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none'\n )}\n html={title}\n />\n {features && features.length > 0 && (\n <div className={cn('relative w-full max-w-[500px] overflow-hidden', `tablet:h-[${groupHeight}px]`)}>\n <div\n className={cn([\n 'flex flex-col',\n isTransitioning\n ? 'transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]'\n : '!transition-none',\n ])}\n style={{\n transform: `translateY(-${groupIndex * groupHeight}px)`,\n }}\n >\n {displayGroups.map((group, idx) => (\n <div\n className={cn(\n 'laptop:justify-end flex w-full flex-row items-stretch gap-3 overflow-hidden',\n `tablet:h-[${groupHeight}px]`\n )}\n key={idx}\n >\n {group.map((feature, index) => (\n <React.Fragment key={index}>\n {index > 0 && <div className=\"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]\" />}\n <Text\n size={3}\n align=\"left\"\n as=\"p\"\n className=\"slogan-feature-text laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]\"\n html={feature.title}\n />\n </React.Fragment>\n ))}\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n </div>\n )\n})\n\nSlogan.displayName = 'Slogan'\n\nexport default withLayout(Slogan)\n"],
5
5
  "mappings": "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",
6
6
  "names": ["jsx", "jsxs", "React", "useImperativeHandle", "useRef", "useEffect", "gsap", "SplitText", "ScrollTrigger", "cn", "Heading", "Text", "withLayout", "useInView", "componentType", "componentName", "chunkArray", "array", "size", "result", "i", "Slogan", "data", "className", "ref", "title", "features", "featureChunkSize", "groupIndex", "setGroupIndex", "isTransitioning", "setIsTransitioning", "innerRef", "scrollTriggerRef", "featuresTriggerRef", "featuresGroups", "totalGroups", "needCarousel", "displayGroups", "groupHeight", "inViewRef", "inView", "timer", "handle", "titleRef", "featuresRef", "splitTextInstance", "gsapResize", "height", "words", "self", "progress", "total", "interval", "overlap", "word", "start", "width", "opacity", "group", "idx", "feature", "index", "Slogan_default"]
7
7
  }
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
2
  import type { SpacerProps } from './types.js';
3
3
  declare const _default: React.ForwardRefExoticComponent<Omit<Omit<SpacerProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
- className?: string;
5
- data?: Record<string, any>;
4
+ className?: string | undefined;
5
+ data?: Record<string, any> | undefined;
6
6
  }, "ref"> & React.RefAttributes<any>>;
7
7
  export default _default;
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as c}from"react/jsx-runtime";import o from"react";import{cn as a}from"../../helpers/utils.js";import{withLayout as s}from"../../shared/Styles.js";const p=o.forwardRef(({className:t,data:r},f)=>{const{space:e="default"}=r;return c("div",{className:a("ipc_spacer",e==="default"&&"laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16",e==="fixed"&&"h-16",t)})});p.displayName="Spacer";var m=s(p);export{m as default};
1
+ "use client";import{jsx as c}from"react/jsx-runtime";import a from"react";import{cn as o}from"../../helpers/utils.js";import{withLayout as s}from"../../shared/Styles.js";const p=a.forwardRef(({className:t,data:r},i)=>{const{space:e="default"}=r;return c("div",{className:o("ipc_spacer","relative z-[5]",e==="default"&&"laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16",e==="fixed"&&"h-16",t)})});p.displayName="Spacer";var m=s(p);export{m as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/Spacer/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { SpacerProps } from './types.js'\n\nconst Spacer = React.forwardRef<HTMLDivElement, SpacerProps>(({ className, data }, ref) => {\n const { space = 'default' } = data\n return (\n <div\n className={cn(\n 'ipc_spacer',\n space === 'default' && 'laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16',\n space === 'fixed' && 'h-16',\n className\n )}\n ></div>\n )\n})\n\nSpacer.displayName = 'Spacer'\n\nexport default withLayout(Spacer)\n"],
5
- "mappings": "aASI,cAAAA,MAAA,oBARJ,OAAOC,MAAW,QAClB,OAAS,MAAAC,MAAU,yBACnB,OAAS,cAAAC,MAAkB,yBAG3B,MAAMC,EAASH,EAAM,WAAwC,CAAC,CAAE,UAAAI,EAAW,KAAAC,CAAK,EAAGC,IAAQ,CACzF,KAAM,CAAE,MAAAC,EAAQ,SAAU,EAAIF,EAC9B,OACEN,EAAC,OACC,UAAWE,EACT,aACAM,IAAU,WAAa,qEACvBA,IAAU,SAAW,OACrBH,CACF,EACD,CAEL,CAAC,EAEDD,EAAO,YAAc,SAErB,IAAOK,EAAQN,EAAWC,CAAM",
4
+ "sourcesContent": ["'use client'\nimport React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { SpacerProps } from './types.js'\n\nconst Spacer = React.forwardRef<HTMLDivElement, SpacerProps>(({ className, data }, ref) => {\n const { space = 'default' } = data\n return (\n <div\n className={cn(\n 'ipc_spacer',\n 'relative z-[5]',\n space === 'default' && 'laptop:h-16 desktop:h-[96px] lg-desktop:h-[128px] tablet:h-16 h-16',\n space === 'fixed' && 'h-16',\n className\n )}\n ></div>\n )\n})\n\nSpacer.displayName = 'Spacer'\n\nexport default withLayout(Spacer)\n"],
5
+ "mappings": "aASI,cAAAA,MAAA,oBARJ,OAAOC,MAAW,QAClB,OAAS,MAAAC,MAAU,yBACnB,OAAS,cAAAC,MAAkB,yBAG3B,MAAMC,EAASH,EAAM,WAAwC,CAAC,CAAE,UAAAI,EAAW,KAAAC,CAAK,EAAGC,IAAQ,CACzF,KAAM,CAAE,MAAAC,EAAQ,SAAU,EAAIF,EAC9B,OACEN,EAAC,OACC,UAAWE,EACT,aACA,iBACAM,IAAU,WAAa,qEACvBA,IAAU,SAAW,OACrBH,CACF,EACD,CAEL,CAAC,EAEDD,EAAO,YAAc,SAErB,IAAOK,EAAQN,EAAWC,CAAM",
6
6
  "names": ["jsx", "React", "cn", "withLayout", "Spacer", "className", "data", "ref", "space", "Spacer_default"]
7
7
  }
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
2
  declare const _default: React.ForwardRefExoticComponent<Omit<Omit<Omit<any, "ref"> & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
3
- className?: string;
4
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
5
5
  }, "ref"> & React.RefAttributes<any>>;
6
6
  export default _default;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { SpecsComparisonProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<SpecsComparisonProps & 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 client";import{jsx as o,jsxs as i}from"react/jsx-runtime";import S,{useRef as u,useImperativeHandle as E,useState as C}from"react";import{Heading as v}from"../../components/index.js";import{cn as l}from"../../helpers/utils.js";import{withLayout as H}from"../../shared/Styles.js";import{useExposure as L}from"../../hooks/useExposure.js";const M="specs",R="specs_comparison",f=S.forwardRef(({data:_,className:b},g)=>{const{LeftMenu:n,RightMenu:c}=_||{},[w,h]=C(""),m=u({}),r=u(null);L(r,{componentType:M,componentName:R,componentTitle:"Specs Comparison"}),E(g,()=>r.current);const p=e=>e?o("div",{className:"specs-comparison__value-wrapper break-all",children:o("p",{className:"specs-comparison__value min-xl:text-base min-xxl:text-lg text-sm font-bold text-[#1D1D1F]",dangerouslySetInnerHTML:{__html:e||""}})}):null,N=e=>e.map((s,a)=>{const F=a===0,d=c?.menus?.[0]?.subTitle,t=c?.menus?.[1]?.subTitle,D=t&&t[s],T=/^[✅❌]$/,x=D&&(t[s]!==d?.[s]||T.test(t[s]));return i("div",{className:l("specs-comparison__row l:flex-col box-border flex w-full overflow-hidden border-t border-t-[#E4E5E6]",F&&"specs-comparison__row--first border-t-0"),children:[o(v,{as:"h3",html:s||"",className:"specs-comparison__spec-label l:text-lg min-l:min-w-[216px] min-l:max-w-[216px] min-xl:min-w-[268px] min-xl:max-w-[268px] min-xl:p-6 min-xxl:min-w-[356px] min-xxl:max-w-[356px] min-xxl:text-lg mr-4 flex-1 pt-4 text-base font-bold text-[#000000]"}),i("div",{className:l("specs-comparison__values-grid l:w-full l:gap-4 min-l:gap-8 min-xl:gap-12 min-xl:p-6 min-xxl:gap-16 grid flex-1 place-self-center pb-4 pt-2",x?"specs-comparison__values-grid--double grid-cols-2":"specs-comparison__values-grid--single grid-cols-1"),children:[p(d?.[s]),x&&p(t?.[s])]})]},s)}),y=e=>{const{subTitle:s}=e;return N(s)};return o("div",{ref:r,"data-ui-component-id":"SpecsComparison",className:l("specs-comparison w-full overflow-hidden bg-[#F5F5F7]",b),children:o("div",{className:"specs-comparison__container container mx-auto",children:n?.data?i("div",{className:"specs-comparison__wrapper min-l:mb-24 min-xl:mb-32 my-16 box-border flex w-full overflow-hidden",children:[n.data.length>1?o("div",{className:"specs-comparison__sidebar l:hidden min-l:mr-6 min-xl:mr-12 flex",children:o("div",{className:"specs-comparison__nav min-l:w-[196px] min-xl:w-[284px] min-xxl:w-[356px] box-border overflow-hidden",children:n.data.map(e=>o("div",{onClick:()=>{h(e.title),m.current[e.title]?.scrollIntoView({behavior:"smooth"})},title:e.title||"",className:l("specs-comparison__nav-item rounded-btn min-xxl:py-4 min-xxl:text-lg box-border cursor-pointer overflow-hidden truncate px-6 py-2 text-base font-bold leading-9 text-[#1D1D1F]",w===e.title&&"specs-comparison__nav-item--active bg-[#FFFFFF]"),children:e.title||""},e.title))})}):null,o("div",{className:"specs-comparison__content box-border flex-1 overflow-hidden",children:o("div",{className:"specs-comparison__sections w-full",children:n.data.map((e,s)=>i("div",{className:"specs-comparison__section w-full overflow-hidden pt-10 first:pt-0",ref:a=>{m.current[e.title]=a},children:[e.title&&o(v,{as:"h2",className:"specs-comparison__section-title min-l:text-[32px] mb-6 text-2xl font-bold",html:e.title||""}),y(e)]},s))})})]}):null})})});f.displayName="SpecsComparison";var j=H(f);export{j as default};
2
+ //# sourceMappingURL=SpecsComparison.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/SpecsComparison/SpecsComparison.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useRef, useImperativeHandle, useState } from 'react'\nimport { Heading } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport type { SpecsComparisonProps } from './types.js'\n\nconst componentType = 'specs'\nconst componentName = 'specs_comparison'\n\nconst SpecsComparison = React.forwardRef<HTMLDivElement, SpecsComparisonProps>(({ data, className }, ref) => {\n const { LeftMenu, RightMenu } = data || {}\n const [selectItem, setSelectItem] = useState('')\n const refs = useRef<Record<string, HTMLDivElement | null>>({})\n\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: 'Specs Comparison',\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n const normalNode = (v: string) => {\n if (!v) return null\n return (\n <div className=\"specs-comparison__value-wrapper break-all\">\n <p\n className=\"specs-comparison__value min-xl:text-base min-xxl:text-lg text-sm font-bold text-[#1D1D1F]\"\n dangerouslySetInnerHTML={{\n __html: v || '',\n }}\n />\n </div>\n )\n }\n\n const productNode = (subTitle: string[]) => {\n return subTitle.map((st, idx) => {\n const isFirstParameter = idx === 0\n const leftData = RightMenu?.menus?.[0]?.subTitle\n const rightData = RightMenu?.menus?.[1]?.subTitle\n const hasRightData = rightData && rightData[st]\n const reg = /^[\u2705\u274C]$/\n const isSame = hasRightData && (rightData[st] !== leftData?.[st] || reg.test(rightData[st]))\n\n return (\n <div\n key={st}\n className={cn(\n 'specs-comparison__row l:flex-col box-border flex w-full overflow-hidden border-t border-t-[#E4E5E6]',\n isFirstParameter && 'specs-comparison__row--first border-t-0'\n )}\n >\n <Heading\n as=\"h3\"\n html={st || ''}\n className=\"specs-comparison__spec-label l:text-lg min-l:min-w-[216px] min-l:max-w-[216px] min-xl:min-w-[268px] min-xl:max-w-[268px] min-xl:p-6 min-xxl:min-w-[356px] min-xxl:max-w-[356px] min-xxl:text-lg mr-4 flex-1 pt-4 text-base font-bold text-[#000000]\"\n />\n <div\n className={cn(\n 'specs-comparison__values-grid l:w-full l:gap-4 min-l:gap-8 min-xl:gap-12 min-xl:p-6 min-xxl:gap-16 grid flex-1 place-self-center pb-4 pt-2',\n isSame\n ? 'specs-comparison__values-grid--double grid-cols-2'\n : 'specs-comparison__values-grid--single grid-cols-1'\n )}\n >\n {normalNode(leftData?.[st])}\n {isSame && normalNode(rightData?.[st])}\n </div>\n </div>\n )\n })\n }\n\n const childrenNode = (node: { subTitle: string[]; isProduct?: boolean }) => {\n const { subTitle } = node\n return productNode(subTitle)\n }\n\n return (\n <div\n ref={boxRef}\n data-ui-component-id=\"SpecsComparison\"\n className={cn('specs-comparison w-full overflow-hidden bg-[#F5F5F7]', className)}\n >\n <div className=\"specs-comparison__container container mx-auto\">\n {LeftMenu?.data ? (\n <div className=\"specs-comparison__wrapper min-l:mb-24 min-xl:mb-32 my-16 box-border flex w-full overflow-hidden\">\n {LeftMenu.data.length > 1 ? (\n <div className=\"specs-comparison__sidebar l:hidden min-l:mr-6 min-xl:mr-12 flex\">\n <div className=\"specs-comparison__nav min-l:w-[196px] min-xl:w-[284px] min-xxl:w-[356px] box-border overflow-hidden\">\n {LeftMenu.data.map(item => {\n return (\n <div\n key={item.title}\n onClick={() => {\n setSelectItem(item.title)\n const el = refs.current[item.title]\n el?.scrollIntoView({ behavior: 'smooth' })\n }}\n title={item.title || ''}\n className={cn(\n 'specs-comparison__nav-item rounded-btn min-xxl:py-4 min-xxl:text-lg box-border cursor-pointer overflow-hidden truncate px-6 py-2 text-base font-bold leading-9 text-[#1D1D1F]',\n selectItem === item.title && 'specs-comparison__nav-item--active bg-[#FFFFFF]'\n )}\n >\n {item.title || ''}\n </div>\n )\n })}\n </div>\n </div>\n ) : null}\n <div className=\"specs-comparison__content box-border flex-1 overflow-hidden\">\n <div className=\"specs-comparison__sections w-full\">\n {LeftMenu.data.map((item, index) => {\n return (\n <div\n key={index}\n className=\"specs-comparison__section w-full overflow-hidden pt-10 first:pt-0\"\n ref={r => {\n refs.current[item.title] = r\n }}\n >\n {item.title && (\n <Heading\n as=\"h2\"\n className=\"specs-comparison__section-title min-l:text-[32px] mb-6 text-2xl font-bold\"\n html={item.title || ''}\n />\n )}\n {childrenNode(item)}\n </div>\n )\n })}\n </div>\n </div>\n </div>\n ) : null}\n </div>\n </div>\n )\n})\n\nSpecsComparison.displayName = 'SpecsComparison'\n\nexport default withLayout(SpecsComparison)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "React", "useRef", "useImperativeHandle", "useState", "Heading", "cn", "withLayout", "useExposure", "componentType", "componentName", "SpecsComparison", "data", "className", "ref", "LeftMenu", "RightMenu", "selectItem", "setSelectItem", "refs", "boxRef", "normalNode", "v", "productNode", "subTitle", "st", "idx", "isFirstParameter", "leftData", "rightData", "hasRightData", "reg", "isSame", "childrenNode", "node", "item", "index", "r", "SpecsComparison_default"]
7
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './SpecsComparison.js';
2
+ export type { SpecsComparisonProps, SpecsComparisonMenuItem, SpecsComparisonLeftMenuItem } from './types.js';
@@ -0,0 +1,2 @@
1
+ import{default as p}from"./SpecsComparison.js";export{p as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/SpecsComparison/index.ts"],
4
+ "sourcesContent": ["export { default } from './SpecsComparison.js'\nexport type { SpecsComparisonProps, SpecsComparisonMenuItem, SpecsComparisonLeftMenuItem } from './types.js'\n"],
5
+ "mappings": "AAAA,OAAS,WAAAA,MAAe",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,34 @@
1
+ export interface SpecsComparisonMenuItem {
2
+ /** 产品 SKU */
3
+ sku: string;
4
+ /** 产品 handle */
5
+ handle: string;
6
+ /** 规格数据,key 为规格项名称,value 为规格值 */
7
+ subTitle: Record<string, string>;
8
+ }
9
+ export interface SpecsComparisonLeftMenuItem {
10
+ /** 分类标题 */
11
+ title: string;
12
+ /** 规格项列表 */
13
+ subTitle: string[];
14
+ /** 是否为产品规格 */
15
+ isProduct?: boolean;
16
+ }
17
+ export interface SpecsComparisonProps {
18
+ data: {
19
+ /** 左侧菜单配置 */
20
+ LeftMenu: {
21
+ data: SpecsComparisonLeftMenuItem[];
22
+ };
23
+ /** 右侧产品列表配置 */
24
+ RightMenu: {
25
+ menus: SpecsComparisonMenuItem[];
26
+ };
27
+ /** 默认选中菜单配置 */
28
+ DefaultSelectMenu: {
29
+ buttonText: string;
30
+ };
31
+ };
32
+ /** 自定义类名 */
33
+ className?: string;
34
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { TabWithImageProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TabWithImageProps & 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 client";import{jsx as a,jsxs as s}from"react/jsx-runtime";import T,{useState as d,useEffect as N,useRef as x,useImperativeHandle as I}from"react";import{Heading as b,Picture as k,Text as D}from"../../components/index.js";import{cn as h}from"../../helpers/utils.js";import{withLayout as E}from"../../shared/Styles.js";import{useExposure as H}from"../../hooks/useExposure.js";import{motion as L,AnimatePresence as M}from"framer-motion";const W="image",P="tab_with_image",g=T.forwardRef(({data:u,className:f},w)=>{const{title:n,subtitle:R,desc:p,image:z,mobileImage:A,datalist:e=[]}=u,o=x(null);H(o,{componentType:W,componentName:P,componentTitle:n,componentDescription:p}),I(w,()=>o.current);const v=(m,i)=>{_(m),i.target.scrollIntoView({behavior:"smooth",inline:"center",block:"nearest"})},[t,_]=d(0),r=x([]),[c,y]=d({left:0,width:0});return N(()=>{const m=r.current[t];if(m){const{offsetLeft:i,offsetWidth:l}=m;y({left:i,width:l})}},[t,e.length]),s("section",{ref:o,"data-ui-component-id":"TabWithImage",className:h("tab-with-image l:gap-[24px] min-md:justify-between min-l:gap-[20px] flex text-white xl:flex-col",f),children:[s("div",{className:"tab-with-image__content min-md:gap-[24px] laptop:basis-[36%] inline-flex flex-col justify-center",children:[s("div",{className:"tab-with-image__header",children:[a(b,{as:"h3",size:4,html:n,className:"tab-with-image__title"}),a(D,{as:"p",size:1,html:p,className:"tab-with-image__description tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px] mt-[4px] text-[14px]"})]}),a("div",{className:"tab-with-image__tabs-wrapper md:scrollbar-hidden relative md:overflow-hidden md:overflow-x-scroll",children:s("div",{className:"tab-with-image__tabs rounded-btn relative inline-flex bg-[#1D1D1F] px-[4px] md:my-[24px]",children:[a("div",{className:"tab-with-image__slider rounded-btn absolute inset-y-0 bg-white transition-all duration-300 ease-in-out",style:{left:c.left,width:c.width}}),e.map((m,i)=>a("div",{ref:l=>{r.current[i]=l},onClick:l=>v(i,l),className:h("tab-with-image__tab rounded-btn min-xxl:px-[28px] min-xxl:py-[15px] relative z-10 cursor-pointer px-[20px] py-[10px] text-center text-[12px] font-medium transition-colors duration-300 md:px-[20px] md:py-[10px]",t===i?"tab-with-image__tab--active text-black":"text-white"),children:a(b,{as:"h1",size:1,html:m?.title,className:"tab-with-image__tab-title text-balance-normal !whitespace-nowrap md:text-[14px]"})},i))]})})]}),a("div",{className:"tab-with-image__image-wrapper min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] laptop:basis-[64%] desktop:aspect-[648/448] relative w-full shrink md:aspect-[358/360]",children:a(M,{mode:"wait",children:e[t]&&a(L.div,{initial:{opacity:0},animate:{opacity:1},exit:{opacity:0},transition:{duration:.3},className:"tab-with-image__image-motion absolute left-0 top-0 w-full",children:a(k,{source:`${e[t].image?.url} ,${e[t].imgPad?.url||e[t].image?.url} 1440, ${e[t].imageMob?.url||e[t].image?.url} 767`,alt:e[t].image?.alt,className:"tab-with-image__image rounded-box min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] desktop:aspect-[648/448] md:aspect-[358/360] "})},e[t].image?.url)})})]})});g.displayName="TabWithImage";var q=E(g);export{q as default};
2
+ //# sourceMappingURL=TabWithImage.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/TabWithImage/TabWithImage.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useState, useEffect, useRef, useImperativeHandle } from 'react'\nimport { Heading, 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 { TabWithImageProps, TabWithImageDataItem } from './types.js'\nimport { motion, AnimatePresence } from 'framer-motion'\n\nconst componentType = 'image'\nconst componentName = 'tab_with_image'\n\nconst TabWithImage = React.forwardRef<HTMLDivElement, TabWithImageProps>(({ data, className }, ref) => {\n const { title, subtitle, desc, image, mobileImage, datalist = [] } = data\n\n const boxRef = useRef<HTMLDivElement>(null)\n\n useExposure(boxRef, {\n componentType,\n componentName,\n componentTitle: title,\n componentDescription: desc,\n })\n\n useImperativeHandle(ref, () => boxRef.current as HTMLDivElement)\n\n const handleClick = (index: number, e: React.MouseEvent<HTMLDivElement>) => {\n setActiveIndex(index)\n ;(e.target as HTMLElement).scrollIntoView({\n behavior: 'smooth', // \u5E73\u6ED1\u6EDA\u52A8\n inline: 'center', // \u6A2A\u5411\u5C45\u4E2D\u5BF9\u9F50\n block: 'nearest', // \u5782\u76F4\u65B9\u5411\u4E0D\u52A8\n })\n }\n\n const [activeIndex, setActiveIndex] = useState(0)\n const tabRefs = useRef<Array<HTMLDivElement | null>>([]) // \u8BB0\u5F55\u6BCF\u4E2Atab\u7684\u4F4D\u7F6E\n const [sliderStyle, setSliderStyle] = useState({ left: 0, width: 0 })\n\n useEffect(() => {\n const current = tabRefs.current[activeIndex]\n if (current) {\n const { offsetLeft, offsetWidth } = current\n setSliderStyle({ left: offsetLeft, width: offsetWidth })\n }\n }, [activeIndex, datalist.length])\n\n return (\n <section\n ref={boxRef}\n data-ui-component-id=\"TabWithImage\"\n className={cn(\n 'tab-with-image l:gap-[24px] min-md:justify-between min-l:gap-[20px] flex text-white xl:flex-col',\n className\n )}\n >\n <div className=\"tab-with-image__content min-md:gap-[24px] laptop:basis-[36%] inline-flex flex-col justify-center\">\n <div className=\"tab-with-image__header\">\n <Heading as={'h3'} size={4} html={title} className=\"tab-with-image__title\" />\n <Text\n as={'p'}\n size={1}\n html={desc}\n className=\"tab-with-image__description tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px] mt-[4px] text-[14px]\"\n />\n </div>\n\n <div className=\"tab-with-image__tabs-wrapper md:scrollbar-hidden relative md:overflow-hidden md:overflow-x-scroll\">\n <div className=\"tab-with-image__tabs rounded-btn relative inline-flex bg-[#1D1D1F] px-[4px] md:my-[24px]\">\n {/* \u6ED1\u52A8\u80CC\u666F */}\n <div\n className=\"tab-with-image__slider rounded-btn absolute inset-y-0 bg-white transition-all duration-300 ease-in-out\"\n style={{\n left: sliderStyle.left,\n width: sliderStyle.width,\n }}\n />\n\n {/* Tab Items */}\n {datalist.map((item: TabWithImageDataItem, index: number) => (\n <div\n key={index}\n ref={el => {\n tabRefs.current[index] = el\n }}\n onClick={e => handleClick(index, e)}\n className={cn(\n 'tab-with-image__tab rounded-btn min-xxl:px-[28px] min-xxl:py-[15px] relative z-10 cursor-pointer px-[20px] py-[10px] text-center text-[12px] font-medium transition-colors duration-300 md:px-[20px] md:py-[10px]',\n activeIndex === index ? 'tab-with-image__tab--active text-black' : 'text-white'\n )}\n >\n <Heading\n as=\"h1\"\n size={1}\n html={item?.title}\n className=\"tab-with-image__tab-title text-balance-normal !whitespace-nowrap md:text-[14px]\"\n />\n </div>\n ))}\n </div>\n </div>\n </div>\n <div className=\"tab-with-image__image-wrapper min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] laptop:basis-[64%] desktop:aspect-[648/448] relative w-full shrink md:aspect-[358/360]\">\n <AnimatePresence mode=\"wait\">\n {datalist[activeIndex] && (\n <motion.div\n key={datalist[activeIndex].image?.url}\n {...({\n initial: { opacity: 0 },\n animate: { opacity: 1 },\n exit: { opacity: 0 },\n transition: { duration: 0.3 },\n } as any)}\n className=\"tab-with-image__image-motion absolute left-0 top-0 w-full\"\n >\n <Picture\n source={`${datalist[activeIndex].image?.url} ,${datalist[activeIndex].imgPad?.url || datalist[activeIndex].image?.url} 1440, ${datalist[activeIndex].imageMob?.url || datalist[activeIndex].image?.url} 767`}\n alt={datalist[activeIndex].image?.alt}\n className=\"tab-with-image__image rounded-box min-xxl:aspect-[824/560] min-xxl:max-w-[824px] tablet:aspect-[704/360] laptop:aspect-[744/336] desktop:aspect-[648/448] md:aspect-[358/360] \"\n />\n </motion.div>\n )}\n </AnimatePresence>\n </div>\n </section>\n )\n})\n\nTabWithImage.displayName = 'TabWithImage'\n\nexport default withLayout(TabWithImage)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "React", "useState", "useEffect", "useRef", "useImperativeHandle", "Heading", "Picture", "Text", "cn", "withLayout", "useExposure", "motion", "AnimatePresence", "componentType", "componentName", "TabWithImage", "data", "className", "ref", "title", "subtitle", "desc", "image", "mobileImage", "datalist", "boxRef", "handleClick", "index", "e", "setActiveIndex", "activeIndex", "tabRefs", "sliderStyle", "setSliderStyle", "current", "offsetLeft", "offsetWidth", "item", "el", "TabWithImage_default"]
7
+ }
@@ -0,0 +1,2 @@
1
+ export { default } from './TabWithImage.js';
2
+ export type { TabWithImageProps, TabWithImageDataItem } from './types.js';
@@ -0,0 +1,2 @@
1
+ import{default as a}from"./TabWithImage.js";export{a as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/TabWithImage/index.ts"],
4
+ "sourcesContent": ["export { default } from './TabWithImage.js'\nexport type { TabWithImageProps, TabWithImageDataItem } from './types.js'\n"],
5
+ "mappings": "AAAA,OAAS,WAAAA,MAAe",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,29 @@
1
+ import type { Media } from '../../types/props';
2
+ export interface TabWithImageDataItem {
3
+ /** 桌面端图片 URL */
4
+ image: Media;
5
+ /** 平板端图片 URL */
6
+ imgPad?: Media;
7
+ /** 移动端图片 URL */
8
+ imageMob?: Media;
9
+ /** Tab 标题 */
10
+ title: string;
11
+ }
12
+ export interface TabWithImageProps {
13
+ data: {
14
+ /** 主标题 */
15
+ title: string;
16
+ /** 副标题(可选) */
17
+ subtitle?: string;
18
+ /** 描述文本 */
19
+ desc: string;
20
+ /** 默认图片 URL(可选) */
21
+ image?: Media;
22
+ /** 默认移动端图片 URL(可选) */
23
+ mobileImage?: Media;
24
+ /** 数据列表 */
25
+ datalist: TabWithImageDataItem[];
26
+ };
27
+ /** 自定义类名 */
28
+ className?: string;
29
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,7 +1,7 @@
1
1
  import type { TabsProps } from './types.js';
2
2
  import React from 'react';
3
3
  declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TabsProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps & import("../../shared/Styles.js").ContainerProps> & {
4
- className?: string;
5
- data?: Record<string, any>;
4
+ className?: string | undefined;
5
+ data?: Record<string, any> | undefined;
6
6
  }, "ref"> & React.RefAttributes<any>>;
7
7
  export default _default;
@@ -1,2 +1,2 @@
1
- "use client";import{jsx as e,jsxs as t}from"react/jsx-runtime";import{withLayout as n}from"../../shared/Styles.js";import*as i from"../../components/tabs.js";import{cn as d}from"../../helpers/index.js";import u from"react";import b from"../ShelfDisplay/index.js";import y from"../AccordionCards/index.js";import h from"../Faq/index.js";import g from"../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js";import k from"../Title/index.js";import N from"../Graphic/index.js";const v=u.forwardRef(({data:o,className:m},l)=>{const{theme:p,shape:c,align:T,tabs:r=[],sectionTitle:s}=o,f=a=>a?.blockType==="ipc-shelfdisplay"?e(b,{data:a}):a?.blockType==="ipc-multiLayoutGraphicBlock"?e(g,{data:a}):a?.blockType==="ipc-accordioncards"?e(y,{data:a}):a?.blockType==="ipc-faq"?e(h,{data:a}):a?.blockType==="ipc-graphic"?e(N,{data:a}):null;return t("section",{ref:l,className:d(p==="dark"?"aiui-dark":"",m),children:[s&&e(k,{className:"section-title",data:{title:s}}),t(i.Tabs,{shape:c,align:T,defaultValue:r?.[0]?.id||r?.[0]?.tabName,children:[Array.isArray(r)&&r.length>1&&e(i.TabsList,{className:"tabs-list",children:r.map(a=>e(i.TabsTrigger,{value:a.id||a.tabName,className:"tabs-trigger",children:a.tabName},a.id||a.tabName))}),(Array.isArray(r)?r:[])?.map(a=>e(i.TabsContent,{value:a.id||a.tabName,className:`tabs-content ${r?.length>1?"mt-[24px]":""}`,children:a.tabContent?.[0]?f(a.tabContent?.[0]):null},a.id||a.tabName))]})]})});var R=n(v);export{R as default};
1
+ "use client";import{jsx as e,jsxs as t}from"react/jsx-runtime";import{withLayout as n}from"../../shared/Styles.js";import*as r from"../../components/tabs.js";import{cn as d}from"../../helpers/index.js";import u from"react";import y from"../ShelfDisplay/index.js";import b from"../AccordionCards/index.js";import h from"../Faq/index.js";import g from"../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js";import k from"../Title/index.js";import N from"../Graphic/index.js";const v=u.forwardRef(({data:o,className:m},l)=>{const{theme:p,shape:c,align:T,tabs:i=[],sectionTitle:s}=o,f=a=>a?.blockType==="ipc-shelfdisplay"?e(y,{data:a}):a?.blockType==="ipc-multiLayoutGraphicBlock"?e(g,{data:a}):a?.blockType==="ipc-accordioncards"?e(b,{data:a}):a?.blockType==="ipc-faq"?e(h,{data:a}):a?.blockType==="ipc-graphic"?e(N,{data:a}):null;return t("section",{ref:l,className:d(p==="dark"?"aiui-dark":"",m),children:[s&&e(k,{className:"section-title",data:{title:s}}),t(r.Tabs,{shape:c,align:T,defaultValue:i?.[0]?.id||i?.[0]?.tabName,children:[Array.isArray(i)&&i.length>1&&e(r.TabsList,{className:"tabs-list",children:i.map(a=>e(r.TabsTrigger,{value:a.id||a.tabName,className:"tabs-trigger",children:a.tabName},a.id||a.tabName))}),(Array.isArray(i)?i:[])?.map(a=>e(r.TabsContent,{value:a.id||a.tabName,className:`tabs-content ${i?.length>1?"mt-[24px]":""}`,children:a.tabContent?.[0]?f(a.tabContent?.[0]):null},a.id||a.tabName))]})]})});var M=n(v);export{M as default};
2
2
  //# sourceMappingURL=Tabs.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/Tabs/Tabs.tsx"],
4
- "sourcesContent": ["'use client'\nimport { withLayout } from '../../shared/Styles.js'\nimport * as TabsPrimitive from '../../components/tabs.js'\nimport { cn } from '../../helpers/index.js'\nimport type { TabsProps } from './types.js'\nimport React from 'react'\nimport ShelfDisplay from '../ShelfDisplay/index.js'\nimport AccordionCards from '../AccordionCards/index.js'\nimport Faq from '../Faq/index.js'\nimport MultiLayoutGraphicBlock from '../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport Title from '../Title/index.js'\nimport Graphic from '../Graphic/index.js'\n\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(({ data, className }, forwardedRef) => {\n const { theme, shape, align, tabs = [], sectionTitle } = data\n\n const renderTabContent = (tabContent: TabsProps['data']['tabs'][number]['tabContent'][number]) => {\n if (tabContent?.blockType === 'ipc-shelfdisplay') {\n return <ShelfDisplay data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-multiLayoutGraphicBlock') {\n return <MultiLayoutGraphicBlock data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-accordioncards') {\n return <AccordionCards data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-faq') {\n return <Faq data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-graphic') {\n return <Graphic data={tabContent} />\n } else {\n return null\n }\n }\n\n return (\n <section ref={forwardedRef} className={cn(theme === 'dark' ? 'aiui-dark' : '', className)}>\n {sectionTitle && <Title className=\"section-title\" data={{ title: sectionTitle }} />}\n <TabsPrimitive.Tabs shape={shape} align={align} defaultValue={tabs?.[0]?.id || tabs?.[0]?.tabName}>\n {/* <TabsPrimitive.TabsList className=\"tabs-list\">\n {(Array.isArray(tabs) ? tabs : [])?.map(tab => (\n <TabsPrimitive.TabsTrigger\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className=\"tabs-trigger\"\n >\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList> */}\n {/* Tab\u4E3A1\u65F6\uFF0C\u4E0D\u5C55\u793Atab\u6309\u94AE */}\n {Array.isArray(tabs) && tabs.length > 1 && (\n <TabsPrimitive.TabsList className=\"tabs-list\">\n {tabs.map(tab => (\n <TabsPrimitive.TabsTrigger\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className=\"tabs-trigger\"\n >\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList>\n )}\n {(Array.isArray(tabs) ? tabs : [])?.map((tab: any) => (\n <TabsPrimitive.TabsContent\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className={`tabs-content ${tabs?.length > 1 ? 'mt-[24px]' : ''}`}\n >\n {tab.tabContent?.[0] ? renderTabContent(tab.tabContent?.[0]) : null}\n </TabsPrimitive.TabsContent>\n ))}\n </TabsPrimitive.Tabs>\n </section>\n )\n})\n\nexport default withLayout(Tabs)\n"],
4
+ "sourcesContent": ["'use client'\nimport { withLayout } from '../../shared/Styles.js'\nimport * as TabsPrimitive from '../../components/tabs.js'\nimport { cn } from '../../helpers/index.js'\nimport type { TabContentItem, TabsProps } from './types.js'\nimport React from 'react'\nimport ShelfDisplay from '../ShelfDisplay/index.js'\nimport AccordionCards from '../AccordionCards/index.js'\nimport Faq from '../Faq/index.js'\nimport MultiLayoutGraphicBlock from '../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport Title from '../Title/index.js'\nimport Graphic from '../Graphic/index.js'\n\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(({ data, className }, forwardedRef) => {\n const { theme, shape, align, tabs = [], sectionTitle } = data\n\n const renderTabContent = (tabContent: TabContentItem) => {\n if (tabContent?.blockType === 'ipc-shelfdisplay') {\n return <ShelfDisplay data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-multiLayoutGraphicBlock') {\n return <MultiLayoutGraphicBlock data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-accordioncards') {\n return <AccordionCards data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-faq') {\n return <Faq data={tabContent} />\n } else if (tabContent?.blockType === 'ipc-graphic') {\n return <Graphic data={tabContent} />\n } else {\n return null\n }\n }\n\n return (\n <section ref={forwardedRef} className={cn(theme === 'dark' ? 'aiui-dark' : '', className)}>\n {sectionTitle && <Title className=\"section-title\" data={{ title: sectionTitle }} />}\n <TabsPrimitive.Tabs shape={shape} align={align} defaultValue={tabs?.[0]?.id || tabs?.[0]?.tabName}>\n {/* <TabsPrimitive.TabsList className=\"tabs-list\">\n {(Array.isArray(tabs) ? tabs : [])?.map(tab => (\n <TabsPrimitive.TabsTrigger\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className=\"tabs-trigger\"\n >\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList> */}\n {/* Tab\u4E3A1\u65F6\uFF0C\u4E0D\u5C55\u793Atab\u6309\u94AE */}\n {Array.isArray(tabs) && tabs.length > 1 && (\n <TabsPrimitive.TabsList className=\"tabs-list\">\n {tabs.map(tab => (\n <TabsPrimitive.TabsTrigger\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className=\"tabs-trigger\"\n >\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList>\n )}\n {(Array.isArray(tabs) ? tabs : [])?.map((tab: any) => (\n <TabsPrimitive.TabsContent\n key={tab.id || tab.tabName}\n value={tab.id || tab.tabName}\n className={`tabs-content ${tabs?.length > 1 ? 'mt-[24px]' : ''}`}\n >\n {tab.tabContent?.[0] ? renderTabContent(tab.tabContent?.[0]) : null}\n </TabsPrimitive.TabsContent>\n ))}\n </TabsPrimitive.Tabs>\n </section>\n )\n})\n\nexport default withLayout(Tabs)\n"],
5
5
  "mappings": "aAkBa,cAAAA,EAiBP,QAAAC,MAjBO,oBAjBb,OAAS,cAAAC,MAAkB,yBAC3B,UAAYC,MAAmB,2BAC/B,OAAS,MAAAC,MAAU,yBAEnB,OAAOC,MAAW,QAClB,OAAOC,MAAkB,2BACzB,OAAOC,MAAoB,6BAC3B,OAAOC,MAAS,kBAChB,OAAOC,MAA6B,wDACpC,OAAOC,MAAW,oBAClB,OAAOC,MAAa,sBAEpB,MAAMC,EAAOP,EAAM,WAAsC,CAAC,CAAE,KAAAQ,EAAM,UAAAC,CAAU,EAAGC,IAAiB,CAC9F,KAAM,CAAE,MAAAC,EAAO,MAAAC,EAAO,MAAAC,EAAO,KAAAC,EAAO,CAAC,EAAG,aAAAC,CAAa,EAAIP,EAEnDQ,EAAoBC,GACpBA,GAAY,YAAc,mBACrBtB,EAACM,EAAA,CAAa,KAAMgB,EAAY,EAC9BA,GAAY,YAAc,8BAC5BtB,EAACS,EAAA,CAAwB,KAAMa,EAAY,EACzCA,GAAY,YAAc,qBAC5BtB,EAACO,EAAA,CAAe,KAAMe,EAAY,EAChCA,GAAY,YAAc,UAC5BtB,EAACQ,EAAA,CAAI,KAAMc,EAAY,EACrBA,GAAY,YAAc,cAC5BtB,EAACW,EAAA,CAAQ,KAAMW,EAAY,EAE3B,KAIX,OACErB,EAAC,WAAQ,IAAKc,EAAc,UAAWX,EAAGY,IAAU,OAAS,YAAc,GAAIF,CAAS,EACrF,UAAAM,GAAgBpB,EAACU,EAAA,CAAM,UAAU,gBAAgB,KAAM,CAAE,MAAOU,CAAa,EAAG,EACjFnB,EAACE,EAAc,KAAd,CAAmB,MAAOc,EAAO,MAAOC,EAAO,aAAcC,IAAO,CAAC,GAAG,IAAMA,IAAO,CAAC,GAAG,QAavF,gBAAM,QAAQA,CAAI,GAAKA,EAAK,OAAS,GACpCnB,EAACG,EAAc,SAAd,CAAuB,UAAU,YAC/B,SAAAgB,EAAK,IAAII,GACRvB,EAACG,EAAc,YAAd,CAEC,MAAOoB,EAAI,IAAMA,EAAI,QACrB,UAAU,eAET,SAAAA,EAAI,SAJAA,EAAI,IAAMA,EAAI,OAKrB,CACD,EACH,GAEA,MAAM,QAAQJ,CAAI,EAAIA,EAAO,CAAC,IAAI,IAAKI,GACvCvB,EAACG,EAAc,YAAd,CAEC,MAAOoB,EAAI,IAAMA,EAAI,QACrB,UAAW,gBAAgBJ,GAAM,OAAS,EAAI,YAAc,EAAE,GAE7D,SAAAI,EAAI,aAAa,CAAC,EAAIF,EAAiBE,EAAI,aAAa,CAAC,CAAC,EAAI,MAJ1DA,EAAI,IAAMA,EAAI,OAKrB,CACD,GACH,GACF,CAEJ,CAAC,EAED,IAAOC,EAAQtB,EAAWU,CAAI",
6
6
  "names": ["jsx", "jsxs", "withLayout", "TabsPrimitive", "cn", "React", "ShelfDisplay", "AccordionCards", "Faq", "MultiLayoutGraphicBlock", "Title", "Graphic", "Tabs", "data", "className", "forwardedRef", "theme", "shape", "align", "tabs", "sectionTitle", "renderTabContent", "tabContent", "tab", "Tabs_default"]
7
7
  }