@anker-in/headless-ui 0.0.27-alpha.13 → 0.0.27-alpha.131

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 (706) hide show
  1. package/README.md +54 -7
  2. package/dist/cjs/biz-components/AccordionCards/index.d.ts +31 -19
  3. package/dist/cjs/biz-components/AccordionCards/index.js +1 -1
  4. package/dist/cjs/biz-components/AccordionCards/index.js.map +3 -3
  5. package/dist/cjs/biz-components/AiuiProvider/index.d.ts +10 -0
  6. package/dist/cjs/biz-components/AiuiProvider/index.js +2 -0
  7. package/dist/cjs/biz-components/AiuiProvider/index.js.map +7 -0
  8. package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +4 -18
  9. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
  10. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  11. package/dist/cjs/biz-components/BrandEquity/types.d.ts +17 -0
  12. package/dist/cjs/biz-components/BrandEquity/types.js +2 -0
  13. package/dist/cjs/biz-components/BrandEquity/types.js.map +7 -0
  14. package/dist/cjs/biz-components/Category/SwiperCategory.d.ts +19 -0
  15. package/dist/cjs/biz-components/Category/SwiperCategory.js +2 -0
  16. package/dist/cjs/biz-components/Category/SwiperCategory.js.map +7 -0
  17. package/dist/cjs/biz-components/Category/index.d.ts +26 -8
  18. package/dist/cjs/biz-components/Category/index.js +1 -1
  19. package/dist/cjs/biz-components/Category/index.js.map +3 -3
  20. package/dist/cjs/biz-components/Evaluate/index.d.ts +27 -9
  21. package/dist/cjs/biz-components/Evaluate/index.js +1 -1
  22. package/dist/cjs/biz-components/Evaluate/index.js.map +3 -3
  23. package/dist/cjs/biz-components/Graphic/index.d.ts +19 -13
  24. package/dist/cjs/biz-components/Graphic/index.js +1 -1
  25. package/dist/cjs/biz-components/Graphic/index.js.map +3 -3
  26. package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +25 -0
  27. package/dist/cjs/biz-components/GraphicAttractionBlock/index.js +2 -0
  28. package/dist/cjs/biz-components/GraphicAttractionBlock/index.js.map +7 -0
  29. package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +4 -6
  30. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
  31. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  32. package/dist/cjs/biz-components/HeroBanner/index.js.map +1 -1
  33. package/dist/cjs/biz-components/HeroBanner/types.d.ts +25 -21
  34. package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
  35. package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
  36. package/dist/cjs/biz-components/Marquee/Marquee.d.ts +18 -0
  37. package/dist/cjs/biz-components/Marquee/Marquee.js +2 -0
  38. package/dist/cjs/biz-components/Marquee/Marquee.js.map +7 -0
  39. package/dist/cjs/biz-components/Marquee/index.d.ts +2 -23
  40. package/dist/cjs/biz-components/Marquee/index.js +1 -1
  41. package/dist/cjs/biz-components/Marquee/index.js.map +4 -4
  42. package/dist/cjs/biz-components/Marquee/type.d.ts +33 -0
  43. package/dist/cjs/biz-components/Marquee/type.js +2 -0
  44. package/dist/cjs/biz-components/Marquee/type.js.map +7 -0
  45. package/dist/cjs/biz-components/MediaPlayerBase/index.d.ts +7 -0
  46. package/dist/cjs/biz-components/MediaPlayerBase/index.js +2 -0
  47. package/dist/cjs/biz-components/MediaPlayerBase/index.js.map +7 -0
  48. package/dist/cjs/biz-components/MediaPlayerBase/right.d.ts +1 -0
  49. package/dist/cjs/biz-components/MediaPlayerBase/right.js +2 -0
  50. package/dist/cjs/biz-components/MediaPlayerBase/right.js.map +7 -0
  51. package/dist/cjs/biz-components/MediaPlayerBase/types.d.ts +14 -0
  52. package/dist/cjs/biz-components/MediaPlayerBase/types.js +2 -0
  53. package/dist/cjs/biz-components/MediaPlayerBase/types.js.map +7 -0
  54. package/dist/cjs/biz-components/MediaPlayerMulti/index.d.ts +6 -0
  55. package/dist/cjs/biz-components/MediaPlayerMulti/index.js +2 -0
  56. package/dist/cjs/biz-components/MediaPlayerMulti/index.js.map +7 -0
  57. package/dist/cjs/biz-components/MediaPlayerMulti/types.d.ts +18 -0
  58. package/dist/cjs/biz-components/MediaPlayerMulti/types.js +2 -0
  59. package/dist/cjs/biz-components/MediaPlayerMulti/types.js.map +7 -0
  60. package/dist/cjs/biz-components/MediaPlayerSticky/index.d.ts +11 -0
  61. package/dist/cjs/biz-components/MediaPlayerSticky/index.js +2 -0
  62. package/dist/cjs/biz-components/MediaPlayerSticky/index.js.map +7 -0
  63. package/dist/cjs/biz-components/MediaPlayerSticky/types.d.ts +16 -0
  64. package/dist/cjs/biz-components/MediaPlayerSticky/types.js +2 -0
  65. package/dist/cjs/biz-components/MediaPlayerSticky/types.js.map +7 -0
  66. package/dist/cjs/biz-components/MemberEquity/index.d.ts +5 -6
  67. package/dist/cjs/biz-components/MemberEquity/index.js +4 -39
  68. package/dist/cjs/biz-components/MemberEquity/index.js.map +3 -3
  69. package/dist/cjs/biz-components/MemberEquity/types.d.ts +25 -20
  70. package/dist/cjs/biz-components/MemberEquity/types.js +1 -1
  71. package/dist/cjs/biz-components/MemberEquity/types.js.map +1 -1
  72. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +8 -0
  73. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +2 -0
  74. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +7 -0
  75. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/index.d.ts +2 -0
  76. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/index.js +2 -0
  77. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/index.js.map +7 -0
  78. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.d.ts +30 -0
  79. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js +2 -0
  80. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js.map +7 -0
  81. package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +48 -28
  82. package/dist/cjs/biz-components/ShelfDisplay/index.js +7 -9
  83. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
  84. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.d.ts +23 -0
  85. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +2 -0
  86. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +7 -0
  87. package/dist/cjs/biz-components/Slogan/index.d.ts +6 -6
  88. package/dist/cjs/biz-components/Slogan/index.js +1 -1
  89. package/dist/cjs/biz-components/Slogan/index.js.map +3 -3
  90. package/dist/cjs/biz-components/Slogan/types.d.ts +19 -12
  91. package/dist/cjs/biz-components/Slogan/types.js +1 -1
  92. package/dist/cjs/biz-components/Slogan/types.js.map +1 -1
  93. package/dist/cjs/biz-components/Spacer/index.d.ts +7 -0
  94. package/dist/cjs/biz-components/Spacer/index.js +2 -0
  95. package/dist/cjs/biz-components/Spacer/index.js.map +7 -0
  96. package/dist/cjs/biz-components/Spacer/types.d.ts +10 -0
  97. package/dist/cjs/biz-components/Spacer/types.js +2 -0
  98. package/dist/cjs/biz-components/Spacer/types.js.map +7 -0
  99. package/dist/cjs/biz-components/SwiperBox/index.d.ts +4 -0
  100. package/dist/cjs/biz-components/SwiperBox/index.js +2 -0
  101. package/dist/cjs/biz-components/SwiperBox/index.js.map +7 -0
  102. package/dist/cjs/biz-components/SwiperBox/types.d.ts +16 -0
  103. package/dist/cjs/biz-components/SwiperBox/types.js +2 -0
  104. package/dist/cjs/biz-components/SwiperBox/types.js.map +7 -0
  105. package/dist/cjs/biz-components/Tabs/Tabs.d.ts +7 -0
  106. package/dist/cjs/biz-components/Tabs/Tabs.js +2 -0
  107. package/dist/cjs/biz-components/Tabs/Tabs.js.map +7 -0
  108. package/dist/cjs/biz-components/Tabs/index.d.ts +1 -0
  109. package/dist/cjs/biz-components/{Shelf → Tabs}/index.js +1 -1
  110. package/dist/cjs/biz-components/Tabs/index.js.map +7 -0
  111. package/dist/cjs/biz-components/Tabs/types.d.ts +20 -0
  112. package/dist/cjs/biz-components/Tabs/types.js +2 -0
  113. package/dist/cjs/biz-components/Tabs/types.js.map +7 -0
  114. package/dist/cjs/biz-components/Title/index.d.ts +7 -0
  115. package/dist/cjs/biz-components/Title/index.js +2 -0
  116. package/dist/cjs/biz-components/Title/index.js.map +7 -0
  117. package/dist/cjs/biz-components/Title/types.d.ts +27 -0
  118. package/dist/cjs/biz-components/Title/types.js +2 -0
  119. package/dist/cjs/biz-components/Title/types.js.map +7 -0
  120. package/dist/cjs/biz-components/index.d.ts +12 -2
  121. package/dist/cjs/biz-components/index.js +1 -1
  122. package/dist/cjs/biz-components/index.js.map +3 -3
  123. package/dist/cjs/components/alert.d.ts +1 -1
  124. package/dist/cjs/components/avatar.d.ts +1 -1
  125. package/dist/cjs/components/avatar.js +1 -1
  126. package/dist/cjs/components/avatar.js.map +2 -2
  127. package/dist/cjs/components/badge.d.ts +2 -2
  128. package/dist/cjs/components/badge.js +1 -1
  129. package/dist/cjs/components/badge.js.map +2 -2
  130. package/dist/cjs/components/button.d.ts +3 -4
  131. package/dist/cjs/components/button.js +1 -1
  132. package/dist/cjs/components/button.js.map +3 -3
  133. package/dist/cjs/components/checkbox.d.ts +2 -2
  134. package/dist/cjs/components/checkbox.js +1 -1
  135. package/dist/cjs/components/checkbox.js.map +2 -2
  136. package/dist/cjs/components/color.d.ts +1 -1
  137. package/dist/cjs/components/container.d.ts +9 -0
  138. package/dist/cjs/components/container.js +1 -1
  139. package/dist/cjs/components/container.js.map +3 -3
  140. package/dist/cjs/components/dialog.js +1 -1
  141. package/dist/cjs/components/dialog.js.map +2 -2
  142. package/dist/cjs/components/drawer.js +1 -1
  143. package/dist/cjs/components/drawer.js.map +2 -2
  144. package/dist/cjs/components/drop-down.js +1 -1
  145. package/dist/cjs/components/drop-down.js.map +3 -3
  146. package/dist/cjs/components/gird.js +1 -1
  147. package/dist/cjs/components/gird.js.map +2 -2
  148. package/dist/cjs/components/heading.d.ts +4 -3
  149. package/dist/cjs/components/heading.js +1 -1
  150. package/dist/cjs/components/heading.js.map +3 -3
  151. package/dist/cjs/components/index.d.ts +18 -18
  152. package/dist/cjs/components/index.js +1 -1
  153. package/dist/cjs/components/index.js.map +3 -3
  154. package/dist/cjs/components/input-number.d.ts +2 -2
  155. package/dist/cjs/components/input.d.ts +2 -2
  156. package/dist/cjs/components/input.js +1 -1
  157. package/dist/cjs/components/input.js.map +1 -1
  158. package/dist/cjs/components/link.d.ts +6 -8
  159. package/dist/cjs/components/link.js +1 -1
  160. package/dist/cjs/components/link.js.map +3 -3
  161. package/dist/cjs/components/picture.d.ts +1 -1
  162. package/dist/cjs/components/picture.js +1 -1
  163. package/dist/cjs/components/picture.js.map +3 -3
  164. package/dist/cjs/components/radio.d.ts +2 -2
  165. package/dist/cjs/components/radio.js +1 -1
  166. package/dist/cjs/components/radio.js.map +2 -2
  167. package/dist/cjs/components/skeleton.js +3 -3
  168. package/dist/cjs/components/skeleton.js.map +1 -1
  169. package/dist/cjs/components/tabs.d.ts +3 -1
  170. package/dist/cjs/components/tabs.js +1 -1
  171. package/dist/cjs/components/tabs.js.map +3 -3
  172. package/dist/cjs/components/text.d.ts +4 -3
  173. package/dist/cjs/components/text.js +1 -1
  174. package/dist/cjs/components/text.js.map +3 -3
  175. package/dist/cjs/components/theme.d.ts +1 -1
  176. package/dist/cjs/components/theme.js.map +1 -1
  177. package/dist/cjs/cpn-components/CpnBanner/index.d.ts +3 -0
  178. package/dist/cjs/cpn-components/CpnBanner/index.js +2 -0
  179. package/dist/cjs/cpn-components/CpnBanner/index.js.map +7 -0
  180. package/dist/cjs/cpn-components/CpnBanner/types.d.ts +43 -0
  181. package/dist/cjs/cpn-components/CpnBanner/types.js +2 -0
  182. package/dist/cjs/cpn-components/CpnBanner/types.js.map +7 -0
  183. package/dist/cjs/cpn-components/CpnCountDown/index.d.ts +3 -0
  184. package/dist/cjs/cpn-components/CpnCountDown/index.js +2 -0
  185. package/dist/cjs/cpn-components/CpnCountDown/index.js.map +7 -0
  186. package/dist/cjs/cpn-components/CpnCountDown/types.d.ts +28 -0
  187. package/dist/cjs/cpn-components/CpnCountDown/types.js +2 -0
  188. package/dist/cjs/cpn-components/CpnCountDown/types.js.map +7 -0
  189. package/dist/cjs/cpn-components/CpnNavigation/index.d.ts +3 -0
  190. package/dist/cjs/cpn-components/CpnNavigation/index.js +2 -0
  191. package/dist/cjs/cpn-components/CpnNavigation/index.js.map +7 -0
  192. package/dist/cjs/cpn-components/CpnNavigation/types.d.ts +19 -0
  193. package/dist/cjs/cpn-components/CpnNavigation/types.js +2 -0
  194. package/dist/cjs/cpn-components/CpnNavigation/types.js.map +7 -0
  195. package/dist/cjs/cpn-components/CpnProductCard/index.d.ts +3 -0
  196. package/dist/cjs/cpn-components/CpnProductCard/index.js +2 -0
  197. package/dist/cjs/cpn-components/CpnProductCard/index.js.map +7 -0
  198. package/dist/cjs/cpn-components/CpnProductCard/types.d.ts +109 -0
  199. package/dist/cjs/cpn-components/CpnProductCard/types.js +2 -0
  200. package/dist/cjs/cpn-components/CpnProductCard/types.js.map +7 -0
  201. package/dist/cjs/cpn-components/CpnTitle/index.d.ts +3 -0
  202. package/dist/cjs/cpn-components/CpnTitle/index.js +2 -0
  203. package/dist/cjs/cpn-components/CpnTitle/index.js.map +7 -0
  204. package/dist/cjs/cpn-components/CpnTitle/types.d.ts +10 -0
  205. package/dist/cjs/cpn-components/CpnTitle/types.js +2 -0
  206. package/dist/cjs/cpn-components/CpnTitle/types.js.map +7 -0
  207. package/dist/cjs/cpn-components/index.d.ts +5 -0
  208. package/dist/cjs/cpn-components/index.js +2 -0
  209. package/dist/cjs/cpn-components/index.js.map +7 -0
  210. package/dist/cjs/hooks/useCountDown.d.ts +10 -0
  211. package/dist/cjs/hooks/useCountDown.js +2 -0
  212. package/dist/cjs/hooks/useCountDown.js.map +7 -0
  213. package/dist/cjs/hooks/useEXposure.d.ts +13 -0
  214. package/dist/cjs/hooks/useEXposure.js +2 -0
  215. package/dist/cjs/hooks/useEXposure.js.map +7 -0
  216. package/dist/cjs/hooks/useIntersectionObserver.d.ts +17 -0
  217. package/dist/cjs/hooks/useIntersectionObserver.js +2 -0
  218. package/dist/cjs/hooks/useIntersectionObserver.js.map +7 -0
  219. package/dist/cjs/shared/Styles.d.ts +5 -9
  220. package/dist/cjs/shared/Styles.js +1 -1
  221. package/dist/cjs/shared/Styles.js.map +3 -3
  222. package/dist/cjs/shared/getKeyPropsString.d.ts +4 -0
  223. package/dist/cjs/shared/getKeyPropsString.js +2 -0
  224. package/dist/cjs/shared/getKeyPropsString.js.map +7 -0
  225. package/dist/cjs/shared/mimeType.d.ts +1 -0
  226. package/dist/cjs/shared/mimeType.js +2 -0
  227. package/dist/cjs/shared/mimeType.js.map +7 -0
  228. package/dist/cjs/shared/simpleHash.d.ts +1 -0
  229. package/dist/cjs/shared/simpleHash.js +2 -0
  230. package/dist/cjs/shared/simpleHash.js.map +7 -0
  231. package/dist/cjs/shared/track.d.ts +1 -0
  232. package/dist/cjs/shared/track.js +2 -0
  233. package/dist/cjs/shared/track.js.map +7 -0
  234. package/dist/cjs/shared/trackUrlRef.d.ts +7 -0
  235. package/dist/cjs/shared/trackUrlRef.js +2 -0
  236. package/dist/cjs/shared/trackUrlRef.js.map +7 -0
  237. package/dist/cjs/stories/HeroBanner.stories.d.ts +4 -6
  238. package/dist/cjs/stories/HeroBanner.stories.js +2 -2
  239. package/dist/cjs/stories/HeroBanner.stories.js.map +3 -3
  240. package/dist/cjs/stories/MemberEquity.stories.d.ts +1 -1
  241. package/dist/cjs/stories/MemberEquity.stories.js +3 -3
  242. package/dist/cjs/stories/MemberEquity.stories.js.map +2 -2
  243. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.d.ts +8 -0
  244. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js +2 -0
  245. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
  246. package/dist/cjs/stories/accordionCards.stories.d.ts +22 -13
  247. package/dist/cjs/stories/accordionCards.stories.js +1 -1
  248. package/dist/cjs/stories/accordionCards.stories.js.map +2 -2
  249. package/dist/cjs/stories/alert.stories.d.ts +1 -1
  250. package/dist/cjs/stories/avatar.stories.d.ts +1 -2
  251. package/dist/cjs/stories/avatar.stories.js +1 -1
  252. package/dist/cjs/stories/avatar.stories.js.map +3 -3
  253. package/dist/cjs/stories/badge.stories.js.map +1 -1
  254. package/dist/cjs/stories/bizTabs.stories.d.ts +7 -0
  255. package/dist/cjs/stories/bizTabs.stories.js +2 -0
  256. package/dist/cjs/stories/bizTabs.stories.js.map +7 -0
  257. package/dist/cjs/stories/brandEquity.stories.d.ts +4 -6
  258. package/dist/cjs/stories/brandEquity.stories.js +1 -1
  259. package/dist/cjs/stories/brandEquity.stories.js.map +3 -3
  260. package/dist/cjs/stories/button.stories.d.ts +0 -9
  261. package/dist/cjs/stories/button.stories.js +1 -1
  262. package/dist/cjs/stories/button.stories.js.map +2 -2
  263. package/dist/cjs/stories/carousel.stories.d.ts +3 -3
  264. package/dist/cjs/stories/carousel.stories.js +1 -1
  265. package/dist/cjs/stories/carousel.stories.js.map +2 -2
  266. package/dist/cjs/stories/category.stories.d.ts +4 -1
  267. package/dist/cjs/stories/category.stories.js +1 -1
  268. package/dist/cjs/stories/category.stories.js.map +3 -3
  269. package/dist/cjs/stories/checkbox.stories.d.ts +1 -1
  270. package/dist/cjs/stories/checkbox.stories.js.map +1 -1
  271. package/dist/cjs/stories/container.stories.d.ts +4 -0
  272. package/dist/cjs/stories/container.stories.js +2 -2
  273. package/dist/cjs/stories/container.stories.js.map +2 -2
  274. package/dist/cjs/stories/cpnBanner.stories.d.ts +14 -0
  275. package/dist/cjs/stories/cpnBanner.stories.js +2 -0
  276. package/dist/cjs/stories/cpnBanner.stories.js.map +7 -0
  277. package/dist/cjs/stories/cpnCountdown.stories.d.ts +12 -0
  278. package/dist/cjs/stories/cpnCountdown.stories.js +2 -0
  279. package/dist/cjs/stories/cpnCountdown.stories.js.map +7 -0
  280. package/dist/cjs/stories/cpnNavigation.stories.d.ts +14 -0
  281. package/dist/cjs/stories/cpnNavigation.stories.js +2 -0
  282. package/dist/cjs/stories/cpnNavigation.stories.js.map +7 -0
  283. package/dist/cjs/stories/cpnProductcard.stories.d.ts +14 -0
  284. package/dist/cjs/stories/cpnProductcard.stories.js +2 -0
  285. package/dist/cjs/stories/cpnProductcard.stories.js.map +7 -0
  286. package/dist/cjs/stories/cpnTitle.stories.d.ts +14 -0
  287. package/dist/cjs/stories/cpnTitle.stories.js +2 -0
  288. package/dist/cjs/stories/cpnTitle.stories.js.map +7 -0
  289. package/dist/cjs/stories/dialog.stories.d.ts +1 -1
  290. package/dist/cjs/stories/dialog.stories.js.map +1 -1
  291. package/dist/cjs/stories/drawer.stories.js +1 -1
  292. package/dist/cjs/stories/drawer.stories.js.map +2 -2
  293. package/dist/cjs/stories/drop-down.stories.js +1 -1
  294. package/dist/cjs/stories/drop-down.stories.js.map +2 -2
  295. package/dist/cjs/stories/evaluate.stories.d.ts +4 -1
  296. package/dist/cjs/stories/evaluate.stories.js +1 -1
  297. package/dist/cjs/stories/evaluate.stories.js.map +2 -2
  298. package/dist/cjs/stories/graphic.stories.d.ts +22 -29
  299. package/dist/cjs/stories/graphic.stories.js +1 -1
  300. package/dist/cjs/stories/graphic.stories.js.map +3 -3
  301. package/dist/cjs/stories/graphicAttractionBlock.stories.d.ts +6 -0
  302. package/dist/cjs/stories/graphicAttractionBlock.stories.js +2 -0
  303. package/dist/cjs/stories/graphicAttractionBlock.stories.js.map +7 -0
  304. package/dist/cjs/stories/grid.stories.d.ts +3 -3
  305. package/dist/cjs/stories/grid.stories.js.map +2 -2
  306. package/dist/cjs/stories/heading.stories.d.ts +3 -2
  307. package/dist/cjs/stories/heading.stories.js +12 -1
  308. package/dist/cjs/stories/heading.stories.js.map +3 -3
  309. package/dist/cjs/stories/input-number.stories.d.ts +1 -1
  310. package/dist/cjs/stories/link.stories.d.ts +4 -17
  311. package/dist/cjs/stories/link.stories.js +1 -1
  312. package/dist/cjs/stories/link.stories.js.map +2 -2
  313. package/dist/cjs/stories/marquee.stories.d.ts +6 -25
  314. package/dist/cjs/stories/marquee.stories.js +1 -1
  315. package/dist/cjs/stories/marquee.stories.js.map +3 -3
  316. package/dist/cjs/stories/mediaplayerBase.stories.d.ts +6 -0
  317. package/dist/cjs/stories/mediaplayerBase.stories.js +2 -0
  318. package/dist/cjs/stories/mediaplayerBase.stories.js.map +7 -0
  319. package/dist/cjs/stories/mediaplayerMulti.stories.d.ts +16 -0
  320. package/dist/cjs/stories/mediaplayerMulti.stories.js +2 -0
  321. package/dist/cjs/stories/mediaplayerMulti.stories.js.map +7 -0
  322. package/dist/cjs/stories/picture.stories.d.ts +1 -1
  323. package/dist/cjs/stories/popover.stories.js.map +1 -1
  324. package/dist/cjs/stories/radio.stories.d.ts +2 -2
  325. package/dist/cjs/stories/radio.stories.js.map +1 -1
  326. package/dist/cjs/stories/shelfDisplay.stories.d.ts +4 -1
  327. package/dist/cjs/stories/shelfDisplay.stories.js +1 -1
  328. package/dist/cjs/stories/shelfDisplay.stories.js.map +3 -3
  329. package/dist/cjs/stories/skeleton.stories.js +1 -1
  330. package/dist/cjs/stories/skeleton.stories.js.map +2 -2
  331. package/dist/cjs/stories/slogan.stories.d.ts +4 -7
  332. package/dist/cjs/stories/slogan.stories.js +2 -22
  333. package/dist/cjs/stories/slogan.stories.js.map +3 -3
  334. package/dist/cjs/stories/tabs.stories.d.ts +20 -7
  335. package/dist/cjs/stories/tabs.stories.js +1 -1
  336. package/dist/cjs/stories/tabs.stories.js.map +2 -2
  337. package/dist/cjs/stories/text.stories.d.ts +4 -3
  338. package/dist/cjs/stories/text.stories.js +11 -2
  339. package/dist/cjs/stories/text.stories.js.map +3 -3
  340. package/dist/cjs/types/props.d.ts +38 -0
  341. package/dist/cjs/types/props.js +1 -1
  342. package/dist/cjs/types/props.js.map +1 -1
  343. package/dist/esm/biz-components/AccordionCards/index.d.ts +31 -19
  344. package/dist/esm/biz-components/AccordionCards/index.js +1 -1
  345. package/dist/esm/biz-components/AccordionCards/index.js.map +3 -3
  346. package/dist/esm/biz-components/AiuiProvider/index.d.ts +10 -0
  347. package/dist/esm/biz-components/AiuiProvider/index.js +2 -0
  348. package/dist/esm/biz-components/AiuiProvider/index.js.map +7 -0
  349. package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +4 -18
  350. package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
  351. package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  352. package/dist/esm/biz-components/BrandEquity/types.d.ts +17 -0
  353. package/dist/esm/biz-components/Category/SwiperCategory.d.ts +19 -0
  354. package/dist/esm/biz-components/Category/SwiperCategory.js +2 -0
  355. package/dist/esm/biz-components/Category/SwiperCategory.js.map +7 -0
  356. package/dist/esm/biz-components/Category/index.d.ts +26 -8
  357. package/dist/esm/biz-components/Category/index.js +1 -1
  358. package/dist/esm/biz-components/Category/index.js.map +3 -3
  359. package/dist/esm/biz-components/Evaluate/index.d.ts +27 -9
  360. package/dist/esm/biz-components/Evaluate/index.js +1 -1
  361. package/dist/esm/biz-components/Evaluate/index.js.map +3 -3
  362. package/dist/esm/biz-components/Graphic/index.d.ts +19 -13
  363. package/dist/esm/biz-components/Graphic/index.js +1 -1
  364. package/dist/esm/biz-components/Graphic/index.js.map +3 -3
  365. package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +25 -0
  366. package/dist/esm/biz-components/GraphicAttractionBlock/index.js +2 -0
  367. package/dist/esm/biz-components/GraphicAttractionBlock/index.js.map +7 -0
  368. package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +4 -6
  369. package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
  370. package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  371. package/dist/esm/biz-components/HeroBanner/index.js.map +1 -1
  372. package/dist/esm/biz-components/HeroBanner/types.d.ts +25 -21
  373. package/dist/esm/biz-components/Marquee/Marquee.d.ts +18 -0
  374. package/dist/esm/biz-components/Marquee/Marquee.js +2 -0
  375. package/dist/esm/biz-components/Marquee/Marquee.js.map +7 -0
  376. package/dist/esm/biz-components/Marquee/index.d.ts +2 -23
  377. package/dist/esm/biz-components/Marquee/index.js +1 -1
  378. package/dist/esm/biz-components/Marquee/index.js.map +4 -4
  379. package/dist/esm/biz-components/Marquee/type.d.ts +33 -0
  380. package/dist/esm/biz-components/Marquee/type.js +1 -0
  381. package/dist/esm/biz-components/Marquee/type.js.map +7 -0
  382. package/dist/esm/biz-components/MediaPlayerBase/index.d.ts +7 -0
  383. package/dist/esm/biz-components/MediaPlayerBase/index.js +2 -0
  384. package/dist/esm/biz-components/MediaPlayerBase/index.js.map +7 -0
  385. package/dist/esm/biz-components/MediaPlayerBase/right.d.ts +1 -0
  386. package/dist/esm/biz-components/MediaPlayerBase/right.js +2 -0
  387. package/dist/esm/biz-components/MediaPlayerBase/right.js.map +7 -0
  388. package/dist/esm/biz-components/MediaPlayerBase/types.d.ts +14 -0
  389. package/dist/esm/biz-components/MediaPlayerBase/types.js +1 -0
  390. package/dist/esm/biz-components/MediaPlayerBase/types.js.map +7 -0
  391. package/dist/esm/biz-components/MediaPlayerMulti/index.d.ts +6 -0
  392. package/dist/esm/biz-components/MediaPlayerMulti/index.js +2 -0
  393. package/dist/esm/biz-components/MediaPlayerMulti/index.js.map +7 -0
  394. package/dist/esm/biz-components/MediaPlayerMulti/types.d.ts +18 -0
  395. package/dist/esm/biz-components/MediaPlayerMulti/types.js +1 -0
  396. package/dist/esm/biz-components/MediaPlayerMulti/types.js.map +7 -0
  397. package/dist/esm/biz-components/MediaPlayerSticky/index.d.ts +11 -0
  398. package/dist/esm/biz-components/MediaPlayerSticky/index.js +2 -0
  399. package/dist/esm/biz-components/MediaPlayerSticky/index.js.map +7 -0
  400. package/dist/esm/biz-components/MediaPlayerSticky/types.d.ts +16 -0
  401. package/dist/esm/biz-components/MediaPlayerSticky/types.js +1 -0
  402. package/dist/esm/biz-components/MediaPlayerSticky/types.js.map +7 -0
  403. package/dist/esm/biz-components/MemberEquity/index.d.ts +5 -6
  404. package/dist/esm/biz-components/MemberEquity/index.js +4 -39
  405. package/dist/esm/biz-components/MemberEquity/index.js.map +3 -3
  406. package/dist/esm/biz-components/MemberEquity/types.d.ts +25 -20
  407. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +8 -0
  408. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +2 -0
  409. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +7 -0
  410. package/dist/esm/biz-components/MultiLayoutGraphicBlock/index.d.ts +2 -0
  411. package/dist/esm/biz-components/MultiLayoutGraphicBlock/index.js +2 -0
  412. package/dist/esm/biz-components/MultiLayoutGraphicBlock/index.js.map +7 -0
  413. package/dist/esm/biz-components/MultiLayoutGraphicBlock/types.d.ts +30 -0
  414. package/dist/esm/biz-components/MultiLayoutGraphicBlock/types.js +1 -0
  415. package/dist/esm/biz-components/MultiLayoutGraphicBlock/types.js.map +7 -0
  416. package/dist/esm/biz-components/ShelfDisplay/index.d.ts +48 -28
  417. package/dist/esm/biz-components/ShelfDisplay/index.js +7 -9
  418. package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
  419. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.d.ts +23 -0
  420. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +2 -0
  421. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +7 -0
  422. package/dist/esm/biz-components/Slogan/index.d.ts +6 -6
  423. package/dist/esm/biz-components/Slogan/index.js +1 -1
  424. package/dist/esm/biz-components/Slogan/index.js.map +3 -3
  425. package/dist/esm/biz-components/Slogan/types.d.ts +19 -12
  426. package/dist/esm/biz-components/Spacer/index.d.ts +7 -0
  427. package/dist/esm/biz-components/Spacer/index.js +2 -0
  428. package/dist/esm/biz-components/Spacer/index.js.map +7 -0
  429. package/dist/esm/biz-components/Spacer/types.d.ts +10 -0
  430. package/dist/esm/biz-components/Spacer/types.js +1 -0
  431. package/dist/esm/biz-components/Spacer/types.js.map +7 -0
  432. package/dist/esm/biz-components/SwiperBox/index.d.ts +4 -0
  433. package/dist/esm/biz-components/SwiperBox/index.js +2 -0
  434. package/dist/esm/biz-components/SwiperBox/index.js.map +7 -0
  435. package/dist/esm/biz-components/SwiperBox/types.d.ts +16 -0
  436. package/dist/esm/biz-components/SwiperBox/types.js +2 -0
  437. package/dist/esm/biz-components/SwiperBox/types.js.map +7 -0
  438. package/dist/esm/biz-components/Tabs/Tabs.d.ts +7 -0
  439. package/dist/esm/biz-components/Tabs/Tabs.js +2 -0
  440. package/dist/esm/biz-components/Tabs/Tabs.js.map +7 -0
  441. package/dist/esm/biz-components/Tabs/index.d.ts +1 -0
  442. package/dist/esm/biz-components/Tabs/index.js +2 -0
  443. package/dist/esm/biz-components/Tabs/index.js.map +7 -0
  444. package/dist/esm/biz-components/Tabs/types.d.ts +20 -0
  445. package/dist/esm/biz-components/Tabs/types.js +1 -0
  446. package/dist/esm/biz-components/Tabs/types.js.map +7 -0
  447. package/dist/esm/biz-components/Title/index.d.ts +7 -0
  448. package/dist/esm/biz-components/Title/index.js +2 -0
  449. package/dist/esm/biz-components/Title/index.js.map +7 -0
  450. package/dist/esm/biz-components/Title/types.d.ts +27 -0
  451. package/dist/esm/biz-components/Title/types.js +1 -0
  452. package/dist/esm/biz-components/Title/types.js.map +7 -0
  453. package/dist/esm/biz-components/index.d.ts +12 -2
  454. package/dist/esm/biz-components/index.js +1 -1
  455. package/dist/esm/biz-components/index.js.map +3 -3
  456. package/dist/esm/components/alert.d.ts +1 -1
  457. package/dist/esm/components/avatar.d.ts +1 -1
  458. package/dist/esm/components/avatar.js +1 -1
  459. package/dist/esm/components/avatar.js.map +2 -2
  460. package/dist/esm/components/badge.d.ts +2 -2
  461. package/dist/esm/components/badge.js +1 -1
  462. package/dist/esm/components/badge.js.map +2 -2
  463. package/dist/esm/components/button.d.ts +3 -4
  464. package/dist/esm/components/button.js +1 -1
  465. package/dist/esm/components/button.js.map +3 -3
  466. package/dist/esm/components/checkbox.d.ts +2 -2
  467. package/dist/esm/components/checkbox.js +1 -1
  468. package/dist/esm/components/checkbox.js.map +2 -2
  469. package/dist/esm/components/color.d.ts +1 -1
  470. package/dist/esm/components/container.d.ts +9 -0
  471. package/dist/esm/components/container.js +1 -1
  472. package/dist/esm/components/container.js.map +3 -3
  473. package/dist/esm/components/dialog.js +1 -1
  474. package/dist/esm/components/dialog.js.map +2 -2
  475. package/dist/esm/components/drawer.js +1 -1
  476. package/dist/esm/components/drawer.js.map +2 -2
  477. package/dist/esm/components/drop-down.js +1 -1
  478. package/dist/esm/components/drop-down.js.map +3 -3
  479. package/dist/esm/components/gird.js +1 -1
  480. package/dist/esm/components/gird.js.map +2 -2
  481. package/dist/esm/components/heading.d.ts +4 -3
  482. package/dist/esm/components/heading.js +1 -1
  483. package/dist/esm/components/heading.js.map +3 -3
  484. package/dist/esm/components/index.d.ts +18 -18
  485. package/dist/esm/components/index.js +1 -1
  486. package/dist/esm/components/index.js.map +3 -3
  487. package/dist/esm/components/input-number.d.ts +2 -2
  488. package/dist/esm/components/input.d.ts +2 -2
  489. package/dist/esm/components/input.js +1 -1
  490. package/dist/esm/components/input.js.map +1 -1
  491. package/dist/esm/components/link.d.ts +6 -8
  492. package/dist/esm/components/link.js +1 -1
  493. package/dist/esm/components/link.js.map +3 -3
  494. package/dist/esm/components/picture.d.ts +1 -1
  495. package/dist/esm/components/picture.js +1 -1
  496. package/dist/esm/components/picture.js.map +3 -3
  497. package/dist/esm/components/radio.d.ts +2 -2
  498. package/dist/esm/components/radio.js +1 -1
  499. package/dist/esm/components/radio.js.map +2 -2
  500. package/dist/esm/components/skeleton.js +3 -3
  501. package/dist/esm/components/skeleton.js.map +1 -1
  502. package/dist/esm/components/tabs.d.ts +3 -1
  503. package/dist/esm/components/tabs.js +1 -1
  504. package/dist/esm/components/tabs.js.map +3 -3
  505. package/dist/esm/components/text.d.ts +4 -3
  506. package/dist/esm/components/text.js +1 -1
  507. package/dist/esm/components/text.js.map +3 -3
  508. package/dist/esm/components/theme.d.ts +1 -1
  509. package/dist/esm/components/theme.js.map +1 -1
  510. package/dist/esm/cpn-components/CpnBanner/index.d.ts +3 -0
  511. package/dist/esm/cpn-components/CpnBanner/index.js +2 -0
  512. package/dist/esm/cpn-components/CpnBanner/index.js.map +7 -0
  513. package/dist/esm/cpn-components/CpnBanner/types.d.ts +43 -0
  514. package/dist/esm/cpn-components/CpnBanner/types.js +1 -0
  515. package/dist/esm/cpn-components/CpnBanner/types.js.map +7 -0
  516. package/dist/esm/cpn-components/CpnCountDown/index.d.ts +3 -0
  517. package/dist/esm/cpn-components/CpnCountDown/index.js +2 -0
  518. package/dist/esm/cpn-components/CpnCountDown/index.js.map +7 -0
  519. package/dist/esm/cpn-components/CpnCountDown/types.d.ts +28 -0
  520. package/dist/esm/cpn-components/CpnCountDown/types.js +1 -0
  521. package/dist/esm/cpn-components/CpnCountDown/types.js.map +7 -0
  522. package/dist/esm/cpn-components/CpnNavigation/index.d.ts +3 -0
  523. package/dist/esm/cpn-components/CpnNavigation/index.js +2 -0
  524. package/dist/esm/cpn-components/CpnNavigation/index.js.map +7 -0
  525. package/dist/esm/cpn-components/CpnNavigation/types.d.ts +19 -0
  526. package/dist/esm/cpn-components/CpnNavigation/types.js +1 -0
  527. package/dist/esm/cpn-components/CpnNavigation/types.js.map +7 -0
  528. package/dist/esm/cpn-components/CpnProductCard/index.d.ts +3 -0
  529. package/dist/esm/cpn-components/CpnProductCard/index.js +2 -0
  530. package/dist/esm/cpn-components/CpnProductCard/index.js.map +7 -0
  531. package/dist/esm/cpn-components/CpnProductCard/types.d.ts +109 -0
  532. package/dist/esm/cpn-components/CpnProductCard/types.js +1 -0
  533. package/dist/esm/cpn-components/CpnProductCard/types.js.map +7 -0
  534. package/dist/esm/cpn-components/CpnTitle/index.d.ts +3 -0
  535. package/dist/esm/cpn-components/CpnTitle/index.js +2 -0
  536. package/dist/esm/cpn-components/CpnTitle/index.js.map +7 -0
  537. package/dist/esm/cpn-components/CpnTitle/types.d.ts +10 -0
  538. package/dist/esm/cpn-components/CpnTitle/types.js +1 -0
  539. package/dist/esm/cpn-components/CpnTitle/types.js.map +7 -0
  540. package/dist/esm/cpn-components/index.d.ts +5 -0
  541. package/dist/esm/cpn-components/index.js +2 -0
  542. package/dist/esm/cpn-components/index.js.map +7 -0
  543. package/dist/esm/hooks/useCountDown.d.ts +10 -0
  544. package/dist/esm/hooks/useCountDown.js +2 -0
  545. package/dist/esm/hooks/useCountDown.js.map +7 -0
  546. package/dist/esm/hooks/useEXposure.d.ts +13 -0
  547. package/dist/esm/hooks/useEXposure.js +2 -0
  548. package/dist/esm/hooks/useEXposure.js.map +7 -0
  549. package/dist/esm/hooks/useIntersectionObserver.d.ts +17 -0
  550. package/dist/esm/hooks/useIntersectionObserver.js +2 -0
  551. package/dist/esm/hooks/useIntersectionObserver.js.map +7 -0
  552. package/dist/esm/shared/Styles.d.ts +5 -9
  553. package/dist/esm/shared/Styles.js +1 -1
  554. package/dist/esm/shared/Styles.js.map +3 -3
  555. package/dist/esm/shared/getKeyPropsString.d.ts +4 -0
  556. package/dist/esm/shared/getKeyPropsString.js +2 -0
  557. package/dist/esm/shared/getKeyPropsString.js.map +7 -0
  558. package/dist/esm/shared/mimeType.d.ts +1 -0
  559. package/dist/esm/shared/mimeType.js +2 -0
  560. package/dist/esm/shared/mimeType.js.map +7 -0
  561. package/dist/esm/shared/simpleHash.d.ts +1 -0
  562. package/dist/esm/shared/simpleHash.js +2 -0
  563. package/dist/esm/shared/simpleHash.js.map +7 -0
  564. package/dist/esm/shared/track.d.ts +1 -0
  565. package/dist/esm/shared/track.js +2 -0
  566. package/dist/esm/shared/track.js.map +7 -0
  567. package/dist/esm/shared/trackUrlRef.d.ts +7 -0
  568. package/dist/esm/shared/trackUrlRef.js +2 -0
  569. package/dist/esm/shared/trackUrlRef.js.map +7 -0
  570. package/dist/esm/stories/HeroBanner.stories.d.ts +4 -6
  571. package/dist/esm/stories/HeroBanner.stories.js +2 -2
  572. package/dist/esm/stories/HeroBanner.stories.js.map +3 -3
  573. package/dist/esm/stories/MemberEquity.stories.d.ts +1 -1
  574. package/dist/esm/stories/MemberEquity.stories.js +3 -3
  575. package/dist/esm/stories/MemberEquity.stories.js.map +2 -2
  576. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.d.ts +8 -0
  577. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js +2 -0
  578. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.js.map +7 -0
  579. package/dist/esm/stories/accordionCards.stories.d.ts +22 -13
  580. package/dist/esm/stories/accordionCards.stories.js +1 -1
  581. package/dist/esm/stories/accordionCards.stories.js.map +2 -2
  582. package/dist/esm/stories/alert.stories.d.ts +1 -1
  583. package/dist/esm/stories/avatar.stories.d.ts +1 -2
  584. package/dist/esm/stories/avatar.stories.js +1 -1
  585. package/dist/esm/stories/avatar.stories.js.map +3 -3
  586. package/dist/esm/stories/badge.stories.js.map +1 -1
  587. package/dist/esm/stories/bizTabs.stories.d.ts +7 -0
  588. package/dist/esm/stories/bizTabs.stories.js +2 -0
  589. package/dist/esm/stories/bizTabs.stories.js.map +7 -0
  590. package/dist/esm/stories/brandEquity.stories.d.ts +4 -6
  591. package/dist/esm/stories/brandEquity.stories.js +1 -1
  592. package/dist/esm/stories/brandEquity.stories.js.map +3 -3
  593. package/dist/esm/stories/button.stories.d.ts +0 -9
  594. package/dist/esm/stories/button.stories.js +1 -1
  595. package/dist/esm/stories/button.stories.js.map +2 -2
  596. package/dist/esm/stories/carousel.stories.d.ts +3 -3
  597. package/dist/esm/stories/carousel.stories.js +1 -1
  598. package/dist/esm/stories/carousel.stories.js.map +2 -2
  599. package/dist/esm/stories/category.stories.d.ts +4 -1
  600. package/dist/esm/stories/category.stories.js +1 -1
  601. package/dist/esm/stories/category.stories.js.map +3 -3
  602. package/dist/esm/stories/checkbox.stories.d.ts +1 -1
  603. package/dist/esm/stories/checkbox.stories.js.map +1 -1
  604. package/dist/esm/stories/container.stories.d.ts +4 -0
  605. package/dist/esm/stories/container.stories.js +1 -1
  606. package/dist/esm/stories/container.stories.js.map +2 -2
  607. package/dist/esm/stories/cpnBanner.stories.d.ts +14 -0
  608. package/dist/esm/stories/cpnBanner.stories.js +2 -0
  609. package/dist/esm/stories/cpnBanner.stories.js.map +7 -0
  610. package/dist/esm/stories/cpnCountdown.stories.d.ts +12 -0
  611. package/dist/esm/stories/cpnCountdown.stories.js +2 -0
  612. package/dist/esm/stories/cpnCountdown.stories.js.map +7 -0
  613. package/dist/esm/stories/cpnNavigation.stories.d.ts +14 -0
  614. package/dist/esm/stories/cpnNavigation.stories.js +2 -0
  615. package/dist/esm/stories/cpnNavigation.stories.js.map +7 -0
  616. package/dist/esm/stories/cpnProductcard.stories.d.ts +14 -0
  617. package/dist/esm/stories/cpnProductcard.stories.js +2 -0
  618. package/dist/esm/stories/cpnProductcard.stories.js.map +7 -0
  619. package/dist/esm/stories/cpnTitle.stories.d.ts +14 -0
  620. package/dist/esm/stories/cpnTitle.stories.js +2 -0
  621. package/dist/esm/stories/cpnTitle.stories.js.map +7 -0
  622. package/dist/esm/stories/dialog.stories.d.ts +1 -1
  623. package/dist/esm/stories/dialog.stories.js.map +1 -1
  624. package/dist/esm/stories/drawer.stories.js +1 -1
  625. package/dist/esm/stories/drawer.stories.js.map +3 -3
  626. package/dist/esm/stories/drop-down.stories.js +1 -1
  627. package/dist/esm/stories/drop-down.stories.js.map +2 -2
  628. package/dist/esm/stories/evaluate.stories.d.ts +4 -1
  629. package/dist/esm/stories/evaluate.stories.js +1 -1
  630. package/dist/esm/stories/evaluate.stories.js.map +2 -2
  631. package/dist/esm/stories/graphic.stories.d.ts +22 -29
  632. package/dist/esm/stories/graphic.stories.js +1 -1
  633. package/dist/esm/stories/graphic.stories.js.map +2 -2
  634. package/dist/esm/stories/graphicAttractionBlock.stories.d.ts +6 -0
  635. package/dist/esm/stories/graphicAttractionBlock.stories.js +2 -0
  636. package/dist/esm/stories/graphicAttractionBlock.stories.js.map +7 -0
  637. package/dist/esm/stories/grid.stories.d.ts +3 -3
  638. package/dist/esm/stories/grid.stories.js.map +2 -2
  639. package/dist/esm/stories/heading.stories.d.ts +3 -2
  640. package/dist/esm/stories/heading.stories.js +12 -1
  641. package/dist/esm/stories/heading.stories.js.map +3 -3
  642. package/dist/esm/stories/input-number.stories.d.ts +1 -1
  643. package/dist/esm/stories/link.stories.d.ts +4 -17
  644. package/dist/esm/stories/link.stories.js +1 -1
  645. package/dist/esm/stories/link.stories.js.map +3 -3
  646. package/dist/esm/stories/marquee.stories.d.ts +6 -25
  647. package/dist/esm/stories/marquee.stories.js +1 -1
  648. package/dist/esm/stories/marquee.stories.js.map +3 -3
  649. package/dist/esm/stories/mediaplayerBase.stories.d.ts +6 -0
  650. package/dist/esm/stories/mediaplayerBase.stories.js +2 -0
  651. package/dist/esm/stories/mediaplayerBase.stories.js.map +7 -0
  652. package/dist/esm/stories/mediaplayerMulti.stories.d.ts +16 -0
  653. package/dist/esm/stories/mediaplayerMulti.stories.js +2 -0
  654. package/dist/esm/stories/mediaplayerMulti.stories.js.map +7 -0
  655. package/dist/esm/stories/picture.stories.d.ts +1 -1
  656. package/dist/esm/stories/popover.stories.js.map +1 -1
  657. package/dist/esm/stories/radio.stories.d.ts +2 -2
  658. package/dist/esm/stories/radio.stories.js.map +1 -1
  659. package/dist/esm/stories/shelfDisplay.stories.d.ts +4 -1
  660. package/dist/esm/stories/shelfDisplay.stories.js +1 -1
  661. package/dist/esm/stories/shelfDisplay.stories.js.map +2 -2
  662. package/dist/esm/stories/skeleton.stories.js +1 -1
  663. package/dist/esm/stories/skeleton.stories.js.map +2 -2
  664. package/dist/esm/stories/slogan.stories.d.ts +4 -7
  665. package/dist/esm/stories/slogan.stories.js +3 -23
  666. package/dist/esm/stories/slogan.stories.js.map +2 -2
  667. package/dist/esm/stories/tabs.stories.d.ts +20 -7
  668. package/dist/esm/stories/tabs.stories.js +1 -1
  669. package/dist/esm/stories/tabs.stories.js.map +3 -3
  670. package/dist/esm/stories/text.stories.d.ts +4 -3
  671. package/dist/esm/stories/text.stories.js +11 -2
  672. package/dist/esm/stories/text.stories.js.map +3 -3
  673. package/dist/esm/types/props.d.ts +38 -0
  674. package/dist/tokens/anker.css +22 -0
  675. package/dist/tokens/base.css +164 -0
  676. package/dist/tokens/eufy.css +19 -0
  677. package/dist/tokens/eufyMake.css +10 -0
  678. package/dist/tokens/solix.css +9 -0
  679. package/dist/tokens/soundcore.css +16 -0
  680. package/package.json +45 -14
  681. package/style.css +307 -147
  682. package/tailwind.config.d.ts +2 -0
  683. package/{tailwind.config.ts → tailwind.config.js} +25 -67
  684. package/dist/cjs/biz-components/Shelf/Shelf.d.ts +0 -8
  685. package/dist/cjs/biz-components/Shelf/Shelf.js +0 -2
  686. package/dist/cjs/biz-components/Shelf/Shelf.js.map +0 -7
  687. package/dist/cjs/biz-components/Shelf/index.d.ts +0 -1
  688. package/dist/cjs/biz-components/Shelf/index.js.map +0 -7
  689. package/dist/cjs/biz-components/Shelf/types.d.ts +0 -6
  690. package/dist/cjs/biz-components/Shelf/types.js +0 -2
  691. package/dist/cjs/biz-components/Shelf/types.js.map +0 -7
  692. package/dist/cjs/stories/shelf.stories.d.ts +0 -17
  693. package/dist/cjs/stories/shelf.stories.js +0 -2
  694. package/dist/cjs/stories/shelf.stories.js.map +0 -7
  695. package/dist/esm/biz-components/Shelf/Shelf.d.ts +0 -8
  696. package/dist/esm/biz-components/Shelf/Shelf.js +0 -2
  697. package/dist/esm/biz-components/Shelf/Shelf.js.map +0 -7
  698. package/dist/esm/biz-components/Shelf/index.d.ts +0 -1
  699. package/dist/esm/biz-components/Shelf/index.js +0 -2
  700. package/dist/esm/biz-components/Shelf/index.js.map +0 -7
  701. package/dist/esm/biz-components/Shelf/types.d.ts +0 -6
  702. package/dist/esm/stories/shelf.stories.d.ts +0 -17
  703. package/dist/esm/stories/shelf.stories.js +0 -2
  704. package/dist/esm/stories/shelf.stories.js.map +0 -7
  705. /package/dist/esm/biz-components/{Shelf → BrandEquity}/types.js +0 -0
  706. /package/dist/esm/biz-components/{Shelf → BrandEquity}/types.js.map +0 -0
