@anker-in/headless-ui 1.1.28-alpha.1768202456200 → 1.1.29

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 (900) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.d.ts +3 -3
  2. package/dist/cjs/biz-components/AiuiProvider/index.d.ts +0 -7
  3. package/dist/cjs/biz-components/AiuiProvider/index.js +1 -1
  4. package/dist/cjs/biz-components/AiuiProvider/index.js.map +2 -2
  5. package/dist/cjs/biz-components/AplusDesc/index.d.ts +3 -3
  6. package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +3 -3
  7. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
  8. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +2 -2
  9. package/dist/cjs/biz-components/BrandEquity/types.d.ts +0 -1
  10. package/dist/cjs/biz-components/BrandEquity/types.js +1 -1
  11. package/dist/cjs/biz-components/BrandEquity/types.js.map +1 -1
  12. package/dist/cjs/biz-components/Category/index.d.ts +3 -3
  13. package/dist/cjs/biz-components/CreativeModule/index.d.ts +3 -3
  14. package/dist/cjs/biz-components/DownLoad/index.d.ts +3 -3
  15. package/dist/cjs/biz-components/Evaluate/index.d.ts +3 -3
  16. package/dist/cjs/biz-components/Evaluate/index.js +1 -1
  17. package/dist/cjs/biz-components/Evaluate/index.js.map +2 -2
  18. package/dist/cjs/biz-components/Faq/Faq.d.ts +3 -3
  19. package/dist/cjs/biz-components/FeatureCards/FeatureCards.d.ts +3 -3
  20. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +3 -3
  21. package/dist/cjs/biz-components/Features/index.d.ts +3 -3
  22. package/dist/cjs/biz-components/FootCharger/index.d.ts +3 -3
  23. package/dist/cjs/biz-components/FooterNavigation/index.d.ts +3 -3
  24. package/dist/cjs/biz-components/GiftBox/index.d.ts +3 -3
  25. package/dist/cjs/biz-components/Graphic/index.d.ts +3 -3
  26. package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
  27. package/dist/cjs/biz-components/GraphicMore/index.d.ts +3 -3
  28. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.d.ts +3 -3
  29. package/dist/cjs/biz-components/HeaderNavigation/index.d.ts +3 -3
  30. package/dist/cjs/biz-components/HeroBanner/Countdown.js +1 -1
  31. package/dist/cjs/biz-components/HeroBanner/Countdown.js.map +2 -2
  32. package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +3 -6
  33. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
  34. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  35. package/dist/cjs/biz-components/HeroBanner/types.d.ts +0 -4
  36. package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
  37. package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
  38. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +3 -3
  39. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +1 -1
  40. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +3 -3
  41. package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +0 -1
  42. package/dist/cjs/biz-components/ImageTextFeature/types.js +1 -1
  43. package/dist/cjs/biz-components/ImageTextFeature/types.js.map +1 -1
  44. package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +3 -3
  45. package/dist/cjs/biz-components/Ksp/index.d.ts +3 -3
  46. package/dist/cjs/biz-components/Listing/components/PaidShipping/index.d.ts +4 -4
  47. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +3 -3
  48. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -3
  49. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -3
  50. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -3
  51. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -3
  52. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -3
  53. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -3
  54. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -3
  55. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -3
  56. package/dist/cjs/biz-components/Marquee/Marquee.d.ts +3 -3
  57. package/dist/cjs/biz-components/Marquee/Marquee.js +1 -1
  58. package/dist/cjs/biz-components/Marquee/Marquee.js.map +3 -3
  59. package/dist/cjs/biz-components/MarqueeReview/index.d.ts +3 -3
  60. package/dist/cjs/biz-components/MediaPlayerBase/index.d.ts +3 -3
  61. package/dist/cjs/biz-components/MediaPlayerMulti/index.d.ts +3 -3
  62. package/dist/cjs/biz-components/MediaPlayerSticky/index.d.ts +4 -4
  63. package/dist/cjs/biz-components/MediaPlayerSticky/types.d.ts +0 -1
  64. package/dist/cjs/biz-components/MediaPlayerSticky/types.js +1 -1
  65. package/dist/cjs/biz-components/MediaPlayerSticky/types.js.map +1 -1
  66. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +3 -3
  67. package/dist/cjs/biz-components/MemberEquity/index.d.ts +3 -3
  68. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +3 -3
  69. package/dist/cjs/biz-components/ProductCompare/index.d.ts +3 -3
  70. package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +3 -3
  71. package/dist/cjs/biz-components/ProductNav/ProductNav.d.ts +3 -3
  72. package/dist/cjs/biz-components/SelectStore/index.d.ts +3 -3
  73. package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +3 -3
  74. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.d.ts +11 -0
  75. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  76. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  77. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js +4 -4
  78. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  79. package/dist/cjs/biz-components/Slogan/index.d.ts +3 -3
  80. package/dist/cjs/biz-components/Spacer/index.d.ts +3 -3
  81. package/dist/cjs/biz-components/Specs/index.d.ts +3 -3
  82. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +3 -3
  83. package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +3 -3
  84. package/dist/cjs/biz-components/Tabs/Tabs.d.ts +3 -3
  85. package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
  86. package/dist/cjs/biz-components/Tabs/Tabs.js.map +3 -3
  87. package/dist/cjs/biz-components/Tabs/types.d.ts +0 -9
  88. package/dist/cjs/biz-components/Tabs/types.js +1 -1
  89. package/dist/cjs/biz-components/Tabs/types.js.map +1 -1
  90. package/dist/cjs/biz-components/TabsGroup/index.d.ts +3 -3
  91. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +3 -3
  92. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +3 -3
  93. package/dist/cjs/biz-components/Title/index.d.ts +3 -3
  94. package/dist/cjs/biz-components/Title/index.js +1 -1
  95. package/dist/cjs/biz-components/Title/index.js.map +3 -3
  96. package/dist/cjs/biz-components/Title/types.d.ts +0 -55
  97. package/dist/cjs/biz-components/Title/types.js +1 -1
  98. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  99. package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +3 -3
  100. package/dist/cjs/biz-components/WhyChoose/WhyChoose.d.ts +3 -3
  101. package/dist/cjs/biz-components/index.d.ts +0 -32
  102. package/dist/cjs/biz-components/index.js +1 -1
  103. package/dist/cjs/biz-components/index.js.map +3 -3
  104. package/dist/cjs/components/badge.d.ts +2 -5
  105. package/dist/cjs/components/badge.js +1 -1
  106. package/dist/cjs/components/badge.js.map +3 -3
  107. package/dist/cjs/components/index.d.ts +0 -2
  108. package/dist/cjs/components/index.js +1 -1
  109. package/dist/cjs/components/index.js.map +3 -3
  110. package/dist/cjs/components/tabs.d.ts +1 -2
  111. package/dist/cjs/components/tabs.js +1 -1
  112. package/dist/cjs/components/tabs.js.map +2 -2
  113. package/dist/cjs/helpers/index.d.ts +0 -1
  114. package/dist/cjs/helpers/index.js +1 -1
  115. package/dist/cjs/helpers/index.js.map +3 -3
  116. package/dist/cjs/shared/Styles.d.ts +4 -5
  117. package/dist/cjs/shared/Styles.js +1 -1
  118. package/dist/cjs/shared/Styles.js.map +3 -3
  119. package/dist/cjs/stories/HeroBanner.stories.d.ts +28 -0
  120. package/dist/cjs/stories/HeroBanner.stories.js +11 -0
  121. package/dist/cjs/stories/HeroBanner.stories.js.map +7 -0
  122. package/dist/cjs/stories/InlineVideo.stories.d.ts +37 -0
  123. package/dist/cjs/stories/InlineVideo.stories.js +164 -0
  124. package/dist/cjs/stories/InlineVideo.stories.js.map +7 -0
  125. package/dist/cjs/stories/MarqueeReview.stories.d.ts +72 -0
  126. package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
  127. package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
  128. package/dist/cjs/stories/MediaSceneSwitcher.stories.d.ts +47 -0
  129. package/dist/cjs/stories/MediaSceneSwitcher.stories.js +2 -0
  130. package/dist/cjs/stories/MediaSceneSwitcher.stories.js.map +7 -0
  131. package/dist/cjs/stories/MemberEquity.stories.d.ts +9 -0
  132. package/dist/cjs/stories/MemberEquity.stories.js +31 -0
  133. package/dist/cjs/stories/MemberEquity.stories.js.map +7 -0
  134. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.d.ts +9 -0
  135. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js +2 -0
  136. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
  137. package/dist/cjs/stories/ProductNav.stories.d.ts +55 -0
  138. package/dist/cjs/stories/ProductNav.stories.js +2 -0
  139. package/dist/cjs/stories/ProductNav.stories.js.map +7 -0
  140. package/dist/cjs/stories/ThreeDCarousel.stories.d.ts +27 -0
  141. package/dist/cjs/stories/ThreeDCarousel.stories.js +118 -0
  142. package/dist/cjs/stories/ThreeDCarousel.stories.js.map +7 -0
  143. package/dist/cjs/stories/accordionCards.stories.d.ts +38 -0
  144. package/dist/cjs/stories/accordionCards.stories.js +2 -0
  145. package/dist/cjs/stories/accordionCards.stories.js.map +7 -0
  146. package/dist/cjs/stories/alert.stories.d.ts +27 -0
  147. package/dist/cjs/stories/alert.stories.js +2 -0
  148. package/dist/cjs/stories/alert.stories.js.map +7 -0
  149. package/dist/cjs/stories/avatar.stories.d.ts +39 -0
  150. package/dist/cjs/stories/avatar.stories.js +2 -0
  151. package/dist/cjs/stories/avatar.stories.js.map +7 -0
  152. package/dist/cjs/stories/badge.stories.d.ts +31 -0
  153. package/dist/cjs/stories/badge.stories.js +2 -0
  154. package/dist/cjs/stories/badge.stories.js.map +7 -0
  155. package/dist/cjs/stories/bizTabs.stories.d.ts +7 -0
  156. package/dist/cjs/stories/bizTabs.stories.js +2 -0
  157. package/dist/cjs/stories/bizTabs.stories.js.map +7 -0
  158. package/dist/cjs/stories/board.stories.d.ts +6 -0
  159. package/dist/cjs/stories/board.stories.js +2 -0
  160. package/dist/cjs/stories/board.stories.js.map +7 -0
  161. package/dist/cjs/stories/brandEquity.stories.d.ts +16 -0
  162. package/dist/cjs/stories/brandEquity.stories.js +2 -0
  163. package/dist/cjs/stories/brandEquity.stories.js.map +7 -0
  164. package/dist/cjs/stories/brandStrip.stories.d.ts +12 -0
  165. package/dist/cjs/stories/brandStrip.stories.js +2 -0
  166. package/dist/cjs/stories/brandStrip.stories.js.map +7 -0
  167. package/dist/cjs/stories/button.stories.d.ts +56 -0
  168. package/dist/cjs/stories/button.stories.js +2 -0
  169. package/dist/cjs/stories/button.stories.js.map +7 -0
  170. package/dist/cjs/stories/card.stories.d.ts +27 -0
  171. package/dist/cjs/stories/card.stories.js +2 -0
  172. package/dist/cjs/stories/card.stories.js.map +7 -0
  173. package/dist/cjs/stories/carousel.stories.d.ts +8 -0
  174. package/dist/cjs/stories/carousel.stories.js +2 -0
  175. package/dist/cjs/stories/carousel.stories.js.map +7 -0
  176. package/dist/cjs/stories/category.stories.d.ts +17 -0
  177. package/dist/cjs/stories/category.stories.js +2 -0
  178. package/dist/cjs/stories/category.stories.js.map +7 -0
  179. package/dist/cjs/stories/checkbox.stories.d.ts +46 -0
  180. package/dist/cjs/stories/checkbox.stories.js +2 -0
  181. package/dist/cjs/stories/checkbox.stories.js.map +7 -0
  182. package/dist/cjs/stories/container.stories.d.ts +28 -0
  183. package/dist/cjs/stories/container.stories.js +15 -0
  184. package/dist/cjs/stories/container.stories.js.map +7 -0
  185. package/dist/cjs/stories/cpnBanner.stories.d.ts +14 -0
  186. package/dist/cjs/stories/cpnBanner.stories.js +2 -0
  187. package/dist/cjs/stories/cpnBanner.stories.js.map +7 -0
  188. package/dist/cjs/stories/cpnCountdown.stories.d.ts +12 -0
  189. package/dist/cjs/stories/cpnCountdown.stories.js +2 -0
  190. package/dist/cjs/stories/cpnCountdown.stories.js.map +7 -0
  191. package/dist/cjs/stories/cpnNavigation.stories.d.ts +14 -0
  192. package/dist/cjs/stories/cpnNavigation.stories.js +2 -0
  193. package/dist/cjs/stories/cpnNavigation.stories.js.map +7 -0
  194. package/dist/cjs/stories/cpnProductcard.stories.d.ts +14 -0
  195. package/dist/cjs/stories/cpnProductcard.stories.js +2 -0
  196. package/dist/cjs/stories/cpnProductcard.stories.js.map +7 -0
  197. package/dist/cjs/stories/cpnTitle.stories.d.ts +14 -0
  198. package/dist/cjs/stories/cpnTitle.stories.js +2 -0
  199. package/dist/cjs/stories/cpnTitle.stories.js.map +7 -0
  200. package/dist/cjs/stories/creativeModule.stories.d.ts +19 -0
  201. package/dist/cjs/stories/creativeModule.stories.js +2 -0
  202. package/dist/cjs/stories/creativeModule.stories.js.map +7 -0
  203. package/dist/cjs/stories/dialog.stories.d.ts +20 -0
  204. package/dist/cjs/stories/dialog.stories.js +2 -0
  205. package/dist/cjs/stories/dialog.stories.js.map +7 -0
  206. package/dist/cjs/stories/drawer.stories.d.ts +20 -0
  207. package/dist/cjs/stories/drawer.stories.js +2 -0
  208. package/dist/cjs/stories/drawer.stories.js.map +7 -0
  209. package/dist/cjs/stories/drop-down.stories.d.ts +16 -0
  210. package/dist/cjs/stories/drop-down.stories.js +2 -0
  211. package/dist/cjs/stories/drop-down.stories.js.map +7 -0
  212. package/dist/cjs/stories/evaluate.stories.d.ts +16 -0
  213. package/dist/cjs/stories/evaluate.stories.js +2 -0
  214. package/dist/cjs/stories/evaluate.stories.js.map +7 -0
  215. package/dist/cjs/stories/faq.stories.d.ts +21 -0
  216. package/dist/cjs/stories/faq.stories.js +2 -0
  217. package/dist/cjs/stories/faq.stories.js.map +7 -0
  218. package/dist/cjs/stories/featureCards.stories.d.ts +30 -0
  219. package/dist/cjs/stories/featureCards.stories.js +61 -0
  220. package/dist/cjs/stories/featureCards.stories.js.map +7 -0
  221. package/dist/cjs/stories/featureShowcase.stories.d.ts +29 -0
  222. package/dist/cjs/stories/featureShowcase.stories.js +44 -0
  223. package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
  224. package/dist/cjs/stories/graphic.stories.d.ts +64 -0
  225. package/dist/cjs/stories/graphic.stories.js +2 -0
  226. package/dist/cjs/stories/graphic.stories.js.map +7 -0
  227. package/dist/cjs/stories/graphicAttractionBlock.stories.d.ts +6 -0
  228. package/dist/cjs/stories/graphicAttractionBlock.stories.js +2 -0
  229. package/dist/cjs/stories/graphicAttractionBlock.stories.js.map +7 -0
  230. package/dist/cjs/stories/grid.stories.d.ts +22 -0
  231. package/dist/cjs/stories/grid.stories.js +13 -0
  232. package/dist/cjs/stories/grid.stories.js.map +7 -0
  233. package/dist/cjs/stories/heading.stories.d.ts +84 -0
  234. package/dist/cjs/stories/heading.stories.js +15 -0
  235. package/dist/cjs/stories/heading.stories.js.map +7 -0
  236. package/dist/cjs/stories/imageTextFeature.stories.d.ts +28 -0
  237. package/dist/cjs/stories/imageTextFeature.stories.js +50 -0
  238. package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
  239. package/dist/cjs/stories/imageWithText.stories.d.ts +51 -0
  240. package/dist/cjs/stories/imageWithText.stories.js +84 -0
  241. package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
  242. package/dist/cjs/stories/input-number.stories.d.ts +39 -0
  243. package/dist/cjs/stories/input-number.stories.js +2 -0
  244. package/dist/cjs/stories/input-number.stories.js.map +7 -0
  245. package/dist/cjs/stories/input.stories.d.ts +35 -0
  246. package/dist/cjs/stories/input.stories.js +2 -0
  247. package/dist/cjs/stories/input.stories.js.map +7 -0
  248. package/dist/cjs/stories/ksp.stories.d.ts +63 -0
  249. package/dist/cjs/stories/ksp.stories.js +128 -0
  250. package/dist/cjs/stories/ksp.stories.js.map +7 -0
  251. package/dist/cjs/stories/link.stories.d.ts +69 -0
  252. package/dist/cjs/stories/link.stories.js +2 -0
  253. package/dist/cjs/stories/link.stories.js.map +7 -0
  254. package/dist/cjs/stories/marquee.stories.d.ts +30 -0
  255. package/dist/cjs/stories/marquee.stories.js +2 -0
  256. package/dist/cjs/stories/marquee.stories.js.map +7 -0
  257. package/dist/cjs/stories/mediaplayerBase.stories.d.ts +6 -0
  258. package/dist/cjs/stories/mediaplayerBase.stories.js +2 -0
  259. package/dist/cjs/stories/mediaplayerBase.stories.js.map +7 -0
  260. package/dist/cjs/stories/mediaplayerMulti.stories.d.ts +16 -0
  261. package/dist/cjs/stories/mediaplayerMulti.stories.js +2 -0
  262. package/dist/cjs/stories/mediaplayerMulti.stories.js.map +7 -0
  263. package/dist/cjs/stories/picture.stories.d.ts +23 -0
  264. package/dist/cjs/stories/picture.stories.js +9 -0
  265. package/dist/cjs/stories/picture.stories.js.map +7 -0
  266. package/dist/cjs/stories/popover.stories.d.ts +17 -0
  267. package/dist/cjs/stories/popover.stories.js +2 -0
  268. package/dist/cjs/stories/popover.stories.js.map +7 -0
  269. package/dist/cjs/stories/productCompare.stories.d.ts +54 -0
  270. package/dist/cjs/stories/productCompare.stories.js +54 -0
  271. package/dist/cjs/stories/productCompare.stories.js.map +7 -0
  272. package/dist/cjs/stories/productHero.stories.d.ts +29 -0
  273. package/dist/cjs/stories/productHero.stories.js +50 -0
  274. package/dist/cjs/stories/productHero.stories.js.map +7 -0
  275. package/dist/cjs/stories/radio.stories.d.ts +39 -0
  276. package/dist/cjs/stories/radio.stories.js +2 -0
  277. package/dist/cjs/stories/radio.stories.js.map +7 -0
  278. package/dist/cjs/stories/shelfDisplay.stories.d.ts +16 -0
  279. package/dist/cjs/stories/shelfDisplay.stories.js +2 -0
  280. package/dist/cjs/stories/shelfDisplay.stories.js.map +7 -0
  281. package/dist/cjs/stories/skeleton.stories.d.ts +20 -0
  282. package/dist/cjs/stories/skeleton.stories.js +2 -0
  283. package/dist/cjs/stories/skeleton.stories.js.map +7 -0
  284. package/dist/cjs/stories/slogan.stories.d.ts +20 -0
  285. package/dist/cjs/stories/slogan.stories.js +6 -0
  286. package/dist/cjs/stories/slogan.stories.js.map +7 -0
  287. package/dist/cjs/stories/specs.stories.d.ts +13 -0
  288. package/dist/cjs/stories/specs.stories.js +57 -0
  289. package/dist/cjs/stories/specs.stories.js.map +7 -0
  290. package/dist/cjs/stories/specsComparison.stories.d.ts +28 -0
  291. package/dist/cjs/stories/specsComparison.stories.js +105 -0
  292. package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
  293. package/dist/cjs/stories/tabWithImage.stories.d.ts +28 -0
  294. package/dist/cjs/stories/tabWithImage.stories.js +53 -0
  295. package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
  296. package/dist/cjs/stories/tabs.stories.d.ts +373 -0
  297. package/dist/cjs/stories/tabs.stories.js +2 -0
  298. package/dist/cjs/stories/tabs.stories.js.map +7 -0
  299. package/dist/cjs/stories/tabsWithMedia.stories.d.ts +28 -0
  300. package/dist/cjs/stories/tabsWithMedia.stories.js +68 -0
  301. package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
  302. package/dist/cjs/stories/text.stories.d.ts +86 -0
  303. package/dist/cjs/stories/text.stories.js +21 -0
  304. package/dist/cjs/stories/text.stories.js.map +7 -0
  305. package/dist/cjs/stories/videoFeature.stories.d.ts +29 -0
  306. package/dist/cjs/stories/videoFeature.stories.js +56 -0
  307. package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
  308. package/dist/cjs/stories/whychoose.stories.d.ts +21 -0
  309. package/dist/cjs/stories/whychoose.stories.js +2 -0
  310. package/dist/cjs/stories/whychoose.stories.js.map +7 -0
  311. package/dist/cjs/types/props.d.ts +3 -0
  312. package/dist/cjs/types/props.js +1 -1
  313. package/dist/cjs/types/props.js.map +1 -1
  314. package/dist/esm/biz-components/AccordionCards/index.d.ts +3 -3
  315. package/dist/esm/biz-components/AiuiProvider/index.d.ts +0 -7
  316. package/dist/esm/biz-components/AiuiProvider/index.js +1 -1
  317. package/dist/esm/biz-components/AiuiProvider/index.js.map +2 -2
  318. package/dist/esm/biz-components/AplusDesc/index.d.ts +3 -3
  319. package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +3 -3
  320. package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
  321. package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +2 -2
  322. package/dist/esm/biz-components/BrandEquity/types.d.ts +0 -1
  323. package/dist/esm/biz-components/Category/index.d.ts +3 -3
  324. package/dist/esm/biz-components/CreativeModule/index.d.ts +3 -3
  325. package/dist/esm/biz-components/DownLoad/index.d.ts +3 -3
  326. package/dist/esm/biz-components/Evaluate/index.d.ts +3 -3
  327. package/dist/esm/biz-components/Evaluate/index.js +1 -1
  328. package/dist/esm/biz-components/Evaluate/index.js.map +2 -2
  329. package/dist/esm/biz-components/Faq/Faq.d.ts +3 -3
  330. package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +3 -3
  331. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +3 -3
  332. package/dist/esm/biz-components/Features/index.d.ts +3 -3
  333. package/dist/esm/biz-components/FootCharger/index.d.ts +3 -3
  334. package/dist/esm/biz-components/FooterNavigation/index.d.ts +3 -3
  335. package/dist/esm/biz-components/GiftBox/index.d.ts +3 -3
  336. package/dist/esm/biz-components/Graphic/index.d.ts +3 -3
  337. package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
  338. package/dist/esm/biz-components/GraphicMore/index.d.ts +3 -3
  339. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.d.ts +3 -3
  340. package/dist/esm/biz-components/HeaderNavigation/index.d.ts +3 -3
  341. package/dist/esm/biz-components/HeroBanner/Countdown.js +1 -1
  342. package/dist/esm/biz-components/HeroBanner/Countdown.js.map +2 -2
  343. package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +3 -6
  344. package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
  345. package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  346. package/dist/esm/biz-components/HeroBanner/types.d.ts +0 -4
  347. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +3 -3
  348. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +1 -1
  349. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +3 -3
  350. package/dist/esm/biz-components/ImageTextFeature/types.d.ts +0 -1
  351. package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +3 -3
  352. package/dist/esm/biz-components/Ksp/index.d.ts +3 -3
  353. package/dist/esm/biz-components/Listing/components/PaidShipping/index.d.ts +4 -4
  354. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +3 -3
  355. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -3
  356. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -3
  357. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -3
  358. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -3
  359. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -3
  360. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -3
  361. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -3
  362. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -3
  363. package/dist/esm/biz-components/Marquee/Marquee.d.ts +3 -3
  364. package/dist/esm/biz-components/Marquee/Marquee.js +1 -1
  365. package/dist/esm/biz-components/Marquee/Marquee.js.map +3 -3
  366. package/dist/esm/biz-components/MarqueeReview/index.d.ts +3 -3
  367. package/dist/esm/biz-components/MediaPlayerBase/index.d.ts +3 -3
  368. package/dist/esm/biz-components/MediaPlayerMulti/index.d.ts +3 -3
  369. package/dist/esm/biz-components/MediaPlayerSticky/index.d.ts +4 -4
  370. package/dist/esm/biz-components/MediaPlayerSticky/types.d.ts +0 -1
  371. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +3 -3
  372. package/dist/esm/biz-components/MemberEquity/index.d.ts +3 -3
  373. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +3 -3
  374. package/dist/esm/biz-components/ProductCompare/index.d.ts +3 -3
  375. package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +3 -3
  376. package/dist/esm/biz-components/ProductNav/ProductNav.d.ts +3 -3
  377. package/dist/esm/biz-components/SelectStore/index.d.ts +3 -3
  378. package/dist/esm/biz-components/ShelfDisplay/index.d.ts +3 -3
  379. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.d.ts +11 -0
  380. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  381. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +3 -3
  382. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js +5 -5
  383. package/dist/esm/biz-components/ShelfDisplay/shelfDisplayItem.js.map +3 -3
  384. package/dist/esm/biz-components/Slogan/index.d.ts +3 -3
  385. package/dist/esm/biz-components/Spacer/index.d.ts +3 -3
  386. package/dist/esm/biz-components/Specs/index.d.ts +3 -3
  387. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +3 -3
  388. package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +3 -3
  389. package/dist/esm/biz-components/Tabs/Tabs.d.ts +3 -3
  390. package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
  391. package/dist/esm/biz-components/Tabs/Tabs.js.map +3 -3
  392. package/dist/esm/biz-components/Tabs/types.d.ts +0 -9
  393. package/dist/esm/biz-components/TabsGroup/index.d.ts +3 -3
  394. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +3 -3
  395. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +3 -3
  396. package/dist/esm/biz-components/Title/index.d.ts +3 -3
  397. package/dist/esm/biz-components/Title/index.js +1 -1
  398. package/dist/esm/biz-components/Title/index.js.map +3 -3
  399. package/dist/esm/biz-components/Title/types.d.ts +0 -55
  400. package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +3 -3
  401. package/dist/esm/biz-components/WhyChoose/WhyChoose.d.ts +3 -3
  402. package/dist/esm/biz-components/index.d.ts +0 -32
  403. package/dist/esm/biz-components/index.js +1 -1
  404. package/dist/esm/biz-components/index.js.map +3 -3
  405. package/dist/esm/components/badge.d.ts +2 -5
  406. package/dist/esm/components/badge.js +1 -1
  407. package/dist/esm/components/badge.js.map +3 -3
  408. package/dist/esm/components/index.d.ts +0 -2
  409. package/dist/esm/components/index.js +1 -1
  410. package/dist/esm/components/index.js.map +2 -2
  411. package/dist/esm/components/tabs.d.ts +1 -2
  412. package/dist/esm/components/tabs.js +1 -1
  413. package/dist/esm/components/tabs.js.map +2 -2
  414. package/dist/esm/helpers/index.d.ts +0 -1
  415. package/dist/esm/helpers/index.js +1 -1
  416. package/dist/esm/helpers/index.js.map +3 -3
  417. package/dist/esm/shared/Styles.d.ts +4 -5
  418. package/dist/esm/shared/Styles.js +1 -1
  419. package/dist/esm/shared/Styles.js.map +3 -3
  420. package/dist/esm/stories/HeroBanner.stories.d.ts +28 -0
  421. package/dist/esm/stories/HeroBanner.stories.js +11 -0
  422. package/dist/esm/stories/HeroBanner.stories.js.map +7 -0
  423. package/dist/esm/stories/InlineVideo.stories.d.ts +37 -0
  424. package/dist/esm/stories/InlineVideo.stories.js +164 -0
  425. package/dist/esm/stories/InlineVideo.stories.js.map +7 -0
  426. package/dist/esm/stories/MarqueeReview.stories.d.ts +72 -0
  427. package/dist/esm/stories/MarqueeReview.stories.js +19 -0
  428. package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
  429. package/dist/esm/stories/MediaSceneSwitcher.stories.d.ts +47 -0
  430. package/dist/esm/stories/MediaSceneSwitcher.stories.js +2 -0
  431. package/dist/esm/stories/MediaSceneSwitcher.stories.js.map +7 -0
  432. package/dist/esm/stories/MemberEquity.stories.d.ts +9 -0
  433. package/dist/esm/stories/MemberEquity.stories.js +31 -0
  434. package/dist/esm/stories/MemberEquity.stories.js.map +7 -0
  435. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.d.ts +9 -0
  436. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js +2 -0
  437. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
  438. package/dist/esm/stories/ProductNav.stories.d.ts +55 -0
  439. package/dist/esm/stories/ProductNav.stories.js +2 -0
  440. package/dist/esm/stories/ProductNav.stories.js.map +7 -0
  441. package/dist/esm/stories/ThreeDCarousel.stories.d.ts +27 -0
  442. package/dist/esm/stories/ThreeDCarousel.stories.js +118 -0
  443. package/dist/esm/stories/ThreeDCarousel.stories.js.map +7 -0
  444. package/dist/esm/stories/accordionCards.stories.d.ts +38 -0
  445. package/dist/esm/stories/accordionCards.stories.js +2 -0
  446. package/dist/esm/stories/accordionCards.stories.js.map +7 -0
  447. package/dist/esm/stories/alert.stories.d.ts +27 -0
  448. package/dist/esm/stories/alert.stories.js +2 -0
  449. package/dist/esm/stories/alert.stories.js.map +7 -0
  450. package/dist/esm/stories/avatar.stories.d.ts +39 -0
  451. package/dist/esm/stories/avatar.stories.js +2 -0
  452. package/dist/esm/stories/avatar.stories.js.map +7 -0
  453. package/dist/esm/stories/badge.stories.d.ts +31 -0
  454. package/dist/esm/stories/badge.stories.js +2 -0
  455. package/dist/esm/stories/badge.stories.js.map +7 -0
  456. package/dist/esm/stories/bizTabs.stories.d.ts +7 -0
  457. package/dist/esm/stories/bizTabs.stories.js +2 -0
  458. package/dist/esm/stories/bizTabs.stories.js.map +7 -0
  459. package/dist/esm/stories/board.stories.d.ts +6 -0
  460. package/dist/esm/stories/board.stories.js +2 -0
  461. package/dist/esm/stories/board.stories.js.map +7 -0
  462. package/dist/esm/stories/brandEquity.stories.d.ts +16 -0
  463. package/dist/esm/stories/brandEquity.stories.js +2 -0
  464. package/dist/esm/stories/brandEquity.stories.js.map +7 -0
  465. package/dist/esm/stories/brandStrip.stories.d.ts +12 -0
  466. package/dist/esm/stories/brandStrip.stories.js +2 -0
  467. package/dist/esm/stories/brandStrip.stories.js.map +7 -0
  468. package/dist/esm/stories/button.stories.d.ts +56 -0
  469. package/dist/esm/stories/button.stories.js +2 -0
  470. package/dist/esm/stories/button.stories.js.map +7 -0
  471. package/dist/esm/stories/card.stories.d.ts +27 -0
  472. package/dist/esm/stories/card.stories.js +2 -0
  473. package/dist/esm/stories/card.stories.js.map +7 -0
  474. package/dist/esm/stories/carousel.stories.d.ts +8 -0
  475. package/dist/esm/stories/carousel.stories.js +2 -0
  476. package/dist/esm/stories/carousel.stories.js.map +7 -0
  477. package/dist/esm/stories/category.stories.d.ts +17 -0
  478. package/dist/esm/stories/category.stories.js +2 -0
  479. package/dist/esm/stories/category.stories.js.map +7 -0
  480. package/dist/esm/stories/checkbox.stories.d.ts +46 -0
  481. package/dist/esm/stories/checkbox.stories.js +2 -0
  482. package/dist/esm/stories/checkbox.stories.js.map +7 -0
  483. package/dist/esm/stories/container.stories.d.ts +28 -0
  484. package/dist/esm/stories/container.stories.js +15 -0
  485. package/dist/esm/stories/container.stories.js.map +7 -0
  486. package/dist/esm/stories/cpnBanner.stories.d.ts +14 -0
  487. package/dist/esm/stories/cpnBanner.stories.js +2 -0
  488. package/dist/esm/stories/cpnBanner.stories.js.map +7 -0
  489. package/dist/esm/stories/cpnCountdown.stories.d.ts +12 -0
  490. package/dist/esm/stories/cpnCountdown.stories.js +2 -0
  491. package/dist/esm/stories/cpnCountdown.stories.js.map +7 -0
  492. package/dist/esm/stories/cpnNavigation.stories.d.ts +14 -0
  493. package/dist/esm/stories/cpnNavigation.stories.js +2 -0
  494. package/dist/esm/stories/cpnNavigation.stories.js.map +7 -0
  495. package/dist/esm/stories/cpnProductcard.stories.d.ts +14 -0
  496. package/dist/esm/stories/cpnProductcard.stories.js +2 -0
  497. package/dist/esm/stories/cpnProductcard.stories.js.map +7 -0
  498. package/dist/esm/stories/cpnTitle.stories.d.ts +14 -0
  499. package/dist/esm/stories/cpnTitle.stories.js +2 -0
  500. package/dist/esm/stories/cpnTitle.stories.js.map +7 -0
  501. package/dist/esm/stories/creativeModule.stories.d.ts +19 -0
  502. package/dist/esm/stories/creativeModule.stories.js +2 -0
  503. package/dist/esm/stories/creativeModule.stories.js.map +7 -0
  504. package/dist/esm/stories/dialog.stories.d.ts +20 -0
  505. package/dist/esm/stories/dialog.stories.js +2 -0
  506. package/dist/esm/stories/dialog.stories.js.map +7 -0
  507. package/dist/esm/stories/drawer.stories.d.ts +20 -0
  508. package/dist/esm/stories/drawer.stories.js +2 -0
  509. package/dist/esm/stories/drawer.stories.js.map +7 -0
  510. package/dist/esm/stories/drop-down.stories.d.ts +16 -0
  511. package/dist/esm/stories/drop-down.stories.js +2 -0
  512. package/dist/esm/stories/drop-down.stories.js.map +7 -0
  513. package/dist/esm/stories/evaluate.stories.d.ts +16 -0
  514. package/dist/esm/stories/evaluate.stories.js +2 -0
  515. package/dist/esm/stories/evaluate.stories.js.map +7 -0
  516. package/dist/esm/stories/faq.stories.d.ts +21 -0
  517. package/dist/esm/stories/faq.stories.js +2 -0
  518. package/dist/esm/stories/faq.stories.js.map +7 -0
  519. package/dist/esm/stories/featureCards.stories.d.ts +30 -0
  520. package/dist/esm/stories/featureCards.stories.js +61 -0
  521. package/dist/esm/stories/featureCards.stories.js.map +7 -0
  522. package/dist/esm/stories/featureShowcase.stories.d.ts +29 -0
  523. package/dist/esm/stories/featureShowcase.stories.js +44 -0
  524. package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
  525. package/dist/esm/stories/graphic.stories.d.ts +64 -0
  526. package/dist/esm/stories/graphic.stories.js +2 -0
  527. package/dist/esm/stories/graphic.stories.js.map +7 -0
  528. package/dist/esm/stories/graphicAttractionBlock.stories.d.ts +6 -0
  529. package/dist/esm/stories/graphicAttractionBlock.stories.js +2 -0
  530. package/dist/esm/stories/graphicAttractionBlock.stories.js.map +7 -0
  531. package/dist/esm/stories/grid.stories.d.ts +22 -0
  532. package/dist/esm/stories/grid.stories.js +13 -0
  533. package/dist/esm/stories/grid.stories.js.map +7 -0
  534. package/dist/esm/stories/heading.stories.d.ts +84 -0
  535. package/dist/esm/stories/heading.stories.js +15 -0
  536. package/dist/esm/stories/heading.stories.js.map +7 -0
  537. package/dist/esm/stories/imageTextFeature.stories.d.ts +28 -0
  538. package/dist/esm/stories/imageTextFeature.stories.js +50 -0
  539. package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
  540. package/dist/esm/stories/imageWithText.stories.d.ts +51 -0
  541. package/dist/esm/stories/imageWithText.stories.js +84 -0
  542. package/dist/esm/stories/imageWithText.stories.js.map +7 -0
  543. package/dist/esm/stories/input-number.stories.d.ts +39 -0
  544. package/dist/esm/stories/input-number.stories.js +2 -0
  545. package/dist/esm/stories/input-number.stories.js.map +7 -0
  546. package/dist/esm/stories/input.stories.d.ts +35 -0
  547. package/dist/esm/stories/input.stories.js +2 -0
  548. package/dist/esm/stories/input.stories.js.map +7 -0
  549. package/dist/esm/stories/ksp.stories.d.ts +63 -0
  550. package/dist/esm/stories/ksp.stories.js +128 -0
  551. package/dist/esm/stories/ksp.stories.js.map +7 -0
  552. package/dist/esm/stories/link.stories.d.ts +69 -0
  553. package/dist/esm/stories/link.stories.js +2 -0
  554. package/dist/esm/stories/link.stories.js.map +7 -0
  555. package/dist/esm/stories/marquee.stories.d.ts +30 -0
  556. package/dist/esm/stories/marquee.stories.js +2 -0
  557. package/dist/esm/stories/marquee.stories.js.map +7 -0
  558. package/dist/esm/stories/mediaplayerBase.stories.d.ts +6 -0
  559. package/dist/esm/stories/mediaplayerBase.stories.js +2 -0
  560. package/dist/esm/stories/mediaplayerBase.stories.js.map +7 -0
  561. package/dist/esm/stories/mediaplayerMulti.stories.d.ts +16 -0
  562. package/dist/esm/stories/mediaplayerMulti.stories.js +2 -0
  563. package/dist/esm/stories/mediaplayerMulti.stories.js.map +7 -0
  564. package/dist/esm/stories/picture.stories.d.ts +23 -0
  565. package/dist/esm/stories/picture.stories.js +9 -0
  566. package/dist/esm/stories/picture.stories.js.map +7 -0
  567. package/dist/esm/stories/popover.stories.d.ts +17 -0
  568. package/dist/esm/stories/popover.stories.js +2 -0
  569. package/dist/esm/stories/popover.stories.js.map +7 -0
  570. package/dist/esm/stories/productCompare.stories.d.ts +54 -0
  571. package/dist/esm/stories/productCompare.stories.js +54 -0
  572. package/dist/esm/stories/productCompare.stories.js.map +7 -0
  573. package/dist/esm/stories/productHero.stories.d.ts +29 -0
  574. package/dist/esm/stories/productHero.stories.js +50 -0
  575. package/dist/esm/stories/productHero.stories.js.map +7 -0
  576. package/dist/esm/stories/radio.stories.d.ts +39 -0
  577. package/dist/esm/stories/radio.stories.js +2 -0
  578. package/dist/esm/stories/radio.stories.js.map +7 -0
  579. package/dist/esm/stories/shelfDisplay.stories.d.ts +16 -0
  580. package/dist/esm/stories/shelfDisplay.stories.js +2 -0
  581. package/dist/esm/stories/shelfDisplay.stories.js.map +7 -0
  582. package/dist/esm/stories/skeleton.stories.d.ts +20 -0
  583. package/dist/esm/stories/skeleton.stories.js +2 -0
  584. package/dist/esm/stories/skeleton.stories.js.map +7 -0
  585. package/dist/esm/stories/slogan.stories.d.ts +20 -0
  586. package/dist/esm/stories/slogan.stories.js +6 -0
  587. package/dist/esm/stories/slogan.stories.js.map +7 -0
  588. package/dist/esm/stories/specs.stories.d.ts +13 -0
  589. package/dist/esm/stories/specs.stories.js +57 -0
  590. package/dist/esm/stories/specs.stories.js.map +7 -0
  591. package/dist/esm/stories/specsComparison.stories.d.ts +28 -0
  592. package/dist/esm/stories/specsComparison.stories.js +105 -0
  593. package/dist/esm/stories/specsComparison.stories.js.map +7 -0
  594. package/dist/esm/stories/tabWithImage.stories.d.ts +28 -0
  595. package/dist/esm/stories/tabWithImage.stories.js +53 -0
  596. package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
  597. package/dist/esm/stories/tabs.stories.d.ts +373 -0
  598. package/dist/esm/stories/tabs.stories.js +2 -0
  599. package/dist/esm/stories/tabs.stories.js.map +7 -0
  600. package/dist/esm/stories/tabsWithMedia.stories.d.ts +28 -0
  601. package/dist/esm/stories/tabsWithMedia.stories.js +68 -0
  602. package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
  603. package/dist/esm/stories/text.stories.d.ts +86 -0
  604. package/dist/esm/stories/text.stories.js +21 -0
  605. package/dist/esm/stories/text.stories.js.map +7 -0
  606. package/dist/esm/stories/videoFeature.stories.d.ts +29 -0
  607. package/dist/esm/stories/videoFeature.stories.js +56 -0
  608. package/dist/esm/stories/videoFeature.stories.js.map +7 -0
  609. package/dist/esm/stories/whychoose.stories.d.ts +21 -0
  610. package/dist/esm/stories/whychoose.stories.js +2 -0
  611. package/dist/esm/stories/whychoose.stories.js.map +7 -0
  612. package/dist/esm/types/props.d.ts +3 -0
  613. package/dist/tokens/base.css +3 -4
  614. package/dist/tokens/eufy.css +0 -1
  615. package/dist/tokens/soundcore.css +3 -4
  616. package/package.json +3 -8
  617. package/style.css +118 -4968
  618. package/tailwind.config.js +2 -19
  619. package/dist/cjs/biz-components/ActiveShelf/index.d.ts +0 -174
  620. package/dist/cjs/biz-components/ActiveShelf/index.js +0 -2
  621. package/dist/cjs/biz-components/ActiveShelf/index.js.map +0 -7
  622. package/dist/cjs/biz-components/ActiveShelf/types.d.ts +0 -89
  623. package/dist/cjs/biz-components/ActiveShelf/types.js +0 -2
  624. package/dist/cjs/biz-components/ActiveShelf/types.js.map +0 -7
  625. package/dist/cjs/biz-components/AnchorNavigation/index.d.ts +0 -42
  626. package/dist/cjs/biz-components/AnchorNavigation/index.js +0 -2
  627. package/dist/cjs/biz-components/AnchorNavigation/index.js.map +0 -7
  628. package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.d.ts +0 -2
  629. package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.js +0 -2
  630. package/dist/cjs/biz-components/AnchorNavigation/useAnchorPosition.js.map +0 -7
  631. package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.d.ts +0 -6
  632. package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.js +0 -2
  633. package/dist/cjs/biz-components/BrandCardLink/BrandCardLink.js.map +0 -7
  634. package/dist/cjs/biz-components/BrandCardLink/index.d.ts +0 -1
  635. package/dist/cjs/biz-components/BrandCardLink/index.js +0 -2
  636. package/dist/cjs/biz-components/BrandCardLink/index.js.map +0 -7
  637. package/dist/cjs/biz-components/BrandCardLink/types.d.ts +0 -19
  638. package/dist/cjs/biz-components/BrandCardLink/types.js +0 -2
  639. package/dist/cjs/biz-components/BrandCardLink/types.js.map +0 -7
  640. package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.d.ts +0 -74
  641. package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.js +0 -2
  642. package/dist/cjs/biz-components/BuyOneGetOneShelf/ProductCard.js.map +0 -7
  643. package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.d.ts +0 -36
  644. package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js +0 -2
  645. package/dist/cjs/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js.map +0 -7
  646. package/dist/cjs/biz-components/BuyOneGetOneShelf/index.d.ts +0 -193
  647. package/dist/cjs/biz-components/BuyOneGetOneShelf/index.js +0 -2
  648. package/dist/cjs/biz-components/BuyOneGetOneShelf/index.js.map +0 -7
  649. package/dist/cjs/biz-components/EventSchedule/index.d.ts +0 -63
  650. package/dist/cjs/biz-components/EventSchedule/index.js +0 -2
  651. package/dist/cjs/biz-components/EventSchedule/index.js.map +0 -7
  652. package/dist/cjs/biz-components/IPRedirect/RegionBanner.d.ts +0 -37
  653. package/dist/cjs/biz-components/IPRedirect/RegionBanner.js +0 -60
  654. package/dist/cjs/biz-components/IPRedirect/RegionBanner.js.map +0 -7
  655. package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.d.ts +0 -47
  656. package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.js +0 -33
  657. package/dist/cjs/biz-components/IPRedirect/RegionSelectorModal.js.map +0 -7
  658. package/dist/cjs/biz-components/IPRedirect/index.d.ts +0 -9
  659. package/dist/cjs/biz-components/IPRedirect/index.js +0 -2
  660. package/dist/cjs/biz-components/IPRedirect/index.js.map +0 -7
  661. package/dist/cjs/biz-components/IPRedirect/type.d.ts +0 -36
  662. package/dist/cjs/biz-components/IPRedirect/type.js +0 -2
  663. package/dist/cjs/biz-components/IPRedirect/type.js.map +0 -7
  664. package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.d.ts +0 -66
  665. package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.js +0 -2
  666. package/dist/cjs/biz-components/IPRedirect/useAutoRedirect.js.map +0 -7
  667. package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.d.ts +0 -51
  668. package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.js +0 -2
  669. package/dist/cjs/biz-components/IPRedirect/useDetectedRegionRedirect.js.map +0 -7
  670. package/dist/cjs/biz-components/IPRedirect/useIPRedirect.d.ts +0 -42
  671. package/dist/cjs/biz-components/IPRedirect/useIPRedirect.js +0 -2
  672. package/dist/cjs/biz-components/IPRedirect/useIPRedirect.js.map +0 -7
  673. package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.d.ts +0 -108
  674. package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.js +0 -2
  675. package/dist/cjs/biz-components/IPRedirect/useRedirectBanner.js.map +0 -7
  676. package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.d.ts +0 -152
  677. package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.js +0 -2
  678. package/dist/cjs/biz-components/IPRedirect/useRegionRedirectManager.js.map +0 -7
  679. package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.d.ts +0 -51
  680. package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.js +0 -2
  681. package/dist/cjs/biz-components/IPRedirect/useSavedRegionRedirect.js.map +0 -7
  682. package/dist/cjs/biz-components/IPRedirect/utils.d.ts +0 -222
  683. package/dist/cjs/biz-components/IPRedirect/utils.js +0 -2
  684. package/dist/cjs/biz-components/IPRedirect/utils.js.map +0 -7
  685. package/dist/cjs/biz-components/ImageOverlayShelf/index.d.ts +0 -114
  686. package/dist/cjs/biz-components/ImageOverlayShelf/index.js +0 -2
  687. package/dist/cjs/biz-components/ImageOverlayShelf/index.js.map +0 -7
  688. package/dist/cjs/biz-components/Media/index.d.ts +0 -32
  689. package/dist/cjs/biz-components/Media/index.js +0 -2
  690. package/dist/cjs/biz-components/Media/index.js.map +0 -7
  691. package/dist/cjs/biz-components/MediaShelf/index.d.ts +0 -231
  692. package/dist/cjs/biz-components/MediaShelf/index.js +0 -2
  693. package/dist/cjs/biz-components/MediaShelf/index.js.map +0 -7
  694. package/dist/cjs/biz-components/MediaShelf/types.d.ts +0 -37
  695. package/dist/cjs/biz-components/MediaShelf/types.js +0 -2
  696. package/dist/cjs/biz-components/MediaShelf/types.js.map +0 -7
  697. package/dist/cjs/biz-components/MiniCart/index.d.ts +0 -88
  698. package/dist/cjs/biz-components/MiniCart/index.js +0 -2
  699. package/dist/cjs/biz-components/MiniCart/index.js.map +0 -7
  700. package/dist/cjs/biz-components/PromotionalBar/index.d.ts +0 -49
  701. package/dist/cjs/biz-components/PromotionalBar/index.js +0 -2
  702. package/dist/cjs/biz-components/PromotionalBar/index.js.map +0 -7
  703. package/dist/cjs/biz-components/SecondaryBanner/index.d.ts +0 -69
  704. package/dist/cjs/biz-components/SecondaryBanner/index.js +0 -2
  705. package/dist/cjs/biz-components/SecondaryBanner/index.js.map +0 -7
  706. package/dist/cjs/biz-components/Title/Countdown.d.ts +0 -14
  707. package/dist/cjs/biz-components/Title/Countdown.js +0 -2
  708. package/dist/cjs/biz-components/Title/Countdown.js.map +0 -7
  709. package/dist/cjs/biz-components/WheelLottery/BaseModal.d.ts +0 -55
  710. package/dist/cjs/biz-components/WheelLottery/BaseModal.js +0 -12
  711. package/dist/cjs/biz-components/WheelLottery/BaseModal.js.map +0 -7
  712. package/dist/cjs/biz-components/WheelLottery/ChanceMethods.d.ts +0 -30
  713. package/dist/cjs/biz-components/WheelLottery/ChanceMethods.js +0 -2
  714. package/dist/cjs/biz-components/WheelLottery/ChanceMethods.js.map +0 -7
  715. package/dist/cjs/biz-components/WheelLottery/ErrorModal.d.ts +0 -42
  716. package/dist/cjs/biz-components/WheelLottery/ErrorModal.js +0 -2
  717. package/dist/cjs/biz-components/WheelLottery/ErrorModal.js.map +0 -7
  718. package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.d.ts +0 -91
  719. package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.js +0 -2
  720. package/dist/cjs/biz-components/WheelLottery/MyRewardsModal.js.map +0 -7
  721. package/dist/cjs/biz-components/WheelLottery/PrizePool.d.ts +0 -26
  722. package/dist/cjs/biz-components/WheelLottery/PrizePool.js +0 -2
  723. package/dist/cjs/biz-components/WheelLottery/PrizePool.js.map +0 -7
  724. package/dist/cjs/biz-components/WheelLottery/RulesModal.d.ts +0 -47
  725. package/dist/cjs/biz-components/WheelLottery/RulesModal.js +0 -2
  726. package/dist/cjs/biz-components/WheelLottery/RulesModal.js.map +0 -7
  727. package/dist/cjs/biz-components/WheelLottery/ShareModal.d.ts +0 -74
  728. package/dist/cjs/biz-components/WheelLottery/ShareModal.js +0 -2
  729. package/dist/cjs/biz-components/WheelLottery/ShareModal.js.map +0 -7
  730. package/dist/cjs/biz-components/WheelLottery/Wheel.d.ts +0 -27
  731. package/dist/cjs/biz-components/WheelLottery/Wheel.js +0 -2
  732. package/dist/cjs/biz-components/WheelLottery/Wheel.js.map +0 -7
  733. package/dist/cjs/biz-components/WheelLottery/WinnerModal.d.ts +0 -25
  734. package/dist/cjs/biz-components/WheelLottery/WinnerModal.js +0 -2
  735. package/dist/cjs/biz-components/WheelLottery/WinnerModal.js.map +0 -7
  736. package/dist/cjs/biz-components/WheelLottery/index.d.ts +0 -52
  737. package/dist/cjs/biz-components/WheelLottery/index.js +0 -2
  738. package/dist/cjs/biz-components/WheelLottery/index.js.map +0 -7
  739. package/dist/cjs/biz-components/WheelLottery/types.d.ts +0 -1219
  740. package/dist/cjs/biz-components/WheelLottery/types.js +0 -2
  741. package/dist/cjs/biz-components/WheelLottery/types.js.map +0 -7
  742. package/dist/cjs/components/paginator.d.ts +0 -12
  743. package/dist/cjs/components/paginator.js +0 -7
  744. package/dist/cjs/components/paginator.js.map +0 -7
  745. package/dist/cjs/components/progress.d.ts +0 -46
  746. package/dist/cjs/components/progress.js +0 -2
  747. package/dist/cjs/components/progress.js.map +0 -7
  748. package/dist/cjs/helpers/priceFormatting.d.ts +0 -11
  749. package/dist/cjs/helpers/priceFormatting.js +0 -2
  750. package/dist/cjs/helpers/priceFormatting.js.map +0 -7
  751. package/dist/cjs/hooks/index.d.ts +0 -2
  752. package/dist/cjs/hooks/index.js +0 -2
  753. package/dist/cjs/hooks/index.js.map +0 -7
  754. package/dist/cjs/hooks/useCoupon.d.ts +0 -111
  755. package/dist/cjs/hooks/useCoupon.js +0 -2
  756. package/dist/cjs/hooks/useCoupon.js.map +0 -7
  757. package/dist/cjs/hooks/useMemberPrice.d.ts +0 -155
  758. package/dist/cjs/hooks/useMemberPrice.js +0 -2
  759. package/dist/cjs/hooks/useMemberPrice.js.map +0 -7
  760. package/dist/esm/biz-components/ActiveShelf/index.d.ts +0 -174
  761. package/dist/esm/biz-components/ActiveShelf/index.js +0 -2
  762. package/dist/esm/biz-components/ActiveShelf/index.js.map +0 -7
  763. package/dist/esm/biz-components/ActiveShelf/types.d.ts +0 -89
  764. package/dist/esm/biz-components/ActiveShelf/types.js +0 -2
  765. package/dist/esm/biz-components/ActiveShelf/types.js.map +0 -7
  766. package/dist/esm/biz-components/AnchorNavigation/index.d.ts +0 -42
  767. package/dist/esm/biz-components/AnchorNavigation/index.js +0 -2
  768. package/dist/esm/biz-components/AnchorNavigation/index.js.map +0 -7
  769. package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.d.ts +0 -2
  770. package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.js +0 -2
  771. package/dist/esm/biz-components/AnchorNavigation/useAnchorPosition.js.map +0 -7
  772. package/dist/esm/biz-components/BrandCardLink/BrandCardLink.d.ts +0 -6
  773. package/dist/esm/biz-components/BrandCardLink/BrandCardLink.js +0 -2
  774. package/dist/esm/biz-components/BrandCardLink/BrandCardLink.js.map +0 -7
  775. package/dist/esm/biz-components/BrandCardLink/index.d.ts +0 -1
  776. package/dist/esm/biz-components/BrandCardLink/index.js +0 -2
  777. package/dist/esm/biz-components/BrandCardLink/index.js.map +0 -7
  778. package/dist/esm/biz-components/BrandCardLink/types.d.ts +0 -19
  779. package/dist/esm/biz-components/BrandCardLink/types.js +0 -1
  780. package/dist/esm/biz-components/BrandCardLink/types.js.map +0 -7
  781. package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.d.ts +0 -74
  782. package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.js +0 -2
  783. package/dist/esm/biz-components/BuyOneGetOneShelf/ProductCard.js.map +0 -7
  784. package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.d.ts +0 -36
  785. package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js +0 -2
  786. package/dist/esm/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.js.map +0 -7
  787. package/dist/esm/biz-components/BuyOneGetOneShelf/index.d.ts +0 -193
  788. package/dist/esm/biz-components/BuyOneGetOneShelf/index.js +0 -2
  789. package/dist/esm/biz-components/BuyOneGetOneShelf/index.js.map +0 -7
  790. package/dist/esm/biz-components/EventSchedule/index.d.ts +0 -63
  791. package/dist/esm/biz-components/EventSchedule/index.js +0 -2
  792. package/dist/esm/biz-components/EventSchedule/index.js.map +0 -7
  793. package/dist/esm/biz-components/IPRedirect/RegionBanner.d.ts +0 -37
  794. package/dist/esm/biz-components/IPRedirect/RegionBanner.js +0 -60
  795. package/dist/esm/biz-components/IPRedirect/RegionBanner.js.map +0 -7
  796. package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.d.ts +0 -47
  797. package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.js +0 -33
  798. package/dist/esm/biz-components/IPRedirect/RegionSelectorModal.js.map +0 -7
  799. package/dist/esm/biz-components/IPRedirect/index.d.ts +0 -9
  800. package/dist/esm/biz-components/IPRedirect/index.js +0 -2
  801. package/dist/esm/biz-components/IPRedirect/index.js.map +0 -7
  802. package/dist/esm/biz-components/IPRedirect/type.d.ts +0 -36
  803. package/dist/esm/biz-components/IPRedirect/type.js +0 -1
  804. package/dist/esm/biz-components/IPRedirect/type.js.map +0 -7
  805. package/dist/esm/biz-components/IPRedirect/useAutoRedirect.d.ts +0 -66
  806. package/dist/esm/biz-components/IPRedirect/useAutoRedirect.js +0 -2
  807. package/dist/esm/biz-components/IPRedirect/useAutoRedirect.js.map +0 -7
  808. package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.d.ts +0 -51
  809. package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.js +0 -2
  810. package/dist/esm/biz-components/IPRedirect/useDetectedRegionRedirect.js.map +0 -7
  811. package/dist/esm/biz-components/IPRedirect/useIPRedirect.d.ts +0 -42
  812. package/dist/esm/biz-components/IPRedirect/useIPRedirect.js +0 -2
  813. package/dist/esm/biz-components/IPRedirect/useIPRedirect.js.map +0 -7
  814. package/dist/esm/biz-components/IPRedirect/useRedirectBanner.d.ts +0 -108
  815. package/dist/esm/biz-components/IPRedirect/useRedirectBanner.js +0 -2
  816. package/dist/esm/biz-components/IPRedirect/useRedirectBanner.js.map +0 -7
  817. package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.d.ts +0 -152
  818. package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.js +0 -2
  819. package/dist/esm/biz-components/IPRedirect/useRegionRedirectManager.js.map +0 -7
  820. package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.d.ts +0 -51
  821. package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.js +0 -2
  822. package/dist/esm/biz-components/IPRedirect/useSavedRegionRedirect.js.map +0 -7
  823. package/dist/esm/biz-components/IPRedirect/utils.d.ts +0 -222
  824. package/dist/esm/biz-components/IPRedirect/utils.js +0 -2
  825. package/dist/esm/biz-components/IPRedirect/utils.js.map +0 -7
  826. package/dist/esm/biz-components/ImageOverlayShelf/index.d.ts +0 -114
  827. package/dist/esm/biz-components/ImageOverlayShelf/index.js +0 -2
  828. package/dist/esm/biz-components/ImageOverlayShelf/index.js.map +0 -7
  829. package/dist/esm/biz-components/Media/index.d.ts +0 -32
  830. package/dist/esm/biz-components/Media/index.js +0 -2
  831. package/dist/esm/biz-components/Media/index.js.map +0 -7
  832. package/dist/esm/biz-components/MediaShelf/index.d.ts +0 -231
  833. package/dist/esm/biz-components/MediaShelf/index.js +0 -2
  834. package/dist/esm/biz-components/MediaShelf/index.js.map +0 -7
  835. package/dist/esm/biz-components/MediaShelf/types.d.ts +0 -37
  836. package/dist/esm/biz-components/MediaShelf/types.js +0 -2
  837. package/dist/esm/biz-components/MediaShelf/types.js.map +0 -7
  838. package/dist/esm/biz-components/MiniCart/index.d.ts +0 -88
  839. package/dist/esm/biz-components/MiniCart/index.js +0 -2
  840. package/dist/esm/biz-components/MiniCart/index.js.map +0 -7
  841. package/dist/esm/biz-components/PromotionalBar/index.d.ts +0 -49
  842. package/dist/esm/biz-components/PromotionalBar/index.js +0 -2
  843. package/dist/esm/biz-components/PromotionalBar/index.js.map +0 -7
  844. package/dist/esm/biz-components/SecondaryBanner/index.d.ts +0 -69
  845. package/dist/esm/biz-components/SecondaryBanner/index.js +0 -2
  846. package/dist/esm/biz-components/SecondaryBanner/index.js.map +0 -7
  847. package/dist/esm/biz-components/Title/Countdown.d.ts +0 -14
  848. package/dist/esm/biz-components/Title/Countdown.js +0 -2
  849. package/dist/esm/biz-components/Title/Countdown.js.map +0 -7
  850. package/dist/esm/biz-components/WheelLottery/BaseModal.d.ts +0 -55
  851. package/dist/esm/biz-components/WheelLottery/BaseModal.js +0 -12
  852. package/dist/esm/biz-components/WheelLottery/BaseModal.js.map +0 -7
  853. package/dist/esm/biz-components/WheelLottery/ChanceMethods.d.ts +0 -30
  854. package/dist/esm/biz-components/WheelLottery/ChanceMethods.js +0 -2
  855. package/dist/esm/biz-components/WheelLottery/ChanceMethods.js.map +0 -7
  856. package/dist/esm/biz-components/WheelLottery/ErrorModal.d.ts +0 -42
  857. package/dist/esm/biz-components/WheelLottery/ErrorModal.js +0 -2
  858. package/dist/esm/biz-components/WheelLottery/ErrorModal.js.map +0 -7
  859. package/dist/esm/biz-components/WheelLottery/MyRewardsModal.d.ts +0 -91
  860. package/dist/esm/biz-components/WheelLottery/MyRewardsModal.js +0 -2
  861. package/dist/esm/biz-components/WheelLottery/MyRewardsModal.js.map +0 -7
  862. package/dist/esm/biz-components/WheelLottery/PrizePool.d.ts +0 -26
  863. package/dist/esm/biz-components/WheelLottery/PrizePool.js +0 -2
  864. package/dist/esm/biz-components/WheelLottery/PrizePool.js.map +0 -7
  865. package/dist/esm/biz-components/WheelLottery/RulesModal.d.ts +0 -47
  866. package/dist/esm/biz-components/WheelLottery/RulesModal.js +0 -2
  867. package/dist/esm/biz-components/WheelLottery/RulesModal.js.map +0 -7
  868. package/dist/esm/biz-components/WheelLottery/ShareModal.d.ts +0 -74
  869. package/dist/esm/biz-components/WheelLottery/ShareModal.js +0 -2
  870. package/dist/esm/biz-components/WheelLottery/ShareModal.js.map +0 -7
  871. package/dist/esm/biz-components/WheelLottery/Wheel.d.ts +0 -27
  872. package/dist/esm/biz-components/WheelLottery/Wheel.js +0 -2
  873. package/dist/esm/biz-components/WheelLottery/Wheel.js.map +0 -7
  874. package/dist/esm/biz-components/WheelLottery/WinnerModal.d.ts +0 -25
  875. package/dist/esm/biz-components/WheelLottery/WinnerModal.js +0 -2
  876. package/dist/esm/biz-components/WheelLottery/WinnerModal.js.map +0 -7
  877. package/dist/esm/biz-components/WheelLottery/index.d.ts +0 -52
  878. package/dist/esm/biz-components/WheelLottery/index.js +0 -2
  879. package/dist/esm/biz-components/WheelLottery/index.js.map +0 -7
  880. package/dist/esm/biz-components/WheelLottery/types.d.ts +0 -1219
  881. package/dist/esm/biz-components/WheelLottery/types.js +0 -2
  882. package/dist/esm/biz-components/WheelLottery/types.js.map +0 -7
  883. package/dist/esm/components/paginator.d.ts +0 -12
  884. package/dist/esm/components/paginator.js +0 -7
  885. package/dist/esm/components/paginator.js.map +0 -7
  886. package/dist/esm/components/progress.d.ts +0 -46
  887. package/dist/esm/components/progress.js +0 -2
  888. package/dist/esm/components/progress.js.map +0 -7
  889. package/dist/esm/helpers/priceFormatting.d.ts +0 -11
  890. package/dist/esm/helpers/priceFormatting.js +0 -2
  891. package/dist/esm/helpers/priceFormatting.js.map +0 -7
  892. package/dist/esm/hooks/index.d.ts +0 -2
  893. package/dist/esm/hooks/index.js +0 -2
  894. package/dist/esm/hooks/index.js.map +0 -7
  895. package/dist/esm/hooks/useCoupon.d.ts +0 -111
  896. package/dist/esm/hooks/useCoupon.js +0 -2
  897. package/dist/esm/hooks/useCoupon.js.map +0 -7
  898. package/dist/esm/hooks/useMemberPrice.d.ts +0 -155
  899. package/dist/esm/hooks/useMemberPrice.js +0 -2
  900. package/dist/esm/hooks/useMemberPrice.js.map +0 -7
