@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,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/MyRewardsModal.tsx"],
4
- "sourcesContent": ["/**\n * MyRewardsModal - \u6211\u7684\u5956\u52B1\u5F39\u7A97\u7EC4\u4EF6\n *\n * \u5C55\u793A\u7528\u6237\u5DF2\u83B7\u5F97\u7684\u5956\u52B1\u5217\u8868\n *\n * @module MyRewardsModal\n * @date 2026-01-04\n */\n\n'use client'\n\nimport React, { useState, useRef, useEffect } from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { BaseModal } from './BaseModal.js'\n\nexport type RewardStatus = 'Available' | 'Expired' | 'Used'\n\nexport interface Reward {\n /**\n * \u5956\u52B1 ID\n */\n id: string\n\n /**\n * \u5956\u52B1\u540D\u79F0\n */\n name: string\n\n /**\n * \u4F18\u60E0\u7801\uFF08\u53EF\u9009\uFF09\n */\n code?: string\n\n /**\n * \u72B6\u6001\n */\n status: RewardStatus\n\n /**\n * \u5956\u52B1\u65F6\u95F4\n */\n prizeTime?: string\n\n /**\n * \u662F\u5426\u53EF\u590D\u5236\u7801\n */\n showCopyCode?: boolean\n\n /** * \u662F\u5426\u53EF\u7528\n */\n available?: boolean\n}\n\nexport interface MyRewardsModalProps {\n /**\n * \u662F\u5426\u663E\u793A\u5F39\u7A97\n */\n isOpen: boolean\n\n /**\n * \u5173\u95ED\u5F39\u7A97\u56DE\u8C03\n */\n onClose: () => void\n\n /**\n * \u5F39\u7A97\u6807\u9898\n * @default \"My Rewards\"\n */\n title?: string\n\n /**\n * \u5956\u52B1\u5217\u8868\n */\n rewards: Reward[]\n\n /**\n * \u590D\u5236\u7801\u70B9\u51FB\u56DE\u8C03\n */\n onCopyCode?: (code: string) => void\n\n /**\n * \u81EA\u5B9A\u4E49\u7C7B\u540D\n */\n className?: string\n\n /**\n * \u4EE3\u7801\u6587\u672C\u524D\u7F00\n * @default \"CODE:\"\n */\n codeText?: string\n\n /**\n * \u590D\u5236\u6309\u94AE\u6587\u672C\n * @default \"COPY\"\n */\n copyText?: string\n\n /**\n * \u590D\u5236\u6210\u529F\u540E\u7684\u6309\u94AE\u6587\u672C\n * @default \"COPIED\"\n */\n copiedText?: string\n\n /**\n * \u5956\u52B1\u65F6\u95F4\u6587\u672C\u524D\u7F00\n * @default \"Prize time:\"\n */\n prizeText?: string\n}\n\n/**\n * MyRewardsModal \u6211\u7684\u5956\u52B1\u5F39\u7A97\u7EC4\u4EF6\n */\nexport const MyRewardsModal: React.FC<MyRewardsModalProps> = ({\n isOpen,\n onClose,\n title = 'My Rewards',\n rewards,\n onCopyCode,\n className,\n codeText = 'CODE:',\n copyText = 'COPY',\n copiedText = 'COPIED',\n prizeText = 'Prize time:',\n}) => {\n // \u8FFD\u8E2A\u6BCF\u4E2A\u5956\u52B1\u7684\u590D\u5236\u72B6\u6001\n const [copiedStates, setCopiedStates] = useState<Record<string, boolean>>({})\n const timersRef = useRef<Record<string, NodeJS.Timeout>>({})\n\n // \u6E05\u7406\u6240\u6709\u5B9A\u65F6\u5668\n useEffect(() => {\n return () => {\n Object.values(timersRef.current).forEach(timer => clearTimeout(timer))\n }\n }, [])\n\n // \u5904\u7406\u590D\u5236\u64CD\u4F5C\n const handleCopy = (rewardId: string, code: string) => {\n // \u6E05\u9664\u8BE5\u5956\u52B1\u7684\u73B0\u6709\u5B9A\u65F6\u5668\n if (timersRef.current[rewardId]) {\n clearTimeout(timersRef.current[rewardId])\n }\n\n navigator.clipboard.writeText(code)\n // \u8C03\u7528\u590D\u5236\u56DE\u8C03\n if (onCopyCode) onCopyCode?.(code)\n\n // \u8BBE\u7F6E\u4E3A\u5DF2\u590D\u5236\u72B6\u6001\n setCopiedStates(prev => ({ ...prev, [rewardId]: true }))\n\n // 3\u79D2\u540E\u6062\u590D\n timersRef.current[rewardId] = setTimeout(() => {\n setCopiedStates(prev => ({ ...prev, [rewardId]: false }))\n delete timersRef.current[rewardId]\n }, 3000)\n }\n\n return (\n <BaseModal\n isOpen={isOpen}\n onClose={onClose}\n maxWidth=\"max-w-[480px] laptop:max-w-[520px]\"\n background=\"bg-white\"\n className={className}\n title={title}\n ariaLabelledBy=\"rewards-modal-title\"\n >\n <div className=\"laptop:px-8 laptop:pb-8 p-4\">\n {/* \u5956\u52B1\u5217\u8868 */}\n <div className=\"flex max-h-[584px] flex-col gap-2 overflow-y-auto\">\n {rewards.length === 0 ? (\n <p className=\"py-8 text-center text-[14px] text-gray-500\">No rewards yet</p>\n ) : (\n rewards.map(reward => (\n <div\n key={reward.id}\n className={cn('rounded-box', 'relative flex-none overflow-hidden bg-[#F5F5F7]', 'px-4 py-6')}\n >\n <div className=\"laptop:text-[16px] flex items-center justify-between gap-2 text-[14px] font-[700]\">\n <div className=\"flex-1\">\n <p\n className={cn(\n 'mb-1 font-[700] text-[#1D1D1F]',\n reward?.available ? 'text-[#1D1D1F]' : 'text-[#D1D1D1]'\n )}\n >\n {reward.name}\n </p>\n {reward.code && (\n <div\n className={cn('flex items-center gap-2', reward?.available ? 'text-brand-0' : 'text-[#D1D1D1]')}\n >\n <p className=\"max-w-[200px] truncate\">\n {codeText} {reward.code}\n </p>\n {reward.showCopyCode && reward?.available && (\n <button onClick={() => handleCopy(reward.id, reward.code!)} className=\"underline\">\n {copiedStates[reward.id] ? copiedText : copyText}\n </button>\n )}\n </div>\n )}\n </div>\n\n {reward.prizeTime && (\n <div\n className={cn('text-[14px] font-[700] ', reward?.available ? 'text-[#999]' : 'text-[#D1D1D1]')}\n >\n <p>{prizeText}</p>\n <p>{reward.prizeTime}</p>\n </div>\n )}\n\n {/* \u72B6\u6001\u6807\u7B7E */}\n <span\n className={cn(\n 'rounded-[0_8px] px-[6px] text-[14px] font-[700]',\n 'absolute right-0 top-0',\n reward?.available ? 'bg-brand-0 text-white' : 'bg-[#D1D1D1] text-white'\n )}\n >\n {reward.status}\n </span>\n </div>\n </div>\n ))\n )}\n </div>\n </div>\n </BaseModal>\n )\n}\n\nexport default MyRewardsModal\n"],
5
- "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,oBAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GA2KY,IAAAK,EAAA,6BAhKZC,EAAmD,iBACnDC,EAAmB,kCACnBC,EAA0B,0BAoGnB,MAAMN,EAAgD,CAAC,CAC5D,OAAAO,EACA,QAAAC,EACA,MAAAC,EAAQ,aACR,QAAAC,EACA,WAAAC,EACA,UAAAC,EACA,SAAAC,EAAW,QACX,SAAAC,EAAW,OACX,WAAAC,EAAa,SACb,UAAAC,EAAY,aACd,IAAM,CAEJ,KAAM,CAACC,EAAcC,CAAe,KAAI,YAAkC,CAAC,CAAC,EACtEC,KAAY,UAAuC,CAAC,CAAC,KAG3D,aAAU,IACD,IAAM,CACX,OAAO,OAAOA,EAAU,OAAO,EAAE,QAAQC,GAAS,aAAaA,CAAK,CAAC,CACvE,EACC,CAAC,CAAC,EAGL,MAAMC,EAAa,CAACC,EAAkBC,IAAiB,CAEjDJ,EAAU,QAAQG,CAAQ,GAC5B,aAAaH,EAAU,QAAQG,CAAQ,CAAC,EAG1C,UAAU,UAAU,UAAUC,CAAI,EAE9BZ,GAAYA,IAAaY,CAAI,EAGjCL,EAAgBM,IAAS,CAAE,GAAGA,EAAM,CAACF,CAAQ,EAAG,EAAK,EAAE,EAGvDH,EAAU,QAAQG,CAAQ,EAAI,WAAW,IAAM,CAC7CJ,EAAgBM,IAAS,CAAE,GAAGA,EAAM,CAACF,CAAQ,EAAG,EAAM,EAAE,EACxD,OAAOH,EAAU,QAAQG,CAAQ,CACnC,EAAG,GAAI,CACT,EAEA,SACE,OAAC,aACC,OAAQf,EACR,QAASC,EACT,SAAS,qCACT,WAAW,WACX,UAAWI,EACX,MAAOH,EACP,eAAe,sBAEf,mBAAC,OAAI,UAAU,8BAEb,mBAAC,OAAI,UAAU,oDACZ,SAAAC,EAAQ,SAAW,KAClB,OAAC,KAAE,UAAU,6CAA6C,0BAAc,EAExEA,EAAQ,IAAIe,MACV,OAAC,OAEC,aAAW,MAAG,cAAe,kDAAmD,WAAW,EAE3F,oBAAC,OAAI,UAAU,oFACb,qBAAC,OAAI,UAAU,SACb,oBAAC,KACC,aAAW,MACT,iCACAA,GAAQ,UAAY,iBAAmB,gBACzC,EAEC,SAAAA,EAAO,KACV,EACCA,EAAO,SACN,QAAC,OACC,aAAW,MAAG,0BAA2BA,GAAQ,UAAY,eAAiB,gBAAgB,EAE9F,qBAAC,KAAE,UAAU,yBACV,UAAAZ,EAAS,IAAEY,EAAO,MACrB,EACCA,EAAO,cAAgBA,GAAQ,cAC9B,OAAC,UAAO,QAAS,IAAMJ,EAAWI,EAAO,GAAIA,EAAO,IAAK,EAAG,UAAU,YACnE,SAAAR,EAAaQ,EAAO,EAAE,EAAIV,EAAaD,EAC1C,GAEJ,GAEJ,EAECW,EAAO,cACN,QAAC,OACC,aAAW,MAAG,0BAA2BA,GAAQ,UAAY,cAAgB,gBAAgB,EAE7F,oBAAC,KAAG,SAAAT,EAAU,KACd,OAAC,KAAG,SAAAS,EAAO,UAAU,GACvB,KAIF,OAAC,QACC,aAAW,MACT,kDACA,yBACAA,GAAQ,UAAY,wBAA0B,yBAChD,EAEC,SAAAA,EAAO,OACV,GACF,GAhDKA,EAAO,EAiDd,CACD,EAEL,EACF,EACF,CAEJ,EAEA,IAAOxB,EAAQD",
6
- "names": ["MyRewardsModal_exports", "__export", "MyRewardsModal", "MyRewardsModal_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_helpers", "import_BaseModal", "isOpen", "onClose", "title", "rewards", "onCopyCode", "className", "codeText", "copyText", "copiedText", "prizeText", "copiedStates", "setCopiedStates", "timersRef", "timer", "handleCopy", "rewardId", "code", "prev", "reward"]
7
- }
@@ -1,26 +0,0 @@
1
- /**
2
- * PrizePool - 奖品池组件
3
- *
4
- * 展示所有可获得的奖品列表,支持横向滚动。
5
- * 基于 Figma 设计稿实现响应式布局。
6
- *
7
- * Figma 设计稿: https://www.figma.com/design/DhWsPamqTM76eMHS0aIQqw
8
- * 设计节点: 498:6894 (Prize Pool section)
9
- *
10
- * @module PrizePool
11
- * @date 2025-12-17
12
- */
13
- import React from 'react';
14
- import type { PrizePoolProps } from './types.js';
15
- /**
16
- * PrizePool - 奖品池展示组件
17
- *
18
- * 特性:
19
- * - 横向滚动列表(mobile/tablet)
20
- * - 触摸友好
21
- * - 显示奖品图片、排名(1st/2nd/3rd)和名称
22
- * - 支持响应式布局
23
- * - 显示中奖人名单(自动滚动循环)
24
- */
25
- export declare const PrizePool: React.FC<PrizePoolProps>;
26
- export default PrizePool;
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var k=Object.create;var r=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var v=Object.getPrototypeOf,P=Object.prototype.hasOwnProperty;var h=(e,p)=>{for(var i in p)r(e,i,{get:p[i],enumerable:!0})},d=(e,p,i,s)=>{if(p&&typeof p=="object"||typeof p=="function")for(let a of g(p))!P.call(e,a)&&a!==i&&r(e,a,{get:()=>p[a],enumerable:!(s=f(p,a))||s.enumerable});return e};var u=(e,p,i)=>(i=e!=null?k(v(e)):{},d(p||!e||!e.__esModule?r(i,"default",{value:e,enumerable:!0}):i,e)),N=e=>d(r({},"__esModule",{value:!0}),e);var z={};h(z,{PrizePool:()=>m,default:()=>y});module.exports=N(z);var t=require("react/jsx-runtime"),x=u(require("react")),o=require("../../helpers/index.js"),l=require("../../components/index.js");const m=({theme:e,prizes:p,title:i="Prize Pool",winningInfos:s,className:a})=>!p||p.length===0?null:(0,t.jsxs)("div",{className:(0,o.cn)("prize-pool-content",e==="dark"?"aiui-dark":"",a),children:[(0,t.jsxs)("div",{className:(0,o.cn)("border-b ","py-[16px]","desktop:pt-[24px]",e==="dark"?"border-[#3A3C40]":"border-[#dadce0]"),children:[(0,t.jsx)("div",{className:(0,o.cn)("prize-pool-container","mb-4 px-[16px]","desktop:px-[24px]","lg-desktop:px-[32px]",a),children:(0,t.jsx)(l.Heading,{size:2,className:(0,o.cn)("prize-pool-title","text-info-primary"),children:i})}),(0,t.jsx)("div",{className:(0,o.cn)("px-[16px]","desktop:px-[24px]","lg-desktop:px-[32px]","overflow-y-hidden overflow-x-visible"),children:(0,t.jsx)("div",{className:(0,o.cn)("prize-pool-list","flex items-center gap-[16px]","scroll-smooth","scrollbar-hide"),style:{WebkitOverflowScrolling:"touch"},children:p.map((n,c)=>(0,t.jsxs)(x.default.Fragment,{children:[(0,t.jsx)(w,{prize:n}),c<p.length-1?(0,t.jsx)("div",{className:(0,o.cn)("prize-divider","lg-desktop:h-[54px]","h-[48px] w-0","border-l ",e==="dark"?"border-[#3A3C40]":"border-[#dadce0]","shrink-0"),"aria-hidden":"true"}):null]},n.prizeKey))})})]}),s&&s.length>0&&(0,t.jsx)(b,{winningInfos:s})]}),w=({prize:e})=>(0,t.jsxs)("div",{className:(0,o.cn)("prize-pool-item","flex items-start gap-[8px]","shrink-0","h-[80px] w-[280px]","desktop:h-[96px] desktop:w-[320px]","lg-desktop:h-[108px]"),children:[(0,t.jsx)(l.Picture,{source:e.image.url,alt:e.image.alt||`\u5956\u54C1: ${e.name}${e.rank?`, \u6392\u540D ${e.rank}`:""}`,className:(0,o.cn)("prize-pool-image","size-[80px]","desktop:size-[96px]","lg-desktop:size-[108px]","flex-none rounded-lg object-cover")}),(0,t.jsxs)("div",{className:(0,o.cn)("prize-pool-info","flex flex-1 flex-col items-start justify-end","text-info-primary","min-w-0"),children:[(0,t.jsx)("p",{className:(0,o.cn)("prize-rank","h-[20px] text-[14px] font-bold leading-[1.2] ","desktop:h-[22px] desktop:text-[16px]","lg-desktop:h-[25px] lg-desktop:text-[18px]",{"text-[#FF6B00]":e.rank==="1st"||e.rank==="2nd"||e.rank==="3rd"}),children:e?.rank||""}),(0,t.jsx)("p",{className:(0,o.cn)("prize-pool-name","text-[14px] font-semibold leading-[1.4] ","desktop:text-[16px]","lg-desktop:text-[18px]","line-clamp-2 overflow-hidden text-ellipsis","text-info-primary","w-full"),title:e.name,children:e.name})]})]}),b=({winningInfos:e})=>{const p=[...e,...e];return(0,t.jsx)("div",{className:(0,o.cn)("winners-list-wrapper","py-[12px]","laptop:py-[16px]","overflow-hidden"),children:(0,t.jsx)("div",{className:(0,o.cn)("winners-list-scroll","animate-marquee-x","flex gap-[32px]"),children:p.map((i,s)=>(0,t.jsxs)("div",{className:(0,o.cn)("winner-item","flex items-center gap-[8px]","whitespace-nowrap","text-[14px] font-semibold text-[#767880]","desktop:text-[16px]","lg-desktop:text-[18px]"),children:[(0,t.jsx)("span",{className:"winner-name",children:i.userName}),(0,t.jsx)("span",{className:"winner-text",children:"has won the"}),(0,t.jsx)("span",{className:"winner-prize",children:i.prizeName})]},`${i.winningKey}-${s}`))})})};var y=m;
2
- //# sourceMappingURL=PrizePool.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/PrizePool.tsx"],
4
- "sourcesContent": ["/**\n * PrizePool - \u5956\u54C1\u6C60\u7EC4\u4EF6\n *\n * \u5C55\u793A\u6240\u6709\u53EF\u83B7\u5F97\u7684\u5956\u54C1\u5217\u8868,\u652F\u6301\u6A2A\u5411\u6EDA\u52A8\u3002\n * \u57FA\u4E8E Figma \u8BBE\u8BA1\u7A3F\u5B9E\u73B0\u54CD\u5E94\u5F0F\u5E03\u5C40\u3002\n *\n * Figma \u8BBE\u8BA1\u7A3F: https://www.figma.com/design/DhWsPamqTM76eMHS0aIQqw\n * \u8BBE\u8BA1\u8282\u70B9: 498:6894 (Prize Pool section)\n *\n * @module PrizePool\n * @date 2025-12-17\n */\n\n'use client'\n\nimport React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport type { Prize, WinningInfo, PrizePoolProps } from './types.js'\nimport { Heading, Picture } from '../../components/index.js'\n\n// ============================================================================\n// PrizePool \u7EC4\u4EF6\n// ============================================================================\n\n/**\n * PrizePool - \u5956\u54C1\u6C60\u5C55\u793A\u7EC4\u4EF6\n *\n * \u7279\u6027:\n * - \u6A2A\u5411\u6EDA\u52A8\u5217\u8868(mobile/tablet)\n * - \u89E6\u6478\u53CB\u597D\n * - \u663E\u793A\u5956\u54C1\u56FE\u7247\u3001\u6392\u540D(1st/2nd/3rd)\u548C\u540D\u79F0\n * - \u652F\u6301\u54CD\u5E94\u5F0F\u5E03\u5C40\n * - \u663E\u793A\u4E2D\u5956\u4EBA\u540D\u5355(\u81EA\u52A8\u6EDA\u52A8\u5FAA\u73AF)\n */\nexport const PrizePool: React.FC<PrizePoolProps> = ({\n theme,\n prizes,\n title = 'Prize Pool',\n winningInfos,\n className,\n}) => {\n // \u9632\u5FA1\u6027\u7F16\u7A0B:\u5904\u7406 undefined \u6216\u7A7A\u6570\u7EC4\n if (!prizes || prizes.length === 0) {\n return null\n }\n\n return (\n <div className={cn('prize-pool-content', theme === 'dark' ? 'aiui-dark' : '', className)}>\n <div\n className={cn(\n 'border-b ',\n 'py-[16px]',\n 'desktop:pt-[24px]',\n theme === 'dark' ? 'border-[#3A3C40]' : 'border-[#dadce0]'\n )}\n >\n <div\n className={cn(\n 'prize-pool-container',\n 'mb-4 px-[16px]',\n 'desktop:px-[24px]',\n 'lg-desktop:px-[32px]',\n className\n )}\n >\n {/* \u6807\u9898 */}\n <Heading size={2} className={cn('prize-pool-title', 'text-info-primary')}>\n {title}\n </Heading>\n </div>\n {/* \u5956\u54C1\u5217\u8868 - \u6A2A\u5411\u6EDA\u52A8 */}\n <div\n className={cn(\n 'px-[16px]',\n 'desktop:px-[24px]',\n 'lg-desktop:px-[32px]',\n 'overflow-y-hidden overflow-x-visible'\n )}\n >\n <div\n className={cn('prize-pool-list', 'flex items-center gap-[16px]', 'scroll-smooth', 'scrollbar-hide')}\n style={{\n WebkitOverflowScrolling: 'touch', // iOS \u5E73\u6ED1\u6EDA\u52A8\n }}\n >\n {prizes.map((prize, index) => (\n <React.Fragment key={prize.prizeKey}>\n <PrizePoolItem prize={prize} />\n {/* \u6A2A\u5411\u5206\u9694\u7EBF(\u4EC5\u5728 desktop \u4EE5\u4E0A\u663E\u793A) */}\n {index < prizes.length - 1 ? (\n <div\n className={cn(\n 'prize-divider',\n 'lg-desktop:h-[54px]',\n 'h-[48px] w-0',\n 'border-l ',\n theme === 'dark' ? 'border-[#3A3C40]' : 'border-[#dadce0]',\n 'shrink-0'\n )}\n aria-hidden=\"true\"\n />\n ) : null}\n </React.Fragment>\n ))}\n </div>\n </div>\n </div>\n\n {/* \u4E2D\u5956\u4EBA\u540D\u5355 - \u81EA\u52A8\u6EDA\u52A8 */}\n {winningInfos && winningInfos.length > 0 && <WinnersList winningInfos={winningInfos} />}\n </div>\n )\n}\n\n// ============================================================================\n// PrizePoolItem \u5B50\u7EC4\u4EF6 - \u5355\u4E2A\u5956\u54C1\u5361\u7247\n// ============================================================================\n\ninterface PrizePoolItemProps {\n prize: Prize\n}\n\n/**\n * PrizePoolItem - \u5956\u54C1\u6C60\u4E2D\u7684\u5355\u4E2A\u5956\u54C1\u5361\u7247\n *\n * \u5C55\u793A\u5956\u54C1\u56FE\u7247\u3001\u6392\u540D\u548C\u540D\u79F0,\u5E26\u60AC\u505C\u6548\u679C\u3002\n */\nconst PrizePoolItem: React.FC<PrizePoolItemProps> = ({ prize }) => {\n return (\n <div\n className={cn(\n 'prize-pool-item',\n 'flex items-start gap-[8px]',\n 'shrink-0',\n 'h-[80px] w-[280px]',\n 'desktop:h-[96px] desktop:w-[320px]',\n 'lg-desktop:h-[108px]'\n )}\n >\n {/* \u5956\u54C1\u56FE\u7247 */}\n <Picture\n source={prize.image.url}\n alt={prize.image.alt || `\u5956\u54C1: ${prize.name}${prize.rank ? `, \u6392\u540D ${prize.rank}` : ''}`}\n className={cn(\n 'prize-pool-image',\n 'size-[80px]',\n 'desktop:size-[96px]',\n 'lg-desktop:size-[108px]',\n 'flex-none rounded-lg object-cover'\n )}\n />\n\n {/* \u5956\u54C1\u4FE1\u606F */}\n <div\n className={cn(\n 'prize-pool-info',\n 'flex flex-1 flex-col items-start justify-end',\n 'text-info-primary',\n 'min-w-0' // \u786E\u4FDD\u6587\u672C\u53EF\u4EE5\u88AB\u622A\u65AD\n )}\n >\n {/* \u6392\u540D\u6807\u8BC6(1st/2nd/3rd,\u53EF\u9009) */}\n <p\n className={cn(\n 'prize-rank',\n 'h-[20px] text-[14px] font-bold leading-[1.2] ',\n 'desktop:h-[22px] desktop:text-[16px]',\n 'lg-desktop:h-[25px] lg-desktop:text-[18px]',\n {\n 'text-[#FF6B00]': prize.rank === '1st' || prize.rank === '2nd' || prize.rank === '3rd', // \u6A59\u8272\n // 'text-[#767880]': prize.rank === 'others', // \u7070\u8272\n }\n )}\n >\n {prize?.rank || ''}\n </p>\n\n {/* \u5956\u54C1\u540D\u79F0 - \u6700\u591A\u663E\u793A 2 \u884C,\u8D85\u51FA\u663E\u793A\u7701\u7565\u53F7 */}\n <p\n className={cn(\n 'prize-pool-name',\n 'text-[14px] font-semibold leading-[1.4] ',\n 'desktop:text-[16px]',\n 'lg-desktop:text-[18px]',\n 'line-clamp-2 overflow-hidden text-ellipsis', // \u6700\u591A 2 \u884C\n 'text-info-primary',\n 'w-full'\n )}\n title={prize.name} // \u60AC\u505C\u663E\u793A\u5B8C\u6574\u540D\u79F0\n >\n {prize.name}\n </p>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// WinnersList \u5B50\u7EC4\u4EF6 - \u4E2D\u5956\u4EBA\u540D\u5355\u81EA\u52A8\u6EDA\u52A8(\u4F7F\u7528 Swiper)\n// ============================================================================\n\ninterface WinnersListProps {\n winningInfos: WinningInfo[]\n}\n\n/**\n * WinnersList - \u4E2D\u5956\u4EBA\u540D\u5355\u6EDA\u52A8\u7EC4\u4EF6\n *\n * \u4F7F\u7528\u7EAF CSS \u52A8\u753B\u5B9E\u73B0\u8DD1\u9A6C\u706F\u6548\u679C\n *\n * \u7279\u6027:\n * - \u7EAF CSS keyframe \u52A8\u753B\uFF0C\u65E0 JavaScript \u8BA1\u7B97\n * - \u8F7B\u91CF\u7EA7\u5B9E\u73B0\uFF0C\u65E0\u9700\u7B2C\u4E09\u65B9\u5E93\n * - \u54CD\u5E94\u5F0F\u8BBE\u8BA1\n * - \u7EBF\u6027\u6EDA\u52A8\uFF0C\u6D41\u7545\u81EA\u7136\n */\nconst WinnersList: React.FC<WinnersListProps> = ({ winningInfos }) => {\n // \u590D\u5236\u5185\u5BB9\u4EE5\u5B9E\u73B0\u65E0\u7F1D\u5FAA\u73AF\n const duplicatedInfos = [...winningInfos, ...winningInfos]\n\n return (\n <div className={cn('winners-list-wrapper', 'py-[12px]', 'laptop:py-[16px]', 'overflow-hidden')}>\n <div className={cn('winners-list-scroll', 'animate-marquee-x', 'flex gap-[32px]')}>\n {duplicatedInfos.map((winner, index) => (\n <div\n key={`${winner.winningKey}-${index}`}\n className={cn(\n 'winner-item',\n 'flex items-center gap-[8px]',\n 'whitespace-nowrap',\n 'text-[14px] font-semibold text-[#767880]',\n 'desktop:text-[16px]',\n 'lg-desktop:text-[18px]'\n )}\n >\n <span className=\"winner-name\">{winner.userName}</span>\n <span className=\"winner-text\">has won the</span>\n <span className=\"winner-prize\">{winner.prizeName}</span>\n </div>\n ))}\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// \u9ED8\u8BA4\u5BFC\u51FA\n// ============================================================================\n\nexport default PrizePool\n"],
5
- "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,eAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GAkEU,IAAAK,EAAA,6BAnDVC,EAAkB,oBAClBC,EAAmB,kCAEnBC,EAAiC,qCAgB1B,MAAMN,EAAsC,CAAC,CAClD,MAAAO,EACA,OAAAC,EACA,MAAAC,EAAQ,aACR,aAAAC,EACA,UAAAC,CACF,IAEM,CAACH,GAAUA,EAAO,SAAW,EACxB,QAIP,QAAC,OAAI,aAAW,MAAG,qBAAsBD,IAAU,OAAS,YAAc,GAAII,CAAS,EACrF,qBAAC,OACC,aAAW,MACT,YACA,YACA,oBACAJ,IAAU,OAAS,mBAAqB,kBAC1C,EAEA,oBAAC,OACC,aAAW,MACT,uBACA,iBACA,oBACA,uBACAI,CACF,EAGA,mBAAC,WAAQ,KAAM,EAAG,aAAW,MAAG,mBAAoB,mBAAmB,EACpE,SAAAF,EACH,EACF,KAEA,OAAC,OACC,aAAW,MACT,YACA,oBACA,uBACA,sCACF,EAEA,mBAAC,OACC,aAAW,MAAG,kBAAmB,+BAAgC,gBAAiB,gBAAgB,EAClG,MAAO,CACL,wBAAyB,OAC3B,EAEC,SAAAD,EAAO,IAAI,CAACI,EAAOC,OAClB,QAAC,EAAAC,QAAM,SAAN,CACC,oBAACC,EAAA,CAAc,MAAOH,EAAO,EAE5BC,EAAQL,EAAO,OAAS,KACvB,OAAC,OACC,aAAW,MACT,gBACA,sBACA,eACA,YACAD,IAAU,OAAS,mBAAqB,mBACxC,UACF,EACA,cAAY,OACd,EACE,OAfeK,EAAM,QAgB3B,CACD,EACH,EACF,GACF,EAGCF,GAAgBA,EAAa,OAAS,MAAK,OAACM,EAAA,CAAY,aAAcN,EAAc,GACvF,EAiBEK,EAA8C,CAAC,CAAE,MAAAH,CAAM,OAEzD,QAAC,OACC,aAAW,MACT,kBACA,6BACA,WACA,qBACA,qCACA,sBACF,EAGA,oBAAC,WACC,OAAQA,EAAM,MAAM,IACpB,IAAKA,EAAM,MAAM,KAAO,iBAAOA,EAAM,IAAI,GAAGA,EAAM,KAAO,kBAAQA,EAAM,IAAI,GAAK,EAAE,GAClF,aAAW,MACT,mBACA,cACA,sBACA,0BACA,mCACF,EACF,KAGA,QAAC,OACC,aAAW,MACT,kBACA,+CACA,oBACA,SACF,EAGA,oBAAC,KACC,aAAW,MACT,aACA,gDACA,uCACA,6CACA,CACE,iBAAkBA,EAAM,OAAS,OAASA,EAAM,OAAS,OAASA,EAAM,OAAS,KAEnF,CACF,EAEC,SAAAA,GAAO,MAAQ,GAClB,KAGA,OAAC,KACC,aAAW,MACT,kBACA,2CACA,sBACA,yBACA,6CACA,oBACA,QACF,EACA,MAAOA,EAAM,KAEZ,SAAAA,EAAM,KACT,GACF,GACF,EAuBEI,EAA0C,CAAC,CAAE,aAAAN,CAAa,IAAM,CAEpE,MAAMO,EAAkB,CAAC,GAAGP,EAAc,GAAGA,CAAY,EAEzD,SACE,OAAC,OAAI,aAAW,MAAG,uBAAwB,YAAa,mBAAoB,iBAAiB,EAC3F,mBAAC,OAAI,aAAW,MAAG,sBAAuB,oBAAqB,iBAAiB,EAC7E,SAAAO,EAAgB,IAAI,CAACC,EAAQL,OAC5B,QAAC,OAEC,aAAW,MACT,cACA,8BACA,oBACA,2CACA,sBACA,wBACF,EAEA,oBAAC,QAAK,UAAU,cAAe,SAAAK,EAAO,SAAS,KAC/C,OAAC,QAAK,UAAU,cAAc,uBAAW,KACzC,OAAC,QAAK,UAAU,eAAgB,SAAAA,EAAO,UAAU,IAZ5C,GAAGA,EAAO,UAAU,IAAIL,CAAK,EAapC,CACD,EACH,EACF,CAEJ,EAMA,IAAOZ,EAAQD",
6
- "names": ["PrizePool_exports", "__export", "PrizePool", "PrizePool_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_helpers", "import_components", "theme", "prizes", "title", "winningInfos", "className", "prize", "index", "React", "PrizePoolItem", "WinnersList", "duplicatedInfos", "winner"]
7
- }
@@ -1,47 +0,0 @@
1
- /**
2
- * RulesModal - 规则弹窗组件
3
- *
4
- * 展示活动规则的弹窗
5
- *
6
- * @module RulesModal
7
- * @date 2026-01-04
8
- */
9
- import React from 'react';
10
- export interface RuleItem {
11
- /**
12
- * 规则标题
13
- */
14
- title: string;
15
- /**
16
- * 规则内容(支持字符串或字符串数组)
17
- */
18
- content: string | string[];
19
- }
20
- export interface RulesModalProps {
21
- /**
22
- * 是否显示弹窗
23
- */
24
- isOpen: boolean;
25
- /**
26
- * 关闭弹窗回调
27
- */
28
- onClose: () => void;
29
- /**
30
- * 弹窗标题
31
- * @default "Rules"
32
- */
33
- title?: string;
34
- /**
35
- * 规则列表
36
- */
37
- rules: RuleItem[];
38
- /**
39
- * 自定义类名
40
- */
41
- className?: string;
42
- }
43
- /**
44
- * RulesModal 规则弹窗组件
45
- */
46
- export declare const RulesModal: React.FC<RulesModalProps>;
47
- export default RulesModal;
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var p=Object.defineProperty;var x=Object.getOwnPropertyDescriptor;var u=Object.getOwnPropertyNames;var v=Object.prototype.hasOwnProperty;var N=(a,e)=>{for(var s in e)p(a,s,{get:e[s],enumerable:!0})},R=(a,e,s,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let l of u(e))!v.call(a,l)&&l!==s&&p(a,l,{get:()=>e[l],enumerable:!(o=x(e,l))||o.enumerable});return a};var b=a=>R(p({},"__esModule",{value:!0}),a);var g={};N(g,{RulesModal:()=>n,default:()=>f});module.exports=b(g);var t=require("react/jsx-runtime"),M=require("react"),m=require("./BaseModal.js");const n=({isOpen:a,onClose:e,title:s="Rules:",rules:o,className:l})=>(0,t.jsx)(m.BaseModal,{isOpen:a,onClose:e,maxWidth:"max-w-[480px] laptop:max-w-[520px]",background:"bg-white",className:l,title:s,ariaLabelledBy:"rules-modal-title",children:(0,t.jsx)("div",{className:"laptop:px-8 p-4 pb-0",children:(0,t.jsx)("div",{className:"max-h-[584px] overflow-y-auto pb-4",children:o.map((i,r)=>(0,t.jsxs)("div",{className:"mb-2 text-[16px] font-[700] text-[#1D1D1F]",children:[(0,t.jsx)("p",{className:"m-0",children:i.title}),Array.isArray(i.content)?(0,t.jsx)("ul",{className:"ml-6 list-disc",children:i.content.map((c,d)=>(0,t.jsx)("li",{children:c},d))}):(0,t.jsx)("p",{className:"m-0",children:i.content})]},r))})})});var f=n;
2
- //# sourceMappingURL=RulesModal.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/RulesModal.tsx"],
4
- "sourcesContent": ["/**\n * RulesModal - \u89C4\u5219\u5F39\u7A97\u7EC4\u4EF6\n *\n * \u5C55\u793A\u6D3B\u52A8\u89C4\u5219\u7684\u5F39\u7A97\n *\n * @module RulesModal\n * @date 2026-01-04\n */\n\n'use client'\n\nimport React from 'react'\nimport { BaseModal } from './BaseModal.js'\n\nexport interface RuleItem {\n /**\n * \u89C4\u5219\u6807\u9898\n */\n title: string\n\n /**\n * \u89C4\u5219\u5185\u5BB9\uFF08\u652F\u6301\u5B57\u7B26\u4E32\u6216\u5B57\u7B26\u4E32\u6570\u7EC4\uFF09\n */\n content: string | string[]\n}\n\nexport interface RulesModalProps {\n /**\n * \u662F\u5426\u663E\u793A\u5F39\u7A97\n */\n isOpen: boolean\n\n /**\n * \u5173\u95ED\u5F39\u7A97\u56DE\u8C03\n */\n onClose: () => void\n\n /**\n * \u5F39\u7A97\u6807\u9898\n * @default \"Rules\"\n */\n title?: string\n\n /**\n * \u89C4\u5219\u5217\u8868\n */\n rules: RuleItem[]\n\n /**\n * \u81EA\u5B9A\u4E49\u7C7B\u540D\n */\n className?: string\n}\n\n/**\n * RulesModal \u89C4\u5219\u5F39\u7A97\u7EC4\u4EF6\n */\nexport const RulesModal: React.FC<RulesModalProps> = ({ isOpen, onClose, title = 'Rules:', rules, className }) => {\n return (\n <BaseModal\n isOpen={isOpen}\n onClose={onClose}\n maxWidth=\"max-w-[480px] laptop:max-w-[520px]\"\n background=\"bg-white\"\n className={className}\n title={title}\n ariaLabelledBy=\"rules-modal-title\"\n >\n <div className=\"laptop:px-8 p-4 pb-0\">\n {/* \u89C4\u5219\u5217\u8868 */}\n <div className=\"max-h-[584px] overflow-y-auto pb-4\">\n {rules.map((rule, index) => (\n <div key={index} className=\"mb-2 text-[16px] font-[700] text-[#1D1D1F]\">\n <p className=\"m-0\">{rule.title}</p>\n {Array.isArray(rule.content) ? (\n <ul className=\"ml-6 list-disc\">\n {rule.content.map((item, i) => (\n <li key={i}>{item}</li>\n ))}\n </ul>\n ) : (\n <p className=\"m-0\">{rule.content}</p>\n )}\n </div>\n ))}\n </div>\n </div>\n </BaseModal>\n )\n}\n\nexport default RulesModal\n"],
5
- "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gBAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GAwEY,IAAAK,EAAA,6BA7DZC,EAAkB,iBAClBC,EAA0B,0BA6CnB,MAAML,EAAwC,CAAC,CAAE,OAAAM,EAAQ,QAAAC,EAAS,MAAAC,EAAQ,SAAU,MAAAC,EAAO,UAAAC,CAAU,OAExG,OAAC,aACC,OAAQJ,EACR,QAASC,EACT,SAAS,qCACT,WAAW,WACX,UAAWG,EACX,MAAOF,EACP,eAAe,oBAEf,mBAAC,OAAI,UAAU,uBAEb,mBAAC,OAAI,UAAU,qCACZ,SAAAC,EAAM,IAAI,CAACE,EAAMC,OAChB,QAAC,OAAgB,UAAU,6CACzB,oBAAC,KAAE,UAAU,MAAO,SAAAD,EAAK,MAAM,EAC9B,MAAM,QAAQA,EAAK,OAAO,KACzB,OAAC,MAAG,UAAU,iBACX,SAAAA,EAAK,QAAQ,IAAI,CAACE,EAAMC,OACvB,OAAC,MAAY,SAAAD,GAAJC,CAAS,CACnB,EACH,KAEA,OAAC,KAAE,UAAU,MAAO,SAAAH,EAAK,QAAQ,IAT3BC,CAWV,CACD,EACH,EACF,EACF,EAIJ,IAAOX,EAAQD",
6
- "names": ["RulesModal_exports", "__export", "RulesModal", "RulesModal_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_BaseModal", "isOpen", "onClose", "title", "rules", "className", "rule", "index", "item", "i"]
7
- }
@@ -1,74 +0,0 @@
1
- /**
2
- * ShareModal - 分享弹窗组件
3
- *
4
- * 用于引导用户分享到社交媒体以获取额外抽奖机会
5
- *
6
- * @module ShareModal
7
- * @date 2026-01-07
8
- */
9
- import React from 'react';
10
- export type SocialPlatform = 'facebook' | 'twitter' | 'instagram' | 'linkedin' | 'tiktok' | 'youtube';
11
- export interface SharePlatformConfig {
12
- /**
13
- * 平台类型
14
- */
15
- platform: SocialPlatform;
16
- /**
17
- * 平台名称
18
- */
19
- name: string;
20
- /**
21
- * 分享 URL(可选,如果提供则直接跳转)
22
- */
23
- url?: string;
24
- /**
25
- * 点击回调(如果提供 url 则此回调会在跳转前执行)
26
- */
27
- onClick?: () => void;
28
- /**
29
- * 是否禁用
30
- */
31
- disabled?: boolean;
32
- }
33
- export interface ShareModalProps {
34
- /**
35
- * 是否显示弹窗
36
- */
37
- isOpen: boolean;
38
- /**
39
- * 关闭弹窗回调
40
- */
41
- onClose: () => void;
42
- /**
43
- * 弹窗标题
44
- * @default "Share to Get More Chances"
45
- */
46
- title?: string;
47
- /**
48
- * 副标题/引导文案
49
- * @default "Share to Play Again Keep Trying! You Could Still Win Big!"
50
- */
51
- subtitle?: string;
52
- /**
53
- * 底部提示文案
54
- * @default "Note: Maximum of 3 times per participant."
55
- */
56
- note?: string;
57
- /**
58
- * 社交平台配置列表
59
- */
60
- platforms?: SharePlatformConfig[];
61
- /**
62
- * 分享成功回调
63
- */
64
- onShareSuccess?: (platform: SocialPlatform) => void;
65
- /**
66
- * 自定义类名
67
- */
68
- className?: string;
69
- }
70
- /**
71
- * ShareModal 分享弹窗组件
72
- */
73
- export declare const ShareModal: React.FC<ShareModalProps>;
74
- export default ShareModal;
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var n=Object.defineProperty;var f=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var x=Object.prototype.hasOwnProperty;var u=(a,t)=>{for(var l in t)n(a,l,{get:t[l],enumerable:!0})},v=(a,t,l,C)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of g(t))!x.call(a,i)&&i!==l&&n(a,i,{get:()=>t[i],enumerable:!(C=f(t,i))||C.enumerable});return a};var b=a=>v(n({},"__esModule",{value:!0}),a);var V={};u(V,{ShareModal:()=>c,default:()=>M});module.exports=b(V);var e=require("react/jsx-runtime"),S=require("react"),r=require("../../helpers/index.js"),s=require("../../components/index.js"),p=require("./BaseModal.js");const k=[{platform:"facebook",name:"Facebook"},{platform:"twitter",name:"X (Twitter)"},{platform:"instagram",name:"Instagram"},{platform:"linkedin",name:"LinkedIn"},{platform:"tiktok",name:"TikTok"},{platform:"youtube",name:"YouTube"}],H=({platform:a,className:t})=>{const l=(0,r.cn)("size-full",t);switch(a){case"facebook":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"36",height:"36",viewBox:"0 0 36 36",fill:"none",children:(0,e.jsx)("path",{d:"M36 18C36 8.05887 27.9411 0 18 0C8.05887 0 0 8.05887 0 18C0 26.9842 6.5823 34.431 15.1875 35.7813V23.2031H10.6172V18H15.1875V14.0344C15.1875 9.52313 17.8748 7.03125 21.9864 7.03125C23.9551 7.03125 26.0156 7.38281 26.0156 7.38281V11.8125H23.7459C21.51 11.8125 20.8125 13.2001 20.8125 14.625V18H25.8047L25.0066 23.2031H20.8125V35.7813C29.4177 34.431 36 26.9842 36 18Z",fill:"white"})});case"twitter":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"33",height:"30",viewBox:"0 0 33 30",fill:"none",children:(0,e.jsx)("path",{d:"M25.485 0H30.447L19.6065 12.39L32.3595 29.25H22.374L14.553 19.0245L5.604 29.25H0.639L12.234 15.9975L0 0H10.239L17.3085 9.3465L25.485 0ZM23.7435 26.28H26.493L8.745 2.814H5.7945L23.7435 26.28Z",fill:"white"})});case"instagram":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"32",height:"33",viewBox:"0 0 32 33",fill:"none",children:(0,e.jsx)("path",{d:"M16.0088 0C20.3547 0 20.8991 0.0183266 22.6123 0.0996094C24.3132 0.174649 25.4768 0.449798 26.4961 0.84375C27.5467 1.25023 28.4411 1.80146 29.3291 2.68945C30.2231 3.5773 30.7672 4.47129 31.1611 5.53418C31.5551 6.54724 31.8302 7.71702 31.9053 9.41797C31.9803 11.125 31.999 11.6696 31.999 16.0156C31.999 20.3611 31.9803 20.9054 31.9053 22.6123C31.8302 24.3133 31.5551 25.4768 31.1611 26.4961C30.7547 27.5467 30.2044 28.4411 29.3164 29.3291C28.4284 30.217 27.5339 30.7674 26.4834 31.1738C25.4704 31.5678 24.3005 31.8429 22.5996 31.918C20.8928 31.993 20.3484 32.0117 16.0029 32.0117C11.6568 32.0117 11.1124 31.993 9.40527 31.918C7.70433 31.8429 6.5408 31.5678 5.52148 31.1738C4.47114 30.7674 3.57727 30.2168 2.68945 29.3291C1.79531 28.4412 1.2506 27.5469 0.837891 26.4902C0.443929 25.4772 0.168798 24.3073 0.09375 22.6064C0.0187082 20.8992 0 20.355 0 16.0088C3.73243e-07 11.6628 0.0187102 11.1187 0.09375 9.40527C0.168792 7.70433 0.443921 6.5408 0.837891 5.52148C1.25061 4.47102 1.79528 3.57737 2.68945 2.68945C3.57745 1.7952 4.47148 1.25062 5.52832 0.837891C6.54126 0.443997 7.71051 0.168809 9.41113 0.09375C11.1183 0.0187089 11.6627 3.7324e-07 16.0088 0ZM16.0088 2.88281C11.7317 2.88281 11.225 2.90153 9.54297 2.97656C7.98585 3.04535 7.13508 3.30847 6.57227 3.52734C5.82828 3.81497 5.29709 4.15899 4.73438 4.72168C4.17785 5.2782 3.82671 5.81549 3.53906 6.55957C3.32019 7.12238 3.05805 7.96693 2.98926 9.53027C2.91422 11.2124 2.89551 11.719 2.89551 15.9961C2.89551 20.2672 2.91422 20.7745 2.98926 22.4629C3.05806 24.0194 3.32024 24.8698 3.53906 25.4326C3.82672 26.1768 4.17156 26.7087 4.73438 27.2715C5.29081 27.8279 5.82829 28.1782 6.57227 28.4658C7.13508 28.6847 7.9796 28.9478 9.54297 29.0166C11.225 29.0916 11.7317 29.1104 16.0088 29.1104C20.2796 29.1104 20.7865 29.0916 22.4746 29.0166C24.0316 28.9478 24.8825 28.6847 25.4453 28.4658C26.1895 28.1782 26.7214 27.8343 27.2842 27.2715C27.8407 26.715 28.1909 26.1767 28.4785 25.4326C28.6973 24.8699 28.9595 24.0257 29.0283 22.4629C29.1034 20.7807 29.1221 20.2735 29.1221 15.9961C29.1221 11.7253 29.1034 11.2187 29.0283 9.53027C28.9595 7.97319 28.6974 7.12238 28.4785 6.55957C28.1909 5.81565 27.8468 5.28433 27.2842 4.72168C26.7276 4.16513 26.1895 3.815 25.4453 3.52734C24.8825 3.30847 24.038 3.04535 22.4746 2.97656C20.7928 2.90154 20.2858 2.88281 16.0088 2.88281ZM16.0127 7.78711C20.5526 7.78727 24.2354 11.4708 24.2354 16.0107C24.2352 20.5505 20.5525 24.2332 16.0127 24.2334C11.4728 24.2334 7.78923 20.5506 7.78906 16.0107C7.78906 11.4707 11.4727 7.78711 16.0127 7.78711ZM16.0127 10.6758C13.0673 10.6758 10.6777 13.0654 10.6777 16.0107C10.6779 18.956 13.0674 21.3447 16.0127 21.3447C18.9578 21.3446 21.3465 18.9559 21.3467 16.0107C21.3467 13.0655 18.9579 10.6759 16.0127 10.6758ZM24.5566 5.54102C25.6134 5.54107 26.4766 6.40413 26.4766 7.46094C26.4765 8.52395 25.6134 9.3808 24.5566 9.38086C23.4936 9.38086 22.6368 8.51773 22.6367 7.46094C22.6367 6.39784 23.4998 5.54102 24.5566 5.54102Z",fill:"white"})});case"linkedin":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"29",height:"29",viewBox:"0 0 29 29",fill:"none",children:(0,e.jsx)("path",{d:"M26.6846 0H2.12757C0.951214 0 0 0.9287 0 2.07691V26.7353C0 27.8835 0.951214 28.8178 2.12757 28.8178H26.6846C27.861 28.8178 28.8178 27.8835 28.8178 26.7409V2.07691C28.8178 0.9287 27.861 0 26.6846 0ZM8.54967 24.5571H4.27202V10.8011H8.54967V24.5571ZM6.41084 8.92677C5.03749 8.92677 3.92868 7.81796 3.92868 6.45024C3.92868 5.08252 5.03749 3.97371 6.41084 3.97371C7.77856 3.97371 8.88737 5.08252 8.88737 6.45024C8.88737 7.81233 7.77856 8.92677 6.41084 8.92677ZM24.5571 24.5571H20.2851V17.8704C20.2851 16.2776 20.2569 14.2232 18.0618 14.2232C15.8386 14.2232 15.5008 15.9624 15.5008 17.7579V24.5571H11.2345V10.8011H15.332V12.681H15.3883C15.9567 11.6003 17.3526 10.4577 19.4295 10.4577C23.7578 10.4577 24.5571 13.3057 24.5571 17.0093V24.5571Z",fill:"white"})});case"tiktok":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"32",height:"32",viewBox:"0 0 32 32",fill:"none",children:(0,e.jsx)("path",{d:"M32 4.51848C32 2.02299 29.977 0 27.4816 0H4.51848C2.02299 0 0 2.02299 0 4.51848V27.4816C0 29.9771 2.02299 32 4.51848 32H27.4816C29.977 32 32 29.9771 32 27.4816V4.51848ZM26.5102 13.9566C24.4458 13.9797 22.5219 13.3555 20.8328 12.1996V20.3146C20.8328 23.9211 18.364 27.0194 14.873 27.8285C10.1103 28.915 6.07845 25.4702 5.56992 21.355C5.03818 17.2397 7.66278 13.633 11.6856 12.8238C12.4716 12.662 13.654 12.662 14.2639 12.8007V17.1472C14.0762 17.1011 13.9005 17.0547 13.7156 17.0317C12.1434 16.7541 10.6207 17.5402 9.99648 18.9736C9.37229 20.4072 9.79008 22.0717 11.0616 23.0429C12.1251 23.875 13.3051 23.9906 14.5073 23.4357C15.7095 22.904 16.3557 21.9331 16.4942 20.6152C16.5174 20.4304 16.5162 20.2222 16.5162 20.0141V4.40826C16.5162 3.96899 16.5195 3.98827 16.9589 3.98827H20.4037C20.6581 3.98827 20.7506 4.02477 20.7736 4.32549C20.9586 7.00734 22.9947 9.29136 25.6072 9.63819C25.8846 9.68442 26.1819 9.7027 26.5104 9.72579L26.5102 13.9566Z",fill:"white"})});case"youtube":return(0,e.jsx)("svg",{xmlns:"http://www.w3.org/2000/svg",width:"33",height:"24",viewBox:"0 0 33 24",fill:"none",children:(0,e.jsx)("path",{d:"M28.5006 0.731224L26.3106 0.506224C19.7579 -0.168741 13.1533 -0.168741 6.60059 0.506224L4.50059 0.731224C3.24922 0.872661 2.09527 1.47475 1.26344 2.42027C0.431611 3.36578 -0.0185587 4.58703 0.000586503 5.84622V18.1462C-0.0185587 19.4054 0.431611 20.6267 1.26344 21.5722C2.09527 22.5177 3.24922 23.1198 4.50059 23.2612L6.69059 23.4862C13.2433 24.1612 19.8479 24.1612 26.4006 23.4862L28.5006 23.2612C29.752 23.1198 30.9059 22.5177 31.7377 21.5722C32.5696 20.6267 33.0197 19.4054 33.0006 18.1462V5.84622C33.0197 4.58703 32.5696 3.36578 31.7377 2.42027C30.9059 1.47475 29.752 0.872661 28.5006 0.731224ZM21.0006 12.9262L15.1656 16.8262C14.9985 16.918 14.8107 16.9658 14.6201 16.9651C14.4294 16.9644 14.242 16.9152 14.0756 16.8222C13.9091 16.7293 13.769 16.5955 13.6684 16.4335C13.5679 16.2715 13.5101 16.0867 13.5006 15.8962V8.09622C13.501 7.89217 13.5568 7.69205 13.6622 7.51731C13.7676 7.34256 13.9185 7.19977 14.0988 7.10422C14.2791 7.00868 14.482 6.96397 14.6858 6.97489C14.8896 6.98581 15.0865 7.05195 15.2556 7.16622L21.0906 11.0662C21.2453 11.1671 21.3725 11.3049 21.4605 11.4673C21.5485 11.6297 21.5946 11.8115 21.5946 11.9962C21.5946 12.1809 21.5485 12.3627 21.4605 12.5251C21.3725 12.6875 21.2453 12.8254 21.0906 12.9262H21.0006Z",fill:"white"})});default:return null}},c=({isOpen:a,onClose:t,title:l="Share to Get More Chances",subtitle:C="Share to Play Again Keep Trying! You Could Still Win Big!",note:i="Note: Maximum of 3 times per participant.",platforms:m=k,onShareSuccess:d,className:h})=>{const w=o=>{o.disabled||(o.onClick?.(),o.url&&window.open(o.url,"_blank","noopener,noreferrer"),d?.(o.platform))};return(0,e.jsx)(p.BaseModal,{isOpen:a,onClose:t,maxWidth:"max-w-[326px] laptop:max-w-[420px]",background:"bg-white",className:h,ariaLabelledBy:"share-modal-title",children:(0,e.jsxs)("div",{className:"laptop:px-8 laptop:pb-8 p-6 pt-0 text-center",children:[(0,e.jsx)(s.Heading,{size:2,id:"share-modal-title",className:"text-center tracking-[-0.32px] text-[#1D1D1F]",children:l}),C&&(0,e.jsx)("p",{className:"laptop:text-[16px] text-center text-[14px] font-[700] text-[#1D1D1F]",children:C}),(0,e.jsx)("div",{className:"mx-auto mt-8 flex max-w-[300px] flex-wrap items-center justify-center gap-4",children:m.map(o=>(0,e.jsx)("button",{onClick:()=>w(o),disabled:o.disabled,className:(0,r.cn)("flex aspect-square size-[64px] items-center justify-center rounded-full bg-black text-white transition-all","hover:scale-110 hover:shadow-lg","focus:ring-brand-0 focus:outline-none focus:ring-2 focus:ring-offset-2","disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:scale-100"),"aria-label":`Share on ${o.name}`,children:(0,e.jsx)(H,{platform:o.platform})},o.platform))}),i&&(0,e.jsx)("p",{className:(0,r.cn)("mt-8 text-[16px] font-[700] text-[#767880]","laptop:text-[16px]"),children:i})]})})};var M=c;
2
- //# sourceMappingURL=ShareModal.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/ShareModal.tsx"],
4
- "sourcesContent": ["/**\n * ShareModal - \u5206\u4EAB\u5F39\u7A97\u7EC4\u4EF6\n *\n * \u7528\u4E8E\u5F15\u5BFC\u7528\u6237\u5206\u4EAB\u5230\u793E\u4EA4\u5A92\u4F53\u4EE5\u83B7\u53D6\u989D\u5916\u62BD\u5956\u673A\u4F1A\n *\n * @module ShareModal\n * @date 2026-01-07\n */\n\n'use client'\n\nimport React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport { Heading } from '../../components/index.js'\nimport { BaseModal } from './BaseModal.js'\n\nexport type SocialPlatform = 'facebook' | 'twitter' | 'instagram' | 'linkedin' | 'tiktok' | 'youtube'\n\nexport interface SharePlatformConfig {\n /**\n * \u5E73\u53F0\u7C7B\u578B\n */\n platform: SocialPlatform\n\n /**\n * \u5E73\u53F0\u540D\u79F0\n */\n name: string\n\n /**\n * \u5206\u4EAB URL\uFF08\u53EF\u9009\uFF0C\u5982\u679C\u63D0\u4F9B\u5219\u76F4\u63A5\u8DF3\u8F6C\uFF09\n */\n url?: string\n\n /**\n * \u70B9\u51FB\u56DE\u8C03\uFF08\u5982\u679C\u63D0\u4F9B url \u5219\u6B64\u56DE\u8C03\u4F1A\u5728\u8DF3\u8F6C\u524D\u6267\u884C\uFF09\n */\n onClick?: () => void\n\n /**\n * \u662F\u5426\u7981\u7528\n */\n disabled?: boolean\n}\n\nexport interface ShareModalProps {\n /**\n * \u662F\u5426\u663E\u793A\u5F39\u7A97\n */\n isOpen: boolean\n\n /**\n * \u5173\u95ED\u5F39\u7A97\u56DE\u8C03\n */\n onClose: () => void\n\n /**\n * \u5F39\u7A97\u6807\u9898\n * @default \"Share to Get More Chances\"\n */\n title?: string\n\n /**\n * \u526F\u6807\u9898/\u5F15\u5BFC\u6587\u6848\n * @default \"Share to Play Again Keep Trying! You Could Still Win Big!\"\n */\n subtitle?: string\n\n /**\n * \u5E95\u90E8\u63D0\u793A\u6587\u6848\n * @default \"Note: Maximum of 3 times per participant.\"\n */\n note?: string\n\n /**\n * \u793E\u4EA4\u5E73\u53F0\u914D\u7F6E\u5217\u8868\n */\n platforms?: SharePlatformConfig[]\n\n /**\n * \u5206\u4EAB\u6210\u529F\u56DE\u8C03\n */\n onShareSuccess?: (platform: SocialPlatform) => void\n\n /**\n * \u81EA\u5B9A\u4E49\u7C7B\u540D\n */\n className?: string\n}\n\n// \u9ED8\u8BA4\u793E\u4EA4\u5E73\u53F0\u914D\u7F6E\nconst DEFAULT_PLATFORMS: SharePlatformConfig[] = [\n { platform: 'facebook', name: 'Facebook' },\n { platform: 'twitter', name: 'X (Twitter)' },\n { platform: 'instagram', name: 'Instagram' },\n { platform: 'linkedin', name: 'LinkedIn' },\n { platform: 'tiktok', name: 'TikTok' },\n { platform: 'youtube', name: 'YouTube' },\n]\n\n// \u793E\u4EA4\u5E73\u53F0\u56FE\u6807\u7EC4\u4EF6\nconst SocialIcon: React.FC<{ platform: SocialPlatform; className?: string }> = ({ platform, className }) => {\n const iconClass = cn('size-full', className)\n\n switch (platform) {\n case 'facebook':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"36\" height=\"36\" viewBox=\"0 0 36 36\" fill=\"none\">\n <path\n d=\"M36 18C36 8.05887 27.9411 0 18 0C8.05887 0 0 8.05887 0 18C0 26.9842 6.5823 34.431 15.1875 35.7813V23.2031H10.6172V18H15.1875V14.0344C15.1875 9.52313 17.8748 7.03125 21.9864 7.03125C23.9551 7.03125 26.0156 7.38281 26.0156 7.38281V11.8125H23.7459C21.51 11.8125 20.8125 13.2001 20.8125 14.625V18H25.8047L25.0066 23.2031H20.8125V35.7813C29.4177 34.431 36 26.9842 36 18Z\"\n fill=\"white\"\n />\n </svg>\n )\n case 'twitter':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"33\" height=\"30\" viewBox=\"0 0 33 30\" fill=\"none\">\n <path\n d=\"M25.485 0H30.447L19.6065 12.39L32.3595 29.25H22.374L14.553 19.0245L5.604 29.25H0.639L12.234 15.9975L0 0H10.239L17.3085 9.3465L25.485 0ZM23.7435 26.28H26.493L8.745 2.814H5.7945L23.7435 26.28Z\"\n fill=\"white\"\n />\n </svg>\n )\n case 'instagram':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"33\" viewBox=\"0 0 32 33\" fill=\"none\">\n <path\n d=\"M16.0088 0C20.3547 0 20.8991 0.0183266 22.6123 0.0996094C24.3132 0.174649 25.4768 0.449798 26.4961 0.84375C27.5467 1.25023 28.4411 1.80146 29.3291 2.68945C30.2231 3.5773 30.7672 4.47129 31.1611 5.53418C31.5551 6.54724 31.8302 7.71702 31.9053 9.41797C31.9803 11.125 31.999 11.6696 31.999 16.0156C31.999 20.3611 31.9803 20.9054 31.9053 22.6123C31.8302 24.3133 31.5551 25.4768 31.1611 26.4961C30.7547 27.5467 30.2044 28.4411 29.3164 29.3291C28.4284 30.217 27.5339 30.7674 26.4834 31.1738C25.4704 31.5678 24.3005 31.8429 22.5996 31.918C20.8928 31.993 20.3484 32.0117 16.0029 32.0117C11.6568 32.0117 11.1124 31.993 9.40527 31.918C7.70433 31.8429 6.5408 31.5678 5.52148 31.1738C4.47114 30.7674 3.57727 30.2168 2.68945 29.3291C1.79531 28.4412 1.2506 27.5469 0.837891 26.4902C0.443929 25.4772 0.168798 24.3073 0.09375 22.6064C0.0187082 20.8992 0 20.355 0 16.0088C3.73243e-07 11.6628 0.0187102 11.1187 0.09375 9.40527C0.168792 7.70433 0.443921 6.5408 0.837891 5.52148C1.25061 4.47102 1.79528 3.57737 2.68945 2.68945C3.57745 1.7952 4.47148 1.25062 5.52832 0.837891C6.54126 0.443997 7.71051 0.168809 9.41113 0.09375C11.1183 0.0187089 11.6627 3.7324e-07 16.0088 0ZM16.0088 2.88281C11.7317 2.88281 11.225 2.90153 9.54297 2.97656C7.98585 3.04535 7.13508 3.30847 6.57227 3.52734C5.82828 3.81497 5.29709 4.15899 4.73438 4.72168C4.17785 5.2782 3.82671 5.81549 3.53906 6.55957C3.32019 7.12238 3.05805 7.96693 2.98926 9.53027C2.91422 11.2124 2.89551 11.719 2.89551 15.9961C2.89551 20.2672 2.91422 20.7745 2.98926 22.4629C3.05806 24.0194 3.32024 24.8698 3.53906 25.4326C3.82672 26.1768 4.17156 26.7087 4.73438 27.2715C5.29081 27.8279 5.82829 28.1782 6.57227 28.4658C7.13508 28.6847 7.9796 28.9478 9.54297 29.0166C11.225 29.0916 11.7317 29.1104 16.0088 29.1104C20.2796 29.1104 20.7865 29.0916 22.4746 29.0166C24.0316 28.9478 24.8825 28.6847 25.4453 28.4658C26.1895 28.1782 26.7214 27.8343 27.2842 27.2715C27.8407 26.715 28.1909 26.1767 28.4785 25.4326C28.6973 24.8699 28.9595 24.0257 29.0283 22.4629C29.1034 20.7807 29.1221 20.2735 29.1221 15.9961C29.1221 11.7253 29.1034 11.2187 29.0283 9.53027C28.9595 7.97319 28.6974 7.12238 28.4785 6.55957C28.1909 5.81565 27.8468 5.28433 27.2842 4.72168C26.7276 4.16513 26.1895 3.815 25.4453 3.52734C24.8825 3.30847 24.038 3.04535 22.4746 2.97656C20.7928 2.90154 20.2858 2.88281 16.0088 2.88281ZM16.0127 7.78711C20.5526 7.78727 24.2354 11.4708 24.2354 16.0107C24.2352 20.5505 20.5525 24.2332 16.0127 24.2334C11.4728 24.2334 7.78923 20.5506 7.78906 16.0107C7.78906 11.4707 11.4727 7.78711 16.0127 7.78711ZM16.0127 10.6758C13.0673 10.6758 10.6777 13.0654 10.6777 16.0107C10.6779 18.956 13.0674 21.3447 16.0127 21.3447C18.9578 21.3446 21.3465 18.9559 21.3467 16.0107C21.3467 13.0655 18.9579 10.6759 16.0127 10.6758ZM24.5566 5.54102C25.6134 5.54107 26.4766 6.40413 26.4766 7.46094C26.4765 8.52395 25.6134 9.3808 24.5566 9.38086C23.4936 9.38086 22.6368 8.51773 22.6367 7.46094C22.6367 6.39784 23.4998 5.54102 24.5566 5.54102Z\"\n fill=\"white\"\n />\n </svg>\n )\n case 'linkedin':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"29\" height=\"29\" viewBox=\"0 0 29 29\" fill=\"none\">\n <path\n d=\"M26.6846 0H2.12757C0.951214 0 0 0.9287 0 2.07691V26.7353C0 27.8835 0.951214 28.8178 2.12757 28.8178H26.6846C27.861 28.8178 28.8178 27.8835 28.8178 26.7409V2.07691C28.8178 0.9287 27.861 0 26.6846 0ZM8.54967 24.5571H4.27202V10.8011H8.54967V24.5571ZM6.41084 8.92677C5.03749 8.92677 3.92868 7.81796 3.92868 6.45024C3.92868 5.08252 5.03749 3.97371 6.41084 3.97371C7.77856 3.97371 8.88737 5.08252 8.88737 6.45024C8.88737 7.81233 7.77856 8.92677 6.41084 8.92677ZM24.5571 24.5571H20.2851V17.8704C20.2851 16.2776 20.2569 14.2232 18.0618 14.2232C15.8386 14.2232 15.5008 15.9624 15.5008 17.7579V24.5571H11.2345V10.8011H15.332V12.681H15.3883C15.9567 11.6003 17.3526 10.4577 19.4295 10.4577C23.7578 10.4577 24.5571 13.3057 24.5571 17.0093V24.5571Z\"\n fill=\"white\"\n />\n </svg>\n )\n case 'tiktok':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"32\" height=\"32\" viewBox=\"0 0 32 32\" fill=\"none\">\n <path\n d=\"M32 4.51848C32 2.02299 29.977 0 27.4816 0H4.51848C2.02299 0 0 2.02299 0 4.51848V27.4816C0 29.9771 2.02299 32 4.51848 32H27.4816C29.977 32 32 29.9771 32 27.4816V4.51848ZM26.5102 13.9566C24.4458 13.9797 22.5219 13.3555 20.8328 12.1996V20.3146C20.8328 23.9211 18.364 27.0194 14.873 27.8285C10.1103 28.915 6.07845 25.4702 5.56992 21.355C5.03818 17.2397 7.66278 13.633 11.6856 12.8238C12.4716 12.662 13.654 12.662 14.2639 12.8007V17.1472C14.0762 17.1011 13.9005 17.0547 13.7156 17.0317C12.1434 16.7541 10.6207 17.5402 9.99648 18.9736C9.37229 20.4072 9.79008 22.0717 11.0616 23.0429C12.1251 23.875 13.3051 23.9906 14.5073 23.4357C15.7095 22.904 16.3557 21.9331 16.4942 20.6152C16.5174 20.4304 16.5162 20.2222 16.5162 20.0141V4.40826C16.5162 3.96899 16.5195 3.98827 16.9589 3.98827H20.4037C20.6581 3.98827 20.7506 4.02477 20.7736 4.32549C20.9586 7.00734 22.9947 9.29136 25.6072 9.63819C25.8846 9.68442 26.1819 9.7027 26.5104 9.72579L26.5102 13.9566Z\"\n fill=\"white\"\n />\n </svg>\n )\n case 'youtube':\n return (\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"33\" height=\"24\" viewBox=\"0 0 33 24\" fill=\"none\">\n <path\n d=\"M28.5006 0.731224L26.3106 0.506224C19.7579 -0.168741 13.1533 -0.168741 6.60059 0.506224L4.50059 0.731224C3.24922 0.872661 2.09527 1.47475 1.26344 2.42027C0.431611 3.36578 -0.0185587 4.58703 0.000586503 5.84622V18.1462C-0.0185587 19.4054 0.431611 20.6267 1.26344 21.5722C2.09527 22.5177 3.24922 23.1198 4.50059 23.2612L6.69059 23.4862C13.2433 24.1612 19.8479 24.1612 26.4006 23.4862L28.5006 23.2612C29.752 23.1198 30.9059 22.5177 31.7377 21.5722C32.5696 20.6267 33.0197 19.4054 33.0006 18.1462V5.84622C33.0197 4.58703 32.5696 3.36578 31.7377 2.42027C30.9059 1.47475 29.752 0.872661 28.5006 0.731224ZM21.0006 12.9262L15.1656 16.8262C14.9985 16.918 14.8107 16.9658 14.6201 16.9651C14.4294 16.9644 14.242 16.9152 14.0756 16.8222C13.9091 16.7293 13.769 16.5955 13.6684 16.4335C13.5679 16.2715 13.5101 16.0867 13.5006 15.8962V8.09622C13.501 7.89217 13.5568 7.69205 13.6622 7.51731C13.7676 7.34256 13.9185 7.19977 14.0988 7.10422C14.2791 7.00868 14.482 6.96397 14.6858 6.97489C14.8896 6.98581 15.0865 7.05195 15.2556 7.16622L21.0906 11.0662C21.2453 11.1671 21.3725 11.3049 21.4605 11.4673C21.5485 11.6297 21.5946 11.8115 21.5946 11.9962C21.5946 12.1809 21.5485 12.3627 21.4605 12.5251C21.3725 12.6875 21.2453 12.8254 21.0906 12.9262H21.0006Z\"\n fill=\"white\"\n />\n </svg>\n )\n default:\n return null\n }\n}\n\n/**\n * ShareModal \u5206\u4EAB\u5F39\u7A97\u7EC4\u4EF6\n */\nexport const ShareModal: React.FC<ShareModalProps> = ({\n isOpen,\n onClose,\n title = 'Share to Get More Chances',\n subtitle = 'Share to Play Again Keep Trying! You Could Still Win Big!',\n note = 'Note: Maximum of 3 times per participant.',\n platforms = DEFAULT_PLATFORMS,\n onShareSuccess,\n className,\n}) => {\n const handlePlatformClick = (platformConfig: SharePlatformConfig) => {\n if (platformConfig.disabled) return\n\n // \u6267\u884C\u56DE\u8C03\n platformConfig.onClick?.()\n\n // \u5982\u679C\u63D0\u4F9B\u4E86 URL\uFF0C\u5219\u6253\u5F00\u65B0\u7A97\u53E3\n if (platformConfig.url) {\n window.open(platformConfig.url, '_blank', 'noopener,noreferrer')\n }\n\n // \u89E6\u53D1\u6210\u529F\u56DE\u8C03\n onShareSuccess?.(platformConfig.platform)\n }\n\n return (\n <BaseModal\n isOpen={isOpen}\n onClose={onClose}\n maxWidth=\"max-w-[326px] laptop:max-w-[420px]\"\n background=\"bg-white\"\n className={className}\n ariaLabelledBy=\"share-modal-title\"\n >\n <div className=\"laptop:px-8 laptop:pb-8 p-6 pt-0 text-center\">\n {/* \u6807\u9898 */}\n <Heading size={2} id=\"share-modal-title\" className=\"text-center tracking-[-0.32px] text-[#1D1D1F]\">\n {title}\n </Heading>\n\n {/* \u526F\u6807\u9898 */}\n {subtitle && <p className=\"laptop:text-[16px] text-center text-[14px] font-[700] text-[#1D1D1F]\">{subtitle}</p>}\n\n {/* \u793E\u4EA4\u5E73\u53F0\u56FE\u6807\u7F51\u683C */}\n <div className=\"mx-auto mt-8 flex max-w-[300px] flex-wrap items-center justify-center gap-4\">\n {platforms.map(platformConfig => (\n <button\n key={platformConfig.platform}\n onClick={() => handlePlatformClick(platformConfig)}\n disabled={platformConfig.disabled}\n className={cn(\n 'flex aspect-square size-[64px] items-center justify-center rounded-full bg-black text-white transition-all',\n 'hover:scale-110 hover:shadow-lg',\n 'focus:ring-brand-0 focus:outline-none focus:ring-2 focus:ring-offset-2',\n 'disabled:cursor-not-allowed disabled:opacity-40 disabled:hover:scale-100'\n )}\n aria-label={`Share on ${platformConfig.name}`}\n >\n <SocialIcon platform={platformConfig.platform} />\n </button>\n ))}\n </div>\n\n {/* \u5E95\u90E8\u63D0\u793A */}\n {note && <p className={cn('mt-8 text-[16px] font-[700] text-[#767880]', 'laptop:text-[16px]')}>{note}</p>}\n </div>\n </BaseModal>\n )\n}\n\nexport default ShareModal\n"],
5
- "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,gBAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GA4GU,IAAAK,EAAA,6BAjGVC,EAAkB,iBAClBC,EAAmB,kCACnBC,EAAwB,qCACxBC,EAA0B,0BA6E1B,MAAMC,EAA2C,CAC/C,CAAE,SAAU,WAAY,KAAM,UAAW,EACzC,CAAE,SAAU,UAAW,KAAM,aAAc,EAC3C,CAAE,SAAU,YAAa,KAAM,WAAY,EAC3C,CAAE,SAAU,WAAY,KAAM,UAAW,EACzC,CAAE,SAAU,SAAU,KAAM,QAAS,EACrC,CAAE,SAAU,UAAW,KAAM,SAAU,CACzC,EAGMC,EAAyE,CAAC,CAAE,SAAAC,EAAU,UAAAC,CAAU,IAAM,CAC1G,MAAMC,KAAY,MAAG,YAAaD,CAAS,EAE3C,OAAQD,EAAU,CAChB,IAAK,WACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,gXACF,KAAK,QACP,EACF,EAEJ,IAAK,UACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,iMACF,KAAK,QACP,EACF,EAEJ,IAAK,YACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,43FACF,KAAK,QACP,EACF,EAEJ,IAAK,WACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,iuBACF,KAAK,QACP,EACF,EAEJ,IAAK,SACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,i7BACF,KAAK,QACP,EACF,EAEJ,IAAK,UACH,SACE,OAAC,OAAI,MAAM,6BAA6B,MAAM,KAAK,OAAO,KAAK,QAAQ,YAAY,KAAK,OACtF,mBAAC,QACC,EAAE,qtCACF,KAAK,QACP,EACF,EAEJ,QACE,OAAO,IACX,CACF,EAKaV,EAAwC,CAAC,CACpD,OAAAa,EACA,QAAAC,EACA,MAAAC,EAAQ,4BACR,SAAAC,EAAW,4DACX,KAAAC,EAAO,4CACP,UAAAC,EAAYV,EACZ,eAAAW,EACA,UAAAR,CACF,IAAM,CACJ,MAAMS,EAAuBC,GAAwC,CAC/DA,EAAe,WAGnBA,EAAe,UAAU,EAGrBA,EAAe,KACjB,OAAO,KAAKA,EAAe,IAAK,SAAU,qBAAqB,EAIjEF,IAAiBE,EAAe,QAAQ,EAC1C,EAEA,SACE,OAAC,aACC,OAAQR,EACR,QAASC,EACT,SAAS,qCACT,WAAW,WACX,UAAWH,EACX,eAAe,oBAEf,oBAAC,OAAI,UAAU,+CAEb,oBAAC,WAAQ,KAAM,EAAG,GAAG,oBAAoB,UAAU,gDAChD,SAAAI,EACH,EAGCC,MAAY,OAAC,KAAE,UAAU,uEAAwE,SAAAA,EAAS,KAG3G,OAAC,OAAI,UAAU,8EACZ,SAAAE,EAAU,IAAIG,MACb,OAAC,UAEC,QAAS,IAAMD,EAAoBC,CAAc,EACjD,SAAUA,EAAe,SACzB,aAAW,MACT,6GACA,kCACA,yEACA,0EACF,EACA,aAAY,YAAYA,EAAe,IAAI,GAE3C,mBAACZ,EAAA,CAAW,SAAUY,EAAe,SAAU,GAX1CA,EAAe,QAYtB,CACD,EACH,EAGCJ,MAAQ,OAAC,KAAE,aAAW,MAAG,6CAA8C,oBAAoB,EAAI,SAAAA,EAAK,GACvG,EACF,CAEJ,EAEA,IAAOhB,EAAQD",
6
- "names": ["ShareModal_exports", "__export", "ShareModal", "ShareModal_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_helpers", "import_components", "import_BaseModal", "DEFAULT_PLATFORMS", "SocialIcon", "platform", "className", "iconClass", "isOpen", "onClose", "title", "subtitle", "note", "platforms", "onShareSuccess", "handlePlatformClick", "platformConfig"]
7
- }
@@ -1,27 +0,0 @@
1
- /**
2
- * Wheel - 转盘核心组件
3
- *
4
- * 基于 Figma 设计稿实现的大转盘抽奖组件核心部分。
5
- * 包含 8 个奖品区块、GO 按钮和装饰元素,支持响应式布局。
6
- *
7
- * Figma 设计稿: https://www.figma.com/design/DhWsPamqTM76eMHS0aIQqw
8
- * 设计节点: 498:10533
9
- *
10
- * @module Wheel
11
- * @date 2025-12-17
12
- */
13
- import React from 'react';
14
- import type { WheelProps } from './types.js';
15
- /**
16
- * Wheel 转盘组件
17
- *
18
- * 根据 Figma 设计稿精确还原的转盘 UI,包含:
19
- * - 圆形转盘容器,带边框和背景
20
- * - 8 个放射状排列的奖品区块
21
- * - 中心 GO 按钮,带渐变和阴影效果
22
- * - 顶部指针装饰元素
23
- * - 响应式尺寸适配 5 个断点
24
- * - tablet/mobile 使用 CSS clip-path 仅显示上半部分
25
- */
26
- export declare const Wheel: React.FC<WheelProps>;
27
- export default Wheel;
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var v=Object.create;var r=Object.defineProperty;var P=Object.getOwnPropertyDescriptor;var E=Object.getOwnPropertyNames;var h=Object.getPrototypeOf,N=Object.prototype.hasOwnProperty;var y=(e,t)=>{for(var a in t)r(e,a,{get:t[a],enumerable:!0})},d=(e,t,a,p)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of E(t))!N.call(e,i)&&i!==a&&r(e,i,{get:()=>t[i],enumerable:!(p=P(t,i))||p.enumerable});return e};var I=(e,t,a)=>(a=e!=null?v(h(e)):{},d(t||!e||!e.__esModule?r(a,"default",{value:e,enumerable:!0}):a,e)),L=e=>d(r({},"__esModule",{value:!0}),e);var W={};y(W,{Wheel:()=>x,default:()=>R});module.exports=L(W);var l=require("react/jsx-runtime"),$=require("react"),o=require("../../helpers/index.js"),s=require("./types.js"),n=I(require("../../components/picture.js"));const x=({prizes:e,rotation:t,isSpinning:a,isFinished:p=!1,isButtonDisabled:i,onGoClick:m,wheelBackgroundImage:u,pointerImage:f,userData:g,className:b})=>{if(!e||e.length===0)return null;const _=e.length===6?s.DEFAULT_WHEEL_BG_6_PRIZES:s.DEFAULT_WHEEL_BG_8_PRIZES,z=u||_,k=f||(g?.isLoggedIn?s.DEFAULT_POINTER_IMAGE:s.DEFAULT_POINTER_DISABLE_IMAGE);return(0,l.jsx)("div",{className:(0,o.cn)("wheel-wrapper","mx-auto flex items-center justify-center","aspect-w-[1] aspect-h-[1]","l-tablet:size-[340px]",b),children:(0,l.jsxs)("div",{className:(0,o.cn)("wheel-container","mx-auto","size-[340px]","lg-desktop:size-[85%] desktop:size-[85%] laptop:size-[90%]"),children:[(0,l.jsx)("div",{className:(0,o.cn)("wheel-disc","absolute inset-0","rounded-full","bg-cover bg-center bg-no-repeat","shadow-[0px_2px_8px_rgba(0,0,0,0.12)]",{"animate-[spin_0.5s_linear_infinite]":a&&!p,"animate-[spin_120s_linear_infinite]":!a&&!p,"transition-none":p}),style:{transform:p?`rotate(${t}deg)`:void 0,backgroundImage:`url('${z}')`},role:"img","aria-label":"\u5927\u8F6C\u76D8",children:e.map((c,w)=>(0,l.jsx)(A,{prize:c,index:w,totalPrizes:e.length},c.prizeKey))}),(0,l.jsxs)("div",{className:(0,o.cn)("wheel-pointer-wrapper","absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2","z-10","h-auto w-[72px]","laptop:w-[86px]","desktop:w-[115px]","lg-desktop:w-[144px]"),children:[(0,l.jsx)(n.default,{source:k,alt:"\u8F6C\u76D8\u6307\u9488",className:"size-full object-contain"}),(0,l.jsx)("button",{onClick:m,disabled:i,className:(0,o.cn)("absolute","bottom-[8%] left-1/2 -translate-x-1/2","size-[72px]","laptop:size-[86px]","desktop:size-[115px]","lg-desktop:size-[144px]","rounded-full","cursor-pointer","transition-transform hover:scale-105 active:scale-95","disabled:cursor-not-allowed disabled:opacity-50"),"aria-label":"\u5F00\u59CB\u62BD\u5956","aria-live":"polite"})]})]})})},A=({prize:e,index:t,totalPrizes:a})=>{const p=360/a*t;return(0,l.jsx)("div",{className:(0,o.cn)("prize-slice","absolute left-0 top-0 size-full","flex items-start justify-center","origin-center"),style:{transform:`rotate(${p}deg)`},children:(0,l.jsxs)("div",{className:(0,o.cn)("prize-content","flex flex-col items-center gap-[6px]","pt-[44px]","laptop:pt-[62px]","desktop:pt-[82px]","lg-desktop:pt-[104px]"),children:[(0,l.jsx)("p",{className:(0,o.cn)("prize-name","text-[12px]","laptop:text-[14px]","laptop-md:text-[16px]","desktop:text-[16px]","lg-desktop:text-[18px]","line-clamp-2 text-center font-semibold leading-[1.2] text-[#080a0f]","w-[80px]","laptop:w-[60px]","laptop-md:w-[100px]","desktop:w-[100px]","lg-desktop:w-[140px]"),children:e.name}),(0,l.jsx)(n.default,{source:e.image.url,alt:e.image.alt||`\u5956\u54C1:${e.name}${e.rank?`,\u6392\u540D ${e.rank}`:""}`,className:(0,o.cn)("prize-image","size-[45px]","laptop-md:size-[64px]","laptop:size-[64px]","desktop:size-[86px]","lg-desktop:size-[108px]","rounded-lg object-cover")})]})})};var R=x;
2
- //# sourceMappingURL=Wheel.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/Wheel.tsx"],
4
- "sourcesContent": ["/**\n * Wheel - \u8F6C\u76D8\u6838\u5FC3\u7EC4\u4EF6\n *\n * \u57FA\u4E8E Figma \u8BBE\u8BA1\u7A3F\u5B9E\u73B0\u7684\u5927\u8F6C\u76D8\u62BD\u5956\u7EC4\u4EF6\u6838\u5FC3\u90E8\u5206\u3002\n * \u5305\u542B 8 \u4E2A\u5956\u54C1\u533A\u5757\u3001GO \u6309\u94AE\u548C\u88C5\u9970\u5143\u7D20,\u652F\u6301\u54CD\u5E94\u5F0F\u5E03\u5C40\u3002\n *\n * Figma \u8BBE\u8BA1\u7A3F: https://www.figma.com/design/DhWsPamqTM76eMHS0aIQqw\n * \u8BBE\u8BA1\u8282\u70B9: 498:10533\n *\n * @module Wheel\n * @date 2025-12-17\n */\n\n'use client'\n\nimport React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport type { Prize, WheelProps } from './types.js'\nimport {\n DEFAULT_POINTER_IMAGE,\n DEFAULT_POINTER_DISABLE_IMAGE,\n DEFAULT_WHEEL_BG_6_PRIZES,\n DEFAULT_WHEEL_BG_8_PRIZES,\n} from './types.js'\nimport Picture from '../../components/picture.js'\n\n// ============================================================================\n// Wheel \u7EC4\u4EF6\n// ============================================================================\n\n/**\n * Wheel \u8F6C\u76D8\u7EC4\u4EF6\n *\n * \u6839\u636E Figma \u8BBE\u8BA1\u7A3F\u7CBE\u786E\u8FD8\u539F\u7684\u8F6C\u76D8 UI,\u5305\u542B:\n * - \u5706\u5F62\u8F6C\u76D8\u5BB9\u5668,\u5E26\u8FB9\u6846\u548C\u80CC\u666F\n * - 8 \u4E2A\u653E\u5C04\u72B6\u6392\u5217\u7684\u5956\u54C1\u533A\u5757\n * - \u4E2D\u5FC3 GO \u6309\u94AE,\u5E26\u6E10\u53D8\u548C\u9634\u5F71\u6548\u679C\n * - \u9876\u90E8\u6307\u9488\u88C5\u9970\u5143\u7D20\n * - \u54CD\u5E94\u5F0F\u5C3A\u5BF8\u9002\u914D 5 \u4E2A\u65AD\u70B9\n * - tablet/mobile \u4F7F\u7528 CSS clip-path \u4EC5\u663E\u793A\u4E0A\u534A\u90E8\u5206\n */\nexport const Wheel: React.FC<WheelProps> = ({\n prizes,\n rotation,\n isSpinning,\n isFinished = false,\n isButtonDisabled,\n onGoClick,\n wheelBackgroundImage,\n pointerImage,\n userData,\n className,\n}) => {\n // \u9632\u5FA1\u6027\u7F16\u7A0B:\u5904\u7406 undefined \u6216\u7A7A\u6570\u7EC4\n if (!prizes || prizes.length === 0) {\n return null\n }\n\n // \u6839\u636E\u5956\u54C1\u6570\u91CF\u81EA\u52A8\u9009\u62E9\u9ED8\u8BA4\u5E95\u56FE\n const defaultWheelBg = prizes.length === 6 ? DEFAULT_WHEEL_BG_6_PRIZES : DEFAULT_WHEEL_BG_8_PRIZES\n const finalWheelBg = wheelBackgroundImage || defaultWheelBg\n const finalPointerImage =\n pointerImage || (userData?.isLoggedIn ? DEFAULT_POINTER_IMAGE : DEFAULT_POINTER_DISABLE_IMAGE)\n\n return (\n <div\n className={cn(\n 'wheel-wrapper',\n 'mx-auto flex items-center justify-center',\n 'aspect-w-[1] aspect-h-[1]',\n 'l-tablet:size-[340px]',\n className\n )}\n >\n {/* ===================================================================\n \u8F6C\u76D8\u5BB9\u5668 - \u54CD\u5E94\u5F0F\u5C3A\u5BF8 + clip-path \u88C1\u526A\n =================================================================== */}\n <div\n className={cn(\n 'wheel-container',\n // \u54CD\u5E94\u5F0F\u5C3A\u5BF8(\u57FA\u4E8E Figma \u8BBE\u8BA1\u7A3F,\n 'mx-auto',\n 'size-[340px]', // mobile/tablet (default, <768px)\n 'lg-desktop:size-[85%] desktop:size-[85%] laptop:size-[90%]' // lg-desktop (\u22651921px) - Figma: 800\u00D7800\n )}\n >\n {/* =================================================================\n \u8F6C\u76D8\u4E3B\u4F53 - \u5E94\u7528\u65CB\u8F6C\u52A8\u753B + \u80CC\u666F\u56FE\u7247\n ================================================================= */}\n <div\n className={cn(\n 'wheel-disc',\n 'absolute inset-0',\n 'rounded-full',\n 'bg-cover bg-center bg-no-repeat',\n 'shadow-[0px_2px_8px_rgba(0,0,0,0.12)]',\n {\n // \u62BD\u5956\u4E2D: \u4F7F\u7528\u5FEB\u901F\u65CB\u8F6C\u52A8\u753B\uFF080.5\u79D21\u5708\uFF09\n 'animate-[spin_0.5s_linear_infinite]': isSpinning && !isFinished,\n // \u672A\u62BD\u5956\u72B6\u6001: \u5E94\u7528\u6162\u901F\u5FAA\u73AF\u65CB\u8F6C\uFF08120\u79D21\u5708\uFF09\n 'animate-[spin_120s_linear_infinite]': !isSpinning && !isFinished,\n // \u51CF\u901F\u52A8\u753B\u671F\u95F4: \u79FB\u9664 transition\uFF0C\u4F7F\u7528 requestAnimationFrame \u63A7\u5236\n 'transition-none': isFinished,\n }\n )}\n style={{\n transform: isFinished ? `rotate(${rotation}deg)` : undefined,\n backgroundImage: `url('${finalWheelBg}')`,\n }}\n role=\"img\"\n aria-label=\"\u5927\u8F6C\u76D8\"\n >\n {/* 8 \u4E2A\u5956\u54C1\u533A\u5757 */}\n {prizes.map((prize, index) => (\n <PrizeSlice key={prize.prizeKey} prize={prize} index={index} totalPrizes={prizes.length} />\n ))}\n </div>\n\n {/* =================================================================\n \u6307\u9488\u56FE\u7247 - \u5305\u542B GO \u6309\u94AE\u7684\u5B8C\u6574\u6307\u9488\u56FE\n \u56FE\u7247\u5DF2\u5305\u542B GO \u6309\u94AE\u6837\u5F0F\uFF0C\u4EE3\u7801\u53EA\u8D1F\u8D23\u5B9A\u4F4D\u548C\u4EA4\u4E92\n ================================================================= */}\n <div\n className={cn(\n 'wheel-pointer-wrapper',\n 'absolute left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2',\n 'z-10',\n // \u54CD\u5E94\u5F0F\u5C3A\u5BF8 - \u6839\u636E\u539F\u56FE 352\u00D7392 \u6BD4\u4F8B\n 'h-auto w-[72px]', // mobile/tablet (\u539F\u56FE\u7F29\u5C0F2\u500D)\n 'laptop:w-[86px]', // laptop\n 'desktop:w-[115px]', // desktop\n 'lg-desktop:w-[144px]' // lg-desktop (\u539F\u56FE\u5C3A\u5BF8)\n )}\n >\n <Picture source={finalPointerImage} alt=\"\u8F6C\u76D8\u6307\u9488\" className=\"size-full object-contain\" />\n\n {/* \u900F\u660E\u7684\u53EF\u70B9\u51FB\u6309\u94AE\u533A\u57DF - \u8986\u76D6\u5728\u6307\u9488\u56FE\u7684 GO \u6309\u94AE\u4F4D\u7F6E */}\n <button\n onClick={onGoClick}\n disabled={isButtonDisabled}\n className={cn(\n 'absolute',\n // GO \u6309\u94AE\u5728\u6307\u9488\u56FE\u4E2D\u7684\u4F4D\u7F6E (\u5927\u7EA6\u5728\u5E95\u90E8\u4E2D\u5FC3)\n 'bottom-[8%] left-1/2 -translate-x-1/2',\n // \u54CD\u5E94\u5F0F\u5C3A\u5BF8 - \u5339\u914D\u6307\u9488\u56FE\u4E2D\u7684 GO \u6309\u94AE\u5927\u5C0F\n 'size-[72px]', // mobile/tablet\n 'laptop:size-[86px]', // laptop\n 'desktop:size-[115px]', // desktop\n 'lg-desktop:size-[144px]', // lg-desktop\n 'rounded-full',\n 'cursor-pointer',\n 'transition-transform hover:scale-105 active:scale-95',\n 'disabled:cursor-not-allowed disabled:opacity-50'\n )}\n aria-label=\"\u5F00\u59CB\u62BD\u5956\"\n aria-live=\"polite\"\n />\n </div>\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// PrizeSlice \u5B50\u7EC4\u4EF6 - \u5355\u4E2A\u5956\u54C1\u533A\u5757\n// ============================================================================\n\ninterface PrizeSliceProps {\n prize: Prize\n index: number\n totalPrizes: number\n}\n\n/**\n * PrizeSlice - \u5355\u4E2A\u5956\u54C1\u533A\u5757\n *\n * \u653E\u5C04\u72B6\u6392\u5217\u5728\u8F6C\u76D8\u4E0A,\u5305\u542B\u5956\u54C1\u56FE\u7247\u548C\u540D\u79F0\u3002\n * \u4F7F\u7528 transform rotate \u5B9E\u73B0\u653E\u5C04\u72B6\u5E03\u5C40,\u5185\u5BB9\u53CD\u5411\u65CB\u8F6C\u4FDD\u6301\u53EF\u8BFB\u3002\n */\nconst PrizeSlice: React.FC<PrizeSliceProps> = ({ prize, index, totalPrizes }) => {\n // \u8BA1\u7B97\u5F53\u524D\u5956\u54C1\u7684\u65CB\u8F6C\u89D2\u5EA6\n const angle = (360 / totalPrizes) * index\n\n return (\n <div\n className={cn(\n 'prize-slice',\n 'absolute left-0 top-0 size-full',\n 'flex items-start justify-center',\n 'origin-center'\n )}\n style={{\n transform: `rotate(${angle}deg)`,\n }}\n >\n {/* \u5956\u54C1\u5185\u5BB9\u5BB9\u5668 - \u53CD\u5411\u65CB\u8F6C\u4EE5\u4FDD\u6301\u5185\u5BB9\u76F4\u7ACB */}\n <div\n className={cn(\n 'prize-content',\n 'flex flex-col items-center gap-[6px]',\n 'pt-[44px]', // \u8DDD\u79BB\u5706\u5FC3\u7684\u8DDD\u79BB mobile/tablet\n 'laptop:pt-[62px]', // laptop\n 'desktop:pt-[82px]', // desktop\n 'lg-desktop:pt-[104px]' // lg-desktop: \u66F4\u9760\u8FD1\u8FB9\u7F18\n )}\n >\n {/* \u5956\u54C1\u540D\u79F0 */}\n <p\n className={cn(\n 'prize-name',\n 'text-[12px]',\n 'laptop:text-[14px]',\n 'laptop-md:text-[16px]',\n 'desktop:text-[16px]',\n 'lg-desktop:text-[18px]',\n 'line-clamp-2 text-center font-semibold leading-[1.2] text-[#080a0f]',\n 'w-[80px]',\n 'laptop:w-[60px]',\n 'laptop-md:w-[100px]',\n 'desktop:w-[100px]',\n 'lg-desktop:w-[140px]'\n )}\n >\n {prize.name}\n </p>\n {/* \u5956\u54C1\u56FE\u7247 */}\n <Picture\n source={prize.image.url}\n alt={prize.image.alt || `\u5956\u54C1:${prize.name}${prize.rank ? `,\u6392\u540D ${prize.rank}` : ''}`}\n className={cn(\n 'prize-image',\n 'size-[45px]', // mobile/tablet\n 'laptop-md:size-[64px]', // laptop\n 'laptop:size-[64px]', // laptop\n 'desktop:size-[86px]', // desktop\n 'lg-desktop:size-[108px]', // lg-desktop\n 'rounded-lg object-cover'\n )}\n />\n </div>\n </div>\n )\n}\n\n// ============================================================================\n// \u9ED8\u8BA4\u5BFC\u51FA\n// ============================================================================\n\nexport default Wheel\n"],
5
- "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,WAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GAkHY,IAAAK,EAAA,6BAnGZC,EAAkB,iBAClBC,EAAmB,kCAEnBC,EAKO,sBACPC,EAAoB,0CAiBb,MAAMP,EAA8B,CAAC,CAC1C,OAAAQ,EACA,SAAAC,EACA,WAAAC,EACA,WAAAC,EAAa,GACb,iBAAAC,EACA,UAAAC,EACA,qBAAAC,EACA,aAAAC,EACA,SAAAC,EACA,UAAAC,CACF,IAAM,CAEJ,GAAI,CAACT,GAAUA,EAAO,SAAW,EAC/B,OAAO,KAIT,MAAMU,EAAiBV,EAAO,SAAW,EAAI,4BAA4B,4BACnEW,EAAeL,GAAwBI,EACvCE,EACJL,IAAiBC,GAAU,WAAa,wBAAwB,iCAElE,SACE,OAAC,OACC,aAAW,MACT,gBACA,2CACA,4BACA,wBACAC,CACF,EAKA,oBAAC,OACC,aAAW,MACT,kBAEA,UACA,eACA,4DACF,EAKA,oBAAC,OACC,aAAW,MACT,aACA,mBACA,eACA,kCACA,wCACA,CAEE,sCAAuCP,GAAc,CAACC,EAEtD,sCAAuC,CAACD,GAAc,CAACC,EAEvD,kBAAmBA,CACrB,CACF,EACA,MAAO,CACL,UAAWA,EAAa,UAAUF,CAAQ,OAAS,OACnD,gBAAiB,QAAQU,CAAY,IACvC,EACA,KAAK,MACL,aAAW,qBAGV,SAAAX,EAAO,IAAI,CAACa,EAAOC,OAClB,OAACC,EAAA,CAAgC,MAAOF,EAAO,MAAOC,EAAO,YAAad,EAAO,QAAhEa,EAAM,QAAkE,CAC1F,EACH,KAMA,QAAC,OACC,aAAW,MACT,wBACA,8DACA,OAEA,kBACA,kBACA,oBACA,sBACF,EAEA,oBAAC,EAAAG,QAAA,CAAQ,OAAQJ,EAAmB,IAAI,2BAAO,UAAU,2BAA2B,KAGpF,OAAC,UACC,QAASP,EACT,SAAUD,EACV,aAAW,MACT,WAEA,wCAEA,cACA,qBACA,uBACA,0BACA,eACA,iBACA,uDACA,iDACF,EACA,aAAW,2BACX,YAAU,SACZ,GACF,GACF,EACF,CAEJ,EAkBMW,EAAwC,CAAC,CAAE,MAAAF,EAAO,MAAAC,EAAO,YAAAG,CAAY,IAAM,CAE/E,MAAMC,EAAS,IAAMD,EAAeH,EAEpC,SACE,OAAC,OACC,aAAW,MACT,cACA,kCACA,kCACA,eACF,EACA,MAAO,CACL,UAAW,UAAUI,CAAK,MAC5B,EAGA,oBAAC,OACC,aAAW,MACT,gBACA,uCACA,YACA,mBACA,oBACA,uBACF,EAGA,oBAAC,KACC,aAAW,MACT,aACA,cACA,qBACA,wBACA,sBACA,yBACA,sEACA,WACA,kBACA,sBACA,oBACA,sBACF,EAEC,SAAAL,EAAM,KACT,KAEA,OAAC,EAAAG,QAAA,CACC,OAAQH,EAAM,MAAM,IACpB,IAAKA,EAAM,MAAM,KAAO,gBAAMA,EAAM,IAAI,GAAGA,EAAM,KAAO,iBAAOA,EAAM,IAAI,GAAK,EAAE,GAChF,aAAW,MACT,cACA,cACA,wBACA,qBACA,sBACA,0BACA,yBACF,EACF,GACF,EACF,CAEJ,EAMA,IAAOpB,EAAQD",
6
- "names": ["Wheel_exports", "__export", "Wheel", "Wheel_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_helpers", "import_types", "import_picture", "prizes", "rotation", "isSpinning", "isFinished", "isButtonDisabled", "onGoClick", "wheelBackgroundImage", "pointerImage", "userData", "className", "defaultWheelBg", "finalWheelBg", "finalPointerImage", "prize", "index", "PrizeSlice", "Picture", "totalPrizes", "angle"]
7
- }
@@ -1,25 +0,0 @@
1
- /**
2
- * WinnerModal - 中奖弹窗组件
3
- *
4
- * 基于截图设计实现的中奖结果展示弹窗。
5
- * 包含标题、奖品信息、优惠码和确认按钮。
6
- *
7
- * @module WinnerModal
8
- * @date 2025-12-24
9
- */
10
- import type { WinnerModalProps } from './types.js';
11
- /**
12
- * WinnerModal 中奖弹窗组件
13
- *
14
- * 根据设计稿实现的中奖结果展示弹窗,包含:
15
- * - 半透明遮罩层
16
- * - 白色圆角卡片容器
17
- * - 标题 "You Have Won"
18
- * - 奖品名称
19
- * - 优惠券图片(20% Off)
20
- * - 优惠码和过期时间
21
- * - 确认按钮
22
- * - 右上角关闭按钮
23
- */
24
- export declare const WinnerModal: ({ isOpen, prize, title, prizeTitle, prizeImage, prizeDescription, learnMoreUrl, learnMoreText, onClose, confirmText, onConfirm, className, couponCode, couponDiscount, couponUnit, expiresAt, codeText, copyText, copiedText, onCopyCode, }: WinnerModalProps) => import("react/jsx-runtime").JSX.Element | null;
25
- export default WinnerModal;
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var L=Object.create;var o=Object.defineProperty;var S=Object.getOwnPropertyDescriptor;var Y=Object.getOwnPropertyNames;var j=Object.getPrototypeOf,D=Object.prototype.hasOwnProperty;var F=(a,e)=>{for(var l in e)o(a,l,{get:e[l],enumerable:!0})},w=(a,e,l,m)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of Y(e))!D.call(a,n)&&n!==l&&o(a,n,{get:()=>e[n],enumerable:!(m=S(e,n))||m.enumerable});return a};var G=(a,e,l)=>(l=a!=null?L(j(a)):{},w(e||!a||!a.__esModule?o(l,"default",{value:a,enumerable:!0}):l,a)),I=a=>w(o({},"__esModule",{value:!0}),a);var _={};F(_,{WinnerModal:()=>y,default:()=>J});module.exports=I(_);var t=require("react/jsx-runtime"),p=G(require("react")),s=require("../../helpers/index.js"),r=require("../../components/index.js"),h=require("./BaseModal.js");const y=({isOpen:a,prize:e,title:l="You Have Won",prizeTitle:m,prizeImage:n,prizeDescription:f,learnMoreUrl:d,learnMoreText:W="Learn More",onClose:u,confirmText:k="Okay, Got It",onConfirm:B,className:M,couponCode:i,couponDiscount:c,couponUnit:O="Off",expiresAt:N,codeText:P="CODE:",copyText:T="COPY",copiedText:C="COPIED",onCopyCode:v})=>{const[E,b]=p.default.useState(!1),x=p.default.useRef(null);p.default.useEffect(()=>()=>{x.current&&clearTimeout(x.current)},[]);const H=g=>{x.current&&clearTimeout(x.current),navigator.clipboard.writeText(g),v&&v?.(g),b(!0),x.current=setTimeout(()=>{b(!1)},3e3)};if(!a||!e)return null;const R=()=>{B?.(),u()};return(0,t.jsxs)(h.BaseModal,{isOpen:a,onClose:u,className:M,maxWidth:"max-w-[326px] laptop:max-w-[420px]",ariaLabelledBy:"winner-modal-title",children:[(0,t.jsxs)("div",{className:"flex flex-col items-center px-4",children:[(0,t.jsxs)("div",{children:[(0,t.jsx)(r.Heading,{size:2,className:(0,s.cn)("mb-1 text-center tracking-[-0.32px]"),children:l}),(0,t.jsx)("p",{className:"laptop:text-[16px] text-center text-[14px] font-[700] text-[#1D1D1F]",children:m||e.name}),d&&(0,t.jsx)("div",{className:"laptop:mt-4 mt-3 text-center",children:(0,t.jsx)("a",{href:d,target:"_blank",rel:"noopener noreferrer",className:(0,s.cn)("laptop:text-[14px] text-center text-[12px]","text-blue-600 hover:text-blue-700","font-medium underline","transition-colors"),children:W})})]}),(0,t.jsx)("div",{className:(0,s.cn)("mx-auto my-4 flex items-center justify-center","laptop:size-[200px] size-[160px]"),children:(n||e.image)&&(0,t.jsx)(r.Picture,{source:n||e.image.url,alt:e.image.alt||m||e.name,className:(0,s.cn)("h-auto w-full")})}),(c||i)&&(0,t.jsxs)("div",{className:"mb-1 flex w-full flex-col items-center",children:[c&&(0,t.jsxs)("span",{className:"text-brand-0 mb-1 text-[16px] font-bold",children:[c," ",O]}),i&&(0,t.jsxs)("div",{className:"laptop:text-[16px] text-brand-0 flex items-center gap-2 text-center text-[14px] font-bold",children:[(0,t.jsxs)("span",{className:"max-w-[300px] truncate",children:[P,i]}),(0,t.jsx)("button",{onClick:()=>H(i),className:"underline",style:{minWidth:60},children:E?C:T})]}),N&&(0,t.jsxs)("span",{className:"mt-1 text-[12px] text-[#767880]",children:["\u6709\u6548\u671F\u81F3\uFF1A",N]})]}),f&&(0,t.jsx)("p",{className:(0,s.cn)("laptop:text-[16px] px-4 text-center text-[14px] font-[700] text-[#767880]"),children:f})]}),(0,t.jsx)("div",{className:"laptop:p-6 p-4",children:(0,t.jsx)(r.Button,{onClick:R,className:(0,s.cn)("w-full"),children:k})})]})};var J=y;
2
- //# sourceMappingURL=WinnerModal.js.map
@@ -1,7 +0,0 @@
1
- {
2
- "version": 3,
3
- "sources": ["../../../../src/biz-components/WheelLottery/WinnerModal.tsx"],
4
- "sourcesContent": ["/**\n * WinnerModal - \u4E2D\u5956\u5F39\u7A97\u7EC4\u4EF6\n *\n * \u57FA\u4E8E\u622A\u56FE\u8BBE\u8BA1\u5B9E\u73B0\u7684\u4E2D\u5956\u7ED3\u679C\u5C55\u793A\u5F39\u7A97\u3002\n * \u5305\u542B\u6807\u9898\u3001\u5956\u54C1\u4FE1\u606F\u3001\u4F18\u60E0\u7801\u548C\u786E\u8BA4\u6309\u94AE\u3002\n *\n * @module WinnerModal\n * @date 2025-12-24\n */\n\n'use client'\n\nimport React from 'react'\nimport { cn } from '../../helpers/index.js'\nimport type { WinnerModalProps } from './types.js'\nimport { Picture, Heading, Button } from '../../components/index.js'\nimport { BaseModal } from './BaseModal.js'\n\n// ============================================================================\n// WinnerModal \u7EC4\u4EF6\n// ============================================================================\n\n/**\n * WinnerModal \u4E2D\u5956\u5F39\u7A97\u7EC4\u4EF6\n *\n * \u6839\u636E\u8BBE\u8BA1\u7A3F\u5B9E\u73B0\u7684\u4E2D\u5956\u7ED3\u679C\u5C55\u793A\u5F39\u7A97,\u5305\u542B:\n * - \u534A\u900F\u660E\u906E\u7F69\u5C42\n * - \u767D\u8272\u5706\u89D2\u5361\u7247\u5BB9\u5668\n * - \u6807\u9898 \"You Have Won\"\n * - \u5956\u54C1\u540D\u79F0\n * - \u4F18\u60E0\u5238\u56FE\u7247\uFF0820% Off\uFF09\n * - \u4F18\u60E0\u7801\u548C\u8FC7\u671F\u65F6\u95F4\n * - \u786E\u8BA4\u6309\u94AE\n * - \u53F3\u4E0A\u89D2\u5173\u95ED\u6309\u94AE\n */\nexport const WinnerModal = ({\n isOpen,\n prize,\n title = 'You Have Won',\n prizeTitle,\n prizeImage,\n prizeDescription,\n learnMoreUrl,\n learnMoreText = 'Learn More',\n onClose,\n confirmText = 'Okay, Got It',\n onConfirm,\n className,\n couponCode,\n couponDiscount,\n couponUnit = 'Off',\n expiresAt,\n codeText = 'CODE:',\n copyText = 'COPY',\n copiedText = 'COPIED',\n onCopyCode,\n}: WinnerModalProps) => {\n // \u590D\u5236\u72B6\u6001\n const [copied, setCopied] = React.useState(false)\n const timerRef = React.useRef<NodeJS.Timeout | null>(null)\n\n React.useEffect(() => {\n return () => {\n if (timerRef.current) clearTimeout(timerRef.current)\n }\n }, [])\n\n // \u590D\u5236\u64CD\u4F5C\n const handleCopy = (code: string) => {\n if (timerRef.current) clearTimeout(timerRef.current)\n\n navigator.clipboard.writeText(code)\n if (onCopyCode) onCopyCode?.(code)\n setCopied(true)\n timerRef.current = setTimeout(() => {\n setCopied(false)\n }, 3000)\n }\n\n // \u4E0D\u663E\u793A\u5F39\u7A97\u6216\u65E0\u5956\u54C1\u6570\u636E\u65F6\u8FD4\u56DE null\n if (!isOpen || !prize) {\n return null\n }\n\n // \u786E\u8BA4\u6309\u94AE\u70B9\u51FB\u5904\u7406\n const handleConfirm = () => {\n onConfirm?.()\n onClose()\n }\n\n return (\n <BaseModal\n isOpen={isOpen}\n onClose={onClose}\n className={className}\n maxWidth=\"max-w-[326px] laptop:max-w-[420px]\"\n ariaLabelledBy=\"winner-modal-title\"\n >\n <div className=\"flex flex-col items-center px-4\">\n {/* =================================================================\n \u5F39\u7A97\u6807\u9898\n ================================================================= */}\n <div>\n <Heading size={2} className={cn('mb-1 text-center tracking-[-0.32px]')}>\n {title}\n </Heading>\n\n <p className=\"laptop:text-[16px] text-center text-[14px] font-[700] text-[#1D1D1F]\">\n {prizeTitle || prize.name}\n </p>\n\n {/* =================================================================\n Learn More \u6309\u94AE\n ================================================================= */}\n {learnMoreUrl && (\n <div className=\"laptop:mt-4 mt-3 text-center\">\n <a\n href={learnMoreUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={cn(\n 'laptop:text-[14px] text-center text-[12px]',\n 'text-blue-600 hover:text-blue-700',\n 'font-medium underline',\n 'transition-colors'\n )}\n >\n {learnMoreText}\n </a>\n </div>\n )}\n </div>\n\n {/* =================================================================\n \u5956\u54C1\u56FE\u7247\n ================================================================= */}\n\n <div className={cn('mx-auto my-4 flex items-center justify-center', 'laptop:size-[200px] size-[160px]')}>\n {(prizeImage || prize.image) && (\n <Picture\n source={prizeImage || prize.image.url}\n alt={prize.image.alt || prizeTitle || prize.name}\n className={cn('h-auto w-full')}\n />\n )}\n </div>\n\n {/* =================================================================\n \u6298\u6263\u548C\u4F18\u60E0\u7801\u590D\u5236\n ================================================================= */}\n {(couponDiscount || couponCode) && (\n <div className=\"mb-1 flex w-full flex-col items-center\">\n {couponDiscount && (\n <span className=\"text-brand-0 mb-1 text-[16px] font-bold\">\n {couponDiscount} {couponUnit}\n </span>\n )}\n {couponCode && (\n <div className=\"laptop:text-[16px] text-brand-0 flex items-center gap-2 text-center text-[14px] font-bold\">\n <span className=\"max-w-[300px] truncate\">\n {codeText}\n {couponCode}\n </span>\n <button onClick={() => handleCopy(couponCode!)} className=\"underline\" style={{ minWidth: 60 }}>\n {copied ? copiedText : copyText}\n </button>\n </div>\n )}\n {expiresAt && <span className=\"mt-1 text-[12px] text-[#767880]\">\u6709\u6548\u671F\u81F3\uFF1A{expiresAt}</span>}\n </div>\n )}\n\n {/* =================================================================\n \u5956\u54C1\u8BE6\u60C5\u63CF\u8FF0\n ================================================================= */}\n {prizeDescription && (\n <p className={cn('laptop:text-[16px] px-4 text-center text-[14px] font-[700] text-[#767880]')}>\n {prizeDescription}\n </p>\n )}\n </div>\n\n {/* =================================================================\n \u786E\u8BA4\u6309\u94AE\n ================================================================= */}\n <div className=\"laptop:p-6 p-4\">\n <Button onClick={handleConfirm} className={cn('w-full')}>\n {confirmText}\n </Button>\n </div>\n </BaseModal>\n )\n}\n\n// ============================================================================\n// \u9ED8\u8BA4\u5BFC\u51FA\n// ============================================================================\n\nexport default WinnerModal\n"],
5
- "mappings": "ukBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,iBAAAE,EAAA,YAAAC,IAAA,eAAAC,EAAAJ,GAsGQ,IAAAK,EAAA,6BA1FRC,EAAkB,oBAClBC,EAAmB,kCAEnBC,EAAyC,qCACzCC,EAA0B,0BAmBnB,MAAMP,EAAc,CAAC,CAC1B,OAAAQ,EACA,MAAAC,EACA,MAAAC,EAAQ,eACR,WAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,aAAAC,EACA,cAAAC,EAAgB,aAChB,QAAAC,EACA,YAAAC,EAAc,eACd,UAAAC,EACA,UAAAC,EACA,WAAAC,EACA,eAAAC,EACA,WAAAC,EAAa,MACb,UAAAC,EACA,SAAAC,EAAW,QACX,SAAAC,EAAW,OACX,WAAAC,EAAa,SACb,WAAAC,CACF,IAAwB,CAEtB,KAAM,CAACC,EAAQC,CAAS,EAAI,EAAAC,QAAM,SAAS,EAAK,EAC1CC,EAAW,EAAAD,QAAM,OAA8B,IAAI,EAEzD,EAAAA,QAAM,UAAU,IACP,IAAM,CACPC,EAAS,SAAS,aAAaA,EAAS,OAAO,CACrD,EACC,CAAC,CAAC,EAGL,MAAMC,EAAcC,GAAiB,CAC/BF,EAAS,SAAS,aAAaA,EAAS,OAAO,EAEnD,UAAU,UAAU,UAAUE,CAAI,EAC9BN,GAAYA,IAAaM,CAAI,EACjCJ,EAAU,EAAI,EACdE,EAAS,QAAU,WAAW,IAAM,CAClCF,EAAU,EAAK,CACjB,EAAG,GAAI,CACT,EAGA,GAAI,CAACrB,GAAU,CAACC,EACd,OAAO,KAIT,MAAMyB,EAAgB,IAAM,CAC1BhB,IAAY,EACZF,EAAQ,CACV,EAEA,SACE,QAAC,aACC,OAAQR,EACR,QAASQ,EACT,UAAWG,EACX,SAAS,qCACT,eAAe,qBAEf,qBAAC,OAAI,UAAU,kCAIb,qBAAC,OACC,oBAAC,WAAQ,KAAM,EAAG,aAAW,MAAG,qCAAqC,EAClE,SAAAT,EACH,KAEA,OAAC,KAAE,UAAU,uEACV,SAAAC,GAAcF,EAAM,KACvB,EAKCK,MACC,OAAC,OAAI,UAAU,+BACb,mBAAC,KACC,KAAMA,EACN,OAAO,SACP,IAAI,sBACJ,aAAW,MACT,6CACA,oCACA,wBACA,mBACF,EAEC,SAAAC,EACH,EACF,GAEJ,KAMA,OAAC,OAAI,aAAW,MAAG,gDAAiD,kCAAkC,EAClG,UAAAH,GAAcH,EAAM,WACpB,OAAC,WACC,OAAQG,GAAcH,EAAM,MAAM,IAClC,IAAKA,EAAM,MAAM,KAAOE,GAAcF,EAAM,KAC5C,aAAW,MAAG,eAAe,EAC/B,EAEJ,GAKEY,GAAkBD,OAClB,QAAC,OAAI,UAAU,yCACZ,UAAAC,MACC,QAAC,QAAK,UAAU,0CACb,UAAAA,EAAe,IAAEC,GACpB,EAEDF,MACC,QAAC,OAAI,UAAU,4FACb,qBAAC,QAAK,UAAU,yBACb,UAAAI,EACAJ,GACH,KACA,OAAC,UAAO,QAAS,IAAMY,EAAWZ,CAAW,EAAG,UAAU,YAAY,MAAO,CAAE,SAAU,EAAG,EACzF,SAAAQ,EAASF,EAAaD,EACzB,GACF,EAEDF,MAAa,QAAC,QAAK,UAAU,kCAAkC,2CAAMA,GAAU,GAClF,EAMDV,MACC,OAAC,KAAE,aAAW,MAAG,2EAA2E,EACzF,SAAAA,EACH,GAEJ,KAKA,OAAC,OAAI,UAAU,iBACb,mBAAC,UAAO,QAASqB,EAAe,aAAW,MAAG,QAAQ,EACnD,SAAAjB,EACH,EACF,GACF,CAEJ,EAMA,IAAOhB,EAAQD",
6
- "names": ["WinnerModal_exports", "__export", "WinnerModal", "WinnerModal_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_helpers", "import_components", "import_BaseModal", "isOpen", "prize", "title", "prizeTitle", "prizeImage", "prizeDescription", "learnMoreUrl", "learnMoreText", "onClose", "confirmText", "onConfirm", "className", "couponCode", "couponDiscount", "couponUnit", "expiresAt", "codeText", "copyText", "copiedText", "onCopyCode", "copied", "setCopied", "React", "timerRef", "handleCopy", "code", "handleConfirm"]
7
- }
@@ -1,52 +0,0 @@
1
- /**
2
- * WheelLottery - 大转盘抽奖组件
3
- *
4
- * 用于营销活动的交互式抽奖转盘,支持多品牌主题和响应式布局。
5
- *
6
- * @module WheelLottery
7
- * @date 2025-12-17
8
- */
9
- import React from 'react';
10
- import type { WheelLotteryProps, WheelLotteryHandle } from './types.js';
11
- /**
12
- * WheelLottery 组件
13
- *
14
- * @example
15
- * ```tsx
16
- * // 基础使用
17
- * <WheelLottery
18
- * prizes={prizes}
19
- * winningPrizeId="prize-003"
20
- * onSpinEnd={(prize) => alert(`You won ${prize.name}`)}
21
- * />
22
- *
23
- * // 使用 ref 控制弹窗
24
- * const lotteryRef = useRef<WheelLotteryHandle>(null)
25
- *
26
- * <WheelLottery ref={lotteryRef} prizes={prizes} />
27
- *
28
- * // 外部触发弹窗
29
- * lotteryRef.current?.showError({
30
- * title: 'Error',
31
- * message: 'Something went wrong'
32
- * })
33
- * ```
34
- */
35
- export declare const WheelLottery: React.ForwardRefExoticComponent<WheelLotteryProps & React.RefAttributes<WheelLotteryHandle>>;
36
- declare const _default: React.ForwardRefExoticComponent<Omit<WheelLotteryProps & React.RefAttributes<WheelLotteryHandle> & {
37
- style?: string | React.CSSProperties;
38
- container?: import("../../shared/Styles.js").ContainerProps["container"];
39
- }, "ref"> & React.RefAttributes<any>>;
40
- export default _default;
41
- export { WinnerModal } from './WinnerModal.js';
42
- export { RulesModal } from './RulesModal.js';
43
- export { MyRewardsModal } from './MyRewardsModal.js';
44
- export { ErrorModal } from './ErrorModal.js';
45
- export { ShareModal } from './ShareModal.js';
46
- export { BaseModal } from './BaseModal.js';
47
- export type { WheelLotteryProps, WheelLotteryHandle, Prize, ChanceMethod, ChanceMethodStatus, WinningInfo, WheelProps, PrizePoolProps, ChanceMethodsProps, WinnerModalProps, WinnerModalConfig, UserData, ShareModalConfig, SocialPlatform, SharePlatformConfig, } from './types.js';
48
- export type { RulesModalProps, RuleItem } from './RulesModal.js';
49
- export type { MyRewardsModalProps, Reward, RewardStatus } from './MyRewardsModal.js';
50
- export type { ErrorModalProps } from './ErrorModal.js';
51
- export type { ShareModalProps } from './ShareModal.js';
52
- export type { BaseModalProps } from './BaseModal.js';
@@ -1,2 +0,0 @@
1
- "use strict";"use client";var D=Object.defineProperty;var Ve=Object.getOwnPropertyDescriptor;var qe=Object.getOwnPropertyNames;var Je=Object.prototype.hasOwnProperty;var Qe=(r,s)=>{for(var d in s)D(r,d,{get:s[d],enumerable:!0})},Xe=(r,s,d,w)=>{if(s&&typeof s=="object"||typeof s=="function")for(let h of qe(s))!Je.call(r,h)&&h!==d&&D(r,h,{get:()=>s[h],enumerable:!(w=Ve(s,h))||w.enumerable});return r};var Ze=r=>Xe(D({},"__esModule",{value:!0}),r);var tt={};Qe(tt,{BaseModal:()=>re.BaseModal,ErrorModal:()=>oe.ErrorModal,MyRewardsModal:()=>te.MyRewardsModal,RulesModal:()=>ee.RulesModal,ShareModal:()=>se.ShareModal,WheelLottery:()=>F,WinnerModal:()=>Z.WinnerModal,default:()=>et});module.exports=Ze(tt);var t=require("react/jsx-runtime"),e=require("react"),u=require("../../helpers/index.js"),m=require("./types.js"),S=require("../../components/grid.js"),K=require("./Wheel.js"),$=require("./PrizePool.js"),Y=require("./ChanceMethods.js"),V=require("./WinnerModal.js"),q=require("./RulesModal.js"),J=require("./MyRewardsModal.js"),L=require("./ErrorModal.js"),Q=require("./ShareModal.js"),X=require("../../shared/Styles.js"),Z=require("./WinnerModal.js"),ee=require("./RulesModal.js"),te=require("./MyRewardsModal.js"),oe=require("./ErrorModal.js"),se=require("./ShareModal.js"),re=require("./BaseModal.js");const F=(0,e.forwardRef)(({prizes:r,theme:s,winningPrizeId:d,spinDuration:w=m.DEFAULT_WHEEL_CONFIG.spinDuration,easing:h=m.DEFAULT_WHEEL_CONFIG.easing,wheelBackgroundImage:ne,pointerImage:ie,chanceMethods:B=m.DEFAULT_CHANCE_METHODS,chanceTitle:ae=m.DEFAULT_WHEEL_CONFIG.chanceTitle,chanceSubtitle:le,chanceFooterNote:pe,winningInfos:de=[],onSpinStart:R,onSpinEnd:N,onSpinError:v,winnerModalConfig:n,rulesModalConfig:ce={},myRewardsModalConfig:fe={},errorModalConfig:x={},shareModalConfig:g={},userData:p,loginPromptText:ot="Please log in to participate",onLoginRequired:I,noChancesText:O="You have no chances left",onCopyCode:me,opportunitiesText:U=["Number of draws remaining today:"],className:ue},he)=>{const{rulesData:C,rulesText:xe="Rules"}=ce,{rewardsData:k,myRewardsText:we="My Rewards",codeText:ge="CODE:",copyText:ye="COPY",prizeText:Me="Prize time:"}=fe,[i,c]=(0,e.useState)(m.INITIAL_WHEEL_STATE),[We,y]=(0,e.useState)(!1),[be,M]=(0,e.useState)(!1),[Te,W]=(0,e.useState)(!1),[Ee,b]=(0,e.useState)(!1),[Pe,T]=(0,e.useState)(!1),[Se,E]=(0,e.useState)(!1),[ze,j]=(0,e.useState)(""),[Re,Ne]=(0,e.useState)(),[ve,Ie]=(0,e.useState)(),[Ce,ke]=(0,e.useState)(),[Ae,De]=(0,e.useState)(),[Le,Fe]=(0,e.useState)(),[a,Be]=(0,e.useState)(),z=(0,e.useRef)(null);(0,e.useImperativeHandle)(he,()=>({showError:({message:o,title:l,confirmText:P})=>{j(o),Ne(l),Ie(P),b(!0)},hideError:()=>{b(!1)},showNoWin:o=>{ke(o?.title),De(o?.message),Fe(o?.confirmText),T(!0)},hideNoWin:()=>{T(!1)},showWinner:(o,l)=>{c(P=>({...P,winningPrize:o})),Be(l),y(!0)},hideWinner:()=>{y(!1)},showRules:()=>{M(!0)},hideRules:()=>{M(!1)},showRewards:()=>{W(!0)},hideRewards:()=>{W(!1)},showShare:()=>{E(!0)},hideShare:()=>{E(!1)},hideAllModals:()=>{y(!1),M(!1),W(!1),b(!1),T(!1),E(!1)}}),[]),(0,e.useEffect)(()=>{},[r,d]),(0,e.useEffect)(()=>()=>{z.current!==null&&cancelAnimationFrame(z.current)},[]);const Oe=(0,e.useCallback)(async()=>{if(!i.isSpinning){if(!p?.isLoggedIn){I?.();return}if(p.availableChances<=0){v?.(new Error(O));return}c(o=>({...o,isSpinning:!0,isButtonDisabled:!0}));try{let o=d;R&&(o=await R());const l=r.find(f=>f.prizeKey===o)||r[0],P=r.findIndex(f=>f.prizeKey===l.prizeKey),He=360/r.length,Ge=P*He,H=3*360+(360-Ge);await new Promise(f=>setTimeout(f,1500)),c(f=>({...f,isFinished:!0,currentRotation:0}));const _e=Date.now(),G=()=>{const Ke=Date.now()-_e,_=Math.min(Ke/w,1),$e=1-Math.pow(1-_,3),Ye=H*$e;c(A=>({...A,currentRotation:Ye})),_<1?z.current=requestAnimationFrame(G):(c(A=>({...A,isSpinning:!1,isButtonDisabled:!0,winningPrize:l,currentRotation:H})),N?N?.(l):setTimeout(()=>{l.prizeKey==="try-again"?T(!0):y(!0)},500))};z.current=requestAnimationFrame(G)}catch(o){c(l=>({...l,isSpinning:!1,isButtonDisabled:!1})),j(o.message||"An error occurred"),b(!0),v?.(o),console.error("\u62BD\u5956\u63A5\u53E3\u8C03\u7528\u5931\u8D25:",o)}}},[i.isSpinning,r,d,w,R,N,v,p,I,O]),Ue=(0,e.useCallback)(()=>{y(!1),c(o=>({...o,isButtonDisabled:!1,isFinished:!1}))},[]),je=(0,e.useCallback)(()=>{T(!1),c(o=>({...o,isButtonDisabled:!1,isFinished:!1}))},[]);return(0,t.jsxs)("div",{className:(0,u.cn)("wheel-lottery-container","w-full",s==="dark"?"aiui-dark":"",ue),children:[(0,t.jsxs)("div",{role:"status","aria-live":"polite","aria-atomic":"true",className:"sr-only",children:[i.isSpinning&&"\u62BD\u5956\u8FDB\u884C\u4E2D...",i.winningPrize&&!i.isSpinning&&`\u5DF2\u4E2D\u5956: ${i.winningPrize.name}`]}),(0,t.jsxs)(S.Grid,{className:(0,u.cn)("wheel-lottery-main","tablet:mb-4 mb-3"),children:[(0,t.jsx)(S.GridItem,{span:7,className:(0,u.cn)("wheel-section","relative flex h-[200px] w-full flex-1 items-center justify-center overflow-hidden","rounded-box","lg-desktop:aspect-w-[964] lg-desktop:aspect-h-[480]","desktop:aspect-w-[759] desktop:aspect-h-[384]","laptop:aspect-w-[516] laptop:aspect-h-[288]","l-tablet:col-span-12",s==="dark"?"bg-[#1E2024]":"bg-[#EAEAEC]"),children:(0,t.jsxs)("div",{className:(0,u.cn)(" w-full px-[16px] pt-[16px]","lg-desktop:pb-[32px] lg-desktop:px-[32px] desktop:pt-[24px] desktop:px-[24px] laptop:pt-[16px] laptop:px-[16px] tablet:px-[32px]","l-tablet:absolute l-tablet:top-0"),children:[(0,t.jsxs)("div",{className:"mb-2 flex w-full flex-wrap items-center justify-between gap-3",children:[(0,t.jsxs)("p",{className:"text-info-primary font-[700]",children:[U?.[0],(0,t.jsx)("span",{className:"text-[#FF6B35]",children:p?.availableChances||0}),U?.[1]||""]}),(0,t.jsxs)("div",{className:"flex items-center gap-4",children:[C&&(0,t.jsx)("button",{onClick:()=>M(!0),children:(0,t.jsx)("span",{className:"text-info-primary font-[700] underline ",children:xe})}),k&&(0,t.jsx)("button",{onClick:()=>W(!0),children:(0,t.jsx)("span",{className:"text-info-primary font-[700] underline ",children:we})})]})]}),(0,t.jsx)(K.Wheel,{theme:s,prizes:r,rotation:i.currentRotation,isSpinning:i.isSpinning,isFinished:i.isFinished,isButtonDisabled:i.isButtonDisabled||!!p?.isLoggedIn&&(p?.availableChances||0)<=0,userData:p,onGoClick:p?.isLoggedIn?Oe:I,wheelBackgroundImage:ne,pointerImage:ie})]})}),B.length>0&&(0,t.jsx)(S.GridItem,{span:5,className:(0,u.cn)("info-section","rounded-box","relative flex flex-col overflow-hidden","lg-desktop:aspect-w-[684] lg-desktop:aspect-h-[480]","desktop:aspect-w-[536] desktop:aspect-h-[384]","laptop:aspect-w-[364] laptop:aspect-h-[288]","max-h-[320px] w-full","l-tablet:col-span-12",s==="dark"?"bg-[#1E2024]":"bg-[#EAEAEC]"),children:(0,t.jsx)(Y.ChanceMethods,{theme:s,userData:p,methods:B,title:ae,subtitle:le,footerNote:pe,onOpenShareModal:()=>E(!0)})})]}),(0,t.jsx)("div",{className:(0,u.cn)("wheel-lottery-footer","rounded-box","flex flex-col overflow-hidden",s==="dark"?"bg-[#1E2024]":"bg-[#EAEAEC]"),children:(0,t.jsx)($.PrizePool,{theme:s,prizes:r,winningInfos:de})}),(0,t.jsx)(V.WinnerModal,{isOpen:We,prize:i.winningPrize,title:a?.title||n?.title,prizeTitle:a?.prizeTitle||n?.prizeTitle,prizeImage:a?.prizeImage||n?.prizeImage,prizeDescription:a?.prizeDescription||n?.prizeDescription,learnMoreUrl:a?.learnMoreUrl||n?.learnMoreUrl,learnMoreText:a?.learnMoreText||n?.learnMoreText,couponCode:a?.couponCode||n?.couponCode,expiresAt:a?.expiresAt||n?.expiresAt,couponDiscount:a?.couponDiscount||n?.couponDiscount,couponUnit:a?.couponUnit||n?.couponUnit,confirmText:a?.confirmText||n?.confirmText,onClose:Ue}),C&&(0,t.jsx)(q.RulesModal,{isOpen:be,onClose:()=>M(!1),rules:C}),k&&(0,t.jsx)(J.MyRewardsModal,{isOpen:Te,onClose:()=>W(!1),rewards:k,onCopyCode:me,codeText:ge,copyText:ye,prizeText:Me}),(0,t.jsx)(L.ErrorModal,{isOpen:Ee,onClose:()=>b(!1),title:Re||x?.title,message:ze||x?.message,confirmText:ve||x?.confirmText}),(0,t.jsx)(L.ErrorModal,{isOpen:Pe,onClose:je,title:Ce||x?.title,message:Ae||x?.message,confirmText:Le||x?.confirmText}),(0,t.jsx)(Q.ShareModal,{isOpen:Se,onClose:()=>E(!1),title:g?.title,subtitle:g?.subtitle,note:g?.note,platforms:g?.platforms,onShareSuccess:g?.onShareSuccess})]})});F.displayName="WheelLottery";var et=(0,X.withLayout)(F);
2
- //# sourceMappingURL=index.js.map