@@ -1,10 +1,8 @@
1
- import{Fragment as g,jsx as e,jsxs as s}from"react/jsx-runtime";import"react";import{cn as o}from"../../helpers/utils.js";import b from"../../components/picture.js";import p from"../../components/button.js";const v=({className:l="",shape:a="square",itemShape:d="square",products:i=[],primaryButton:n,secondaryButton:x,event:r})=>{const m=t=>{r?.primaryButton?.onClick?.(t)},c=t=>{r?.secondaryButton?.onClick(t)};return e(g,{children:e("div",{className:o("w-full",l),children:e("div",{className:o("flex overflow-hidden"),children:e("div",{className:o("w-full flex","gap-3 laptop:gap-4 overflow-x-auto overflow-y-hidden"),children:i?.map((t,u)=>s("div",{className:o("bg-[#EAEAEC] p-4 flex flex-col min-w-[288px] max-w-[288px]","laptop:min-w-[316px] laptop:max-w-[316px] desktop:min-w-[404px] desktop:max-w-[404px] desktop:pt-4 desktop:px-6 desktop:pb-6",d==="round"?"rounded-2xl":"rounded-none"),children:[e("div",{className:o("h-[137px] overflow-hidden relative inline-block mb-2","desktop:mb-3 desktop:h-[195px]"),children:e(b,{source:t?.img||"",className:"h-full [&_img]:w-auto object-cover flex justify-center"})}),e("div",{className:"mb-1 flex gap-1 flex-wrap desktop:mb-2",children:t?.tagItems?.map((f,k)=>e("div",{className:"border-2 border-[#00BEFA] px-2 py-1 text-sm font-bold rounded-3xl text-[#00BEFA] desktop:text-base",children:f},k))}),e("p",{className:"flex-1 font-bold text-xl text-[#1D1D1F] leading-[1.2] tracking-[-0.04em] desktop:text-2xl",children:t?.title||""}),e("h3",{className:"mt-1 mb-5 text-sm font-semibold text-[#1D1D1F] leading-[1.2] tracking-[-0.02em] desktop:mt-2 desktop:mb-6 desktop:text-lg",children:t?.subTitle||""}),s("div",{className:"mb-2 flex items-center",children:[e("div",{className:"font-bold text-xl text-[#1D1D1F] desktop:text-2xl",children:t?.price||""}),e("div",{className:"ml-1 font-bold text-xl text-[#86868C] desktop:text-2xl",children:t?.basePrice||""})]}),s("div",{className:"flex items-center gap-3",children:[e(p,{variant:"primary",onClick:()=>m(t),className:`
2
- flex-1 bg-transparent border-[#1D1D1F] border box-border text-[#1D1D1F] text-xs laptop:text-sm desktop:text-base
3
- px-4 laptop:px-6 desktop:px-7 hover:bg-transparent hover:text-black py-2 laptop:py-2.5 desktop:py-3 tracking-[-0.04em]
4
- ${a==="round"?"rounded-[20px] desktop:rounded-3xl":""}
5
- `,children:n||""}),e(p,{variant:"secondary",onClick:()=>c(t),className:`
6
- flex-1 bg-[#1D1D1F] border-[#1D1D1F] border text-white box-border text-xs laptop:text-sm desktop:text-base
7
- px-4 laptop:px-6 desktop:px-7 py-2 laptop:py-2.5 desktop:py-3 tracking-[-0.04em]
8
- ${a==="round"?"rounded-[20px] desktop:rounded-3xl":""}
9
- `,children:x||""})]})]},u))})})})})};var B=v;export{B as default};
1
+ "use client";import{jsx as t,jsxs as p}from"react/jsx-runtime";import A,{useState as T,useEffect as V,useRef as q,useImperativeHandle as H}from"react";import{cn as c}from"../../helpers/utils.js";import L from"../../components/picture.js";import{Tabs as R,TabsList as $,TabsTrigger as z}from"../../components/tabs.js";import D from"../../components/button.js";import U from"../Title/index.js";import j from"../SwiperBox/index.js";import{withStyles as Q}from"../../shared/Styles.js";import{formatVariantPrice as F}from"./shelfDisplay.js";import{useMediaQuery as G}from"react-responsive";import{useAiuiContext as J}from"../AiuiProvider/index.js";import{useExposure as K}from"../../hooks/useEXposure.js";import{gaTrack as O}from"../../shared/track.js";const N="image",B="product_shelf",W=({data:e,configuration:r})=>{const d=(n,i)=>r?.event?.primaryButton?.(n,i+1),u=(n,i)=>r?.event?.secondaryButton?.(n,i+1),{price:f,basePrice:b}=F({locale:"us",amount:e?.price.amount||0,baseAmount:e?.compareAtPrice?.amount||e?.price.amount||0,currencyCode:e?.price.currencyCode||"USD"}),l=()=>{const n=e?.sku,i=e?.variants;return i?.find(v=>v?.sku===n)?.image?.url||i?.[0]?.image?.url||""};return p("div",{className:c("laptop:pt-4 laptop:px-6 laptop:pb-6 bg-container-secondary-1 hover:bg-info-white flex size-full cursor-pointer flex-col overflow-hidden p-4 duration-300",r?.itemShape==="round"?"rounded-2xl":"rounded-none"),children:[t("div",{className:c("lg-desktop:mb-3 lg-desktop:h-[195px] relative mb-2 inline-block h-[140px] overflow-hidden"),children:t(L,{source:l(),className:"flex h-full justify-center object-cover [&_img]:w-auto"})}),t("div",{className:"mb-1 box-border flex h-8 flex-wrap gap-1 overflow-hidden",children:e?.tags?.slice(0,1)?.map?.((n,i)=>t("div",{className:"tablet:text-base border-info-secondary text-info-primary box-border h-full rounded-2xl border-2 px-2 pt-1 text-sm font-bold",children:n},i))}),t("p",{title:e?.title||"",className:"desktop:text-2xl desktop:leading-7 text-info-primary line-clamp-2 max-h-[48px] flex-1 text-xl font-bold",children:e?.title||""}),t("h3",{title:e?.description||"",className:"tablet:mt-2 tablet:mb-3 desktop:text-lg text-info-primary mb-2 mt-1 h-6 truncate text-sm font-semibold",children:e?.description||""}),p("div",{className:"mb-2 flex items-center",children:[t("div",{className:"tablet:text-2xl text-info-primary text-xl font-bold",children:f||""}),t("div",{className:"tablet:text-2xl text-info-secondary ml-1 text-xl font-bold",children:b||""})]}),p("div",{className:c("flex items-center gap-3",r.direction==="vertical"?"flex-col":""),children:[t(D,{variant:"primary",onClick:()=>d(e,r?.index),className:`
2
+ laptop:text-sm desktop:text-base text-xs
3
+ ${r.direction==="vertical"?"w-full":""}
4
+ `,children:r?.primaryButton||""}),t(D,{variant:"secondary",onClick:()=>u(e,r?.index),className:`
5
+ laptop:text-sm desktop:text-base text-xs
6
+ ${r.direction==="vertical"?"w-full":""}
7
+ `,children:r?.secondaryButton||""})]})]},e?.id||e?.handle)},X=A.forwardRef(({data:e,buildData:r,className:d="",key:u,event:f},b)=>{const[l,n]=T(""),[i,h]=T([]),v=G({query:"(max-width: 768px)"}),x=q(null);H(b,()=>x.current);const{trackingData:P}=J(),{profileActivated:g}=P;K(x,{componentType:N,componentName:B,memberActiveStatus:g?"active":"not active",componentTitle:e?.title,navigation:l});const{productsTab:m=[],productsCard:I=[],title:k,align:_="left",isShowTab:w=!0,tabShape:C="square",...M}=e,y=a=>{const s=a?.map(o=>{const S=r?.products?.find(E=>E?.handle===o?.handle);if(S)return{sku:o.sku,...S}})?.filter(o=>o);h(s)};return V(()=>{if(w){n(m?.[0]?.tab||""),y(m?.[0]?.data||[]);return}y(I)},[]),p("div",{ref:x,className:c("min-h-[400px] w-full",d,{"aiui-dark":e?.theme==="dark"}),children:[k&&t(U,{data:{title:k}}),w&&t("div",{className:`${v?"w-full overflow-hidden":""}`,children:t(R,{shape:C,align:_,value:l,onValueChange:a=>{n(a);const s=m?.find(o=>o?.tab===a);y(s?.data||[]),O({event:"ga4Event",event_name:"component_click",member_active_status:g?"active":"not active",event_parameters:{page_group:"Activity Page_Home Page",component_type:N,component_name:B,component_title:e?.title,component_position:1,navigation:a}})},className:"mb-8",children:t($,{children:m?.map((a,s)=>t(z,{value:a?.tab||"",children:a?.tab},s))})})}),t(j,{className:"!overflow-visible",id:"ShelfDisplay"+u,data:{list:i,configuration:{...M,event:f}},Slide:W,breakpoints:{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:1.1},768:{spaceBetween:16,freeMode:!1,slidesPerView:2},1024:{spaceBetween:16,freeMode:!1,slidesPerView:3},1440:{spaceBetween:16,freeMode:!1,slidesPerView:4}}})]})});var pe=Q(X);export{pe as default};
10
8
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/ShelfDisplay/index.tsx"],
4
- "sourcesContent": ["import React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport Button from '../../components/button.js'\nexport interface ShelfDisplayItem {\n /** \u4EA7\u54C1\u56FE\u7247*/\n img: string\n /** \u6298\u6263\u540E\u4EF7\u683C*/\n price: string\n title: string\n /** \u6298\u6263\u524D\u4EF7\u683C*/\n basePrice: string\n subTitle: string\n /** \u6807\u7B7E*/\n tagItems: string[]\n}\n\nexport interface ShelfDisplayProps {\n products: ShelfDisplayItem[]\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n className?: string\n /** \u4E3B\u9898\u8272*/\n theme?: 'light' | 'dark'\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n /** \u526F\u6309\u94AE\u914D\u7F6E */\n secondaryButton?: string\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: {\n primaryButton?: {\n onClick: (v: any) => void\n },\n secondaryButton?: {\n onClick: (v: any) => void\n }\n },\n}\n\nconst ShelfDisplay: React.FC<ShelfDisplayProps> = ({\n className = '',\n shape = 'square',\n itemShape = 'square',\n products = [],\n primaryButton,\n secondaryButton,\n event\n}) => {\n\n const onPrimaryButton = (params: ShelfDisplayItem) => {\n event?.primaryButton?.onClick?.(params)\n }\n\n const onSecondaryButton = (params: ShelfDisplayItem) => {\n event?.secondaryButton?.onClick(params)\n }\n\n return (\n <>\n <div className={cn('w-full', className)}>\n <div className={cn('flex overflow-hidden')}>\n <div className={cn('w-full flex', 'gap-3 laptop:gap-4 overflow-x-auto overflow-y-hidden')}>\n {products?.map((item, index) => {\n return (\n <div\n key={index}\n className={cn(\n 'bg-[#EAEAEC] p-4 flex flex-col min-w-[288px] max-w-[288px]',\n 'laptop:min-w-[316px] laptop:max-w-[316px] desktop:min-w-[404px] desktop:max-w-[404px] desktop:pt-4 desktop:px-6 desktop:pb-6',\n itemShape === 'round' ? 'rounded-2xl' : 'rounded-none'\n )}\n >\n <div className={cn('h-[137px] overflow-hidden relative inline-block mb-2', 'desktop:mb-3 desktop:h-[195px]')}>\n <Picture\n source={item?.img || ''}\n className=\"h-full [&_img]:w-auto object-cover flex justify-center\"\n />\n </div>\n <div className=\"mb-1 flex gap-1 flex-wrap desktop:mb-2\">\n {item?.tagItems?.map((tag, index) => {\n return (\n <div\n key={index}\n className=\"border-2 border-[#00BEFA] px-2 py-1 text-sm font-bold rounded-3xl text-[#00BEFA] desktop:text-base\"\n >\n {tag}\n </div>\n )\n })}\n </div>\n <p className=\"flex-1 font-bold text-xl text-[#1D1D1F] leading-[1.2] tracking-[-0.04em] desktop:text-2xl\">\n {item?.title || ''}\n </p>\n <h3 className=\"mt-1 mb-5 text-sm font-semibold text-[#1D1D1F] leading-[1.2] tracking-[-0.02em] desktop:mt-2 desktop:mb-6 desktop:text-lg\">\n {item?.subTitle || ''}\n </h3>\n <div className=\"mb-2 flex items-center\">\n <div className=\"font-bold text-xl text-[#1D1D1F] desktop:text-2xl\">\n {item?.price || ''}\n </div>\n <div className=\"ml-1 font-bold text-xl text-[#86868C] desktop:text-2xl\">\n {item?.basePrice || ''}\n </div>\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div className=\"flex items-center gap-3\">\n <Button\n variant=\"primary\"\n onClick={() => onPrimaryButton(item)}\n className={`\n flex-1 bg-transparent border-[#1D1D1F] border box-border text-[#1D1D1F] text-xs laptop:text-sm desktop:text-base\n px-4 laptop:px-6 desktop:px-7 hover:bg-transparent hover:text-black py-2 laptop:py-2.5 desktop:py-3 tracking-[-0.04em]\n ${shape === 'round' ? 'rounded-[20px] desktop:rounded-3xl' : ''}\n `}\n >\n {primaryButton || ''}\n </Button>\n <Button\n variant=\"secondary\"\n onClick={() => onSecondaryButton(item)}\n className={`\n flex-1 bg-[#1D1D1F] border-[#1D1D1F] border text-white box-border text-xs laptop:text-sm desktop:text-base\n px-4 laptop:px-6 desktop:px-7 py-2 laptop:py-2.5 desktop:py-3 tracking-[-0.04em]\n ${shape === 'round' ? 'rounded-[20px] desktop:rounded-3xl' : ''}\n `}\n >\n {secondaryButton || ''}\n </Button>\n </div>\n </div>\n )\n })}\n </div>\n </div>\n </div>\n </>\n )\n}\n\nexport default ShelfDisplay\n"],
5
- "mappings": "AA4DI,mBAAAA,EAegB,OAAAC,EAuBF,QAAAC,MAtCd,oBA5DJ,MAAkB,QAClB,OAAS,MAAAC,MAAU,yBACnB,OAAOC,MAAa,8BACpB,OAAOC,MAAY,6BAsCnB,MAAMC,EAA4C,CAAC,CACjD,UAAAC,EAAY,GACZ,MAAAC,EAAQ,SACR,UAAAC,EAAY,SACZ,SAAAC,EAAW,CAAC,EACZ,cAAAC,EACA,gBAAAC,EACA,MAAAC,CACF,IAAM,CAEJ,MAAMC,EAAmBC,GAA6B,CACpDF,GAAO,eAAe,UAAUE,CAAM,CACxC,EAEMC,EAAqBD,GAA6B,CACtDF,GAAO,iBAAiB,QAAQE,CAAM,CACxC,EAEA,OACEd,EAAAD,EAAA,CACE,SAAAC,EAAC,OAAI,UAAWE,EAAG,SAAUI,CAAS,EACpC,SAAAN,EAAC,OAAI,UAAWE,EAAG,sBAAsB,EACvC,SAAAF,EAAC,OAAI,UAAWE,EAAG,cAAe,sDAAsD,EACrF,SAAAO,GAAU,IAAI,CAACO,EAAMC,IAElBhB,EAAC,OAEC,UAAWC,EACT,6DACA,+HACAM,IAAc,QAAU,cAAgB,cAC1C,EAEA,UAAAR,EAAC,OAAI,UAAWE,EAAG,uDAAwD,gCAAgC,EACzG,SAAAF,EAACG,EAAA,CACC,OAAQa,GAAM,KAAO,GACrB,UAAU,yDACZ,EACF,EACAhB,EAAC,OAAI,UAAU,yCACZ,SAAAgB,GAAM,UAAU,IAAI,CAACE,EAAKD,IAEvBjB,EAAC,OAEC,UAAU,qGAET,SAAAkB,GAHID,CAIP,CAEH,EACH,EACAjB,EAAC,KAAE,UAAU,4FACV,SAAAgB,GAAM,OAAS,GAClB,EACAhB,EAAC,MAAG,UAAU,4HACX,SAAAgB,GAAM,UAAY,GACrB,EACAf,EAAC,OAAI,UAAU,yBACb,UAAAD,EAAC,OAAI,UAAU,oDACZ,SAAAgB,GAAM,OAAS,GAClB,EACAhB,EAAC,OAAI,UAAU,yDACZ,SAAAgB,GAAM,WAAa,GACtB,GACF,EAEAf,EAAC,OAAI,UAAU,0BACb,UAAAD,EAACI,EAAA,CACC,QAAQ,UACR,QAAS,IAAMS,EAAgBG,CAAI,EACnC,UAAW;AAAA;AAAA;AAAA,0BAGPT,IAAU,QAAU,qCAAuC,EAAE;AAAA,wBAGhE,SAAAG,GAAiB,GACpB,EACAV,EAACI,EAAA,CACC,QAAQ,YACR,QAAS,IAAMW,EAAkBC,CAAI,EACrC,UAAW;AAAA;AAAA;AAAA,0BAGPT,IAAU,QAAU,qCAAuC,EAAE;AAAA,wBAGhE,SAAAI,GAAmB,GACtB,GACF,IA/DKM,CAgEP,CAEH,EACH,EACF,EACF,EACF,CAEJ,EAEA,IAAOE,EAAQd",
6
- "names": ["Fragment", "jsx", "jsxs", "cn", "Picture", "Button", "ShelfDisplay", "className", "shape", "itemShape", "products", "primaryButton", "secondaryButton", "event", "onPrimaryButton", "params", "onSecondaryButton", "item", "index", "tag", "ShelfDisplay_default"]
4
+ "sourcesContent": ["'use client'\nimport React, { useState, useEffect, useRef, useImperativeHandle } from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport Picture from '../../components/picture.js'\nimport { Tabs, TabsList, TabsTrigger } from '../../components/tabs.js'\nimport Button from '../../components/button.js'\nimport Title from '../Title/index.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport { formatVariantPrice } from './shelfDisplay.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { useExposure } from '../../hooks/useEXposure.js'\nimport { gaTrack } from '../../shared/track.js'\n\nconst componentType = 'image'\nconst componentName = 'product_shelf'\n\nexport interface ShelfDisplayItem {\n id?: string\n /** \u4EA7\u54C1\u56FE\u7247*/\n img?: {\n url: string\n }\n handle?: string\n sku?: string\n /** \u6298\u6263\u540E\u4EF7\u683C*/\n price?: string\n title?: string\n /** \u6298\u6263\u524D\u4EF7\u683C*/\n basePrice?: string\n subTitle?: string\n /** \u6807\u7B7E*/\n tagItems?: string[]\n tab?: string\n data?: ShelfDisplayItem[]\n}\n\ntype EventType = {\n primaryButton?: (v: any, index: number) => void\n secondaryButton?: (v: any, index: number) => void\n}\n\nexport interface ShelfDisplayProps {\n data: {\n title?: string\n isShowTab?: boolean\n direction?: 'horizontal' | 'vertical'\n align?: 'left' | 'center' | 'right'\n productsTab?: any\n productsCard?: any\n /** \u5361\u7247\u5F62\u72B6 */\n itemShape?: 'round' | 'square'\n /** \u6309\u94AE\u5F62\u72B6 */\n shape?: 'round' | 'square'\n /** \u6807\u7B7E\u9875\u5F62\u72B6*/\n tabShape?: 'rounded' | 'square'\n /** \u4E3B\u6309\u94AE\u914D\u7F6E */\n primaryButton?: string\n /** \u526F\u6309\u94AE\u914D\u7F6E */\n secondaryButton?: string\n theme?: 'light' | 'dark'\n }\n buildData?: {\n categories: any[]\n products: any[]\n }\n /** \u6309\u94AE\u4E8B\u4EF6*/\n event?: EventType\n className?: string\n key?: string\n}\n\nconst ShelfDisplayItem = ({ data, configuration }: { data: any; configuration?: any }) => {\n const onPrimaryButton = (params: ShelfDisplayItem, index: number) =>\n configuration?.event?.primaryButton?.(params, index + 1)\n\n const onSecondaryButton = (params: ShelfDisplayItem, index: number) =>\n configuration?.event?.secondaryButton?.(params, index + 1)\n\n const { price, basePrice } = formatVariantPrice({\n locale: 'us',\n amount: data?.price.amount || 0,\n baseAmount: data?.compareAtPrice?.amount || data?.price.amount || 0,\n currencyCode: data?.price.currencyCode || 'USD',\n })\n\n const handleUrl = () => {\n const sku = data?.sku\n const skuArray = data?.variants\n const findSku = skuArray?.find((item: any) => item?.sku === sku)\n return findSku?.image?.url || skuArray?.[0]?.image?.url || ''\n }\n\n return (\n <div\n key={data?.id || data?.handle}\n className={cn(\n 'laptop:pt-4 laptop:px-6 laptop:pb-6 bg-container-secondary-1 hover:bg-info-white flex size-full cursor-pointer flex-col overflow-hidden p-4 duration-300',\n configuration?.itemShape === 'round' ? 'rounded-2xl' : 'rounded-none'\n )}\n >\n <div className={cn('lg-desktop:mb-3 lg-desktop:h-[195px] relative mb-2 inline-block h-[140px] overflow-hidden')}>\n <Picture source={handleUrl()} className=\"flex h-full justify-center object-cover [&_img]:w-auto\" />\n </div>\n <div className=\"mb-1 box-border flex h-8 flex-wrap gap-1 overflow-hidden\">\n {data?.tags?.slice(0, 1)?.map?.((item: any, index: number) => {\n return (\n <div\n key={index}\n className=\"tablet:text-base border-info-secondary text-info-primary box-border h-full rounded-2xl border-2 px-2 pt-1 text-sm font-bold\"\n >\n {item}\n </div>\n )\n })}\n </div>\n <p\n title={data?.title || ''}\n className=\"desktop:text-2xl desktop:leading-7 text-info-primary line-clamp-2 max-h-[48px] flex-1 text-xl font-bold\"\n >\n {data?.title || ''}\n </p>\n <h3\n title={data?.description || ''}\n className=\"tablet:mt-2 tablet:mb-3 desktop:text-lg text-info-primary mb-2 mt-1 h-6 truncate text-sm font-semibold\"\n >\n {data?.description || ''}\n </h3>\n <div className=\"mb-2 flex items-center\">\n <div className=\"tablet:text-2xl text-info-primary text-xl font-bold\">{price || ''}</div>\n <div className=\"tablet:text-2xl text-info-secondary ml-1 text-xl font-bold\">{basePrice || ''}</div>\n </div>\n {/* \u6309\u94AE\u7EC4 */}\n <div className={cn('flex items-center gap-3', configuration.direction === 'vertical' ? 'flex-col' : '')}>\n <Button\n variant=\"primary\"\n onClick={() => onPrimaryButton(data, configuration?.index)}\n className={`\n laptop:text-sm desktop:text-base text-xs\n ${configuration.direction === 'vertical' ? 'w-full' : ''}\n `}\n >\n {configuration?.primaryButton || ''}\n </Button>\n <Button\n variant=\"secondary\"\n onClick={() => onSecondaryButton(data, configuration?.index)}\n className={`\n laptop:text-sm desktop:text-base text-xs\n ${configuration.direction === 'vertical' ? 'w-full' : ''}\n `}\n >\n {configuration?.secondaryButton || ''}\n </Button>\n </div>\n </div>\n )\n}\n\nconst ShelfDisplay = React.forwardRef<HTMLDivElement, ShelfDisplayProps>(\n ({ data, buildData, className = '', key, event }, ref) => {\n const [tabId, setTabId] = useState<string>('')\n const [currentItems, setCurrentItems] = useState<ShelfDisplayItem[]>([])\n\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n\n const innerRef = useRef<HTMLDivElement>(null)\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n const { trackingData } = useAiuiContext()\n const { profileActivated } = trackingData\n\n useExposure(innerRef, {\n componentType: componentType,\n componentName: componentName,\n memberActiveStatus: profileActivated ? 'active' : 'not active',\n componentTitle: data?.title,\n navigation: tabId,\n })\n\n const {\n productsTab = [],\n productsCard = [],\n title,\n align = 'left',\n isShowTab = true,\n tabShape = 'square',\n ...other\n } = data\n\n const handleCurrentTab = (currentData: ShelfDisplayItem[]) => {\n const newCurrentData = currentData\n ?.map(item => {\n const findData = buildData?.products?.find(params => params?.handle === item?.handle)\n if (findData) {\n return {\n sku: item.sku,\n ...findData,\n }\n }\n })\n ?.filter(item => item)\n setCurrentItems(newCurrentData)\n }\n\n useEffect(() => {\n if (isShowTab) {\n setTabId(productsTab?.[0]?.tab || '')\n handleCurrentTab(productsTab?.[0]?.data || [])\n return\n }\n handleCurrentTab(productsCard)\n }, [])\n\n return (\n <div ref={innerRef} className={cn('min-h-[400px] w-full', className, { 'aiui-dark': data?.theme === 'dark' })}>\n {title && <Title data={{ title: title }} />}\n {isShowTab && (\n <div className={`${isMobile ? 'w-full overflow-hidden' : ''}`}>\n <Tabs\n shape={tabShape}\n align={align}\n value={tabId}\n onValueChange={v => {\n setTabId(v)\n const findData = productsTab?.find((item: any) => item?.tab === v)\n handleCurrentTab(findData?.data || [])\n gaTrack({\n event: 'ga4Event',\n event_name: 'component_click',\n member_active_status: profileActivated ? 'active' : 'not active',\n event_parameters: {\n page_group: 'Activity Page_Home Page',\n component_type: componentType,\n component_name: componentName,\n component_title: data?.title,\n component_position: 1,\n navigation: v,\n },\n })\n }}\n className=\"mb-8\"\n >\n <TabsList>\n {productsTab?.map((item: any, index: number) => {\n return (\n <TabsTrigger key={index} value={item?.tab || ''}>\n {item?.tab}\n </TabsTrigger>\n )\n })}\n </TabsList>\n </Tabs>\n </div>\n )}\n <SwiperBox\n className=\"!overflow-visible\"\n id={'ShelfDisplay' + key}\n data={{ list: currentItems, configuration: { ...other, event: event } }}\n Slide={ShelfDisplayItem}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1.1,\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 2,\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 3,\n },\n 1440: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: 4,\n },\n }}\n />\n </div>\n )\n }\n)\n\nexport default withStyles(ShelfDisplay)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "React", "useState", "useEffect", "useRef", "useImperativeHandle", "cn", "Picture", "Tabs", "TabsList", "TabsTrigger", "Button", "Title", "SwiperBox", "withStyles", "formatVariantPrice", "useMediaQuery", "useAiuiContext", "useExposure", "gaTrack", "componentType", "componentName", "ShelfDisplayItem", "data", "configuration", "onPrimaryButton", "params", "index", "onSecondaryButton", "price", "basePrice", "handleUrl", "sku", "skuArray", "item", "ShelfDisplay", "buildData", "className", "key", "event", "ref", "tabId", "setTabId", "currentItems", "setCurrentItems", "isMobile", "innerRef", "trackingData", "profileActivated", "productsTab", "productsCard", "title", "align", "isShowTab", "tabShape", "other", "handleCurrentTab", "currentData", "newCurrentData", "findData", "v", "ShelfDisplay_default"]
7
7
  }