@@ -1,42 +0,0 @@
1
- import * as React from 'react';
2
- import { type VariantProps } from 'class-variance-authority';
3
- export interface AnchorNavigationSemanticName {
4
- root: 'root';
5
- content: 'content';
6
- item: 'item';
7
- }
8
- /**
9
- * 导航项对齐方向样式变体
10
- */
11
- declare const anchorNavigationVariants: (props?: ({
12
- alignment?: "end" | "start" | "center" | null | undefined;
13
- size?: "small" | "large" | null | undefined;
14
- } & import("class-variance-authority/types").ClassProp) | undefined) => string;
15
- /**
16
- * AnchorNavigation 业务组件数据接口
17
- */
18
- export interface AnchorNavigationData {
19
- /** 锚点列表 */
20
- sectionIds: {
21
- targetId: string;
22
- label: string;
23
- }[];
24
- /** 导航项水平对齐方式 */
25
- alignment?: 'start' | 'center' | 'end';
26
- /** 主题模式 */
27
- theme?: 'light' | 'dark';
28
- /** 导航大小 */
29
- size?: 'small' | 'large';
30
- }
31
- export interface AnchorNavigationProps extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof anchorNavigationVariants> {
32
- /** 业务数据 */
33
- data: AnchorNavigationData;
34
- classNames?: Partial<Record<keyof AnchorNavigationSemanticName, string>>;
35
- }
36
- /**
37
- * AnchorNavigation - 锚点导航
38
- *
39
- * @description 锚点导航
40
- */
41
- declare const AnchorNavigation: React.ForwardRefExoticComponent<AnchorNavigationProps & React.RefAttributes<HTMLDivElement>>;
42
- export default AnchorNavigation;
@@ -1,2 +0,0 @@
1
- "use client";import{jsx as u}from"react/jsx-runtime";import*as r from"react";import{cn as d}from"../../helpers/utils.js";import{cva as g}from"class-variance-authority";import N from"./useAnchorPosition.js";const k=g("anchor-navigation-content flex items-center overflow-x-auto [&::-webkit-scrollbar]:hidden",{variants:{alignment:{start:"tablet:justify-start",center:"tablet:justify-center",end:"tablet:justify-end"},size:{small:"gap-3",large:"gap-6"}},defaultVariants:{alignment:"start",size:"small"}}),w=g("anchor-navigation-item after:bg-brand relative shrink-0 text-sm font-bold after:absolute after:bottom-0 after:left-0 after:h-1 after:w-0 after:opacity-0 after:transition-all after:duration-300",{variants:{size:{small:"py-3",large:"py-4"}},defaultVariants:{size:"small"}}),R=g("tablet:px-8 laptop:px-16 desktop:px-16 lg-desktop:px-[calc(50%-832px)] sticky top-0 z-40 w-full px-4",{variants:{theme:{light:"bg-white",dark:"bg-[#1E2024]"}},defaultVariants:{theme:"light"}}),b=r.forwardRef(({classNames:l={},data:i},x)=>{const{alignment:I="start",theme:p="light",size:v="small"}=i,s=N(i.sectionIds?.map(t=>t.targetId)||[]),c=r.useRef(null),f=r.useRef(null),h=r.useRef([]);r.useImperativeHandle(x,()=>c.current);const m=r.useCallback(t=>{const a=h.current[t];if(a&&f.current){const e=f.current,n=a,o=n.offsetLeft-e.offsetWidth/2+n.offsetWidth/2;typeof e.scrollTo=="function"&&e.scrollTo({left:o,behavior:"smooth"})}},[]);return r.useEffect(()=>{if(!s)return;const t=i.sectionIds?.findIndex(a=>a.targetId===s);t!==void 0&&t!==-1&&m(t)},[s,i.sectionIds,m]),u("div",{ref:c,className:d(R({theme:p}),l?.root),children:u("div",{ref:f,className:d(k({alignment:I,size:v}),"relative",l?.content),children:i.sectionIds?.map((t,a)=>{const e=s===t.targetId,n=p==="dark";return u("button",{ref:o=>{o&&(h.current[a]=o)},onClick:()=>{m(a);const o=document.getElementById(t.targetId);if(o&&c.current){const y=c.current.offsetHeight,A=o.getBoundingClientRect().top+window.scrollY-y;window.scrollTo({top:A,behavior:"smooth"})}},className:d(w({size:v}),{"text-[#4A4C56]":!n&&!e,"text-[#080A0F] after:w-full after:opacity-100":!n&&e,"text-[#8A8D92]":n&&!e,"text-white after:w-full after:opacity-100":n&&e},l?.item),children:t.label},t.targetId)})})})});b.displayName="AnchorNavigation";var D=b;export{D as default};
2
- //# sourceMappingURL=index.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/AnchorNavigation/index.tsx"],
4
- "sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { cva, type VariantProps } from 'class-variance-authority'\nimport useAnchorPosition from './useAnchorPosition.js'\n\nexport interface AnchorNavigationSemanticName {\n root: 'root'\n content: 'content'\n item: 'item'\n}\n\n/**\n * \u5BFC\u822A\u9879\u5BF9\u9F50\u65B9\u5411\u6837\u5F0F\u53D8\u4F53\n */\nconst anchorNavigationVariants = cva(\n 'anchor-navigation-content flex items-center overflow-x-auto [&::-webkit-scrollbar]:hidden',\n {\n variants: {\n alignment: {\n start: 'tablet:justify-start',\n center: 'tablet:justify-center',\n end: 'tablet:justify-end',\n },\n size: {\n small: 'gap-3',\n large: 'gap-6',\n },\n },\n defaultVariants: {\n alignment: 'start',\n size: 'small',\n },\n }\n)\n\n/**\n * \u5BFC\u822A\u9879\u6837\u5F0F\u53D8\u4F53\n */\nconst anchorItemVariants = cva(\n 'anchor-navigation-item after:bg-brand relative shrink-0 text-sm font-bold after:absolute after:bottom-0 after:left-0 after:h-1 after:w-0 after:opacity-0 after:transition-all after:duration-300',\n {\n variants: {\n size: {\n small: 'py-3',\n large: 'py-4',\n },\n },\n defaultVariants: {\n size: 'small',\n },\n }\n)\n\n/**\n * \u5BB9\u5668\u4E3B\u9898\u6837\u5F0F\u53D8\u4F53\n */\nconst containerVariants = cva(\n 'tablet:px-8 laptop:px-16 desktop:px-16 lg-desktop:px-[calc(50%-832px)] sticky top-0 z-40 w-full px-4',\n {\n variants: {\n theme: {\n light: 'bg-white',\n dark: 'bg-[#1E2024]',\n },\n },\n defaultVariants: {\n theme: 'light',\n },\n }\n)\n\n/**\n * AnchorNavigation \u4E1A\u52A1\u7EC4\u4EF6\u6570\u636E\u63A5\u53E3\n */\nexport interface AnchorNavigationData {\n /** \u951A\u70B9\u5217\u8868 */\n sectionIds: {\n targetId: string\n label: string\n }[]\n /** \u5BFC\u822A\u9879\u6C34\u5E73\u5BF9\u9F50\u65B9\u5F0F */\n alignment?: 'start' | 'center' | 'end'\n /** \u4E3B\u9898\u6A21\u5F0F */\n theme?: 'light' | 'dark'\n /** \u5BFC\u822A\u5927\u5C0F */\n size?: 'small' | 'large'\n}\n\nexport interface AnchorNavigationProps\n extends React.HTMLAttributes<HTMLDivElement>, VariantProps<typeof anchorNavigationVariants> {\n /** \u4E1A\u52A1\u6570\u636E */\n data: AnchorNavigationData\n classNames?: Partial<Record<keyof AnchorNavigationSemanticName, string>>\n}\n\n/**\n * AnchorNavigation - \u951A\u70B9\u5BFC\u822A\n *\n * @description \u951A\u70B9\u5BFC\u822A\n */\nconst AnchorNavigation = React.forwardRef<HTMLDivElement, AnchorNavigationProps>(({ classNames = {}, data }, ref) => {\n const { alignment = 'start', theme = 'light', size = 'small' } = data\n const activeId = useAnchorPosition(data.sectionIds?.map(item => item.targetId) || [])\n const rootRef = React.useRef<HTMLDivElement>(null)\n const containerRef = React.useRef<HTMLDivElement>(null)\n const sectionRefs = React.useRef<HTMLButtonElement[]>([])\n\n // \u66B4\u9732 rootRef \u7ED9\u5916\u90E8 ref\n React.useImperativeHandle(ref, () => rootRef.current as HTMLDivElement)\n\n const autoScrollToActiveItem = React.useCallback((activeIdIndex: number) => {\n const curRef = sectionRefs.current[activeIdIndex]\n\n if (curRef && containerRef.current) {\n const container = containerRef.current\n const button = curRef\n const scrollLeft = button.offsetLeft - container.offsetWidth / 2 + button.offsetWidth / 2\n\n // \u68C0\u67E5 scrollTo \u65B9\u6CD5\u662F\u5426\u5B58\u5728\uFF08\u517C\u5BB9\u6D4B\u8BD5\u73AF\u5883\u548C\u65E7\u6D4F\u89C8\u5668\uFF09\n if (typeof container.scrollTo === 'function') {\n container.scrollTo({\n left: scrollLeft,\n behavior: 'smooth',\n })\n }\n }\n }, [])\n\n // \u5F53\u5C4F\u5E55\u6EDA\u52A8\u5BFC\u81F4 activeId \u53D8\u5316\u65F6\uFF0C\u81EA\u52A8\u6EDA\u52A8\u5BFC\u822A\u680F\u5230\u5BF9\u5E94\u9879\n React.useEffect(() => {\n if (!activeId) return\n\n const activeIndex = data.sectionIds?.findIndex(item => item.targetId === activeId)\n if (activeIndex !== undefined && activeIndex !== -1) {\n autoScrollToActiveItem(activeIndex)\n }\n }, [activeId, data.sectionIds, autoScrollToActiveItem])\n\n return (\n <div ref={rootRef} className={cn(containerVariants({ theme }), classNames?.root)}>\n <div\n ref={containerRef}\n className={cn(anchorNavigationVariants({ alignment, size }), 'relative', classNames?.content)}\n >\n {data.sectionIds?.map((item, index) => {\n const isActive = activeId === item.targetId\n const isDark = theme === 'dark'\n\n return (\n <button\n key={item.targetId}\n ref={el => {\n if (el) {\n sectionRefs.current[index] = el\n }\n }}\n onClick={() => {\n autoScrollToActiveItem(index)\n\n // \u624B\u52A8\u8BA1\u7B97\u6EDA\u52A8\u4F4D\u7F6E\uFF0C\u8003\u8651\u5BFC\u822A\u680F\u9AD8\u5EA6\n const targetElement = document.getElementById(item.targetId)\n if (targetElement && rootRef.current) {\n const navHeight = rootRef.current.offsetHeight\n const targetPosition = targetElement.getBoundingClientRect().top + window.scrollY - navHeight\n\n window.scrollTo({\n top: targetPosition,\n behavior: 'smooth',\n })\n }\n }}\n className={cn(\n anchorItemVariants({ size }),\n {\n // Light theme colors\n 'text-[#4A4C56]': !isDark && !isActive,\n 'text-[#080A0F] after:w-full after:opacity-100': !isDark && isActive,\n // Dark theme colors\n 'text-[#8A8D92]': isDark && !isActive,\n 'text-white after:w-full after:opacity-100': isDark && isActive,\n },\n classNames?.item\n )}\n >\n {item.label}\n </button>\n )\n })}\n </div>\n </div>\n )\n})\n\nAnchorNavigation.displayName = 'AnchorNavigation'\nexport default AnchorNavigation\n"],
5
- "mappings": "aAuJY,cAAAA,MAAA,oBArJZ,UAAYC,MAAW,QACvB,OAAS,MAAAC,MAAU,yBACnB,OAAS,OAAAC,MAA8B,2BACvC,OAAOC,MAAuB,yBAW9B,MAAMC,EAA2BF,EAC/B,4FACA,CACE,SAAU,CACR,UAAW,CACT,MAAO,uBACP,OAAQ,wBACR,IAAK,oBACP,EACA,KAAM,CACJ,MAAO,QACP,MAAO,OACT,CACF,EACA,gBAAiB,CACf,UAAW,QACX,KAAM,OACR,CACF,CACF,EAKMG,EAAqBH,EACzB,mMACA,CACE,SAAU,CACR,KAAM,CACJ,MAAO,OACP,MAAO,MACT,CACF,EACA,gBAAiB,CACf,KAAM,OACR,CACF,CACF,EAKMI,EAAoBJ,EACxB,uGACA,CACE,SAAU,CACR,MAAO,CACL,MAAO,WACP,KAAM,cACR,CACF,EACA,gBAAiB,CACf,MAAO,OACT,CACF,CACF,EA+BMK,EAAmBP,EAAM,WAAkD,CAAC,CAAE,WAAAQ,EAAa,CAAC,EAAG,KAAAC,CAAK,EAAGC,IAAQ,CACnH,KAAM,CAAE,UAAAC,EAAY,QAAS,MAAAC,EAAQ,QAAS,KAAAC,EAAO,OAAQ,EAAIJ,EAC3DK,EAAWX,EAAkBM,EAAK,YAAY,IAAIM,GAAQA,EAAK,QAAQ,GAAK,CAAC,CAAC,EAC9EC,EAAUhB,EAAM,OAAuB,IAAI,EAC3CiB,EAAejB,EAAM,OAAuB,IAAI,EAChDkB,EAAclB,EAAM,OAA4B,CAAC,CAAC,EAGxDA,EAAM,oBAAoBU,EAAK,IAAMM,EAAQ,OAAyB,EAEtE,MAAMG,EAAyBnB,EAAM,YAAaoB,GAA0B,CAC1E,MAAMC,EAASH,EAAY,QAAQE,CAAa,EAEhD,GAAIC,GAAUJ,EAAa,QAAS,CAClC,MAAMK,EAAYL,EAAa,QACzBM,EAASF,EACTG,EAAaD,EAAO,WAAaD,EAAU,YAAc,EAAIC,EAAO,YAAc,EAGpF,OAAOD,EAAU,UAAa,YAChCA,EAAU,SAAS,CACjB,KAAME,EACN,SAAU,QACZ,CAAC,CAEL,CACF,EAAG,CAAC,CAAC,EAGL,OAAAxB,EAAM,UAAU,IAAM,CACpB,GAAI,CAACc,EAAU,OAEf,MAAMW,EAAchB,EAAK,YAAY,UAAUM,GAAQA,EAAK,WAAaD,CAAQ,EAC7EW,IAAgB,QAAaA,IAAgB,IAC/CN,EAAuBM,CAAW,CAEtC,EAAG,CAACX,EAAUL,EAAK,WAAYU,CAAsB,CAAC,EAGpDpB,EAAC,OAAI,IAAKiB,EAAS,UAAWf,EAAGK,EAAkB,CAAE,MAAAM,CAAM,CAAC,EAAGJ,GAAY,IAAI,EAC7E,SAAAT,EAAC,OACC,IAAKkB,EACL,UAAWhB,EAAGG,EAAyB,CAAE,UAAAO,EAAW,KAAAE,CAAK,CAAC,EAAG,WAAYL,GAAY,OAAO,EAE3F,SAAAC,EAAK,YAAY,IAAI,CAACM,EAAMW,IAAU,CACrC,MAAMC,EAAWb,IAAaC,EAAK,SAC7Ba,EAAShB,IAAU,OAEzB,OACEb,EAAC,UAEC,IAAK8B,GAAM,CACLA,IACFX,EAAY,QAAQQ,CAAK,EAAIG,EAEjC,EACA,QAAS,IAAM,CACbV,EAAuBO,CAAK,EAG5B,MAAMI,EAAgB,SAAS,eAAef,EAAK,QAAQ,EAC3D,GAAIe,GAAiBd,EAAQ,QAAS,CACpC,MAAMe,EAAYf,EAAQ,QAAQ,aAC5BgB,EAAiBF,EAAc,sBAAsB,EAAE,IAAM,OAAO,QAAUC,EAEpF,OAAO,SAAS,CACd,IAAKC,EACL,SAAU,QACZ,CAAC,CACH,CACF,EACA,UAAW/B,EACTI,EAAmB,CAAE,KAAAQ,CAAK,CAAC,EAC3B,CAEE,iBAAkB,CAACe,GAAU,CAACD,EAC9B,gDAAiD,CAACC,GAAUD,EAE5D,iBAAkBC,GAAU,CAACD,EAC7B,4CAA6CC,GAAUD,CACzD,EACAnB,GAAY,IACd,EAEC,SAAAO,EAAK,OAlCDA,EAAK,QAmCZ,CAEJ,CAAC,EACH,EACF,CAEJ,CAAC,EAEDR,EAAiB,YAAc,mBAC/B,IAAO0B,EAAQ1B",
6
- "names": ["jsx", "React", "cn", "cva", "useAnchorPosition", "anchorNavigationVariants", "anchorItemVariants", "containerVariants", "AnchorNavigation", "classNames", "data", "ref", "alignment", "theme", "size", "activeId", "item", "rootRef", "containerRef", "sectionRefs", "autoScrollToActiveItem", "activeIdIndex", "curRef", "container", "button", "scrollLeft", "activeIndex", "index", "isActive", "isDark", "el", "targetElement", "navHeight", "targetPosition", "AnchorNavigation_default"]
7
- }
@@ -1,2 +0,0 @@
1
- declare const useAnchorPosition: (sectionIds: string[], offset?: number) => string;
2
- export default useAnchorPosition;
@@ -1,2 +0,0 @@
1
- import{useState as s,useEffect as a}from"react";import{debounce as w}from"es-toolkit";const m=(e,o=100)=>{const[d,n]=s(e[0]||"");return a(()=>{const l=()=>{const u=Math.ceil(window.scrollY+o+10);let c=!1;for(let t=e.length-1;t>=0;t--){const i=document.getElementById(e[t]);if(i){const f=Math.ceil(i.getBoundingClientRect().top+window.scrollY);if(u>=f){n(e[t]),c=!0;break}}}!c&&e.length>0&&n(e[0])};l();const r=w(l,50);return window.addEventListener("scroll",r),()=>{window.removeEventListener("scroll",r)}},[e,o]),d};var v=m;export{v as default};
2
- //# sourceMappingURL=useAnchorPosition.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/AnchorNavigation/useAnchorPosition.tsx"],
4
- "sourcesContent": ["import { useState, useEffect } from 'react'\nimport { debounce } from 'es-toolkit'\n\nconst useAnchorPosition = (sectionIds: string[], offset = 100) => {\n const [activeId, setActiveId] = useState(sectionIds[0] || '')\n\n useEffect(() => {\n const handleScroll = () => {\n const scrollPosition = Math.ceil(window.scrollY + offset + 10)\n\n let foundActiveId = false\n\n // \u904D\u5386\u6240\u6709section\uFF0C\u627E\u5230\u5F53\u524D\u53EF\u89C6\u533A\u57DF\u5185\u7684section\n for (let i = sectionIds.length - 1; i >= 0; i--) {\n const section = document.getElementById(sectionIds[i])\n if (section) {\n const offsetTop = Math.ceil(section.getBoundingClientRect().top + window.scrollY)\n if (scrollPosition >= offsetTop) {\n setActiveId(sectionIds[i])\n foundActiveId = true\n break\n }\n }\n }\n\n // \u5982\u679C\u6EDA\u52A8\u8DDD\u79BB\u5C0F\u4E8E\u7B2C\u4E00\u4E2Asection\u7684offset\uFF0C\u8BBE\u7F6E\u4E3A\u7B2C\u4E00\u4E2Asection\n if (!foundActiveId && sectionIds.length > 0) {\n setActiveId(sectionIds[0])\n }\n }\n\n // \u521D\u59CB\u5316\u65F6\u6267\u884C\u4E00\u6B21\n handleScroll()\n\n // \u521B\u5EFAdebounce\u51FD\u6570\u5E76\u4FDD\u5B58\u5F15\u7528\uFF0C\u786E\u4FDD\u80FD\u6B63\u786E\u79FB\u9664\u76D1\u542C\u5668\n const debouncedHandleScroll = debounce(handleScroll, 50)\n window.addEventListener('scroll', debouncedHandleScroll)\n\n return () => {\n window.removeEventListener('scroll', debouncedHandleScroll)\n }\n }, [sectionIds, offset])\n\n return activeId\n}\n\nexport default useAnchorPosition\n"],
5
- "mappings": "AAAA,OAAS,YAAAA,EAAU,aAAAC,MAAiB,QACpC,OAAS,YAAAC,MAAgB,aAEzB,MAAMC,EAAoB,CAACC,EAAsBC,EAAS,MAAQ,CAChE,KAAM,CAACC,EAAUC,CAAW,EAAIP,EAASI,EAAW,CAAC,GAAK,EAAE,EAE5D,OAAAH,EAAU,IAAM,CACd,MAAMO,EAAe,IAAM,CACzB,MAAMC,EAAiB,KAAK,KAAK,OAAO,QAAUJ,EAAS,EAAE,EAE7D,IAAIK,EAAgB,GAGpB,QAASC,EAAIP,EAAW,OAAS,EAAGO,GAAK,EAAGA,IAAK,CAC/C,MAAMC,EAAU,SAAS,eAAeR,EAAWO,CAAC,CAAC,EACrD,GAAIC,EAAS,CACX,MAAMC,EAAY,KAAK,KAAKD,EAAQ,sBAAsB,EAAE,IAAM,OAAO,OAAO,EAChF,GAAIH,GAAkBI,EAAW,CAC/BN,EAAYH,EAAWO,CAAC,CAAC,EACzBD,EAAgB,GAChB,KACF,CACF,CACF,CAGI,CAACA,GAAiBN,EAAW,OAAS,GACxCG,EAAYH,EAAW,CAAC,CAAC,CAE7B,EAGAI,EAAa,EAGb,MAAMM,EAAwBZ,EAASM,EAAc,EAAE,EACvD,cAAO,iBAAiB,SAAUM,CAAqB,EAEhD,IAAM,CACX,OAAO,oBAAoB,SAAUA,CAAqB,CAC5D,CACF,EAAG,CAACV,EAAYC,CAAM,CAAC,EAEhBC,CACT,EAEA,IAAOS,EAAQZ",
6
- "names": ["useState", "useEffect", "debounce", "useAnchorPosition", "sectionIds", "offset", "activeId", "setActiveId", "handleScroll", "scrollPosition", "foundActiveId", "i", "section", "offsetTop", "debouncedHandleScroll", "useAnchorPosition_default"]
7
- }
@@ -1,6 +0,0 @@
1
- import type { BrandCardLinkProps } from './types.js';
2
- declare const _default: import("react").ForwardRefExoticComponent<Omit<BrandCardLinkProps & import("react").RefAttributes<HTMLDivElement> & {
3
- style?: string | React.CSSProperties;
4
- container?: import("../../shared/Styles.js").ContainerProps["container"];
5
- }, "ref"> & import("react").RefAttributes<any>>;
6
- export default _default;
@@ -1,2 +0,0 @@
1
- "use client";import{jsx as t,jsxs as s}from"react/jsx-runtime";import{forwardRef as w,useEffect as b,useRef as f,useState as y,useImperativeHandle as N}from"react";import{cn as a}from"../../helpers/utils.js";import L from"../../components/picture.js";import{withLayout as M}from"../../shared/Styles.js";import{useMediaQuery as S}from"react-responsive";import{useExposure as B}from"../../hooks/useExposure.js";import{Swiper as C,SwiperSlide as T}from"swiper/react";import{Pagination as A,FreeMode as E,Mousewheel as I}from"swiper/modules";import"../Title/index.js";import P from"../../components/link.js";const j="copy",D="store_benefits",H=(e,i)=>{const r=[];for(let o=0;o<e.length;o+=i)r.push(e.slice(o,o+i));return r},x=w(({data:{items:e=[],itemShape:i},className:r},o)=>{const[d,g]=y(!1),m=S({query:"(max-width: 768px)"}),c=f(null),p=f(null);N(o,()=>p.current),B(p,{componentType:j,componentName:D}),b(()=>{g(m)},[m]);const h=d?H(e,4):e;return t("div",{ref:p,className:a("brand-equity-wrapper w-full",r),children:d?s(C,{className:a(r),modules:[E,I,A],freeMode:!0,mousewheel:{forceToAxis:!0},pagination:{clickable:!0,el:c.current},breakpoints:{0:{spaceBetween:12}},children:[h?.map((n,l)=>t(T,{className:"!flex flex-col gap-3",children:Array.isArray(n)&&n?.map((v,u)=>t(k,{data:v,itemShape:i,index:u},u))},"SwiperSlide"+l)),t("div",{ref:c,className:"mt-3 flex justify-center"})]}):t("div",{className:a("laptop:gap-4 tablet:grid-cols-2 laptop:grid-cols-4 grid grid-cols-1 gap-3"),children:e.map((n,l)=>t(k,{data:n,itemShape:i,index:l},l))})})}),k=({data:e,itemShape:i,index:r})=>s("div",{className:a("brand-equity-item","lg-desktop:p-8 desktop:p-6 p-4","laptop:h-[192px] lg-desktop:h-[240px] h-[160px]","box-border flex w-full flex-col justify-between overflow-hidden bg-[#DAE7F2]",i==="round"?"rounded-box":"rounded-none"),children:[s("div",{className:"lg-desktop:h-[50px] flex h-10 items-center justify-between gap-3",children:[t("h3",{className:"link-item-title lg-desktop:text-[18px] desktop:text-[16px] line-clamp-2 flex-1 text-[14px] font-bold leading-[1.2] tracking-[-0.02em] text-[#080A0F]",children:e.title}),t("div",{className:"link-item-img lg-desktop:size-[36px] size-[30px] shrink-0",children:t(L,{className:"size-full object-cover",source:e.icon?.url,alt:e.icon?.alt,imgClassName:"w-full h-full object-cover"})})]}),s("div",{className:"box-border overflow-hidden",children:[t("p",{title:e.description||"",className:"link-item-description lg-desktop:text-[24px] line-clamp-2 text-[20px] font-semibold leading-[1.2] tracking-[-0.04em] text-[#767880]",children:e.description||""}),s(P,{href:e?.link,asChild:!e?.link,className:"desktop:mt-4 mt-2 flex items-center gap-0.5 no-underline hover:underline",children:[t("span",{className:"link-item-text laptop:text-base text-sm",children:e?.linkText}),t("div",{className:"size-6",children:t("svg",{width:"24",height:"24",className:"mb-[3px]",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"none",children:t("path",{className:"transition-all duration-[0.4s]",d:"M10.5 8L14.5 12L10.5 16",stroke:"#777",strokeWidth:"1.5",strokeLinecap:"round"})})})]})]})]});x.displayName="BrandCardLink";var U=M(x);export{U as default};
2
- //# sourceMappingURL=BrandCardLink.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/BrandCardLink/BrandCardLink.tsx"],
4
- "sourcesContent": ["'use client'\nimport { forwardRef, useEffect, useRef, useState, useImperativeHandle } from 'react'\n\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { BrandCardLinkProps, BrandCardLinkItemProps } from './types.js'\n\nimport type { Img } from '../../types/props.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { useExposure } from '../../hooks/useExposure.js'\n\nimport { Swiper, SwiperSlide } from 'swiper/react'\nimport { Pagination, FreeMode, Mousewheel } from 'swiper/modules'\nimport Title from '../Title/index.js'\nimport Link from '../../components/link.js'\n\nconst componentType = 'copy'\nconst componentName = 'store_benefits'\n\nconst chunkArray = (arr: BrandCardLinkItemProps[], size: number) => {\n const chunks = []\n for (let i = 0; i < arr.length; i += size) {\n chunks.push(arr.slice(i, i + size))\n }\n return chunks\n}\n\nconst BrandCardLink = forwardRef<HTMLDivElement, BrandCardLinkProps>(\n ({ data: { items = [], itemShape }, className }, ref) => {\n const [isMobile, setIsMobile] = useState(false)\n const mediaQuery = useMediaQuery({ query: '(max-width: 768px)' })\n const paginationRef = useRef<HTMLDivElement>(null)\n const innerRef = useRef<HTMLDivElement>(null)\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n useExposure(innerRef, {\n componentType,\n componentName,\n })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const itemsArray = isMobile ? chunkArray(items, 4) : items\n return (\n <div ref={innerRef} className={cn('brand-equity-wrapper w-full', className)}>\n {isMobile ? (\n <Swiper\n className={cn(className)}\n modules={[FreeMode, Mousewheel, Pagination]}\n freeMode={true}\n mousewheel={{\n forceToAxis: true,\n }}\n pagination={{\n clickable: true,\n el: paginationRef.current,\n }}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n },\n }}\n >\n {itemsArray?.map((item, jIndex) => (\n <SwiperSlide key={'SwiperSlide' + jIndex} className=\"!flex flex-col gap-3\">\n {Array.isArray(item) &&\n item?.map((item, index) => (\n <BrandCardLinkItem key={index} data={item} itemShape={itemShape} index={index} />\n ))}\n </SwiperSlide>\n ))}\n <div ref={paginationRef} className=\"mt-3 flex justify-center\"></div>\n </Swiper>\n ) : (\n <div className={cn('laptop:gap-4 tablet:grid-cols-2 laptop:grid-cols-4 grid grid-cols-1 gap-3')}>\n {items.map((item, index) => (\n <BrandCardLinkItem key={index} data={item} itemShape={itemShape} index={index} />\n ))}\n </div>\n )}\n </div>\n )\n }\n)\n\nconst BrandCardLinkItem = ({\n data,\n itemShape,\n index,\n}: {\n data: BrandCardLinkItemProps\n itemShape?: 'round' | 'square'\n index: number\n}) => {\n return (\n <div\n className={cn(\n 'brand-equity-item',\n 'lg-desktop:p-8 desktop:p-6 p-4',\n 'laptop:h-[192px] lg-desktop:h-[240px] h-[160px]',\n 'box-border flex w-full flex-col justify-between overflow-hidden bg-[#DAE7F2]',\n itemShape === 'round' ? 'rounded-box' : 'rounded-none'\n )}\n >\n <div className=\"lg-desktop:h-[50px] flex h-10 items-center justify-between gap-3\">\n <h3 className=\"link-item-title lg-desktop:text-[18px] desktop:text-[16px] line-clamp-2 flex-1 text-[14px] font-bold leading-[1.2] tracking-[-0.02em] text-[#080A0F]\">\n {data.title}\n </h3>\n <div className=\"link-item-img lg-desktop:size-[36px] size-[30px] shrink-0\">\n <Picture\n className=\"size-full object-cover\"\n source={data.icon?.url}\n alt={data.icon?.alt}\n imgClassName=\"w-full h-full object-cover\"\n />\n </div>\n </div>\n <div className=\"box-border overflow-hidden\">\n <p\n title={data.description || ''}\n className=\"link-item-description lg-desktop:text-[24px] line-clamp-2 text-[20px] font-semibold leading-[1.2] tracking-[-0.04em] text-[#767880]\"\n >\n {data.description || ''}\n </p>\n <Link\n href={data?.link}\n asChild={!data?.link}\n className=\"desktop:mt-4 mt-2 flex items-center gap-0.5 no-underline hover:underline\"\n >\n <span className=\"link-item-text laptop:text-base text-sm\">{data?.linkText}</span>\n <div className=\"size-6\">\n <svg\n width=\"24\"\n height=\"24\"\n className=\"mb-[3px]\"\n xmlns=\"http://www.w3.org/2000/svg\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n >\n <path\n className=\"transition-all duration-[0.4s]\"\n d=\"M10.5 8L14.5 12L10.5 16\"\n stroke=\"#777\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n ></path>\n </svg>\n </div>\n </Link>\n </div>\n </div>\n )\n}\n\nBrandCardLink.displayName = 'BrandCardLink'\n\nexport default withLayout(BrandCardLink)\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "forwardRef", "useEffect", "useRef", "useState", "useImperativeHandle", "cn", "Picture", "withLayout", "useMediaQuery", "useExposure", "Swiper", "SwiperSlide", "Pagination", "FreeMode", "Mousewheel", "Link", "componentType", "componentName", "chunkArray", "arr", "size", "chunks", "i", "BrandCardLink", "items", "itemShape", "className", "ref", "isMobile", "setIsMobile", "mediaQuery", "paginationRef", "innerRef", "itemsArray", "item", "jIndex", "index", "BrandCardLinkItem", "data", "BrandCardLink_default"]
7
- }
@@ -1 +0,0 @@
1
- export { default } from './BrandCardLink.js';
@@ -1,2 +0,0 @@
1
- import{default as o}from"./BrandCardLink.js";export{o as default};
2
- //# sourceMappingURL=index.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/BrandCardLink/index.ts"],
4
- "sourcesContent": ["export { default } from './BrandCardLink.js'\n"],
5
- "mappings": "AAAA,OAAS,WAAAA,MAAe",
6
- "names": ["default"]
7
- }
@@ -1,19 +0,0 @@
1
- import type { ComponentCommonProps, Img } from '../../types/props.js';
2
- export interface BrandCardLinkItemProps {
3
- icon?: Img;
4
- type?: 'icon' | 'avatar';
5
- title: string;
6
- description: string;
7
- avatarList?: {
8
- avatar: Img;
9
- }[];
10
- link: string;
11
- linkText: string;
12
- }
13
- export interface BrandCardLinkProps extends ComponentCommonProps {
14
- data: {
15
- items: BrandCardLinkItemProps[];
16
- itemShape?: 'round' | 'square';
17
- };
18
- className?: string;
19
- }
@@ -1 +0,0 @@
1
- //# sourceMappingURL=types.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": [],
4
- "sourcesContent": [],
5
- "mappings": "",
6
- "names": []
7
- }
@@ -1,74 +0,0 @@
1
- import * as React from 'react';
2
- /**
3
- * 免费赠品接口
4
- */
5
- export interface FreeGift {
6
- /** 赠品ID */
7
- id: string;
8
- /** 赠品图片URL */
9
- image: string;
10
- /** 赠品名称 */
11
- name: string;
12
- /** 原价 */
13
- originalPrice: string;
14
- /** 现价(通常为Free) */
15
- currentPrice: string;
16
- /** 是否为新品 */
17
- isNew?: boolean;
18
- /** 是否被选中 */
19
- selected?: boolean;
20
- }
21
- /**
22
- * 产品卡片数据接口
23
- */
24
- export interface ProductCardData {
25
- /** 产品图片URL */
26
- image: string;
27
- /** 产品标签列表 */
28
- tags?: string[];
29
- /** 产品名称 */
30
- name: string;
31
- /** 产品描述 */
32
- description: string;
33
- /** 免费赠品说明文字 */
34
- freeGiftLabel?: string;
35
- /** 免费赠品列表 */
36
- freeGifts?: FreeGift[];
37
- /** 赠品选择模式:单选或多选 */
38
- giftSelectionMode?: 'single' | 'multiple';
39
- /** 当前价格 */
40
- currentPrice: string;
41
- /** 原价 */
42
- originalPrice?: string;
43
- /** Learn More按钮文本 */
44
- learnMoreText?: string;
45
- /** Shop Now按钮文本 */
46
- shopNowText?: string;
47
- }
48
- export interface ProductCardProps extends React.HTMLAttributes<HTMLDivElement> {
49
- /** 产品数据 */
50
- data: ProductCardData;
51
- /** 礼品数据源,用于匹配实际的价格、图片、标题 */
52
- giftData?: any;
53
- /** 布局模式:一排一个或一排两个 */
54
- layout?: 'single' | 'double';
55
- /** 产品卡片点击事件 */
56
- onProductClick?: (product: ProductCardData) => void;
57
- /** 产品图片点击事件 */
58
- onProductImageClick?: (product: ProductCardData) => void;
59
- /** Learn More按钮点击事件 */
60
- onLearnMore?: (product: ProductCardData) => void;
61
- /** Shop Now按钮点击事件 */
62
- onShopNow?: (product: ProductCardData) => void;
63
- /** 赠品点击事件 */
64
- onGiftClick?: (gift: FreeGift, product: ProductCardData) => void;
65
- /** 赠品选择变化事件 */
66
- onGiftSelectionChange?: (selectedGifts: FreeGift[], product: ProductCardData) => void;
67
- }
68
- /**
69
- * ProductCard - 买赠货架产品卡片
70
- *
71
- * @description 用于买一赠一活动的产品展示卡片,左侧展示产品图片和标签,右侧展示产品信息、赠品和购买按钮
72
- */
73
- declare const ProductCard: React.ForwardRefExoticComponent<ProductCardProps & React.RefAttributes<HTMLDivElement>>;
74
- export default ProductCard;
@@ -1,2 +0,0 @@
1
- "use client";import{jsx as i,jsxs as m}from"react/jsx-runtime";import*as u from"react";import{cn as l}from"../../helpers/index.js";import h from"../../components/picture.js";import y from"../../components/button.js";import{Text as g}from"../../components/text.js";import{Heading as $}from"../../components/heading.js";import j from"../../components/badge.js";function V(r,e){return!e||!Array.isArray(e)?null:e.find(t=>t.handle&&t.handle===r||t.id&&t.id===r?!0:t.variants&&Array.isArray(t.variants)?t.variants.some(c=>c.sku===r):!1)||null}const C=u.forwardRef(({image:r,name:e,layout:s="single",className:t,onClick:c},p)=>i("div",{ref:p,className:l("rounded-l-box laptop:rounded-l-box tablet:rounded-t-box tablet:rounded-r-none relative flex items-start gap-6 overflow-hidden p-6",s==="single"?"w-[964px]":"w-[482px]",s==="single"?" tablet:w-full tablet:p-4":"",c?"cursor-pointer":"",t),onClick:c,children:i(h,{source:r,alt:e,className:"absolute inset-0 w-full max-w-none",imgClassName:"h-full object-cover"})}));C.displayName="ProductImage";const P=u.forwardRef(({name:r,description:e,layout:s="single",className:t},c)=>m("div",{ref:c,className:l("flex w-full flex-col gap-1",t),children:[i($,{as:"h4",size:4,weight:"semibold",className:l("text-info-primary w-full text-2xl leading-[1.2] tracking-[-0.96px]","tablet:text-[20px] tablet:tracking-[-0.8px]"),children:r}),i(g,{size:4,weight:"semibold",className:l("text-info-primary w-full leading-[1.4] tracking-[-0.36px]","tablet:text-sm tablet:tracking-[-0.28px]"),children:e})]}));P.displayName="ProductInfo";const G=u.forwardRef(({gift:r,onClick:e,className:s},t)=>i("div",{ref:t,className:l("bg-container-primary rounded-box relative flex w-full cursor-pointer flex-col border-2 transition-all hover:shadow-sm",r.selected?"border-brand-0":"border-container-secondary-1",s),onClick:()=>e?.(r),children:m("div",{className:"flex w-full flex-col items-end",children:[r.isNew&&i("div",{className:"absolute right-0 top-0 flex items-start",children:i(j,{size:"lg",variant:"fill",children:"Free"})}),m("div",{className:l("flex w-full items-center gap-4 p-4","tablet:p-2"),children:[i("div",{className:l("size-14 shrink-0","tablet:size-12"),children:i(h,{source:r.image,alt:r.name,className:"size-full object-cover"})}),m("div",{className:"flex min-w-0 flex-1 flex-col gap-1",children:[i(g,{size:4,weight:"semibold",className:l("text-info-primary truncate leading-[1.4] tracking-[-0.36px]","tablet:text-sm tablet:tracking-[-0.28px]"),children:r.name}),m("div",{className:"flex items-center gap-1",children:[i(g,{size:4,weight:"semibold",className:l(),children:r.currentPrice}),i(g,{size:4,weight:"semibold",className:l(),children:r.originalPrice})]})]})]})]})}));G.displayName="FreeGiftItem";const k=u.forwardRef(({freeGiftLabel:r,freeGifts:e,onGiftClick:s,layout:t="single",className:c},p)=>!e||e.length===0?null:m("div",{ref:p,className:l("flex w-full flex-col gap-2",c),children:[r&&i(g,{size:4,weight:"semibold",className:l("text-info-primary w-full leading-[1.4] tracking-[-0.36px]","tablet:text-sm tablet:tracking-[-0.28px]"),children:r}),i("div",{className:l("tablet:flex-row laptop:flex-col flex flex-col gap-2"),children:e.map((x,v)=>i("div",{children:i(G,{gift:x,onClick:s})},x.id||v))})]}));k.displayName="GiftSelection";const T=u.forwardRef(({currentPrice:r,originalPrice:e,learnMoreText:s="Learn More",shopNowText:t="Shop Now",onLearnMore:c,onShopNow:p,layout:x="single",className:v},w)=>m("div",{ref:w,className:l("flex w-full flex-col justify-center gap-2",v),children:[m("div",{className:"flex w-full items-center gap-1",children:[i(g,{size:4,weight:"semibold",className:l(),children:r}),e&&i(g,{size:4,weight:"semibold",className:l("line-through"),children:e})]}),m("div",{className:l("flex items-start gap-3","tablet:gap-2"),children:[i(y,{variant:"secondary",size:"lg",className:l("tablet:px-5 tablet:py-[10px] tablet:text-sm tablet:tracking-[-0.56px]"),onClick:c,children:s}),i(y,{variant:"primary",size:"lg",className:l("tablet:px-5 tablet:py-[10px] tablet:text-sm tablet:tracking-[-0.56px]"),onClick:p,children:t})]})]}));T.displayName="PriceAndActions";const S=u.forwardRef(({className:r,data:e,giftData:s,layout:t="single",onProductClick:c,onProductImageClick:p,onLearnMore:x,onShopNow:v,onGiftClick:w,onGiftSelectionChange:M,...D},F)=>{const L=t==="single"?"w-full max-w-[1664px]":"w-full",z=t==="single"?"w-[700px]":"w-[350px]",[b,N]=u.useState(()=>e.freeGifts?.filter(a=>a.selected)||[]);u.useEffect(()=>{const a=e.freeGifts?.filter(n=>n.selected)||[];N(a)},[e.freeGifts]);const H=u.useMemo(()=>e.freeGifts?.map(a=>{const n=V(a.id,s),o={...a};if(n){if(n.title&&(o.name=n.title),n.price){const d=n.price.value||n.price,f=n.price.currencyCode||"USD";o.originalPrice=`${f} ${d}`,o.currentPrice="Free"}if(n.images&&n.images.length>0&&(o.image=n.images[0].url||a.image),n.variants&&n.variants.length>0){const d=n.variants[0];if(d.price){const f=d.price.value||d.price,W=d.price.currencyCode||"USD";o.originalPrice=`${W} ${f}`,o.currentPrice="Free"}d.image&&d.image.url&&(o.image=d.image.url)}}return{...o,selected:b.some(d=>d.id===a.id)}})||[],[e.freeGifts,b,s]),A=()=>{c?.(e)},E=()=>{p?.(e)},R=()=>{x?.(e)},I=()=>{v?.(e)},B=a=>{const n=e.giftSelectionMode||"multiple";let o;n==="single"?o=b.some(f=>f.id===a.id)?[]:[a]:b.some(f=>f.id===a.id)?o=b.filter(f=>f.id!==a.id):o=[...b,a],N(o),w?.(a,e),M?.(o,e)};return m("div",{ref:F,className:l("bg-container-primary laptop:flex-row rounded-box flex flex-col items-stretch",L,t==="single"?"tablet:flex-col tablet:max-w-[704px]":"",c?"cursor-pointer":"",r),onClick:A,...D,children:[i(C,{image:e.image,name:e.name,layout:t,onClick:E}),m("div",{className:l("bg-container-secondary-1 rounded-r-box laptop:rounded-r-box tablet:rounded-b-box tablet:rounded-l-none flex flex-col justify-between p-6",z,t==="single"?"tablet:w-full tablet:p-4 tablet:gap-4":""),children:[i(P,{name:e.name,description:e.description,layout:t}),i(k,{freeGiftLabel:e.freeGiftLabel,freeGifts:H,onGiftClick:B,layout:t}),i(T,{currentPrice:e.currentPrice,originalPrice:e.originalPrice,learnMoreText:e.learnMoreText,shopNowText:e.shopNowText,onLearnMore:R,onShopNow:I,layout:t})]})]})});S.displayName="ProductCard";var X=S;export{X as default};
2
- //# sourceMappingURL=ProductCard.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/BuyOneGetOneShelf/ProductCard.tsx"],
4
- "sourcesContent": ["'use client'\n\nimport * as React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport Picture from '../../components/picture.js'\nimport Button from '../../components/button.js'\nimport { Text } from '../../components/text.js'\nimport { Heading } from '../../components/heading.js'\nimport Badge from '../../components/badge.js'\n\n/**\n * \u5339\u914D\u793C\u54C1\u6570\u636E\u51FD\u6570\n * \u901A\u8FC7 ID\u3001handle \u6216 SKU \u5339\u914D giftData \u4E2D\u7684\u5B9E\u9645\u793C\u54C1\u4FE1\u606F\n */\nfunction matchGiftData(giftId: string, giftData?: any): any | null {\n if (!giftData || !Array.isArray(giftData)) {\n return null\n }\n\n // \u5C1D\u8BD5\u901A\u8FC7\u591A\u79CD\u65B9\u5F0F\u5339\u914D\u793C\u54C1\n const matchedGift = giftData.find((gift: any) => {\n // \u901A\u8FC7 handle \u5339\u914D\n if (gift.handle && gift.handle === giftId) {\n return true\n }\n\n // \u901A\u8FC7 id \u5339\u914D\n if (gift.id && gift.id === giftId) {\n return true\n }\n\n // \u901A\u8FC7 variants \u4E2D\u7684 sku \u5339\u914D\n if (gift.variants && Array.isArray(gift.variants)) {\n return gift.variants.some((variant: any) => variant.sku === giftId)\n }\n\n return false\n })\n\n return matchedGift || null\n}\n\n/**\n * \u514D\u8D39\u8D60\u54C1\u63A5\u53E3\n */\nexport interface FreeGift {\n /** \u8D60\u54C1ID */\n id: string\n /** \u8D60\u54C1\u56FE\u7247URL */\n image: string\n /** \u8D60\u54C1\u540D\u79F0 */\n name: string\n /** \u539F\u4EF7 */\n originalPrice: string\n /** \u73B0\u4EF7\uFF08\u901A\u5E38\u4E3AFree\uFF09 */\n currentPrice: string\n /** \u662F\u5426\u4E3A\u65B0\u54C1 */\n isNew?: boolean\n /** \u662F\u5426\u88AB\u9009\u4E2D */\n selected?: boolean\n}\n\n/**\n * \u4EA7\u54C1\u5361\u7247\u6570\u636E\u63A5\u53E3\n */\nexport interface ProductCardData {\n /** \u4EA7\u54C1\u56FE\u7247URL */\n image: string\n /** \u4EA7\u54C1\u6807\u7B7E\u5217\u8868 */\n tags?: string[]\n /** \u4EA7\u54C1\u540D\u79F0 */\n name: string\n /** \u4EA7\u54C1\u63CF\u8FF0 */\n description: string\n /** \u514D\u8D39\u8D60\u54C1\u8BF4\u660E\u6587\u5B57 */\n freeGiftLabel?: string\n /** \u514D\u8D39\u8D60\u54C1\u5217\u8868 */\n freeGifts?: FreeGift[]\n /** \u8D60\u54C1\u9009\u62E9\u6A21\u5F0F\uFF1A\u5355\u9009\u6216\u591A\u9009 */\n giftSelectionMode?: 'single' | 'multiple'\n /** \u5F53\u524D\u4EF7\u683C */\n currentPrice: string\n /** \u539F\u4EF7 */\n originalPrice?: string\n /** Learn More\u6309\u94AE\u6587\u672C */\n learnMoreText?: string\n /** Shop Now\u6309\u94AE\u6587\u672C */\n shopNowText?: string\n}\n\nexport interface ProductCardProps extends React.HTMLAttributes<HTMLDivElement> {\n /** \u4EA7\u54C1\u6570\u636E */\n data: ProductCardData\n /** \u793C\u54C1\u6570\u636E\u6E90\uFF0C\u7528\u4E8E\u5339\u914D\u5B9E\u9645\u7684\u4EF7\u683C\u3001\u56FE\u7247\u3001\u6807\u9898 */\n giftData?: any\n /** \u5E03\u5C40\u6A21\u5F0F\uFF1A\u4E00\u6392\u4E00\u4E2A\u6216\u4E00\u6392\u4E24\u4E2A */\n layout?: 'single' | 'double'\n /** \u4EA7\u54C1\u5361\u7247\u70B9\u51FB\u4E8B\u4EF6 */\n onProductClick?: (product: ProductCardData) => void\n /** \u4EA7\u54C1\u56FE\u7247\u70B9\u51FB\u4E8B\u4EF6 */\n onProductImageClick?: (product: ProductCardData) => void\n /** Learn More\u6309\u94AE\u70B9\u51FB\u4E8B\u4EF6 */\n onLearnMore?: (product: ProductCardData) => void\n /** Shop Now\u6309\u94AE\u70B9\u51FB\u4E8B\u4EF6 */\n onShopNow?: (product: ProductCardData) => void\n /** \u8D60\u54C1\u70B9\u51FB\u4E8B\u4EF6 */\n onGiftClick?: (gift: FreeGift, product: ProductCardData) => void\n /** \u8D60\u54C1\u9009\u62E9\u53D8\u5316\u4E8B\u4EF6 */\n onGiftSelectionChange?: (selectedGifts: FreeGift[], product: ProductCardData) => void\n}\n\n/**\n * ProductImage - \u4EA7\u54C1\u56FE\u7247\u533A\u57DF\n */\nconst ProductImage = React.forwardRef<\n HTMLDivElement,\n {\n image: string\n name: string\n layout?: 'single' | 'double'\n className?: string\n onClick?: () => void\n }\n>(({ image, name, layout = 'single', className, onClick }, ref) => {\n const imageWidth = layout === 'single' ? 'w-[964px]' : 'w-[482px]'\n\n return (\n <div\n ref={ref}\n className={cn(\n 'rounded-l-box laptop:rounded-l-box tablet:rounded-t-box tablet:rounded-r-none relative flex items-start gap-6 overflow-hidden p-6',\n imageWidth,\n // \u79FB\u52A8\u7AEF\u6837\u5F0F\n layout === 'single' ? ' tablet:w-full tablet:p-4' : '',\n onClick ? 'cursor-pointer' : '',\n className\n )}\n onClick={onClick}\n >\n {/* \u80CC\u666F\u56FE\u7247 */}\n\n <Picture\n source={image}\n alt={name}\n className=\"absolute inset-0 w-full max-w-none\"\n imgClassName=\"h-full object-cover\"\n />\n </div>\n )\n})\n\nProductImage.displayName = 'ProductImage'\n\n/**\n * ProductInfo - \u4EA7\u54C1\u4FE1\u606F\u533A\u57DF\n */\nconst ProductInfo = React.forwardRef<\n HTMLDivElement,\n {\n name: string\n description: string\n layout?: 'single' | 'double'\n className?: string\n }\n>(({ name, description, layout = 'single', className }, ref) => {\n return (\n <div ref={ref} className={cn('flex w-full flex-col gap-1', className)}>\n <Heading\n as=\"h4\"\n size={4}\n weight=\"semibold\"\n className={cn(\n 'text-info-primary w-full text-2xl leading-[1.2] tracking-[-0.96px]',\n 'tablet:text-[20px] tablet:tracking-[-0.8px]'\n )}\n >\n {name}\n </Heading>\n <Text\n size={4}\n weight=\"semibold\"\n className={cn(\n 'text-info-primary w-full leading-[1.4] tracking-[-0.36px]',\n 'tablet:text-sm tablet:tracking-[-0.28px]'\n )}\n >\n {description}\n </Text>\n </div>\n )\n})\n\nProductInfo.displayName = 'ProductInfo'\n\n/**\n * FreeGiftItem - \u514D\u8D39\u8D60\u54C1\u9879\n */\nconst FreeGiftItem = React.forwardRef<\n HTMLDivElement,\n {\n gift: FreeGift\n onClick?: (gift: FreeGift) => void\n className?: string\n }\n>(({ gift, onClick, className }, ref) => {\n return (\n <div\n ref={ref}\n className={cn(\n 'bg-container-primary rounded-box relative flex w-full cursor-pointer flex-col border-2 transition-all hover:shadow-sm',\n gift.selected ? 'border-brand-0' : 'border-container-secondary-1',\n className\n )}\n onClick={() => onClick?.(gift)}\n >\n <div className=\"flex w-full flex-col items-end\">\n {gift.isNew && (\n <div className=\"absolute right-0 top-0 flex items-start\">\n <Badge size=\"lg\" variant=\"fill\">\n Free\n </Badge>\n </div>\n )}\n <div className={cn('flex w-full items-center gap-4 p-4', 'tablet:p-2')}>\n <div className={cn('size-14 shrink-0', 'tablet:size-12')}>\n <Picture source={gift.image} alt={gift.name} className=\"size-full object-cover\" />\n </div>\n <div className=\"flex min-w-0 flex-1 flex-col gap-1\">\n <Text\n size={4}\n weight=\"semibold\"\n className={cn(\n 'text-info-primary truncate leading-[1.4] tracking-[-0.36px]',\n 'tablet:text-sm tablet:tracking-[-0.28px]'\n )}\n >\n {gift.name}\n </Text>\n <div className=\"flex items-center gap-1\">\n <Text size={4} weight=\"semibold\" className={cn()}>\n {gift.currentPrice}\n </Text>\n <Text size={4} weight=\"semibold\" className={cn()}>\n {gift.originalPrice}\n </Text>\n </div>\n </div>\n </div>\n </div>\n </div>\n )\n})\n\nFreeGiftItem.displayName = 'FreeGiftItem'\n\n/**\n * GiftSelection - \u8D60\u54C1\u9009\u62E9\u533A\u57DF\n */\nconst GiftSelection = React.forwardRef<\n HTMLDivElement,\n {\n freeGiftLabel?: string\n freeGifts?: FreeGift[]\n onGiftClick?: (gift: FreeGift) => void\n layout?: 'single' | 'double'\n className?: string\n }\n>(({ freeGiftLabel, freeGifts, onGiftClick, layout = 'single', className }, ref) => {\n if (!freeGifts || freeGifts.length === 0) {\n return null\n }\n\n return (\n <div ref={ref} className={cn('flex w-full flex-col gap-2', className)}>\n {freeGiftLabel && (\n <Text\n size={4}\n weight=\"semibold\"\n className={cn(\n 'text-info-primary w-full leading-[1.4] tracking-[-0.36px]',\n 'tablet:text-sm tablet:tracking-[-0.28px]'\n )}\n >\n {freeGiftLabel}\n </Text>\n )}\n <div className={cn('tablet:flex-row laptop:flex-col flex flex-col gap-2')}>\n {freeGifts.map((gift, index) => (\n <div key={gift.id || index}>\n <FreeGiftItem gift={gift} onClick={onGiftClick} />\n </div>\n ))}\n </div>\n </div>\n )\n})\n\nGiftSelection.displayName = 'GiftSelection'\n\n/**\n * PriceAndActions - \u4EF7\u683C\u548C\u64CD\u4F5C\u533A\u57DF\n */\nconst PriceAndActions = React.forwardRef<\n HTMLDivElement,\n {\n currentPrice: string\n originalPrice?: string\n learnMoreText?: string\n shopNowText?: string\n onLearnMore?: () => void\n onShopNow?: () => void\n layout?: 'single' | 'double'\n className?: string\n }\n>(\n (\n {\n currentPrice,\n originalPrice,\n learnMoreText = 'Learn More',\n shopNowText = 'Shop Now',\n onLearnMore,\n onShopNow,\n layout = 'single',\n className,\n },\n ref\n ) => {\n return (\n <div ref={ref} className={cn('flex w-full flex-col justify-center gap-2', className)}>\n {/* \u4EF7\u683C */}\n <div className=\"flex w-full items-center gap-1\">\n <Text size={4} weight=\"semibold\" className={cn()}>\n {currentPrice}\n </Text>\n {originalPrice && (\n <Text size={4} weight=\"semibold\" className={cn('line-through')}>\n {originalPrice}\n </Text>\n )}\n </div>\n\n {/* \u6309\u94AE\u7EC4 */}\n <div className={cn('flex items-start gap-3', 'tablet:gap-2')}>\n <Button\n variant=\"secondary\"\n size=\"lg\"\n className={cn('tablet:px-5 tablet:py-[10px] tablet:text-sm tablet:tracking-[-0.56px]')}\n onClick={onLearnMore}\n >\n {learnMoreText}\n </Button>\n <Button\n variant=\"primary\"\n size=\"lg\"\n className={cn('tablet:px-5 tablet:py-[10px] tablet:text-sm tablet:tracking-[-0.56px]')}\n onClick={onShopNow}\n >\n {shopNowText}\n </Button>\n </div>\n </div>\n )\n }\n)\n\nPriceAndActions.displayName = 'PriceAndActions'\n\n/**\n * ProductCard - \u4E70\u8D60\u8D27\u67B6\u4EA7\u54C1\u5361\u7247\n *\n * @description \u7528\u4E8E\u4E70\u4E00\u8D60\u4E00\u6D3B\u52A8\u7684\u4EA7\u54C1\u5C55\u793A\u5361\u7247\uFF0C\u5DE6\u4FA7\u5C55\u793A\u4EA7\u54C1\u56FE\u7247\u548C\u6807\u7B7E\uFF0C\u53F3\u4FA7\u5C55\u793A\u4EA7\u54C1\u4FE1\u606F\u3001\u8D60\u54C1\u548C\u8D2D\u4E70\u6309\u94AE\n */\nconst ProductCard = React.forwardRef<HTMLDivElement, ProductCardProps>(\n (\n {\n className,\n data,\n giftData,\n layout = 'single',\n onProductClick,\n onProductImageClick,\n onLearnMore,\n onShopNow,\n onGiftClick,\n onGiftSelectionChange,\n ...props\n },\n ref\n ) => {\n const containerWidth = layout === 'single' ? 'w-full max-w-[1664px]' : 'w-full'\n const contentWidth = layout === 'single' ? 'w-[700px]' : 'w-[350px]'\n\n // \u5185\u90E8\u72B6\u6001\u7BA1\u7406\u9009\u4E2D\u7684\u8D60\u54C1\n const [selectedGifts, setSelectedGifts] = React.useState<FreeGift[]>(() => {\n // \u521D\u59CB\u5316\u65F6\u4ECE data.freeGifts \u4E2D\u83B7\u53D6\u5DF2\u9009\u4E2D\u7684\u8D60\u54C1\n return data.freeGifts?.filter(gift => gift.selected) || []\n })\n\n // \u5F53\u5916\u90E8\u6570\u636E\u53D8\u5316\u65F6\uFF0C\u540C\u6B65\u5185\u90E8\u72B6\u6001\n React.useEffect(() => {\n const initialSelectedGifts = data.freeGifts?.filter(gift => gift.selected) || []\n setSelectedGifts(initialSelectedGifts)\n }, [data.freeGifts])\n\n // \u751F\u6210\u5E26\u6709\u9009\u4E2D\u72B6\u6001\u548C\u5B9E\u9645\u6570\u636E\u7684\u8D60\u54C1\u5217\u8868\n const giftsWithSelection = React.useMemo(\n () =>\n data.freeGifts?.map(gift => {\n const matchedGiftInfo = matchGiftData(gift.id, giftData)\n\n // \u6784\u5EFA\u589E\u5F3A\u7684\u8D60\u54C1\u5BF9\u8C61\uFF0C\u4F7F\u7528\u5B9E\u9645\u6570\u636E\u8986\u76D6\u539F\u59CB\u6570\u636E\n const enhancedGift = { ...gift }\n\n if (matchedGiftInfo) {\n // \u4F7F\u7528\u5B9E\u9645\u7684 title\n if (matchedGiftInfo.title) {\n enhancedGift.name = matchedGiftInfo.title\n }\n\n // \u4F7F\u7528\u5B9E\u9645\u7684 price - \u6620\u5C04\u5230 FreeGift \u7684\u4EF7\u683C\u5B57\u6BB5\n if (matchedGiftInfo.price) {\n const priceValue = matchedGiftInfo.price.value || matchedGiftInfo.price\n const currencyCode = matchedGiftInfo.price.currencyCode || 'USD'\n\n // \u66F4\u65B0 originalPrice \u548C currentPrice\n enhancedGift.originalPrice = `${currencyCode} ${priceValue}`\n enhancedGift.currentPrice = 'Free' // \u8D60\u54C1\u901A\u5E38\u663E\u793A\u4E3A\u514D\u8D39\n }\n\n // \u4F7F\u7528\u5B9E\u9645\u7684 image\n if (matchedGiftInfo.images && matchedGiftInfo.images.length > 0) {\n enhancedGift.image = matchedGiftInfo.images[0].url || gift.image\n }\n\n // \u5982\u679C\u6709 variants\uFF0C\u5C1D\u8BD5\u4ECE\u7B2C\u4E00\u4E2A variant \u83B7\u53D6\u66F4\u8BE6\u7EC6\u7684\u4FE1\u606F\n if (matchedGiftInfo.variants && matchedGiftInfo.variants.length > 0) {\n const firstVariant = matchedGiftInfo.variants[0]\n if (firstVariant.price) {\n const variantPriceValue = firstVariant.price.value || firstVariant.price\n const variantCurrencyCode = firstVariant.price.currencyCode || 'USD'\n\n enhancedGift.originalPrice = `${variantCurrencyCode} ${variantPriceValue}`\n enhancedGift.currentPrice = 'Free'\n }\n if (firstVariant.image && firstVariant.image.url) {\n enhancedGift.image = firstVariant.image.url\n }\n }\n }\n\n return {\n ...enhancedGift,\n selected: selectedGifts.some(selectedGift => selectedGift.id === gift.id),\n }\n }) || [],\n [data.freeGifts, selectedGifts, giftData]\n )\n\n const handleProductClick = () => {\n onProductClick?.(data)\n }\n\n const handleProductImageClick = () => {\n onProductImageClick?.(data)\n }\n\n const handleLearnMoreClick = () => {\n onLearnMore?.(data)\n }\n\n const handleShopNowClick = () => {\n onShopNow?.(data)\n }\n\n const handleGiftClick = (gift: FreeGift) => {\n const giftSelectionMode = data.giftSelectionMode || 'multiple'\n let newSelectedGifts: FreeGift[]\n\n if (giftSelectionMode === 'single') {\n // \u5355\u9009\u6A21\u5F0F\uFF1A\u5982\u679C\u70B9\u51FB\u7684\u662F\u5DF2\u9009\u4E2D\u7684\u8D60\u54C1\uFF0C\u5219\u53D6\u6D88\u9009\u62E9\uFF1B\u5426\u5219\u9009\u62E9\u5F53\u524D\u8D60\u54C1\n const isCurrentlySelected = selectedGifts.some(selectedGift => selectedGift.id === gift.id)\n newSelectedGifts = isCurrentlySelected ? [] : [gift]\n } else {\n // \u591A\u9009\u6A21\u5F0F\uFF1A\u5207\u6362\u5F53\u524D\u8D60\u54C1\u7684\u9009\u62E9\u72B6\u6001\n const isCurrentlySelected = selectedGifts.some(selectedGift => selectedGift.id === gift.id)\n if (isCurrentlySelected) {\n newSelectedGifts = selectedGifts.filter(selectedGift => selectedGift.id !== gift.id)\n } else {\n newSelectedGifts = [...selectedGifts, gift]\n }\n }\n\n // \u66F4\u65B0\u5185\u90E8\u72B6\u6001\n setSelectedGifts(newSelectedGifts)\n\n // \u8C03\u7528\u56DE\u8C03\u51FD\u6570\u901A\u77E5\u7236\u7EC4\u4EF6\n onGiftClick?.(gift, data)\n onGiftSelectionChange?.(newSelectedGifts, data)\n }\n\n return (\n <div\n ref={ref}\n className={cn(\n 'bg-container-primary laptop:flex-row rounded-box flex flex-col items-stretch',\n containerWidth,\n layout === 'single' ? 'tablet:flex-col tablet:max-w-[704px]' : '',\n onProductClick ? 'cursor-pointer' : '',\n className\n )}\n onClick={handleProductClick}\n {...props}\n >\n {/* \u4EA7\u54C1\u56FE\u7247\u533A\u57DF */}\n <ProductImage image={data.image} name={data.name} layout={layout} onClick={handleProductImageClick} />\n\n {/* \u4EA7\u54C1\u4FE1\u606F\u533A\u57DF */}\n <div\n className={cn(\n 'bg-container-secondary-1 rounded-r-box laptop:rounded-r-box tablet:rounded-b-box tablet:rounded-l-none flex flex-col justify-between p-6',\n contentWidth,\n // \u79FB\u52A8\u7AEF\u6837\u5F0F\n layout === 'single' ? 'tablet:w-full tablet:p-4 tablet:gap-4' : ''\n )}\n >\n {/* \u4EA7\u54C1\u6807\u9898\u548C\u63CF\u8FF0 */}\n <ProductInfo name={data.name} description={data.description} layout={layout} />\n\n {/* \u514D\u8D39\u8D60\u54C1\u533A\u57DF */}\n <GiftSelection\n freeGiftLabel={data.freeGiftLabel}\n freeGifts={giftsWithSelection}\n onGiftClick={handleGiftClick}\n layout={layout}\n />\n\n {/* \u4EF7\u683C\u548C\u6309\u94AE\u533A\u57DF */}\n <PriceAndActions\n currentPrice={data.currentPrice}\n originalPrice={data.originalPrice}\n learnMoreText={data.learnMoreText}\n shopNowText={data.shopNowText}\n onLearnMore={handleLearnMoreClick}\n onShopNow={handleShopNowClick}\n layout={layout}\n />\n </div>\n </div>\n )\n }\n)\n\nProductCard.displayName = 'ProductCard'\n\nexport default ProductCard\n"],
5
- "mappings": "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",
6
- "names": ["jsx", "jsxs", "React", "cn", "Picture", "Button", "Text", "Heading", "Badge", "matchGiftData", "giftId", "giftData", "gift", "variant", "ProductImage", "image", "name", "layout", "className", "onClick", "ref", "ProductInfo", "description", "FreeGiftItem", "GiftSelection", "freeGiftLabel", "freeGifts", "onGiftClick", "index", "PriceAndActions", "currentPrice", "originalPrice", "learnMoreText", "shopNowText", "onLearnMore", "onShopNow", "ProductCard", "data", "onProductClick", "onProductImageClick", "onGiftSelectionChange", "props", "containerWidth", "contentWidth", "selectedGifts", "setSelectedGifts", "initialSelectedGifts", "giftsWithSelection", "matchedGiftInfo", "enhancedGift", "priceValue", "currencyCode", "firstVariant", "variantPriceValue", "variantCurrencyCode", "selectedGift", "handleProductClick", "handleProductImageClick", "handleLearnMoreClick", "handleShopNowClick", "handleGiftClick", "giftSelectionMode", "newSelectedGifts", "ProductCard_default"]
7
- }
@@ -1,36 +0,0 @@
1
- /**
2
- * BuyOneGetOneShelf 数据转换 Hook
3
- *
4
- * 将复杂的数据转换逻辑抽离为可复用的 Hook,提供清晰的 API 和错误处理
5
- */
6
- import type { BogoItem, BuildData, CopyConfig } from '../index.js';
7
- import type { ProductCardData, FreeGift } from '../ProductCard.js';
8
- /** 产品查找结果 */
9
- interface ProductLookupResult {
10
- product: any | null;
11
- variant: any | null;
12
- }
13
- /** 赠品提取结果 */
14
- interface GiftExtractionResult {
15
- gifts: FreeGift[];
16
- hasGifts: boolean;
17
- selectionMode: 'single' | 'multiple';
18
- }
19
- /**
20
- * BuyOneGetOneShelf 数据转换 Hook
21
- *
22
- * @param bogoItems - BOGO 商品列表
23
- * @param copyConfig - 文案配置
24
- * @param buildData - 构建数据(可选)
25
- * @returns 转换后的产品卡片数据列表
26
- */
27
- export declare const useBogoDataTransform: (bogoItems: BogoItem[], copyConfig: CopyConfig, buildData?: BuildData) => ProductCardData[];
28
- /**
29
- * 产品查找 Hook(用于调试和测试)
30
- */
31
- export declare const useProductLookup: (sku: string, buildData?: BuildData) => ProductLookupResult;
32
- /**
33
- * 赠品提取 Hook(用于调试和测试)
34
- */
35
- export declare const useGiftExtraction: (sku: string, buildData?: BuildData) => GiftExtractionResult;
36
- export {};
@@ -1,2 +0,0 @@
1
- import{useMemo as a}from"react";const c=(t,r)=>{if(!t||!r)return{product:null,variant:null};try{for(const n of r)if(n?.variants){for(const e of n.variants)if(e?.sku===t)return{product:n,variant:e}}}catch(n){console.warn("Error finding product by SKU:",n)}return{product:null,variant:null}},d=t=>{if(!t?.price)return{currentPrice:"",hasDiscount:!1};const r=`$${t.price.toFixed(2)}`,n=t.metafields?.coupons?.[0];if(n?.fixed_value){const e=Math.abs(parseFloat(n.fixed_value)),i=t.price+e;return{currentPrice:r,originalPrice:`$${i.toFixed(2)}`,hasDiscount:!0}}return{currentPrice:r,hasDiscount:!1}},g=(t,r=0)=>Array.isArray(t)?t.map((n,e)=>({id:n.variant_id||`gift-${r+e}`,image:"https://images.unsplash.com/photo-1558618666-fcd25c85cd64?ixlib=rb-4.0.3&auto=format&fit=crop&w=56&h=56&q=80",name:`Gift: ${n.sku||"Unknown"} (${n.handle||"Unknown"})`,originalPrice:"$0.00",currentPrice:"Free",isNew:e===0,selected:e===0})):[],f=(t,r)=>{const{variant:n}=c(t,r);if(!n?.metafields?.funcFreeGiftObj?.reward_list)return{gifts:[],hasGifts:!1,selectionMode:"single"};try{const e=[];let i=0;for(const o of n.metafields.funcFreeGiftObj.reward_list)if(o.variant_list){const s=g(o.variant_list,i);e.push(...s),i+=s.length}return{gifts:e,hasGifts:e.length>0,selectionMode:(e.length>1,"single")}}catch(e){return console.warn("Error extracting gifts:",e),{gifts:[],hasGifts:!1,selectionMode:"single"}}},p=t=>t&&(t.lgDesktop?.url||t.desktop?.url||t.laptop?.url||t.tablet?.url||t.mobile?.url)||"",m=t=>!t?.tags||!Array.isArray(t.tags)?[]:t.tags.filter(r=>typeof r=="string"),P=(t,r,n)=>{const e=t.data?.[0],i=e?.sku||"",{product:o,variant:s}=c(i,n),u=d(s),l=f(i,n);return{image:p(t.images),name:o?.name||e?.name||"",description:o?.title||o?.name||e?.name||"",currentPrice:u.currentPrice,originalPrice:u.originalPrice,freeGiftLabel:r.freeGiftLabel,learnMoreText:t.learnMoreText||r.learnMoreText,shopNowText:t.shopNowText||r.shopNowText,freeGifts:l.gifts,giftSelectionMode:l.selectionMode,tags:m(o)}},G=(t,r,n)=>a(()=>{if(!Array.isArray(t)||t.length===0)return[];try{return t.map(e=>P(e,r,n))}catch(e){return console.error("Error transforming BOGO items:",e),[]}},[t,r,n]),x=(t,r)=>a(()=>c(t,r),[t,r]),y=(t,r)=>a(()=>f(t,r),[t,r]);export{G as useBogoDataTransform,y as useGiftExtraction,x as useProductLookup};
2
- //# sourceMappingURL=useBogoDataTransform.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../../src/biz-components/BuyOneGetOneShelf/hooks/useBogoDataTransform.ts"],
4
- "sourcesContent": ["/**\n * BuyOneGetOneShelf \u6570\u636E\u8F6C\u6362 Hook\n *\n * \u5C06\u590D\u6742\u7684\u6570\u636E\u8F6C\u6362\u903B\u8F91\u62BD\u79BB\u4E3A\u53EF\u590D\u7528\u7684 Hook\uFF0C\u63D0\u4F9B\u6E05\u6670\u7684 API \u548C\u9519\u8BEF\u5904\u7406\n */\n\nimport { useMemo } from 'react'\nimport type { BogoItem, BuildData, CopyConfig, ResponsiveImages } from '../index.js'\nimport type { ProductCardData, FreeGift } from '../ProductCard.js'\n\n// ==================== \u7C7B\u578B\u5B9A\u4E49 ====================\n\n/** \u4EA7\u54C1\u67E5\u627E\u7ED3\u679C */\ninterface ProductLookupResult {\n product: any | null\n variant: any | null\n}\n\n/** \u4EF7\u683C\u8BA1\u7B97\u7ED3\u679C */\ninterface PriceCalculation {\n currentPrice: string\n originalPrice?: string\n hasDiscount: boolean\n}\n\n/** \u8D60\u54C1\u63D0\u53D6\u7ED3\u679C */\ninterface GiftExtractionResult {\n gifts: FreeGift[]\n hasGifts: boolean\n selectionMode: 'single' | 'multiple'\n}\n\n// ==================== \u6838\u5FC3\u5DE5\u5177\u51FD\u6570 ====================\n\n/**\n * \u5B89\u5168\u7684\u4EA7\u54C1\u67E5\u627E\u51FD\u6570\n */\nconst findProductBySku = (sku: string, buildData?: BuildData): ProductLookupResult => {\n if (!sku || !buildData) {\n return { product: null, variant: null }\n }\n\n try {\n for (const product of buildData) {\n if (!product?.variants) continue\n\n for (const variant of product.variants) {\n if (variant?.sku === sku) {\n return {\n product,\n variant,\n }\n }\n }\n }\n } catch (error) {\n console.warn('Error finding product by SKU:', error)\n }\n\n return { product: null, variant: null }\n}\n\n/**\n * \u8BA1\u7B97\u4EA7\u54C1\u4EF7\u683C\uFF08\u5305\u542B\u6298\u6263\u903B\u8F91\uFF09\n */\nconst calculateProductPrice = (variant: any): PriceCalculation => {\n if (!variant?.price) {\n return {\n currentPrice: '',\n hasDiscount: false,\n }\n }\n\n const currentPrice = `$${variant.price.toFixed(2)}`\n\n // \u68C0\u67E5\u662F\u5426\u6709\u4F18\u60E0\u5238\u6298\u6263\n const coupon = variant.metafields?.coupons?.[0]\n if (coupon?.fixed_value) {\n const discountAmount = Math.abs(parseFloat(coupon.fixed_value))\n const originalPriceValue = variant.price + discountAmount\n\n return {\n currentPrice,\n originalPrice: `$${originalPriceValue.toFixed(2)}`,\n hasDiscount: true,\n }\n }\n\n return {\n currentPrice,\n hasDiscount: false,\n }\n}\n\n/**\n * \u4ECE\u5956\u52B1\u53D8\u4F53\u5217\u8868\u521B\u5EFA\u8D60\u54C1\u6570\u636E\n */\nconst createGiftsFromRewards = (rewardVariants: any[], startIndex: number = 0): FreeGift[] => {\n if (!Array.isArray(rewardVariants)) return []\n\n return rewardVariants.map((rewardVariant, index) => ({\n id: rewardVariant.variant_id || `gift-${startIndex + index}`,\n image:\n 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?ixlib=rb-4.0.3&auto=format&fit=crop&w=56&h=56&q=80',\n name: `Gift: ${rewardVariant.sku || 'Unknown'} (${rewardVariant.handle || 'Unknown'})`,\n originalPrice: '$0.00',\n currentPrice: 'Free',\n isNew: index === 0, // \u7B2C\u4E00\u4E2A\u8D60\u54C1\u6807\u8BB0\u4E3A\u65B0\u54C1\n selected: index === 0, // \u9ED8\u8BA4\u9009\u4E2D\u7B2C\u4E00\u4E2A\u8D60\u54C1\n }))\n}\n\n/**\n * \u63D0\u53D6\u4EA7\u54C1\u7684\u8D60\u54C1\u4FE1\u606F\n */\nconst extractProductGifts = (sku: string, buildData?: BuildData): GiftExtractionResult => {\n const { variant } = findProductBySku(sku, buildData)\n\n if (!variant?.metafields?.funcFreeGiftObj?.reward_list) {\n return {\n gifts: [],\n hasGifts: false,\n selectionMode: 'single',\n }\n }\n\n try {\n const allGifts: FreeGift[] = []\n let giftIndex = 0\n\n // \u904D\u5386\u6240\u6709\u5956\u52B1\u5217\u8868\n for (const reward of variant.metafields.funcFreeGiftObj.reward_list) {\n if (reward.variant_list) {\n const gifts = createGiftsFromRewards(reward.variant_list, giftIndex)\n allGifts.push(...gifts)\n giftIndex += gifts.length\n }\n }\n\n return {\n gifts: allGifts,\n hasGifts: allGifts.length > 0,\n selectionMode: allGifts.length > 1 ? 'single' : 'single',\n }\n } catch (error) {\n console.warn('Error extracting gifts:', error)\n return {\n gifts: [],\n hasGifts: false,\n selectionMode: 'single',\n }\n }\n}\n\n/**\n * \u751F\u6210\u54CD\u5E94\u5F0F\u56FE\u7247 URL\n */\nconst getResponsiveImageUrl = (images?: ResponsiveImages): string => {\n if (!images) return ''\n\n // \u6839\u636E\u5C4F\u5E55\u5C3A\u5BF8\u4F18\u5148\u7EA7\u9009\u62E9\u56FE\u7247\n // \u4F18\u5148\u7EA7\uFF1AlgDesktop > desktop > laptop > tablet > mobile\n return (\n images.lgDesktop?.url || images.desktop?.url || images.laptop?.url || images.tablet?.url || images.mobile?.url || ''\n )\n}\n\n/**\n * \u521B\u5EFA\u4EA7\u54C1\u6807\u7B7E\uFF08\u8FD4\u56DE\u5B57\u7B26\u4E32\u6570\u7EC4\u4EE5\u5339\u914D ProductCardData \u63A5\u53E3\uFF09\n */\nconst createProductTags = (product: any): string[] => {\n if (!product?.tags || !Array.isArray(product.tags)) {\n return []\n }\n\n return product.tags.filter((tag: string) => typeof tag === 'string')\n}\n\n// ==================== \u4E3B\u8981\u8F6C\u6362\u51FD\u6570 ====================\n\n/**\n * \u5C06\u5355\u4E2A BogoItem \u8F6C\u6362\u4E3A ProductCardData\n */\nconst transformSingleBogoItem = (\n bogoItem: BogoItem,\n copyConfig: CopyConfig,\n buildData?: BuildData\n): ProductCardData => {\n const productData = bogoItem.data?.[0]\n const sku = productData?.sku || ''\n\n // \u67E5\u627E\u4EA7\u54C1\u4FE1\u606F\n const { product, variant } = findProductBySku(sku, buildData)\n\n // \u8BA1\u7B97\u4EF7\u683C\n const priceInfo = calculateProductPrice(variant)\n\n // \u63D0\u53D6\u8D60\u54C1\n const giftInfo = extractProductGifts(sku, buildData)\n\n // \u6784\u5EFA\u6700\u7EC8\u6570\u636E\n return {\n image: getResponsiveImageUrl(bogoItem.images),\n name: product?.name || productData?.name || '',\n description: product?.title || product?.name || productData?.name || '',\n currentPrice: priceInfo.currentPrice,\n originalPrice: priceInfo.originalPrice,\n freeGiftLabel: copyConfig.freeGiftLabel,\n learnMoreText: bogoItem.learnMoreText || copyConfig.learnMoreText,\n shopNowText: bogoItem.shopNowText || copyConfig.shopNowText,\n freeGifts: giftInfo.gifts,\n giftSelectionMode: giftInfo.selectionMode,\n tags: createProductTags(product),\n }\n}\n\n// ==================== \u4E3B\u8981 Hook ====================\n\n/**\n * BuyOneGetOneShelf \u6570\u636E\u8F6C\u6362 Hook\n *\n * @param bogoItems - BOGO \u5546\u54C1\u5217\u8868\n * @param copyConfig - \u6587\u6848\u914D\u7F6E\n * @param buildData - \u6784\u5EFA\u6570\u636E\uFF08\u53EF\u9009\uFF09\n * @returns \u8F6C\u6362\u540E\u7684\u4EA7\u54C1\u5361\u7247\u6570\u636E\u5217\u8868\n */\nexport const useBogoDataTransform = (\n bogoItems: BogoItem[],\n copyConfig: CopyConfig,\n buildData?: BuildData\n): ProductCardData[] => {\n return useMemo(() => {\n if (!Array.isArray(bogoItems) || bogoItems.length === 0) {\n return []\n }\n\n try {\n return bogoItems.map(bogoItem => transformSingleBogoItem(bogoItem, copyConfig, buildData))\n } catch (error) {\n console.error('Error transforming BOGO items:', error)\n return []\n }\n }, [bogoItems, copyConfig, buildData])\n}\n\n/**\n * \u4EA7\u54C1\u67E5\u627E Hook\uFF08\u7528\u4E8E\u8C03\u8BD5\u548C\u6D4B\u8BD5\uFF09\n */\nexport const useProductLookup = (sku: string, buildData?: BuildData) => {\n return useMemo(() => {\n return findProductBySku(sku, buildData)\n }, [sku, buildData])\n}\n\n/**\n * \u8D60\u54C1\u63D0\u53D6 Hook\uFF08\u7528\u4E8E\u8C03\u8BD5\u548C\u6D4B\u8BD5\uFF09\n */\nexport const useGiftExtraction = (sku: string, buildData?: BuildData) => {\n return useMemo(() => {\n return extractProductGifts(sku, buildData)\n }, [sku, buildData])\n}\n"],
5
- "mappings": "AAMA,OAAS,WAAAA,MAAe,QA+BxB,MAAMC,EAAmB,CAACC,EAAaC,IAA+C,CACpF,GAAI,CAACD,GAAO,CAACC,EACX,MAAO,CAAE,QAAS,KAAM,QAAS,IAAK,EAGxC,GAAI,CACF,UAAWC,KAAWD,EACpB,GAAKC,GAAS,UAEd,UAAWC,KAAWD,EAAQ,SAC5B,GAAIC,GAAS,MAAQH,EACnB,MAAO,CACL,QAAAE,EACA,QAAAC,CACF,EAIR,OAASC,EAAO,CACd,QAAQ,KAAK,gCAAiCA,CAAK,CACrD,CAEA,MAAO,CAAE,QAAS,KAAM,QAAS,IAAK,CACxC,EAKMC,EAAyBF,GAAmC,CAChE,GAAI,CAACA,GAAS,MACZ,MAAO,CACL,aAAc,GACd,YAAa,EACf,EAGF,MAAMG,EAAe,IAAIH,EAAQ,MAAM,QAAQ,CAAC,CAAC,GAG3CI,EAASJ,EAAQ,YAAY,UAAU,CAAC,EAC9C,GAAII,GAAQ,YAAa,CACvB,MAAMC,EAAiB,KAAK,IAAI,WAAWD,EAAO,WAAW,CAAC,EACxDE,EAAqBN,EAAQ,MAAQK,EAE3C,MAAO,CACL,aAAAF,EACA,cAAe,IAAIG,EAAmB,QAAQ,CAAC,CAAC,GAChD,YAAa,EACf,CACF,CAEA,MAAO,CACL,aAAAH,EACA,YAAa,EACf,CACF,EAKMI,EAAyB,CAACC,EAAuBC,EAAqB,IACrE,MAAM,QAAQD,CAAc,EAE1BA,EAAe,IAAI,CAACE,EAAeC,KAAW,CACnD,GAAID,EAAc,YAAc,QAAQD,EAAaE,CAAK,GAC1D,MACE,+GACF,KAAM,SAASD,EAAc,KAAO,SAAS,KAAKA,EAAc,QAAU,SAAS,IACnF,cAAe,QACf,aAAc,OACd,MAAOC,IAAU,EACjB,SAAUA,IAAU,CACtB,EAAE,EAXyC,CAAC,EAiBxCC,EAAsB,CAACf,EAAaC,IAAgD,CACxF,KAAM,CAAE,QAAAE,CAAQ,EAAIJ,EAAiBC,EAAKC,CAAS,EAEnD,GAAI,CAACE,GAAS,YAAY,iBAAiB,YACzC,MAAO,CACL,MAAO,CAAC,EACR,SAAU,GACV,cAAe,QACjB,EAGF,GAAI,CACF,MAAMa,EAAuB,CAAC,EAC9B,IAAIC,EAAY,EAGhB,UAAWC,KAAUf,EAAQ,WAAW,gBAAgB,YACtD,GAAIe,EAAO,aAAc,CACvB,MAAMC,EAAQT,EAAuBQ,EAAO,aAAcD,CAAS,EACnED,EAAS,KAAK,GAAGG,CAAK,EACtBF,GAAaE,EAAM,MACrB,CAGF,MAAO,CACL,MAAOH,EACP,SAAUA,EAAS,OAAS,EAC5B,eAAeA,EAAS,OAAS,EAAI,SACvC,CACF,OAASZ,EAAO,CACd,eAAQ,KAAK,0BAA2BA,CAAK,EACtC,CACL,MAAO,CAAC,EACR,SAAU,GACV,cAAe,QACjB,CACF,CACF,EAKMgB,EAAyBC,GACxBA,IAKHA,EAAO,WAAW,KAAOA,EAAO,SAAS,KAAOA,EAAO,QAAQ,KAAOA,EAAO,QAAQ,KAAOA,EAAO,QAAQ,MAAO,GAOhHC,EAAqBpB,GACrB,CAACA,GAAS,MAAQ,CAAC,MAAM,QAAQA,EAAQ,IAAI,EACxC,CAAC,EAGHA,EAAQ,KAAK,OAAQqB,GAAgB,OAAOA,GAAQ,QAAQ,EAQ/DC,EAA0B,CAC9BC,EACAC,EACAzB,IACoB,CACpB,MAAM0B,EAAcF,EAAS,OAAO,CAAC,EAC/BzB,EAAM2B,GAAa,KAAO,GAG1B,CAAE,QAAAzB,EAAS,QAAAC,CAAQ,EAAIJ,EAAiBC,EAAKC,CAAS,EAGtD2B,EAAYvB,EAAsBF,CAAO,EAGzC0B,EAAWd,EAAoBf,EAAKC,CAAS,EAGnD,MAAO,CACL,MAAOmB,EAAsBK,EAAS,MAAM,EAC5C,KAAMvB,GAAS,MAAQyB,GAAa,MAAQ,GAC5C,YAAazB,GAAS,OAASA,GAAS,MAAQyB,GAAa,MAAQ,GACrE,aAAcC,EAAU,aACxB,cAAeA,EAAU,cACzB,cAAeF,EAAW,cAC1B,cAAeD,EAAS,eAAiBC,EAAW,cACpD,YAAaD,EAAS,aAAeC,EAAW,YAChD,UAAWG,EAAS,MACpB,kBAAmBA,EAAS,cAC5B,KAAMP,EAAkBpB,CAAO,CACjC,CACF,EAYa4B,EAAuB,CAClCC,EACAL,EACAzB,IAEOH,EAAQ,IAAM,CACnB,GAAI,CAAC,MAAM,QAAQiC,CAAS,GAAKA,EAAU,SAAW,EACpD,MAAO,CAAC,EAGV,GAAI,CACF,OAAOA,EAAU,IAAIN,GAAYD,EAAwBC,EAAUC,EAAYzB,CAAS,CAAC,CAC3F,OAASG,EAAO,CACd,eAAQ,MAAM,iCAAkCA,CAAK,EAC9C,CAAC,CACV,CACF,EAAG,CAAC2B,EAAWL,EAAYzB,CAAS,CAAC,EAM1B+B,EAAmB,CAAChC,EAAaC,IACrCH,EAAQ,IACNC,EAAiBC,EAAKC,CAAS,EACrC,CAACD,EAAKC,CAAS,CAAC,EAMRgC,EAAoB,CAACjC,EAAaC,IACtCH,EAAQ,IACNiB,EAAoBf,EAAKC,CAAS,EACxC,CAACD,EAAKC,CAAS,CAAC",
6
- "names": ["useMemo", "findProductBySku", "sku", "buildData", "product", "variant", "error", "calculateProductPrice", "currentPrice", "coupon", "discountAmount", "originalPriceValue", "createGiftsFromRewards", "rewardVariants", "startIndex", "rewardVariant", "index", "extractProductGifts", "allGifts", "giftIndex", "reward", "gifts", "getResponsiveImageUrl", "images", "createProductTags", "tag", "transformSingleBogoItem", "bogoItem", "copyConfig", "productData", "priceInfo", "giftInfo", "useBogoDataTransform", "bogoItems", "useProductLookup", "useGiftExtraction"]
7
- }