@@ -0,0 +1,23 @@
1
+ export declare const PRICE_SYMBOL: any;
2
+ export declare const languageTerritory: (locale: string) => string;
3
+ export declare function formatPrice({ amount, currencyCode, locale, maximumFractionDigits, minimumFractionDigits, removeTrailingZeros, }: {
4
+ amount: number;
5
+ currencyCode: string;
6
+ locale: string;
7
+ maximumFractionDigits?: number;
8
+ minimumFractionDigits?: number;
9
+ removeTrailingZeros?: boolean;
10
+ }): string;
11
+ export declare function formatVariantPrice({ amount, baseAmount, currencyCode, locale, maximumFractionDigits, minimumFractionDigits, removeTrailingZeros, }: {
12
+ baseAmount: number;
13
+ amount: number;
14
+ currencyCode: string;
15
+ locale: string;
16
+ maximumFractionDigits?: number;
17
+ minimumFractionDigits?: number;
18
+ removeTrailingZeros?: boolean;
19
+ }): {
20
+ price: string;
21
+ basePrice: string | undefined;
22
+ discount: string | null;
23
+ };
@@ -0,0 +1,2 @@
1
+ const a={us:"$",uk:"\xA3",ca:"$",eu:"\u20AC",fr:"\u20AC",de:"\u20AC",vn:"\u20AB",cl:"$",sg:"$",ae:"AED"},o=e=>({us:"en-us",uk:"en-gb",ca:"en-ca",au:"en-au",eu:"en",fr:"fr-fr",de:"de-de",vn:"vi-vn",sg:"en-sg","ae-en":"ae-en",plus:"en-us",cl:"es-cl"})[e]||"";function m({amount:e,currencyCode:n,locale:i,maximumFractionDigits:r,minimumFractionDigits:u,removeTrailingZeros:c=!1}){let t=new Intl.NumberFormat(o(i),{style:"currency",currency:n||"USD",minimumFractionDigits:r===0?0:u,maximumFractionDigits:r}).format(e);return["eu-de","eu-en","de","eu"].includes(i)&&(t=t?.toString()?.replace(/[\s]/g,"")),c&&(t=t.replace(/(\.\d*?[1-9])0+\b/,"$1").replace(/\.0+\b/,"").replace(/(\,\d*?[1-9])0+\b/,"$1").replace(/\,0+\b/,"")),t}function b({amount:e,baseAmount:n,currencyCode:i,locale:r,maximumFractionDigits:u,minimumFractionDigits:c,removeTrailingZeros:s}){if(typeof Intl>"u")return{price:`${a[r]}${e}`,basePrice:`${a[r]}${n}`,discount:`${a[r]}${n-e||0}`};const t=n>e,f=new Intl.NumberFormat(o(r),{style:"percent"}),g=t?f.format((n-e)/n):null,d=m({amount:e,currencyCode:i,locale:r,removeTrailingZeros:s}),l=t?m({amount:n,currencyCode:i,locale:r,maximumFractionDigits:u,minimumFractionDigits:c,removeTrailingZeros:s}):void 0;return{price:d,basePrice:l,discount:g}}export{a as PRICE_SYMBOL,m as formatPrice,b as formatVariantPrice,o as languageTerritory};
2
+ //# sourceMappingURL=shelfDisplay.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/ShelfDisplay/shelfDisplay.ts"],
4
+ "sourcesContent": ["/* eslint-disable no-useless-escape */\nexport const PRICE_SYMBOL = {\n us: '$',\n uk: '\u00A3',\n ca: '$',\n eu: '\u20AC',\n fr: '\u20AC',\n de: '\u20AC',\n vn: '\u20AB',\n cl: '$',\n sg: '$',\n ae: 'AED',\n} as any\n\nexport const languageTerritory = (locale: string) =>\n // https://unicode-org.github.io/cldr-staging/charts/37/supplemental/language_territory_information.html\n ({\n us: 'en-us',\n uk: 'en-gb',\n ca: 'en-ca',\n au: 'en-au',\n eu: 'en',\n fr: 'fr-fr',\n de: 'de-de',\n vn: 'vi-vn',\n sg: 'en-sg',\n 'ae-en': 'ae-en',\n plus: 'en-us',\n cl: 'es-cl',\n })[locale] || ''\n\nexport function formatPrice({\n amount,\n currencyCode,\n locale,\n maximumFractionDigits,\n minimumFractionDigits,\n removeTrailingZeros = false,\n}: {\n amount: number\n currencyCode: string\n locale: string\n maximumFractionDigits?: number\n minimumFractionDigits?: number\n removeTrailingZeros?: boolean\n}) {\n const formatCurrency = new Intl.NumberFormat(languageTerritory(locale), {\n style: 'currency',\n currency: currencyCode || 'USD',\n minimumFractionDigits: maximumFractionDigits === 0 ? 0 : minimumFractionDigits,\n maximumFractionDigits,\n })\n\n let formattedValue = formatCurrency.format(amount)\n\n if (['eu-de', 'eu-en', 'de', 'eu'].includes(locale)) {\n formattedValue = formattedValue?.toString()?.replace(/[\\s]/g, '')\n }\n\n if (removeTrailingZeros) {\n // Adjust the regex to match comma as decimal separator\n formattedValue = formattedValue\n .replace(/(\\.\\d*?[1-9])0+\\b/, '$1')\n .replace(/\\.0+\\b/, '')\n .replace(/(\\,\\d*?[1-9])0+\\b/, '$1')\n .replace(/\\,0+\\b/, '')\n }\n\n return formattedValue\n}\n\nexport function formatVariantPrice({\n amount,\n baseAmount,\n currencyCode,\n locale,\n maximumFractionDigits,\n minimumFractionDigits,\n removeTrailingZeros,\n}: {\n baseAmount: number\n amount: number\n currencyCode: string\n locale: string\n maximumFractionDigits?: number\n minimumFractionDigits?: number\n removeTrailingZeros?: boolean\n}) {\n if (typeof Intl === 'undefined') {\n return {\n price: `${PRICE_SYMBOL[locale]}${amount}`,\n basePrice: `${PRICE_SYMBOL[locale]}${baseAmount}`,\n discount: `${PRICE_SYMBOL[locale]}${baseAmount - amount || 0}`,\n }\n }\n\n const hasDiscount = baseAmount > amount\n const formatDiscount = new Intl.NumberFormat(languageTerritory(locale), {\n style: 'percent',\n })\n const discount = hasDiscount ? formatDiscount.format((baseAmount - amount) / baseAmount) : null\n\n const price = formatPrice({ amount, currencyCode, locale, removeTrailingZeros })\n const basePrice = hasDiscount\n ? formatPrice({\n amount: baseAmount,\n currencyCode,\n locale,\n maximumFractionDigits,\n minimumFractionDigits,\n removeTrailingZeros,\n })\n : undefined\n\n return { price, basePrice, discount }\n}\n"],
5
+ "mappings": "AACO,MAAMA,EAAe,CAC1B,GAAI,IACJ,GAAI,OACJ,GAAI,IACJ,GAAI,SACJ,GAAI,SACJ,GAAI,SACJ,GAAI,SACJ,GAAI,IACJ,GAAI,IACJ,GAAI,KACN,EAEaC,EAAqBC,IAE/B,CACC,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,KACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,GAAI,QACJ,QAAS,QACT,KAAM,QACN,GAAI,OACN,GAAGA,CAAM,GAAK,GAET,SAASC,EAAY,CAC1B,OAAAC,EACA,aAAAC,EACA,OAAAH,EACA,sBAAAI,EACA,sBAAAC,EACA,oBAAAC,EAAsB,EACxB,EAOG,CAQD,IAAIC,EAPmB,IAAI,KAAK,aAAaR,EAAkBC,CAAM,EAAG,CACtE,MAAO,WACP,SAAUG,GAAgB,MAC1B,sBAAuBC,IAA0B,EAAI,EAAIC,EACzD,sBAAAD,CACF,CAAC,EAEmC,OAAOF,CAAM,EAEjD,MAAI,CAAC,QAAS,QAAS,KAAM,IAAI,EAAE,SAASF,CAAM,IAChDO,EAAiBA,GAAgB,SAAS,GAAG,QAAQ,QAAS,EAAE,GAG9DD,IAEFC,EAAiBA,EACd,QAAQ,oBAAqB,IAAI,EACjC,QAAQ,SAAU,EAAE,EACpB,QAAQ,oBAAqB,IAAI,EACjC,QAAQ,SAAU,EAAE,GAGlBA,CACT,CAEO,SAASC,EAAmB,CACjC,OAAAN,EACA,WAAAO,EACA,aAAAN,EACA,OAAAH,EACA,sBAAAI,EACA,sBAAAC,EACA,oBAAAC,CACF,EAQG,CACD,GAAI,OAAO,KAAS,IAClB,MAAO,CACL,MAAO,GAAGR,EAAaE,CAAM,CAAC,GAAGE,CAAM,GACvC,UAAW,GAAGJ,EAAaE,CAAM,CAAC,GAAGS,CAAU,GAC/C,SAAU,GAAGX,EAAaE,CAAM,CAAC,GAAGS,EAAaP,GAAU,CAAC,EAC9D,EAGF,MAAMQ,EAAcD,EAAaP,EAC3BS,EAAiB,IAAI,KAAK,aAAaZ,EAAkBC,CAAM,EAAG,CACtE,MAAO,SACT,CAAC,EACKY,EAAWF,EAAcC,EAAe,QAAQF,EAAaP,GAAUO,CAAU,EAAI,KAErFI,EAAQZ,EAAY,CAAE,OAAAC,EAAQ,aAAAC,EAAc,OAAAH,EAAQ,oBAAAM,CAAoB,CAAC,EACzEQ,EAAYJ,EACdT,EAAY,CACV,OAAQQ,EACR,aAAAN,EACA,OAAAH,EACA,sBAAAI,EACA,sBAAAC,EACA,oBAAAC,CACF,CAAC,EACD,OAEJ,MAAO,CAAE,MAAAO,EAAO,UAAAC,EAAW,SAAAF,CAAS,CACtC",
6
+ "names": ["PRICE_SYMBOL", "languageTerritory", "locale", "formatPrice", "amount", "currencyCode", "maximumFractionDigits", "minimumFractionDigits", "removeTrailingZeros", "formattedValue", "formatVariantPrice", "baseAmount", "hasDiscount", "formatDiscount", "discount", "price", "basePrice"]
7
+ }
@@ -1,9 +1,9 @@
1
1
  import React from 'react';
2
2
  import type { SloganProps } from './types.js';
3
- declare const _default: {
4
- (props: Omit<SloganProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps> & {
5
- className?: string;
6
- }): import("react/jsx-runtime").JSX.Element;
7
- displayName: string;
8
- };
3
+ export declare const componentType = "copy";
4
+ export declare const componentName = "brand_slogan";
5
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<SloganProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps> & {
6
+ className?: string;
7
+ data?: Record<string, any>;
8
+ }, "ref"> & React.RefAttributes<any>>;
9
9
  export default _default;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as o}from"react/jsx-runtime";import p from"react";import{cn as n}from"../../helpers/utils.js";import{Heading as r,Text as d}from"../../components/index.js";import{withStyles as f}from"../../shared/Styles.js";const a=p.forwardRef(({title:s,features:e,className:x},i)=>o("div",{ref:i,className:n("laptop:flex-row laptop:items-end laptop:justify-between flex w-full flex-col items-start justify-center text-center","tablet:px-6 laptop:px-8 desktop:px-16 lg-desktop:px-32 px-4","tablet:py-10 laptop:py-12 desktop:py-16 lg-desktop:py-20 gap-8 py-8",x),children:[t(r,{as:"h2",size:2,weight:"bold",align:"left",className:"slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none text-[#1D1D1F]",children:s}),e&&e.length>0&&t("div",{className:"flex w-full max-w-[423px] flex-row items-center gap-3",children:e.slice(0,3).map((m,l)=>o(p.Fragment,{children:[l>0&&t("div",{className:"w-px self-stretch bg-[#D9D9D9]"}),t("div",{className:"flex-1",children:t(d,{align:"left",className:"slogan-feature-text laptop:line-clamp-2 tablet:text-[13px] laptop:text-[14px] line-clamp-3 text-[12px] font-medium leading-[1.4] text-[#1D1D1F]",html:m})})]},l))})]}));a.displayName="Slogan";var v=f(a);export{v as default};
1
+ "use client";import{jsx as a,jsxs as $}from"react/jsx-runtime";import s,{useImperativeHandle as Y,useRef as x}from"react";import{useGSAP as _}from"@gsap/react";import{gsap as h}from"gsap";import{SplitText as R}from"gsap/dist/SplitText";import{ScrollTrigger as v}from"gsap/dist/ScrollTrigger";import{cn as c}from"../../helpers/utils.js";import{Heading as q,Text as B}from"../../components/index.js";import{withStyles as J}from"../../shared/Styles.js";import{useExposure as K}from"../../hooks/useEXposure.js";import{useAiuiContext as O}from"../AiuiProvider/index.js";const Q="copy",V="brand_slogan";function W(p=[],u=3){const m=[];for(let e=0;e<p.length;e+=u)m.push(p.slice(e,e+u));return m}const A=s.forwardRef(({data:p,className:u=""},m)=>{const{title:e,features:n=[],featureChunkSize:H=3}=p,[b,N]=s.useState(0),[D,y]=s.useState(!0),w=x(null),f=W(n,H),T=f.length,l=n.length>H,G=l?[...f,f[0]]:f,E=40;Y(m,()=>w.current);const{trackingData:L}=O(),{profileActivated:C}=L;K(w,{componentType:Q,componentName:V,componentTitle:e,memberActiveStatus:C?"active":"not active"}),s.useEffect(()=>{if(!l)return;const t=setInterval(()=>{N(r=>r+1),y(!0)},3e3);return()=>clearInterval(t)},[T,l]),s.useEffect(()=>{if(l)if(b===T){const t=setTimeout(()=>{y(!1),N(0)},500);return()=>clearTimeout(t)}else y(!0)},[b,T,l]);const i=x(null),k=x(null),g=x(null);return _(()=>{if(h.registerPlugin(v,R),!i.current)return;g.current=new R(i.current,{type:"words",wordsClass:"word"});const t=i.current?.clientHeight||100,r=g.current.words;return h.set(r,{opacity:0}),v.create({trigger:i.current,start:"bottom bottom-=6%",end:`bottom+=${t*2+80}px bottom-=6%`,scrub:!0,onUpdate:o=>{const d=o.progress,I=r.length,P=1/I,M=.5;r.forEach((z,j)=>{const F=j/I*(1-M),U=P*(1+M);let S=(d-F)/U;S=Math.max(0,Math.min(S,1)),h.set(z,{opacity:S})})}}),n&&n.length>0&&v.create({trigger:k.current,start:`bottom+=${t*2}px bottom-=6%`,end:`bottom+=${t*2+100}px bottom-=6%`,onUpdate:o=>{h.set(k.current,{opacity:o.progress})}}),()=>{g.current&&g.current.revert(),v.getAll().forEach(o=>o.kill())}},[]),$("div",{ref:w,className:c("slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center",u),children:[a(q,{ref:i,as:"h2",size:2,weight:"bold",align:"left",className:c("slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none"),html:e}),n&&n.length>0&&a("div",{className:c("relative w-full max-w-[500px] overflow-hidden",`tablet:h-[${E}px]`),children:a("div",{className:c(["flex flex-col",D?"transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]":"!transition-none"]),style:{transform:`translateY(-${b*E}px)`},children:G.map((t,r)=>a("div",{className:c("flex w-full flex-row items-stretch gap-3 overflow-hidden",`tablet:h-[${E}px]`),children:t.map((o,d)=>$(s.Fragment,{children:[d>0&&a("div",{className:"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]"}),a(B,{size:3,align:"left",as:"p",className:"slogan-feature-text tablet:text-[13px] laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]",html:o.title})]},d))},r))})})]})});A.displayName="Slogan";var it=J(A);export{V as componentName,Q as componentType,it as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/Slogan/index.tsx"],
4
- "sourcesContent": ["import React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ title, features, className }, ref) => {\n return (\n <div\n ref={ref}\n className={cn(\n 'laptop:flex-row laptop:items-end laptop:justify-between flex w-full flex-col items-start justify-center text-center',\n 'tablet:px-6 laptop:px-8 desktop:px-16 lg-desktop:px-32 px-4',\n 'tablet:py-10 laptop:py-12 desktop:py-16 lg-desktop:py-20 gap-8 py-8',\n className\n )}\n >\n <Heading\n as=\"h2\"\n size={2}\n weight={'bold'}\n align={'left'}\n className=\"slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none text-[#1D1D1F]\"\n >\n {title}\n </Heading>\n {features && features.length > 0 && (\n <div className=\"flex w-full max-w-[423px] flex-row items-center gap-3\">\n {features.slice(0, 3).map((feature, index) => (\n <React.Fragment key={index}>\n {index > 0 && <div className=\"w-px self-stretch bg-[#D9D9D9]\" />}\n <div className=\"flex-1\">\n <Text\n align=\"left\"\n className=\"slogan-feature-text laptop:line-clamp-2 tablet:text-[13px] laptop:text-[14px] line-clamp-3 text-[12px] font-medium leading-[1.4] text-[#1D1D1F]\"\n html={feature}\n />\n </div>\n </React.Fragment>\n ))}\n </div>\n )}\n </div>\n )\n})\n\nSlogan.displayName = 'Slogan'\n\nexport default withStyles(Slogan)\n"],
5
- "mappings": "AAiBM,cAAAA,EAYM,QAAAC,MAZN,oBAjBN,OAAOC,MAAW,QAClB,OAAS,MAAAC,MAAU,yBACnB,OAAS,WAAAC,EAAS,QAAAC,MAAY,4BAC9B,OAAS,cAAAC,MAAkB,yBAG3B,MAAMC,EAASL,EAAM,WAAwC,CAAC,CAAE,MAAAM,EAAO,SAAAC,EAAU,UAAAC,CAAU,EAAGC,IAE1FV,EAAC,OACC,IAAKU,EACL,UAAWR,EACT,sHACA,8DACA,sEACAO,CACF,EAEA,UAAAV,EAACI,EAAA,CACC,GAAG,KACH,KAAM,EACN,OAAQ,OACR,MAAO,OACP,UAAU,sHAET,SAAAI,EACH,EACCC,GAAYA,EAAS,OAAS,GAC7BT,EAAC,OAAI,UAAU,wDACZ,SAAAS,EAAS,MAAM,EAAG,CAAC,EAAE,IAAI,CAACG,EAASC,IAClCZ,EAACC,EAAM,SAAN,CACE,UAAAW,EAAQ,GAAKb,EAAC,OAAI,UAAU,iCAAiC,EAC9DA,EAAC,OAAI,UAAU,SACb,SAAAA,EAACK,EAAA,CACC,MAAM,OACN,UAAU,kJACV,KAAMO,EACR,EACF,IARmBC,CASrB,CACD,EACH,GAEJ,CAEH,EAEDN,EAAO,YAAc,SAErB,IAAOO,EAAQR,EAAWC,CAAM",
6
- "names": ["jsx", "jsxs", "React", "cn", "Heading", "Text", "withStyles", "Slogan", "title", "features", "className", "ref", "feature", "index", "Slogan_default"]
4
+ "sourcesContent": ["'use client'\nimport React, { useImperativeHandle, useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading, Text } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { SloganProps } from './types.js'\nimport { useExposure } from '../../hooks/useEXposure.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\n\nexport const componentType = 'copy'\nexport const componentName = 'brand_slogan'\n\nfunction chunkArray(array: { title: string }[] = [], size: number = 3) {\n const result = []\n for (let i = 0; i < array.length; i += size) {\n result.push(array.slice(i, i + size))\n }\n return result\n}\n\nconst Slogan = React.forwardRef<HTMLDivElement, SloganProps>(({ data, className = '' }, ref) => {\n const { title, features = [], featureChunkSize = 3 } = data\n const [groupIndex, setGroupIndex] = React.useState(0)\n const [isTransitioning, setIsTransitioning] = React.useState(true)\n const innerRef = useRef<HTMLDivElement>(null)\n const featuresGroups = chunkArray(features, featureChunkSize)\n const totalGroups = featuresGroups.length\n const needCarousel = features.length > featureChunkSize\n const displayGroups = needCarousel ? [...featuresGroups, featuresGroups[0]] : featuresGroups\n const groupHeight = 40\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n const { trackingData } = useAiuiContext()\n const { profileActivated } = trackingData\n useExposure(innerRef, {\n componentType,\n componentName,\n componentTitle: title,\n memberActiveStatus: profileActivated ? 'active' : 'not active',\n })\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u542F\u7528\u5B9A\u65F6\u5668\n React.useEffect(() => {\n if (!needCarousel) return\n const timer = setInterval(() => {\n setGroupIndex(i => i + 1)\n setIsTransitioning(true)\n }, 3000)\n return () => clearInterval(timer)\n }, [totalGroups, needCarousel])\n\n // \u53EA\u5728\u9700\u8981\u8F6E\u64AD\u65F6\u5904\u7406\u65E0\u7F1D\u8DF3\u8F6C\n React.useEffect(() => {\n if (!needCarousel) return\n if (groupIndex === totalGroups) {\n const handle = setTimeout(() => {\n setIsTransitioning(false)\n setGroupIndex(0)\n }, 500) // 500ms\u7B49\u4E8E\u52A8\u753B\u65F6\u957F\n return () => clearTimeout(handle)\n } else {\n setIsTransitioning(true)\n }\n }, [groupIndex, totalGroups, needCarousel])\n\n // \u6807\u9898\u52A8\u753B\u903B\u8F91\u4FDD\u6301\u4E0D\u53D8\n const titleRef = useRef<HTMLHeadingElement>(null)\n const featuresRef = useRef<HTMLDivElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n useGSAP(() => {\n gsap.registerPlugin(ScrollTrigger, SplitText)\n if (!titleRef.current) return\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const height = titleRef.current?.clientHeight || 100\n\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=6%',\n end: `bottom+=${height * 2 + 80}px bottom-=6%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n\n if (features && features.length > 0) {\n ScrollTrigger.create({\n trigger: featuresRef.current,\n start: `bottom+=${height * 2}px bottom-=6%`,\n end: `bottom+=${height * 2 + 100}px bottom-=6%`,\n onUpdate: (self: any) => {\n gsap.set(featuresRef.current, { opacity: self.progress })\n },\n })\n }\n\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n ScrollTrigger.getAll().forEach((t: any) => t.kill())\n }\n }, [])\n\n return (\n <div\n ref={innerRef}\n className={cn(\n 'slogan-container laptop:flex-row laptop:items-end laptop:justify-between text-info-primary flex h-auto w-full flex-col items-start justify-center gap-[24px] text-center',\n className\n )}\n >\n <Heading\n ref={titleRef}\n as=\"h2\"\n size={2}\n weight={'bold'}\n align={'left'}\n className={cn(\n 'slogan-title laptop:text-[40px] desktop:text-[48px] lg-desktop:text-[64px] text-[40px] !leading-none'\n )}\n html={title}\n />\n {features && features.length > 0 && (\n <div className={cn('relative w-full max-w-[500px] overflow-hidden', `tablet:h-[${groupHeight}px]`)}>\n <div\n className={cn([\n 'flex flex-col',\n isTransitioning ? 'transition-transform duration-500 ease-[cubic-bezier(.4,0,.2,1)]' : '!transition-none',\n ])}\n style={{\n transform: `translateY(-${groupIndex * groupHeight}px)`,\n }}\n >\n {displayGroups.map((group, idx) => (\n <div\n className={cn(\n 'flex w-full flex-row items-stretch gap-3 overflow-hidden',\n `tablet:h-[${groupHeight}px]`\n )}\n key={idx}\n >\n {group.map((feature, index) => (\n <React.Fragment key={index}>\n {index > 0 && <div className=\"slogan-feature-divider w-px self-stretch bg-[#E4E5E6]\" />}\n <Text\n size={3}\n align=\"left\"\n as=\"p\"\n className=\"slogan-feature-text tablet:text-[13px] laptop:text-[14px] line-clamp-3 text-[12px] leading-[1.4]\"\n html={feature.title}\n />\n </React.Fragment>\n ))}\n </div>\n ))}\n </div>\n </div>\n )}\n </div>\n )\n})\n\nSlogan.displayName = 'Slogan'\n\nexport default withStyles(Slogan)\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "React", "useImperativeHandle", "useRef", "useGSAP", "gsap", "SplitText", "ScrollTrigger", "cn", "Heading", "Text", "withStyles", "useExposure", "useAiuiContext", "componentType", "componentName", "chunkArray", "array", "size", "result", "i", "Slogan", "data", "className", "ref", "title", "features", "featureChunkSize", "groupIndex", "setGroupIndex", "isTransitioning", "setIsTransitioning", "innerRef", "featuresGroups", "totalGroups", "needCarousel", "displayGroups", "groupHeight", "trackingData", "profileActivated", "timer", "handle", "titleRef", "featuresRef", "splitTextInstance", "height", "words", "self", "progress", "total", "interval", "overlap", "word", "start", "width", "opacity", "t", "group", "idx", "feature", "index", "Slogan_default"]
7
7
  }
@@ -1,22 +1,29 @@
1
+ import type { Theme } from '../../types/props.js';
1
2
  export interface Feature {
2
3
  /**
3
4
  * 特性标题
4
5
  */
5
6
  title: string;
6
- /**
7
- * 特性描述
8
- */
9
- description: string;
10
7
  }
11
8
  export interface SloganProps {
12
- /**
13
- * 主标题
14
- */
15
- title: string;
16
- /**
17
- * 特性列表,最多支持3个
18
- */
19
- features?: string[];
9
+ data: {
10
+ /**
11
+ * 主标题
12
+ */
13
+ title: string;
14
+ /**
15
+ * 特性分组大小 默认为3
16
+ */
17
+ featureChunkSize?: number;
18
+ /**
19
+ * 特性列表
20
+ */
21
+ features?: Feature[];
22
+ /**
23
+ * 主题
24
+ */
25
+ theme?: Theme;
26
+ };
20
27
  /**
21
28
  * 自定义类名
22
29
  */
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { SpacerProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<SpacerProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps> & {
4
+ className?: string;
5
+ data?: Record<string, any>;
6
+ }, "ref"> & React.RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use client";import{jsx as l}from"react/jsx-runtime";import o from"react";import{cn as a}from"../../helpers/utils.js";import{withStyles as s}from"../../shared/Styles.js";const t=o.forwardRef(({className:p,data:r})=>{const{space:e="default"}=r;return l("div",{className:a(e==="default"&&"laptop:h-16 lg-desktop:h-[128px] tablet:h-8 h-16",e==="fixed"&&"h-16",p)})});t.displayName="Spacer";var m=s(t);export{m as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Spacer/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React from 'react'\nimport { cn } from '../../helpers/utils.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { SpacerProps } from './types.js'\n\nconst Spacer = React.forwardRef<HTMLDivElement, SpacerProps>(({ className, data }) => {\n const { space = 'default' } = data\n return (\n <div\n className={cn(\n space === 'default' && 'laptop:h-16 lg-desktop:h-[128px] tablet:h-8 h-16',\n space === 'fixed' && 'h-16',\n className\n )}\n ></div>\n )\n})\n\nSpacer.displayName = 'Spacer'\n\nexport default withStyles(Spacer)\n"],
5
+ "mappings": "aASI,cAAAA,MAAA,oBARJ,OAAOC,MAAW,QAClB,OAAS,MAAAC,MAAU,yBACnB,OAAS,cAAAC,MAAkB,yBAG3B,MAAMC,EAASH,EAAM,WAAwC,CAAC,CAAE,UAAAI,EAAW,KAAAC,CAAK,IAAM,CACpF,KAAM,CAAE,MAAAC,EAAQ,SAAU,EAAID,EAC9B,OACEN,EAAC,OACC,UAAWE,EACTK,IAAU,WAAa,mDACvBA,IAAU,SAAW,OACrBF,CACF,EACD,CAEL,CAAC,EAEDD,EAAO,YAAc,SAErB,IAAOI,EAAQL,EAAWC,CAAM",
6
+ "names": ["jsx", "React", "cn", "withStyles", "Spacer", "className", "data", "space", "Spacer_default"]
7
+ }
@@ -0,0 +1,10 @@
1
+ import type { ComponentCommonProps } from '../../types/props.js';
2
+ export interface SpacerProps extends ComponentCommonProps {
3
+ data: {
4
+ space: 'default' | 'fixed';
5
+ };
6
+ /**
7
+ * 自定义类名
8
+ */
9
+ className?: string;
10
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ import type { SwiperBoxProps } from './types.js';
3
+ declare const SwiperBox: React.ForwardRefExoticComponent<SwiperBoxProps & React.RefAttributes<HTMLDivElement>>;
4
+ export default SwiperBox;
@@ -0,0 +1,2 @@
1
+ "use client";import{jsx as s}from"react/jsx-runtime";import m,{useState as t}from"react";import{cn as u}from"../../helpers/utils.js";import{Swiper as c,SwiperSlide as d}from"swiper/react";import{Navigation as S,FreeMode as g,Mousewheel as x}from"swiper/modules";const n=m.forwardRef(({data:o,breakpoints:p,Slide:a,className:l,id:i})=>{const[B,f]=t(!0),[M,w]=t(!1);return s(c,{className:u(l),navigation:{nextEl:`.${i}-custom-swiper-button-next`,prevEl:`.${i}-custom-swiper-button-prev`},onProgress:e=>{f(e.isBeginning),w(e.isEnd)},modules:[S,g,x],freeMode:!0,mousewheel:{forceToAxis:!0},breakpoints:p||{0:{spaceBetween:12,slidesPerView:1,freeMode:!1},374:{spaceBetween:12,slidesPerView:1.1,freeMode:!1},768:{spaceBetween:16,slidesPerView:2,freeMode:!1}},children:o?.list?.map((e,r)=>s(d,{className:"!flex !h-[unset]",children:s(a,{data:e,configuration:o?.configuration?{...o?.configuration,index:r}:{index:r},jIndex:r})},i+"SwiperSlide"+r))})});n.displayName="SwiperBox";var N=n;export{N as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/SwiperBox/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useState } from 'react'\nimport { cn } from '../../helpers/utils.js'\n// import 'swiper/css'\n// import 'swiper/css/free-mode'\nimport { Swiper, SwiperSlide } from 'swiper/react'\nimport { Navigation, FreeMode, Mousewheel } from 'swiper/modules'\nimport type { SwiperBoxProps } from './types.js'\n\nconst SwiperBox = React.forwardRef<HTMLDivElement, SwiperBoxProps>(({ data, breakpoints, Slide, className, id }) => {\n const [isStart, setStart] = useState(true)\n const [isEnd, setEnd] = useState(false)\n\n return (\n <Swiper\n className={cn(className)}\n navigation={{\n nextEl: `.${id}-custom-swiper-button-next`,\n prevEl: `.${id}-custom-swiper-button-prev`,\n }}\n onProgress={swiper => {\n setStart(swiper.isBeginning)\n setEnd(swiper.isEnd)\n }}\n modules={[Navigation, FreeMode, Mousewheel]}\n freeMode={true}\n mousewheel={{\n forceToAxis: true,\n }}\n breakpoints={\n breakpoints || {\n 0: {\n spaceBetween: 12,\n slidesPerView: 1,\n freeMode: false,\n },\n 374: {\n spaceBetween: 12,\n slidesPerView: 1.1,\n freeMode: false,\n },\n 768: {\n spaceBetween: 16,\n slidesPerView: 2,\n freeMode: false,\n },\n }\n }\n >\n {data?.list?.map((item, jIndex) => (\n <SwiperSlide key={id + 'SwiperSlide' + jIndex} className=\"!flex !h-[unset]\">\n <Slide\n data={item}\n configuration={data?.configuration ? { ...data?.configuration, index: jIndex } : { index: jIndex }}\n jIndex={jIndex}\n />\n </SwiperSlide>\n ))}\n </Swiper>\n )\n})\n\nSwiperBox.displayName = 'SwiperBox'\n\nexport default SwiperBox\n"],
5
+ "mappings": "aAmDU,cAAAA,MAAA,oBAlDV,OAAOC,GAAS,YAAAC,MAAgB,QAChC,OAAS,MAAAC,MAAU,yBAGnB,OAAS,UAAAC,EAAQ,eAAAC,MAAmB,eACpC,OAAS,cAAAC,EAAY,YAAAC,EAAU,cAAAC,MAAkB,iBAGjD,MAAMC,EAAYR,EAAM,WAA2C,CAAC,CAAE,KAAAS,EAAM,YAAAC,EAAa,MAAAC,EAAO,UAAAC,EAAW,GAAAC,CAAG,IAAM,CAClH,KAAM,CAACC,EAASC,CAAQ,EAAId,EAAS,EAAI,EACnC,CAACe,EAAOC,CAAM,EAAIhB,EAAS,EAAK,EAEtC,OACEF,EAACI,EAAA,CACC,UAAWD,EAAGU,CAAS,EACvB,WAAY,CACV,OAAQ,IAAIC,CAAE,6BACd,OAAQ,IAAIA,CAAE,4BAChB,EACA,WAAYK,GAAU,CACpBH,EAASG,EAAO,WAAW,EAC3BD,EAAOC,EAAO,KAAK,CACrB,EACA,QAAS,CAACb,EAAYC,EAAUC,CAAU,EAC1C,SAAU,GACV,WAAY,CACV,YAAa,EACf,EACA,YACEG,GAAe,CACb,EAAG,CACD,aAAc,GACd,cAAe,EACf,SAAU,EACZ,EACA,IAAK,CACH,aAAc,GACd,cAAe,IACf,SAAU,EACZ,EACA,IAAK,CACH,aAAc,GACd,cAAe,EACf,SAAU,EACZ,CACF,EAGD,SAAAD,GAAM,MAAM,IAAI,CAACU,EAAMC,IACtBrB,EAACK,EAAA,CAA8C,UAAU,mBACvD,SAAAL,EAACY,EAAA,CACC,KAAMQ,EACN,cAAeV,GAAM,cAAgB,CAAE,GAAGA,GAAM,cAAe,MAAOW,CAAO,EAAI,CAAE,MAAOA,CAAO,EACjG,OAAQA,EACV,GALgBP,EAAK,cAAgBO,CAMvC,CACD,EACH,CAEJ,CAAC,EAEDZ,EAAU,YAAc,YAExB,IAAOa,EAAQb",
6
+ "names": ["jsx", "React", "useState", "cn", "Swiper", "SwiperSlide", "Navigation", "FreeMode", "Mousewheel", "SwiperBox", "data", "breakpoints", "Slide", "className", "id", "isStart", "setStart", "isEnd", "setEnd", "swiper", "item", "jIndex", "SwiperBox_default"]
7
+ }
@@ -0,0 +1,16 @@
1
+ import React from 'react';
2
+ export interface SwiperBoxProps {
3
+ data: {
4
+ list: any[];
5
+ configuration?: any;
6
+ onVideoPlayBtnClick?: (jIndex: number) => void;
7
+ };
8
+ id: string;
9
+ className?: string;
10
+ breakpoints?: Record<number, Object>;
11
+ Slide: React.ComponentType<{
12
+ data: any;
13
+ configuration?: any;
14
+ jIndex?: number;
15
+ }>;
16
+ }
@@ -0,0 +1,2 @@
1
+ import"react";
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/SwiperBox/types.ts"],
4
+ "sourcesContent": ["import React from 'react'\n\nexport interface SwiperBoxProps {\n data: {\n list: any[]\n configuration?: any\n onVideoPlayBtnClick?: (jIndex: number) => void\n }\n id: string\n className?: string\n breakpoints?: Record<number, Object>\n Slide: React.ComponentType<{ data: any; configuration?: any; jIndex?: number }>\n}\n"],
5
+ "mappings": "AAAA,MAAkB",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import type { TabsProps } from './types.js';
2
+ import React from 'react';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TabsProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps> & {
4
+ className?: string;
5
+ data?: Record<string, any>;
6
+ }, "ref"> & React.RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use client";import{jsx as e,jsxs as r}from"react/jsx-runtime";import{withStyles as c}from"../../shared/Styles.js";import*as t from"../../components/tabs.js";import{cn as f}from"../../helpers/index.js";import u from"react";import d from"../ShelfDisplay/index.js";import y from"../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js";import N from"../Title/index.js";const g=u.forwardRef(({data:m,className:o},l)=>{const{theme:b,shape:p,align:n,tabs:s,sectionTitle:i}=m,T=a=>a.blockType==="ipc-shelfdisplay"?e(d,{data:a}):a.blockType==="ipc-multiLayoutGraphicBlock"?e(y,{data:a}):null;return r("section",{ref:l,className:f(b==="dark"?"aiui-dark":"",o),children:[i&&e(N,{className:"section-title",data:{title:i}}),r(t.Tabs,{shape:p,align:n,defaultValue:s[0].tabName,children:[e(t.TabsList,{className:"tabs-list",children:s.map(a=>e(t.TabsTrigger,{value:a.tabName,className:"tabs-trigger",children:a.tabName},a.tabName))}),s.map(a=>e(t.TabsContent,{value:a.tabName,className:"tabs-content",children:T(a.tabContent?.[0])},a.tabName))]})]})});var B=c(g);export{B as default};
2
+ //# sourceMappingURL=Tabs.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Tabs/Tabs.tsx"],
4
+ "sourcesContent": ["'use client'\nimport { withStyles } from '../../shared/Styles.js'\nimport * as TabsPrimitive from '../../components/tabs.js'\nimport { cn } from '../../helpers/index.js'\nimport type { TabsProps } from './types.js'\nimport React from 'react'\nimport ShelfDisplay from '../ShelfDisplay/index.js'\nimport MultiLayoutGraphicBlock from '../MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js'\nimport Title from '../Title/index.js'\n\nconst Tabs = React.forwardRef<HTMLDivElement, TabsProps>(({ data, className }, forwardedRef) => {\n const { theme, shape, align, tabs, sectionTitle } = data\n\n const renderTabContent = (tabContent: TabsProps['data']['tabs'][number]['tabContent'][number]) => {\n if (tabContent.blockType === 'ipc-shelfdisplay') {\n return <ShelfDisplay data={tabContent} />\n } else if (tabContent.blockType === 'ipc-multiLayoutGraphicBlock') {\n return <MultiLayoutGraphicBlock data={tabContent} />\n } else {\n return null\n }\n }\n\n return (\n <section ref={forwardedRef} className={cn(theme === 'dark' ? 'aiui-dark' : '', className)}>\n {sectionTitle && <Title className=\"section-title\" data={{ title: sectionTitle }} />}\n <TabsPrimitive.Tabs shape={shape} align={align} defaultValue={tabs[0].tabName}>\n <TabsPrimitive.TabsList className=\"tabs-list\">\n {tabs.map(tab => (\n <TabsPrimitive.TabsTrigger key={tab.tabName} value={tab.tabName} className=\"tabs-trigger\">\n {tab.tabName}\n </TabsPrimitive.TabsTrigger>\n ))}\n </TabsPrimitive.TabsList>\n {tabs.map(tab => (\n <TabsPrimitive.TabsContent key={tab.tabName} value={tab.tabName} className=\"tabs-content\">\n {renderTabContent(tab.tabContent?.[0])}\n </TabsPrimitive.TabsContent>\n ))}\n </TabsPrimitive.Tabs>\n </section>\n )\n})\n\nexport default withStyles(Tabs)\n"],
5
+ "mappings": "aAea,cAAAA,EAWP,QAAAC,MAXO,oBAdb,OAAS,cAAAC,MAAkB,yBAC3B,UAAYC,MAAmB,2BAC/B,OAAS,MAAAC,MAAU,yBAEnB,OAAOC,MAAW,QAClB,OAAOC,MAAkB,2BACzB,OAAOC,MAA6B,wDACpC,OAAOC,MAAW,oBAElB,MAAMC,EAAOJ,EAAM,WAAsC,CAAC,CAAE,KAAAK,EAAM,UAAAC,CAAU,EAAGC,IAAiB,CAC9F,KAAM,CAAE,MAAAC,EAAO,MAAAC,EAAO,MAAAC,EAAO,KAAAC,EAAM,aAAAC,CAAa,EAAIP,EAE9CQ,EAAoBC,GACpBA,EAAW,YAAc,mBACpBnB,EAACM,EAAA,CAAa,KAAMa,EAAY,EAC9BA,EAAW,YAAc,8BAC3BnB,EAACO,EAAA,CAAwB,KAAMY,EAAY,EAE3C,KAIX,OACElB,EAAC,WAAQ,IAAKW,EAAc,UAAWR,EAAGS,IAAU,OAAS,YAAc,GAAIF,CAAS,EACrF,UAAAM,GAAgBjB,EAACQ,EAAA,CAAM,UAAU,gBAAgB,KAAM,CAAE,MAAOS,CAAa,EAAG,EACjFhB,EAACE,EAAc,KAAd,CAAmB,MAAOW,EAAO,MAAOC,EAAO,aAAcC,EAAK,CAAC,EAAE,QACpE,UAAAhB,EAACG,EAAc,SAAd,CAAuB,UAAU,YAC/B,SAAAa,EAAK,IAAII,GACRpB,EAACG,EAAc,YAAd,CAA4C,MAAOiB,EAAI,QAAS,UAAU,eACxE,SAAAA,EAAI,SADyBA,EAAI,OAEpC,CACD,EACH,EACCJ,EAAK,IAAII,GACRpB,EAACG,EAAc,YAAd,CAA4C,MAAOiB,EAAI,QAAS,UAAU,eACxE,SAAAF,EAAiBE,EAAI,aAAa,CAAC,CAAC,GADPA,EAAI,OAEpC,CACD,GACH,GACF,CAEJ,CAAC,EAED,IAAOC,EAAQnB,EAAWO,CAAI",
6
+ "names": ["jsx", "jsxs", "withStyles", "TabsPrimitive", "cn", "React", "ShelfDisplay", "MultiLayoutGraphicBlock", "Title", "Tabs", "data", "className", "forwardedRef", "theme", "shape", "align", "tabs", "sectionTitle", "renderTabContent", "tabContent", "tab", "Tabs_default"]
7
+ }
@@ -0,0 +1 @@
1
+ export { default } from './Tabs.js';
@@ -0,0 +1,2 @@
1
+ import{default as o}from"./Tabs.js";export{o as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Tabs/index.ts"],
4
+ "sourcesContent": ["export { default } from './Tabs.js'\n"],
5
+ "mappings": "AAAA,OAAS,WAAAA,MAAe",
6
+ "names": ["default"]
7
+ }
@@ -0,0 +1,20 @@
1
+ import type { Align, Shape, Theme } from '../../types/props.js';
2
+ import type { MultiLayoutGraphicBlockProps } from '../MultiLayoutGraphicBlock/types.js';
3
+ import type { ShelfDisplayProps } from '../ShelfDisplay/index.js';
4
+ export type TabsProps = {
5
+ data: {
6
+ sectionTitle?: string;
7
+ theme: Theme;
8
+ shape: Shape;
9
+ align: Align;
10
+ tabs: {
11
+ tabName: string;
12
+ tabContent: (ShelfDisplayProps['data'] & {
13
+ blockType: 'ipc-shelfdisplay';
14
+ })[] | (MultiLayoutGraphicBlockProps['data'] & {
15
+ blockType: 'ipc-multiLayoutGraphicBlock';
16
+ })[];
17
+ }[];
18
+ };
19
+ className?: string;
20
+ };
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import type { TitleProps } from './types.js';
3
+ declare const _default: React.ForwardRefExoticComponent<Omit<Omit<TitleProps & React.RefAttributes<HTMLDivElement>, keyof import("../../shared/Styles.js").StylesProps> & Partial<import("../../shared/Styles.js").StylesProps> & {
4
+ className?: string;
5
+ data?: Record<string, any>;
6
+ }, "ref"> & React.RefAttributes<any>>;
7
+ export default _default;
@@ -0,0 +1,2 @@
1
+ "use client";import{jsx as f}from"react/jsx-runtime";import S,{useRef as m}from"react";import{useGSAP as k}from"@gsap/react";import{gsap as s}from"gsap";import{SplitText as p}from"gsap/dist/SplitText";import{ScrollTrigger as i}from"gsap/dist/ScrollTrigger";import{cn as E}from"../../helpers/utils.js";import{Heading as M}from"../../components/index.js";import{withStyles as P}from"../../shared/Styles.js";const u=S.forwardRef(({data:d,className:g})=>{const{title:l,theme:h}=d,t=m(null),r=m(null);return k(()=>{if(s.registerPlugin(p,i),!t.current)return;const y=t.current?.clientHeight||80;r.current=new p(t.current,{type:"words",wordsClass:"word"});const e=r.current.words;return s.set(e,{opacity:0}),i.create({trigger:t.current,start:"bottom bottom-=6%",end:`bottom+=${y*2+40}px bottom-=6%`,scrub:!0,onUpdate:o=>{const T=o.progress,a=e.length,b=1/a,c=.5;e.forEach((w,x)=>{const v=x/a*(1-c),H=b*(1+c);let n=(T-v)/H;n=Math.max(0,Math.min(n,1)),s.set(w,{opacity:n})})}}),()=>{r.current&&r.current.revert(),i.getAll().forEach(o=>o.kill())}},[]),l&&f("div",{className:E("tablet:mb-[32px] mb-[24px] space-y-4",g,{"aiui-dark":h==="dark"}),children:f(M,{ref:t,as:"h1",size:4,html:l})})});u.displayName="Title";var I=P(u);export{I as default};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Title/index.tsx"],
4
+ "sourcesContent": ["'use client'\nimport React, { useRef } from 'react'\nimport { useGSAP } from '@gsap/react'\nimport { gsap } from 'gsap'\nimport { SplitText } from 'gsap/dist/SplitText'\nimport { ScrollTrigger } from 'gsap/dist/ScrollTrigger'\nimport { cn } from '../../helpers/utils.js'\nimport { Heading } from '../../components/index.js'\nimport { withStyles } from '../../shared/Styles.js'\nimport type { TitleProps } from './types.js'\n\nconst Title = React.forwardRef<HTMLDivElement, TitleProps>(({ data, className }) => {\n const { title, theme } = data\n const titleRef = useRef<HTMLHeadingElement>(null)\n const splitTextInstance = useRef<SplitText | null>(null)\n useGSAP(() => {\n gsap.registerPlugin(SplitText, ScrollTrigger)\n if (!titleRef.current) return\n const height = titleRef.current?.clientHeight || 80\n splitTextInstance.current = new SplitText(titleRef.current, {\n type: 'words',\n wordsClass: 'word',\n })\n const words = splitTextInstance.current.words\n gsap.set(words, { opacity: 0 })\n ScrollTrigger.create({\n trigger: titleRef.current,\n start: 'bottom bottom-=6%',\n end: `bottom+=${height * 2 + 40}px bottom-=6%`,\n scrub: true,\n onUpdate: (self: any) => {\n const progress = self.progress\n const total = words.length\n const interval = 1 / total\n const overlap = 0.5\n words.forEach((word: any, i: number) => {\n const start = (i / total) * (1 - overlap)\n const width = interval * (1 + overlap)\n let opacity = (progress - start) / width\n opacity = Math.max(0, Math.min(opacity, 1))\n gsap.set(word, { opacity })\n })\n },\n })\n return () => {\n splitTextInstance.current && splitTextInstance.current.revert()\n ScrollTrigger.getAll().forEach((t: { kill: () => any }) => t.kill())\n }\n }, [])\n\n return (\n title && (\n <div className={cn('tablet:mb-[32px] mb-[24px] space-y-4', className, { 'aiui-dark': theme === 'dark' })}>\n <Heading ref={titleRef} as=\"h1\" size={4} html={title} />\n </div>\n )\n )\n})\n\nTitle.displayName = 'Title'\n\nexport default withStyles(Title)\n"],
5
+ "mappings": "aAqDQ,cAAAA,MAAA,oBApDR,OAAOC,GAAS,UAAAC,MAAc,QAC9B,OAAS,WAAAC,MAAe,cACxB,OAAS,QAAAC,MAAY,OACrB,OAAS,aAAAC,MAAiB,sBAC1B,OAAS,iBAAAC,MAAqB,0BAC9B,OAAS,MAAAC,MAAU,yBACnB,OAAS,WAAAC,MAAe,4BACxB,OAAS,cAAAC,MAAkB,yBAG3B,MAAMC,EAAQT,EAAM,WAAuC,CAAC,CAAE,KAAAU,EAAM,UAAAC,CAAU,IAAM,CAClF,KAAM,CAAE,MAAAC,EAAO,MAAAC,CAAM,EAAIH,EACnBI,EAAWb,EAA2B,IAAI,EAC1Cc,EAAoBd,EAAyB,IAAI,EACvD,OAAAC,EAAQ,IAAM,CAEZ,GADAC,EAAK,eAAeC,EAAWC,CAAa,EACxC,CAACS,EAAS,QAAS,OACvB,MAAME,EAASF,EAAS,SAAS,cAAgB,GACjDC,EAAkB,QAAU,IAAIX,EAAUU,EAAS,QAAS,CAC1D,KAAM,QACN,WAAY,MACd,CAAC,EACD,MAAMG,EAAQF,EAAkB,QAAQ,MACxC,OAAAZ,EAAK,IAAIc,EAAO,CAAE,QAAS,CAAE,CAAC,EAC9BZ,EAAc,OAAO,CACnB,QAASS,EAAS,QAClB,MAAO,oBACP,IAAK,WAAWE,EAAS,EAAI,EAAE,gBAC/B,MAAO,GACP,SAAWE,GAAc,CACvB,MAAMC,EAAWD,EAAK,SAChBE,EAAQH,EAAM,OACdI,EAAW,EAAID,EACfE,EAAU,GAChBL,EAAM,QAAQ,CAACM,EAAWC,IAAc,CACtC,MAAMC,EAASD,EAAIJ,GAAU,EAAIE,GAC3BI,EAAQL,GAAY,EAAIC,GAC9B,IAAIK,GAAWR,EAAWM,GAASC,EACnCC,EAAU,KAAK,IAAI,EAAG,KAAK,IAAIA,EAAS,CAAC,CAAC,EAC1CxB,EAAK,IAAIoB,EAAM,CAAE,QAAAI,CAAQ,CAAC,CAC5B,CAAC,CACH,CACF,CAAC,EACM,IAAM,CACXZ,EAAkB,SAAWA,EAAkB,QAAQ,OAAO,EAC9DV,EAAc,OAAO,EAAE,QAASuB,GAA2BA,EAAE,KAAK,CAAC,CACrE,CACF,EAAG,CAAC,CAAC,EAGHhB,GACEb,EAAC,OAAI,UAAWO,EAAG,uCAAwCK,EAAW,CAAE,YAAaE,IAAU,MAAO,CAAC,EACrG,SAAAd,EAACQ,EAAA,CAAQ,IAAKO,EAAU,GAAG,KAAK,KAAM,EAAG,KAAMF,EAAO,EACxD,CAGN,CAAC,EAEDH,EAAM,YAAc,QAEpB,IAAOoB,EAAQrB,EAAWC,CAAK",
6
+ "names": ["jsx", "React", "useRef", "useGSAP", "gsap", "SplitText", "ScrollTrigger", "cn", "Heading", "withStyles", "Title", "data", "className", "title", "theme", "titleRef", "splitTextInstance", "height", "words", "self", "progress", "total", "interval", "overlap", "word", "i", "start", "width", "opacity", "t", "Title_default"]
7
+ }
@@ -0,0 +1,27 @@
1
+ import type { Theme } from '../../types/props.js';
2
+ export interface Feature {
3
+ /**
4
+ * 特性标题
5
+ */
6
+ title: string;
7
+ }
8
+ export interface TitleProps {
9
+ data: {
10
+ /**
11
+ * 主标题
12
+ */
13
+ title: string;
14
+ /**
15
+ * 特性列表,最多支持3个
16
+ */
17
+ features?: Feature[];
18
+ /**
19
+ * 主题色
20
+ */
21
+ theme?: Theme;
22
+ };
23
+ /**
24
+ * 自定义类名
25
+ */
26
+ className?: string;
27
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -1,11 +1,21 @@
1
- export { default as Shelf } from './Shelf/index.js';
2
1
  export { default as BrandEquity } from './BrandEquity/index.js';
3
2
  export { default as MemberEquity } from './MemberEquity/index.js';
4
3
  export { default as Slogan } from './Slogan/index.js';
4
+ export { default as Title } from './Title/index.js';
5
+ export { default as Spacer } from './Spacer/index.js';
5
6
  export { default as ShelfDisplay } from './ShelfDisplay/index.js';
6
7
  export { default as Evaluate } from './Evaluate/index.js';
7
8
  export { default as Category } from './Category/index.js';
8
9
  export { default as HeroBanner } from './HeroBanner/index.js';
9
10
  export { default as AccordionCards } from './AccordionCards/index.js';
10
11
  export { default as Graphic } from './Graphic/index.js';
11
- export * from './Marquee/index.js';
12
+ export { default as MediaPlayerBase } from './MediaPlayerBase/index.js';
13
+ export { default as MediaPlayerSticky } from './MediaPlayerSticky/index.js';
14
+ export { default as MediaPlayerMulti } from './MediaPlayerMulti/index.js';
15
+ export { default as Marquee } from './Marquee/index.js';
16
+ export { MarqueeItem, MarqueeImageContent, MarqueeTextContent } from './Marquee/index.js';
17
+ export { default as MultiLayoutGraphicBlock } from './MultiLayoutGraphicBlock/index.js';
18
+ export type { MultiLayoutGraphicBlockProps } from './MultiLayoutGraphicBlock/index.js';
19
+ export { default as GraphicAttractionBlock } from './GraphicAttractionBlock/index.js';
20
+ export type { GraphicAttractionBlockProps } from './GraphicAttractionBlock/index.js';
21
+ export { default as AiuiProvider } from './AiuiProvider/index.js';