@anker-in/headless-ui 1.0.25 → 1.0.26-alpha.1761893017767

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 (281) hide show
  1. package/dist/cjs/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  2. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js +2 -0
  3. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  4. package/dist/cjs/biz-components/FeatureCards/index.d.ts +2 -0
  5. package/dist/cjs/biz-components/FeatureCards/index.js +2 -0
  6. package/dist/cjs/biz-components/FeatureCards/index.js.map +7 -0
  7. package/dist/cjs/biz-components/FeatureCards/types.d.ts +25 -0
  8. package/dist/cjs/biz-components/FeatureCards/types.js +2 -0
  9. package/dist/cjs/biz-components/FeatureCards/types.js.map +7 -0
  10. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  11. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  12. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  13. package/dist/cjs/biz-components/FeatureShowcase/index.d.ts +2 -0
  14. package/dist/cjs/biz-components/FeatureShowcase/index.js +2 -0
  15. package/dist/cjs/biz-components/FeatureShowcase/index.js.map +7 -0
  16. package/dist/cjs/biz-components/FeatureShowcase/types.d.ts +20 -0
  17. package/dist/cjs/biz-components/FeatureShowcase/types.js +2 -0
  18. package/dist/cjs/biz-components/FeatureShowcase/types.js.map +7 -0
  19. package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
  20. package/dist/cjs/biz-components/FooterNavigation/index.js.map +2 -2
  21. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  22. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +2 -2
  23. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  24. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  25. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  26. package/dist/cjs/biz-components/ImageTextFeature/index.d.ts +2 -0
  27. package/dist/cjs/biz-components/ImageTextFeature/index.js +2 -0
  28. package/dist/cjs/biz-components/ImageTextFeature/index.js.map +7 -0
  29. package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +31 -0
  30. package/dist/cjs/biz-components/ImageTextFeature/types.js +2 -0
  31. package/dist/cjs/biz-components/ImageTextFeature/types.js.map +7 -0
  32. package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  33. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js +2 -0
  34. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  35. package/dist/cjs/biz-components/ImageWithText/index.d.ts +2 -0
  36. package/dist/cjs/biz-components/ImageWithText/index.js +2 -0
  37. package/dist/cjs/biz-components/ImageWithText/index.js.map +7 -0
  38. package/dist/cjs/biz-components/ImageWithText/types.d.ts +23 -0
  39. package/dist/cjs/biz-components/ImageWithText/types.js +2 -0
  40. package/dist/cjs/biz-components/ImageWithText/types.js.map +7 -0
  41. package/dist/cjs/biz-components/Ksp/index.d.ts +40 -0
  42. package/dist/cjs/biz-components/Ksp/index.js +2 -0
  43. package/dist/cjs/biz-components/Ksp/index.js.map +7 -0
  44. package/dist/cjs/biz-components/MarqueeReview/index.d.ts +41 -0
  45. package/dist/cjs/biz-components/MarqueeReview/index.js +25 -0
  46. package/dist/cjs/biz-components/MarqueeReview/index.js.map +7 -0
  47. package/dist/cjs/biz-components/ProductCompare/index.d.ts +37 -0
  48. package/dist/cjs/biz-components/ProductCompare/index.js +2 -0
  49. package/dist/cjs/biz-components/ProductCompare/index.js.map +7 -0
  50. package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +7 -0
  51. package/dist/cjs/biz-components/ProductHero/ProductHero.js +2 -0
  52. package/dist/cjs/biz-components/ProductHero/ProductHero.js.map +7 -0
  53. package/dist/cjs/biz-components/ProductHero/index.d.ts +2 -0
  54. package/dist/cjs/biz-components/ProductHero/index.js +2 -0
  55. package/dist/cjs/biz-components/ProductHero/index.js.map +7 -0
  56. package/dist/cjs/biz-components/ProductHero/types.d.ts +20 -0
  57. package/dist/cjs/biz-components/ProductHero/types.js +2 -0
  58. package/dist/cjs/biz-components/ProductHero/types.js.map +7 -0
  59. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  60. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  61. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  62. package/dist/cjs/biz-components/SpecsComparison/index.d.ts +2 -0
  63. package/dist/cjs/biz-components/SpecsComparison/index.js +2 -0
  64. package/dist/cjs/biz-components/SpecsComparison/index.js.map +7 -0
  65. package/dist/cjs/biz-components/SpecsComparison/types.d.ts +34 -0
  66. package/dist/cjs/biz-components/SpecsComparison/types.js +2 -0
  67. package/dist/cjs/biz-components/SpecsComparison/types.js.map +7 -0
  68. package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  69. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js +2 -0
  70. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  71. package/dist/cjs/biz-components/TabWithImage/index.d.ts +2 -0
  72. package/dist/cjs/biz-components/TabWithImage/index.js +2 -0
  73. package/dist/cjs/biz-components/TabWithImage/index.js.map +7 -0
  74. package/dist/cjs/biz-components/TabWithImage/types.d.ts +28 -0
  75. package/dist/cjs/biz-components/TabWithImage/types.js +2 -0
  76. package/dist/cjs/biz-components/TabWithImage/types.js.map +7 -0
  77. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  78. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  79. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  80. package/dist/cjs/biz-components/TabsWithMedia/index.d.ts +2 -0
  81. package/dist/cjs/biz-components/TabsWithMedia/index.js +2 -0
  82. package/dist/cjs/biz-components/TabsWithMedia/index.js.map +7 -0
  83. package/dist/cjs/biz-components/TabsWithMedia/types.d.ts +40 -0
  84. package/dist/cjs/biz-components/TabsWithMedia/types.js +2 -0
  85. package/dist/cjs/biz-components/TabsWithMedia/types.js.map +7 -0
  86. package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  87. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js +2 -0
  88. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  89. package/dist/cjs/biz-components/VideoFeature/index.d.ts +2 -0
  90. package/dist/cjs/biz-components/VideoFeature/index.js +2 -0
  91. package/dist/cjs/biz-components/VideoFeature/index.js.map +7 -0
  92. package/dist/cjs/biz-components/VideoFeature/types.d.ts +18 -0
  93. package/dist/cjs/biz-components/VideoFeature/types.js +2 -0
  94. package/dist/cjs/biz-components/VideoFeature/types.js.map +7 -0
  95. package/dist/cjs/biz-components/index.d.ts +59 -0
  96. package/dist/cjs/biz-components/index.js +1 -1
  97. package/dist/cjs/biz-components/index.js.map +3 -3
  98. package/dist/cjs/cpn-components/CpnNavigation/index.js +1 -1
  99. package/dist/cjs/cpn-components/CpnNavigation/index.js.map +3 -3
  100. package/dist/cjs/shared/Styles.js +1 -1
  101. package/dist/cjs/shared/Styles.js.map +3 -3
  102. package/dist/cjs/stories/MarqueeReview.stories.d.ts +73 -0
  103. package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
  104. package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
  105. package/dist/cjs/stories/featureCards.stories.d.ts +28 -0
  106. package/dist/cjs/stories/featureCards.stories.js +2 -0
  107. package/dist/cjs/stories/featureCards.stories.js.map +7 -0
  108. package/dist/cjs/stories/featureShowcase.stories.d.ts +28 -0
  109. package/dist/cjs/stories/featureShowcase.stories.js +2 -0
  110. package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
  111. package/dist/cjs/stories/imageTextFeature.stories.d.ts +27 -0
  112. package/dist/cjs/stories/imageTextFeature.stories.js +2 -0
  113. package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
  114. package/dist/cjs/stories/imageWithText.stories.d.ts +27 -0
  115. package/dist/cjs/stories/imageWithText.stories.js +2 -0
  116. package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
  117. package/dist/cjs/stories/ksp.stories.d.ts +63 -0
  118. package/dist/cjs/stories/ksp.stories.js +129 -0
  119. package/dist/cjs/stories/ksp.stories.js.map +7 -0
  120. package/dist/cjs/stories/productCompare.stories.d.ts +49 -0
  121. package/dist/cjs/stories/productCompare.stories.js +63 -0
  122. package/dist/cjs/stories/productCompare.stories.js.map +7 -0
  123. package/dist/cjs/stories/productHero.stories.d.ts +28 -0
  124. package/dist/cjs/stories/productHero.stories.js +2 -0
  125. package/dist/cjs/stories/productHero.stories.js.map +7 -0
  126. package/dist/cjs/stories/specsComparison.stories.d.ts +27 -0
  127. package/dist/cjs/stories/specsComparison.stories.js +30 -0
  128. package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
  129. package/dist/cjs/stories/tabWithImage.stories.d.ts +27 -0
  130. package/dist/cjs/stories/tabWithImage.stories.js +2 -0
  131. package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
  132. package/dist/cjs/stories/tabsWithMedia.stories.d.ts +27 -0
  133. package/dist/cjs/stories/tabsWithMedia.stories.js +2 -0
  134. package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
  135. package/dist/cjs/stories/videoFeature.stories.d.ts +28 -0
  136. package/dist/cjs/stories/videoFeature.stories.js +2 -0
  137. package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
  138. package/dist/cjs/types/props.d.ts +4 -0
  139. package/dist/cjs/types/props.js +1 -1
  140. package/dist/cjs/types/props.js.map +1 -1
  141. package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  142. package/dist/esm/biz-components/FeatureCards/FeatureCards.js +2 -0
  143. package/dist/esm/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  144. package/dist/esm/biz-components/FeatureCards/index.d.ts +2 -0
  145. package/dist/esm/biz-components/FeatureCards/index.js +2 -0
  146. package/dist/esm/biz-components/FeatureCards/index.js.map +7 -0
  147. package/dist/esm/biz-components/FeatureCards/types.d.ts +25 -0
  148. package/dist/esm/biz-components/FeatureCards/types.js +1 -0
  149. package/dist/esm/biz-components/FeatureCards/types.js.map +7 -0
  150. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  151. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  152. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  153. package/dist/esm/biz-components/FeatureShowcase/index.d.ts +2 -0
  154. package/dist/esm/biz-components/FeatureShowcase/index.js +2 -0
  155. package/dist/esm/biz-components/FeatureShowcase/index.js.map +7 -0
  156. package/dist/esm/biz-components/FeatureShowcase/types.d.ts +20 -0
  157. package/dist/esm/biz-components/FeatureShowcase/types.js +1 -0
  158. package/dist/esm/biz-components/FeatureShowcase/types.js.map +7 -0
  159. package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
  160. package/dist/esm/biz-components/FooterNavigation/index.js.map +2 -2
  161. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  162. package/dist/esm/biz-components/HeaderNavigation/index.js.map +2 -2
  163. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  164. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  165. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  166. package/dist/esm/biz-components/ImageTextFeature/index.d.ts +2 -0
  167. package/dist/esm/biz-components/ImageTextFeature/index.js +2 -0
  168. package/dist/esm/biz-components/ImageTextFeature/index.js.map +7 -0
  169. package/dist/esm/biz-components/ImageTextFeature/types.d.ts +31 -0
  170. package/dist/esm/biz-components/ImageTextFeature/types.js +1 -0
  171. package/dist/esm/biz-components/ImageTextFeature/types.js.map +7 -0
  172. package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  173. package/dist/esm/biz-components/ImageWithText/ImageWithText.js +2 -0
  174. package/dist/esm/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  175. package/dist/esm/biz-components/ImageWithText/index.d.ts +2 -0
  176. package/dist/esm/biz-components/ImageWithText/index.js +2 -0
  177. package/dist/esm/biz-components/ImageWithText/index.js.map +7 -0
  178. package/dist/esm/biz-components/ImageWithText/types.d.ts +23 -0
  179. package/dist/esm/biz-components/ImageWithText/types.js +1 -0
  180. package/dist/esm/biz-components/ImageWithText/types.js.map +7 -0
  181. package/dist/esm/biz-components/Ksp/index.d.ts +40 -0
  182. package/dist/esm/biz-components/Ksp/index.js +2 -0
  183. package/dist/esm/biz-components/Ksp/index.js.map +7 -0
  184. package/dist/esm/biz-components/MarqueeReview/index.d.ts +41 -0
  185. package/dist/esm/biz-components/MarqueeReview/index.js +25 -0
  186. package/dist/esm/biz-components/MarqueeReview/index.js.map +7 -0
  187. package/dist/esm/biz-components/ProductCompare/index.d.ts +37 -0
  188. package/dist/esm/biz-components/ProductCompare/index.js +2 -0
  189. package/dist/esm/biz-components/ProductCompare/index.js.map +7 -0
  190. package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +7 -0
  191. package/dist/esm/biz-components/ProductHero/ProductHero.js +2 -0
  192. package/dist/esm/biz-components/ProductHero/ProductHero.js.map +7 -0
  193. package/dist/esm/biz-components/ProductHero/index.d.ts +2 -0
  194. package/dist/esm/biz-components/ProductHero/index.js +2 -0
  195. package/dist/esm/biz-components/ProductHero/index.js.map +7 -0
  196. package/dist/esm/biz-components/ProductHero/types.d.ts +20 -0
  197. package/dist/esm/biz-components/ProductHero/types.js +1 -0
  198. package/dist/esm/biz-components/ProductHero/types.js.map +7 -0
  199. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  200. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  201. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  202. package/dist/esm/biz-components/SpecsComparison/index.d.ts +2 -0
  203. package/dist/esm/biz-components/SpecsComparison/index.js +2 -0
  204. package/dist/esm/biz-components/SpecsComparison/index.js.map +7 -0
  205. package/dist/esm/biz-components/SpecsComparison/types.d.ts +34 -0
  206. package/dist/esm/biz-components/SpecsComparison/types.js +1 -0
  207. package/dist/esm/biz-components/SpecsComparison/types.js.map +7 -0
  208. package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  209. package/dist/esm/biz-components/TabWithImage/TabWithImage.js +2 -0
  210. package/dist/esm/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  211. package/dist/esm/biz-components/TabWithImage/index.d.ts +2 -0
  212. package/dist/esm/biz-components/TabWithImage/index.js +2 -0
  213. package/dist/esm/biz-components/TabWithImage/index.js.map +7 -0
  214. package/dist/esm/biz-components/TabWithImage/types.d.ts +28 -0
  215. package/dist/esm/biz-components/TabWithImage/types.js +1 -0
  216. package/dist/esm/biz-components/TabWithImage/types.js.map +7 -0
  217. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  218. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  219. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  220. package/dist/esm/biz-components/TabsWithMedia/index.d.ts +2 -0
  221. package/dist/esm/biz-components/TabsWithMedia/index.js +2 -0
  222. package/dist/esm/biz-components/TabsWithMedia/index.js.map +7 -0
  223. package/dist/esm/biz-components/TabsWithMedia/types.d.ts +40 -0
  224. package/dist/esm/biz-components/TabsWithMedia/types.js +1 -0
  225. package/dist/esm/biz-components/TabsWithMedia/types.js.map +7 -0
  226. package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  227. package/dist/esm/biz-components/VideoFeature/VideoFeature.js +2 -0
  228. package/dist/esm/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  229. package/dist/esm/biz-components/VideoFeature/index.d.ts +2 -0
  230. package/dist/esm/biz-components/VideoFeature/index.js +2 -0
  231. package/dist/esm/biz-components/VideoFeature/index.js.map +7 -0
  232. package/dist/esm/biz-components/VideoFeature/types.d.ts +18 -0
  233. package/dist/esm/biz-components/VideoFeature/types.js +1 -0
  234. package/dist/esm/biz-components/VideoFeature/types.js.map +7 -0
  235. package/dist/esm/biz-components/index.d.ts +59 -0
  236. package/dist/esm/biz-components/index.js +1 -1
  237. package/dist/esm/biz-components/index.js.map +3 -3
  238. package/dist/esm/cpn-components/CpnNavigation/index.js +1 -1
  239. package/dist/esm/cpn-components/CpnNavigation/index.js.map +2 -2
  240. package/dist/esm/shared/Styles.js +1 -1
  241. package/dist/esm/shared/Styles.js.map +3 -3
  242. package/dist/esm/stories/MarqueeReview.stories.d.ts +73 -0
  243. package/dist/esm/stories/MarqueeReview.stories.js +19 -0
  244. package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
  245. package/dist/esm/stories/featureCards.stories.d.ts +28 -0
  246. package/dist/esm/stories/featureCards.stories.js +2 -0
  247. package/dist/esm/stories/featureCards.stories.js.map +7 -0
  248. package/dist/esm/stories/featureShowcase.stories.d.ts +28 -0
  249. package/dist/esm/stories/featureShowcase.stories.js +2 -0
  250. package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
  251. package/dist/esm/stories/imageTextFeature.stories.d.ts +27 -0
  252. package/dist/esm/stories/imageTextFeature.stories.js +2 -0
  253. package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
  254. package/dist/esm/stories/imageWithText.stories.d.ts +27 -0
  255. package/dist/esm/stories/imageWithText.stories.js +2 -0
  256. package/dist/esm/stories/imageWithText.stories.js.map +7 -0
  257. package/dist/esm/stories/ksp.stories.d.ts +63 -0
  258. package/dist/esm/stories/ksp.stories.js +129 -0
  259. package/dist/esm/stories/ksp.stories.js.map +7 -0
  260. package/dist/esm/stories/productCompare.stories.d.ts +49 -0
  261. package/dist/esm/stories/productCompare.stories.js +63 -0
  262. package/dist/esm/stories/productCompare.stories.js.map +7 -0
  263. package/dist/esm/stories/productHero.stories.d.ts +28 -0
  264. package/dist/esm/stories/productHero.stories.js +2 -0
  265. package/dist/esm/stories/productHero.stories.js.map +7 -0
  266. package/dist/esm/stories/specsComparison.stories.d.ts +27 -0
  267. package/dist/esm/stories/specsComparison.stories.js +30 -0
  268. package/dist/esm/stories/specsComparison.stories.js.map +7 -0
  269. package/dist/esm/stories/tabWithImage.stories.d.ts +27 -0
  270. package/dist/esm/stories/tabWithImage.stories.js +2 -0
  271. package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
  272. package/dist/esm/stories/tabsWithMedia.stories.d.ts +27 -0
  273. package/dist/esm/stories/tabsWithMedia.stories.js +2 -0
  274. package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
  275. package/dist/esm/stories/videoFeature.stories.d.ts +28 -0
  276. package/dist/esm/stories/videoFeature.stories.js +2 -0
  277. package/dist/esm/stories/videoFeature.stories.js.map +7 -0
  278. package/dist/esm/types/props.d.ts +4 -0
  279. package/dist/tokens/base.css +3 -0
  280. package/package.json +4 -1
  281. package/tailwind.config.js +2 -0
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/ksp.stories.tsx"],
4
+ "sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport Ksp from '../biz-components/Ksp/index.js'\nimport type { KspProps } from '../biz-components/Ksp/index.js'\n\nconst meta = {\n title: 'Biz-Components/Ksp',\n component: Ksp,\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: `\n# Ksp \u5173\u952E\u5356\u70B9\u7EC4\u4EF6\n\n\u5C55\u793A\u4EA7\u54C1\u7684\u5173\u952E\u5356\u70B9\uFF08Key Selling Points\uFF09\uFF0C\u652F\u6301\u56FE\u7247\u548C\u89C6\u9891\uFF0C\u5177\u6709\u590D\u6742\u7684\u54CD\u5E94\u5F0F\u5E03\u5C40\u3002\n\n## \u6838\u5FC3\u529F\u80FD\n\n- **\u56FE\u7247/\u89C6\u9891\u652F\u6301**\uFF1A\u6BCF\u4E2A\u5361\u7247\u53EF\u4EE5\u662F\u56FE\u7247\u6216\u89C6\u9891\uFF0C\u81EA\u52A8\u8BC6\u522B\u548C\u6E32\u67D3\n- **7 \u5361\u7247\u5E03\u5C40**\uFF1A\u56FA\u5B9A 7 \u4E2A\u5361\u7247\u4F4D\u7F6E\uFF0C\u5177\u6709\u4E0D\u540C\u7684\u5C3A\u5BF8\u548C\u6392\u5217\n- **\u54CD\u5E94\u5F0F\u8BBE\u8BA1**\uFF1A\u624B\u673A\u7AEF\u548C\u5E73\u677F/\u684C\u9762\u7AEF\u4F7F\u7528\u4E0D\u540C\u7684\u5E03\u5C40\u65B9\u6848\n- **\u6587\u5B57\u8986\u76D6**\uFF1A\u6807\u9898\u548C\u63CF\u8FF0\u8986\u76D6\u5728\u5A92\u4F53\u5185\u5BB9\u4E0A\n- **\u81EA\u52A8\u64AD\u653E**\uFF1A\u89C6\u9891\u81EA\u52A8\u64AD\u653E\u3001\u5FAA\u73AF\u3001\u9759\u97F3\n\n## \u5E03\u5C40\u8BF4\u660E\n\n### \u684C\u9762\u7AEF/\u5E73\u677F\u7AEF\u5E03\u5C40\uFF083 \u884C\uFF09\uFF1A\n- **\u7B2C 1 \u884C**\uFF1A\u5927\u5361\u7247(59.53%) + \u5C0F\u5361\u7247(39.30%)\n- **\u7B2C 2 \u884C**\uFF1A\u5C0F\u5361\u7247(29.19%) + \u4E2D\u5361\u7247(39.30%) + \u5C0F\u5361\u7247(29.19%)\n- **\u7B2C 3 \u884C**\uFF1A\u5C0F\u5361\u7247(39.30%) + \u5927\u5361\u7247(59.53%)\n\n### \u624B\u673A\u7AEF\u5E03\u5C40\uFF085 \u884C\uFF09\uFF1A\n- **\u7B2C 1 \u884C**\uFF1A\u5168\u5BBD\u5361\u7247\n- **\u7B2C 2 \u884C**\uFF1A\u4E24\u4E2A\u534A\u5BBD\u5361\u7247\n- **\u7B2C 3 \u884C**\uFF1A\u5168\u5BBD\u5361\u7247\n- **\u7B2C 4 \u884C**\uFF1A\u4E24\u4E2A\u534A\u5BBD\u5361\u7247\n- **\u7B2C 5 \u884C**\uFF1A\u5168\u5BBD\u5361\u7247\n\n## \u4F7F\u7528\u573A\u666F\n\n\u9002\u7528\u4E8E\u4EA7\u54C1\u8BE6\u60C5\u9875\uFF0C\u5C55\u793A\u4EA7\u54C1\u7684\u6838\u5FC3\u4F18\u52BF\u548C\u7279\u8272\u529F\u80FD\u3002\n\n## \u81EA\u5B9A\u4E49\u6837\u5F0F Class Names\n\n\u7EC4\u4EF6\u63D0\u4F9B\u4EE5\u4E0B\u56FA\u5B9A\u7684 className\uFF0C\u65B9\u4FBF\u901A\u8FC7 CSS \u81EA\u5B9A\u4E49\u6837\u5F0F\uFF1A\n\n### \u5E03\u5C40\u7C7B\n- \\`.ksp-container\\` - \u4E3B\u5BB9\u5668\n- \\`.ksp-title\\` - \u4E3B\u6807\u9898\n- \\`.ksp-desktop-layout\\` - \u684C\u9762\u7AEF\u5E03\u5C40\u5BB9\u5668\n- \\`.ksp-mobile-layout\\` - \u624B\u673A\u7AEF\u5E03\u5C40\u5BB9\u5668\n- \\`.ksp-row\\` - \u884C\u5BB9\u5668\n - \\`.ksp-row-1\\` - \u7B2C 1 \u884C\uFF08\u684C\u9762\u7AEF\uFF09\n - \\`.ksp-row-2\\` - \u7B2C 2 \u884C\uFF08\u684C\u9762\u7AEF\uFF09\n - \\`.ksp-row-3\\` - \u7B2C 3 \u884C\uFF08\u684C\u9762\u7AEF\uFF09\n - \\`.ksp-row-mobile-1\\` - \u7B2C 1 \u884C\uFF08\u624B\u673A\u7AEF\uFF09\n - \\`.ksp-row-mobile-2\\` - \u7B2C 2 \u884C\uFF08\u624B\u673A\u7AEF\uFF09\n\n### \u5361\u7247\u7C7B\n- \\`.ksp-card\\` - \u5361\u7247\u5BB9\u5668\n- \\`.ksp-card-image\\` - \u5361\u7247\u56FE\u7247\n- \\`.ksp-card-video\\` - \u5361\u7247\u89C6\u9891\n - \\`.ksp-card-video-desktop\\` - \u684C\u9762\u7AEF\u89C6\u9891\n - \\`.ksp-card-video-mobile\\` - \u79FB\u52A8\u7AEF\u89C6\u9891\n- \\`.ksp-card-content\\` - \u5361\u7247\u6587\u5B57\u8986\u76D6\u5C42\n- \\`.ksp-card-title\\` - \u5361\u7247\u6807\u9898\n- \\`.ksp-card-desc\\` - \u5361\u7247\u63CF\u8FF0\n\n### \u4F7F\u7528\u793A\u4F8B\n\n\\`\\`\\`css\n/* \u81EA\u5B9A\u4E49\u4E3B\u6807\u9898\u6837\u5F0F */\n.ksp-title {\n background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n}\n\n/* \u5361\u7247 hover \u6548\u679C */\n.ksp-card:hover {\n transform: scale(1.02);\n transition: transform 0.3s ease;\n}\n\n/* \u81EA\u5B9A\u4E49\u5361\u7247\u6807\u9898\u989C\u8272 */\n.ksp-card-title {\n color: #fbbf24;\n}\n\\`\\`\\`\n\n\uD83D\uDCA1 \u67E5\u770B **CustomStyle** story \u4E86\u89E3\u5B8C\u6574\u793A\u4F8B\n `,\n },\n },\n },\n tags: ['autodocs'],\n argTypes: {\n data: {\n description: 'KSP \u6570\u636E\uFF0C\u5305\u542B title \u548C items\uFF08\u9700\u8981 7 \u4E2A\u9879\uFF09',\n control: { type: 'object' },\n },\n className: {\n description: `\u81EA\u5B9A\u4E49\u7C7B\u540D\uFF0C\u53EF\u914D\u5408\u4EE5\u4E0B\u56FA\u5B9A class name \u4F7F\u7528 CSS \u81EA\u5B9A\u4E49\u6837\u5F0F\uFF1A\n \n**\u5E03\u5C40\u76F8\u5173\uFF1A**\n- \\`.ksp-container\\` - \u4E3B\u5BB9\u5668\n- \\`.ksp-desktop-layout\\` - \u684C\u9762\u7AEF\u5E03\u5C40\u5BB9\u5668\n- \\`.ksp-mobile-layout\\` - \u624B\u673A\u7AEF\u5E03\u5C40\u5BB9\u5668\n- \\`.ksp-row\\` - \u884C\u5BB9\u5668\n- \\`.ksp-row-1/2/3\\` - \u684C\u9762\u7AEF\u5404\u884C\n- \\`.ksp-row-mobile-1/2\\` - \u624B\u673A\u7AEF\u5404\u884C\n\n**\u5361\u7247\u76F8\u5173\uFF1A**\n- \\`.ksp-card\\` - \u5361\u7247\u5BB9\u5668\n- \\`.ksp-card-image\\` - \u5361\u7247\u56FE\u7247\n- \\`.ksp-card-video\\` - \u5361\u7247\u89C6\u9891\n- \\`.ksp-card-video-desktop\\` - \u684C\u9762\u7AEF\u89C6\u9891\n- \\`.ksp-card-video-mobile\\` - \u79FB\u52A8\u7AEF\u89C6\u9891\n- \\`.ksp-card-content\\` - \u5361\u7247\u6587\u5B57\u8986\u76D6\u5C42\n- \\`.ksp-card-title\\` - \u5361\u7247\u6807\u9898\n- \\`.ksp-card-desc\\` - \u5361\u7247\u63CF\u8FF0\n\n**\u6587\u672C\u76F8\u5173\uFF1A**\n- \\`.ksp-title\\` - \u4E3B\u6807\u9898`,\n control: { type: 'text' },\n },\n },\n} satisfies Meta<typeof Ksp>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\n// \u793A\u4F8B\u6570\u636E - 7 \u4E2A\u5361\u7247\nconst mockKspData: KspProps['data'] = {\n title: 'Why Choose Our Product',\n items: [\n {\n title: 'Improved Cleaning Efficiency',\n desc: 'HydroJet\u2122 Floor Washing System',\n imageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '100% Cleaning Coverage',\n desc: 'Edge-Cleaning CornerRover\u2122 Arm',\n imageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'All You Need, All-in-One',\n desc: 'Complete Cleaning Solution',\n imageUrl: 'https://images.unsplash.com/photo-1556911220-bff31c812dba?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1556911220-bff31c812dba?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'Less Maintenance',\n desc: 'DuoSpiral\u2122 Detangle Brushes',\n imageUrl: 'https://images.unsplash.com/photo-1550745165-9bc0b252726f?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1550745165-9bc0b252726f?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'Cleaning Power Upgrade',\n desc: '20,000 Pa Turbo Suction',\n imageUrl: 'https://images.unsplash.com/photo-1558002038-1055907df827?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1558002038-1055907df827?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'Intelligent Cleaning',\n desc: 'Smart App Control & Scheduling',\n imageUrl: 'https://images.unsplash.com/photo-1519389950473-47ba0277781c?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1519389950473-47ba0277781c?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'AI.See\u2122 Obstacle Avoidance',\n desc: 'Advanced Object Recognition',\n imageUrl: 'https://images.unsplash.com/photo-1535378917042-10a22c95931a?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1535378917042-10a22c95931a?w=600&h=800&fit=crop&q=80',\n },\n ],\n}\n\n/**\n * \u9ED8\u8BA4\u72B6\u6001 - \u5C55\u793A\u5B8C\u6574\u7684 7 \u4E2A KSP \u5361\u7247\u5E03\u5C40\n * \n * \uD83D\uDCA1 \u63D0\u793A\uFF1A\u67E5\u770B \"CustomStyle\" story\uFF0C\u4E86\u89E3\u5982\u4F55\u4F7F\u7528\u56FA\u5B9A class name \u81EA\u5B9A\u4E49\u6837\u5F0F\n */\nexport const Default: Story = {\n args: {\n data: mockKspData,\n },\n}\n\n/**\n * \u4E2D\u6587\u5185\u5BB9 - \u5C55\u793A\u4E2D\u6587\u5356\u70B9\n */\nexport const Chinese: Story = {\n args: {\n data: {\n title: '\u4E3A\u4EC0\u4E48\u9009\u62E9\u6211\u4EEC\u7684\u4EA7\u54C1',\n items: [\n {\n title: '\u6E05\u6D01\u6548\u7387\u5927\u5E45\u63D0\u5347',\n desc: 'HydroJet\u2122 \u5730\u677F\u6E05\u6D01\u7CFB\u7EDF',\n imageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '100% \u6E05\u6D01\u8986\u76D6',\n desc: 'CornerRover\u2122 \u8FB9\u89D2\u6E05\u6D01\u81C2',\n imageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '\u4E00\u673A\u591A\u7528\uFF0C\u5168\u80FD\u6E05\u6D01',\n desc: '\u5B8C\u6574\u7684\u6E05\u6D01\u89E3\u51B3\u65B9\u6848',\n imageUrl: 'https://images.unsplash.com/photo-1556911220-bff31c812dba?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1556911220-bff31c812dba?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '\u66F4\u5C11\u7EF4\u62A4',\n desc: 'DuoSpiral\u2122 \u9632\u7F20\u7ED5\u5237\u5934',\n imageUrl: 'https://images.unsplash.com/photo-1550745165-9bc0b252726f?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1550745165-9bc0b252726f?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '\u6E05\u6D01\u80FD\u529B\u5347\u7EA7',\n desc: '20,000 Pa \u5F3A\u529B\u5438\u5C18',\n imageUrl: 'https://images.unsplash.com/photo-1558002038-1055907df827?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1558002038-1055907df827?w=600&h=800&fit=crop&q=80',\n },\n {\n title: '\u667A\u80FD\u6E05\u6D01',\n desc: 'APP \u8FDC\u7A0B\u63A7\u5236\u4E0E\u5B9A\u65F6',\n imageUrl: 'https://images.unsplash.com/photo-1519389950473-47ba0277781c?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1519389950473-47ba0277781c?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'AI \u667A\u80FD\u907F\u969C',\n desc: '\u5148\u8FDB\u7684\u7269\u4F53\u8BC6\u522B\u6280\u672F',\n imageUrl: 'https://images.unsplash.com/photo-1535378917042-10a22c95931a?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1535378917042-10a22c95931a?w=600&h=800&fit=crop&q=80',\n },\n ],\n },\n },\n}\n\n/**\n * \u89C6\u9891\u5185\u5BB9 - \u5C55\u793A\u89C6\u9891\u5361\u7247\n */\nexport const WithVideo: Story = {\n args: {\n data: {\n title: 'Experience the Difference',\n items: [\n {\n title: 'Powerful Performance',\n desc: 'See it in action',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/763f24558ba84e098b817740384a0f38.mp4',\n mobVideoUrl: 'https://cdn.shopify.com/videos/c/o/v/bb1e9dcefc9e433a8bdf70215c39eedc.mp4',\n imageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1558618666-fcd25c85cd64?w=600&h=800&fit=crop&q=80',\n },\n {\n title: 'Smart Navigation',\n desc: 'Advanced mapping technology',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4',\n mobVideoUrl: 'https://cdn.shopify.com/videos/c/o/v/bb1e9dcefc9e433a8bdf70215c39eedc.mp4',\n imageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=1200&h=800&fit=crop&q=80',\n mobImageUrl: 'https://images.unsplash.com/photo-1563213126-a4273aed2016?w=600&h=800&fit=crop&q=80',\n },\n ...mockKspData.items.slice(2),\n ],\n },\n },\n}\n\n/**\n * \u65E0\u6807\u9898 - \u53EA\u5C55\u793A\u5361\u7247\n */\nexport const NoTitle: Story = {\n args: {\n data: {\n items: mockKspData.items,\n },\n },\n}\n\n/**\n * \u81EA\u5B9A\u4E49\u6837\u5F0F\u793A\u4F8B\n * \n * \u5C55\u793A\u5982\u4F55\u901A\u8FC7\u56FA\u5B9A\u7684 class name \u81EA\u5B9A\u4E49\u7EC4\u4EF6\u6837\u5F0F\uFF1A\n * - `.ksp-title` - \u6E10\u53D8\u8272\u6807\u9898\n * - `.ksp-card` - hover \u7F29\u653E\u6548\u679C\n * - `.ksp-card-title` - \u91D1\u8272\u6807\u9898\n * - `.ksp-card-desc` - \u7070\u8272\u63CF\u8FF0\n * - `.ksp-card::before` - hover \u6E10\u53D8\u8FB9\u6846\n */\nexport const CustomStyle: Story = {\n args: {\n data: mockKspData,\n className: 'py-20',\n style: `\n /* \u4E3B\u6807\u9898 - \u6E10\u53D8\u8272\u6587\u5B57\u6548\u679C */\n .ksp-title {\n background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n background-clip: text;\n }\n \n /* \u5361\u7247\u5BB9\u5668 - \u6DFB\u52A0\u8FC7\u6E21\u52A8\u753B */\n .ksp-card {\n transition: transform 0.3s ease;\n }\n \n /* \u5361\u7247 hover \u6548\u679C - \u8F7B\u5FAE\u653E\u5927 */\n .ksp-card:hover {\n transform: scale(1.02);\n }\n \n /* \u5361\u7247\u6807\u9898 - \u91D1\u8272\u6587\u5B57 */\n .ksp-card-title {\n color: #fbbf24;\n }\n \n /* \u5361\u7247\u63CF\u8FF0 - \u6D45\u7070\u8272\u6587\u5B57 */\n .ksp-card-desc {\n color: #d1d5db;\n }\n \n /* \u5361\u7247 hover \u6E10\u53D8\u8FB9\u6846\u6548\u679C */\n .ksp-card::before {\n content: '';\n position: absolute;\n inset: 0;\n border: 2px solid transparent;\n border-radius: 16px;\n background: linear-gradient(135deg, #667eea, #764ba2) border-box;\n -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);\n -webkit-mask-composite: xor;\n mask-composite: exclude;\n opacity: 0;\n transition: opacity 0.3s ease;\n }\n \n .ksp-card:hover::before {\n opacity: 1;\n }\n `\n },\n\n}\n"],
5
+ "mappings": "AACA,OAAOA,MAAS,iCAGhB,MAAMC,EAAO,CACX,MAAO,qBACP,UAAWD,EACX,WAAY,CACV,OAAQ,aACR,KAAM,CACJ,YAAa,CACX,UAAW;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,SAiFb,CACF,CACF,EACA,KAAM,CAAC,UAAU,EACjB,SAAU,CACR,KAAM,CACJ,YAAa,+FACb,QAAS,CAAE,KAAM,QAAS,CAC5B,EACA,UAAW,CACT,YAAa,6hCAsBb,QAAS,CAAE,KAAM,MAAO,CAC1B,CACF,CACF,EAEA,IAAOE,EAAQD,EAKf,MAAME,EAAgC,CACpC,MAAO,yBACP,MAAO,CACL,CACE,MAAO,+BACP,KAAM,sCACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,yBACP,KAAM,sCACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,2BACP,KAAM,6BACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,mBACP,KAAM,mCACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,yBACP,KAAM,0BACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,uBACP,KAAM,iCACN,SAAU,0FACV,YAAa,wFACf,EACA,CACE,MAAO,kCACP,KAAM,8BACN,SAAU,0FACV,YAAa,wFACf,CACF,CACF,EAOaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAKaE,EAAiB,CAC5B,KAAM,CACJ,KAAM,CACJ,MAAO,+DACP,MAAO,CACL,CACE,MAAO,mDACP,KAAM,sDACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,gCACP,KAAM,mDACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,yDACP,KAAM,yDACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,2BACP,KAAM,iDACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,uCACP,KAAM,qCACN,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,2BACP,KAAM,iDACN,SAAU,0FACV,YAAa,wFACf,EACA,CACE,MAAO,8BACP,KAAM,yDACN,SAAU,0FACV,YAAa,wFACf,CACF,CACF,CACF,CACF,EAKaC,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,MAAO,4BACP,MAAO,CACL,CACE,MAAO,uBACP,KAAM,mBACN,SAAU,4EACV,YAAa,4EACb,SAAU,uFACV,YAAa,qFACf,EACA,CACE,MAAO,mBACP,KAAM,8BACN,SAAU,4EACV,YAAa,4EACb,SAAU,uFACV,YAAa,qFACf,EACA,GAAGH,EAAY,MAAM,MAAM,CAAC,CAC9B,CACF,CACF,CACF,EAKaI,EAAiB,CAC5B,KAAM,CACJ,KAAM,CACJ,MAAOJ,EAAY,KACrB,CACF,CACF,EAYaK,EAAqB,CAChC,KAAM,CACJ,KAAML,EACN,UAAW,QACX,MAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAgDT,CAEF",
6
+ "names": ["Ksp", "meta", "ksp_stories_default", "mockKspData", "Default", "Chinese", "WithVideo", "NoTitle", "CustomStyle"]
7
+ }
@@ -0,0 +1,49 @@
1
+ import type { StoryObj } from '@storybook/react';
2
+ import type { ProductCompareProps } from '../biz-components/ProductCompare/index.js';
3
+ declare const meta: {
4
+ title: string;
5
+ component: import("react").ForwardRefExoticComponent<Omit<ProductCompareProps, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
6
+ className?: string;
7
+ data?: Record<string, any>;
8
+ } & import("react").RefAttributes<any>>;
9
+ parameters: {
10
+ layout: string;
11
+ docs: {
12
+ description: {
13
+ component: string;
14
+ };
15
+ };
16
+ };
17
+ decorators: ((Story: import("@storybook/core/csf").PartialStoryFn<import("@storybook/react").ReactRenderer, {
18
+ className?: string | undefined;
19
+ data: {
20
+ title?: string;
21
+ subtitle?: string;
22
+ ourProduct?: import("../biz-components/index.js").ProductItemData;
23
+ competitor?: import("../biz-components/index.js").ProductItemData;
24
+ theme?: import("../types/props.js").Theme;
25
+ shape?: import("../types/props.js").Shape;
26
+ } & Record<string, any>;
27
+ style?: string | undefined;
28
+ uid?: string | undefined;
29
+ disabled?: boolean | undefined;
30
+ container?: {
31
+ desktopSpan: number;
32
+ mobileSpan: number;
33
+ } | undefined;
34
+ ref?: import("react").LegacyRef<any> | undefined;
35
+ key?: import("react").Key | null | undefined;
36
+ }>) => import("react/jsx-runtime").JSX.Element)[];
37
+ tags: string[];
38
+ };
39
+ export default meta;
40
+ type Story = StoryObj<typeof meta>;
41
+ export declare const Default: Story;
42
+ export declare const ImageCompare: Story;
43
+ export declare const MixedMedia: Story;
44
+ export declare const NoTitle: Story;
45
+ export declare const CustomStyle: Story;
46
+ export declare const LightTheme: Story;
47
+ export declare const SquareShape: Story;
48
+ export declare const RoundedShape: Story;
49
+ export declare const LightSquare: Story;
@@ -0,0 +1,63 @@
1
+ import{jsx as o}from"react/jsx-runtime";import p from"../biz-components/ProductCompare/index.js";const r={title:"Biz-Components/ProductCompare",component:p,parameters:{layout:"fullscreen",docs:{description:{component:`
2
+ # ProductCompare \u4EA7\u54C1\u5BF9\u6BD4\u7EC4\u4EF6
3
+
4
+ \u7528\u4E8E\u5C55\u793A\u6211\u4EEC\u7684\u4EA7\u54C1\u4E0E\u7ADE\u54C1\u7684\u5BF9\u6BD4\u6548\u679C\uFF0C\u901A\u8FC7\u89C6\u89C9\u5316\u7684\u65B9\u5F0F\u7A81\u51FA\u4EA7\u54C1\u4F18\u52BF\u3002
5
+
6
+ ## \u{1F3AF} \u6838\u5FC3\u529F\u80FD
7
+
8
+ - **\u53CC\u680F\u5BF9\u6BD4\u5E03\u5C40**\uFF1A\u5DE6\u4FA7\u7ADE\u54C1\uFF0839.3%\u5BBD\u5EA6\uFF09\uFF0C\u53F3\u4FA7\u6211\u4EEC\u7684\u4EA7\u54C1\uFF0859.53%\u5BBD\u5EA6\uFF09\uFF0C\u7A81\u51FA\u91CD\u70B9
9
+ - **\u5A92\u4F53\u7C7B\u578B\u81EA\u9002\u5E94**\uFF1A\u81EA\u52A8\u8BC6\u522B\u89C6\u9891/\u56FE\u7247\u683C\u5F0F\uFF0C\u6839\u636E mimeType \u6E32\u67D3\u5BF9\u5E94\u5143\u7D20
10
+ - **\u54CD\u5E94\u5F0F\u8BBE\u8BA1**\uFF1A\u79FB\u52A8\u7AEF\u5782\u76F4\u5E03\u5C40\uFF0C\u5E73\u677F/\u684C\u9762\u7AEF\u6C34\u5E73\u5E03\u5C40\uFF0C\u65AD\u70B9 1024px
11
+ - **\u667A\u80FD\u61D2\u52A0\u8F7D**\uFF1A\u4F7F\u7528 Intersection Observer API\uFF0C\u8DDD\u79BB\u89C6\u53E3 1500px \u63D0\u524D\u52A0\u8F7D\uFF0C\u786E\u4FDD\u8FDB\u5165\u65F6\u5DF2\u51C6\u5907\u5C31\u7EEA
12
+ - **\u89C6\u9891\u81EA\u52A8\u64AD\u653E**\uFF1A\u652F\u6301\u81EA\u52A8\u64AD\u653E\u3001\u5FAA\u73AF\u3001\u9759\u97F3\uFF0C\u517C\u5BB9 iOS Safari\u3001\u5FAE\u4FE1/QQ \u6D4F\u89C8\u5668
13
+ - **\u4E3B\u9898\u652F\u6301**\uFF1A\u5185\u7F6E light/dark \u4E3B\u9898\uFF0C\u4F7F\u7528 aiui-dark \u7C7B\u540D\u7EDF\u4E00\u7BA1\u7406
14
+ - **\u5F62\u72B6\u53EF\u9009**\uFF1A\u652F\u6301 rounded\uFF08\u5706\u89D2\uFF09/ square\uFF08\u76F4\u89D2\uFF09\u4E24\u79CD\u98CE\u683C
15
+
16
+ ## \u{1F4F1} \u517C\u5BB9\u6027
17
+
18
+ - **iOS Safari**\uFF1Awebkit-playsinline \u5185\u8054\u64AD\u653E
19
+ - **Android Chrome**\uFF1A\u6807\u51C6 HTML5 \u89C6\u9891\u64AD\u653E
20
+ - **\u5FAE\u4FE1/QQ \u6D4F\u89C8\u5668**\uFF1AX5 \u5185\u6838\u540C\u5C42\u64AD\u653E\uFF0C\u4E0D\u52AB\u6301\u5168\u5C4F
21
+ - **\u684C\u9762\u6D4F\u89C8\u5668**\uFF1A\u7981\u7528\u753B\u4E2D\u753B\u548C\u8FDC\u7A0B\u64AD\u653E
22
+
23
+ ## \u{1F3A8} \u81EA\u5B9A\u4E49\u6837\u5F0F
24
+
25
+ \u7EC4\u4EF6\u63D0\u4F9B\u8BED\u4E49\u5316 className\uFF0C\u65B9\u4FBF\u901A\u8FC7 CSS \u81EA\u5B9A\u4E49\uFF1A
26
+ - \`.product-compare\` - \u7EC4\u4EF6\u5BB9\u5668
27
+ - \`.section-title / .section-subtitle\` - \u6807\u9898\uFF08\u5168\u5C40\u901A\u7528\u7C7B\uFF09
28
+ - \`.product-compare-item\` - \u5355\u4E2A\u4EA7\u54C1\u5BB9\u5668
29
+ - \`.product-compare-label\` - \u4EA7\u54C1\u6807\u7B7E
30
+ - \`.product-compare-media\` - \u5A92\u4F53\u5143\u7D20
31
+ - \`.product-compare-competitor / .product-compare-our-product\` - \u5177\u4F53\u4EA7\u54C1
32
+
33
+ ## \u{1F4A1} \u4F7F\u7528\u573A\u666F
34
+
35
+ \u9002\u7528\u4E8E\u4EA7\u54C1\u8BE6\u60C5\u9875\u3001\u8425\u9500\u843D\u5730\u9875\u3001\u54C1\u724C\u5BF9\u6BD4\u7B49\u573A\u666F\uFF0C\u5E2E\u52A9\u7528\u6237\u5FEB\u901F\u4E86\u89E3\u4EA7\u54C1\u5DEE\u5F02\u5316\u4F18\u52BF\u3002
36
+ `}}},decorators:[a=>o("div",{style:{padding:"2em"},children:o(a,{})})],tags:["autodocs"]};var c=r;const t={title:"\u6027\u80FD\u5BF9\u6BD4",subtitle:"\u771F\u5B9E\u573A\u666F\u4E0B\u7684\u8868\u73B0\u5DEE\u5F02",ourProduct:{text:"Eufy E25",media:{url:"https://cdn.shopify.com/videos/c/o/v/763f24558ba84e098b817740384a0f38.mp4",alt:"Eufy E25 \u4EA7\u54C1\u6F14\u793A",thumbnailURL:"https://via.placeholder.com/400x300",mimeType:"video/mp4",height:560,width:360,poster:{url:"https://via.placeholder.com/800x600/008CD6/ffffff?text=Anker+E25",mimeType:"image/jpeg"}},mobMedia:{url:"https://cdn.shopify.com/videos/c/o/v/bb1e9dcefc9e433a8bdf70215c39eedc.mp4",alt:"Eufy E25 \u4EA7\u54C1\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://via.placeholder.com/300x400",mimeType:"video/mp4",poster:{url:"https://via.placeholder.com/600x800/008CD6/ffffff?text=Anker+E25",mimeType:"image/jpeg"}}},competitor:{text:"\u5176\u4ED6\u54C1\u724C",media:{url:"https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4",alt:"\u7ADE\u54C1\u6F14\u793A",thumbnailURL:"https://via.placeholder.com/400x300",mimeType:"video/mp4",height:560,width:544,poster:{url:"https://via.placeholder.com/800x600/666666/ffffff?text=Competitor",mimeType:"image/jpeg"}},mobMedia:{url:"https://cdn.shopify.com/videos/c/o/v/3f97af0b92b2434eb2d11cb0307e3d08.mp4",alt:"\u7ADE\u54C1\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://via.placeholder.com/300x400",mimeType:"video/mp4",poster:{url:"https://via.placeholder.com/600x800/666666/ffffff?text=Competitor",mimeType:"image/jpeg"}}}},e={title:"\u4EA7\u54C1\u5916\u89C2\u5BF9\u6BD4",subtitle:"\u7EC6\u8282\u8BBE\u8BA1\u7684\u5DEE\u5F02",ourProduct:{text:"Anker \u65D7\u8230\u4EA7\u54C1",media:{url:"https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=800&h=600&fit=crop",alt:"Anker \u4EA7\u54C1\u56FE",thumbnailURL:"https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=400&h=300&fit=crop",mimeType:"image/jpeg"},mobMedia:{url:"https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=600&h=800&fit=crop",alt:"Anker \u4EA7\u54C1\u56FE\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=300&h=400&fit=crop",mimeType:"image/jpeg"}},competitor:{text:"\u666E\u901A\u4EA7\u54C1",media:{url:"https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=800&h=600&fit=crop",alt:"\u7ADE\u54C1\u56FE",thumbnailURL:"https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=400&h=300&fit=crop",mimeType:"image/jpeg"},mobMedia:{url:"https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=600&h=800&fit=crop",alt:"\u7ADE\u54C1\u56FE\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=300&h=400&fit=crop",mimeType:"image/jpeg"}}},i={title:"\u521B\u65B0\u79D1\u6280\u5BF9\u6BD4",subtitle:"\u52A8\u6001\u5C55\u793A\u4E0E\u9759\u6001\u5BF9\u6BD4",ourProduct:{text:"Anker \u667A\u80FD\u5145\u7535",media:{url:"https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4",alt:"Anker \u5145\u7535\u6F14\u793A",thumbnailURL:"https://via.placeholder.com/400x300",mimeType:"video/mp4",poster:{url:"https://via.placeholder.com/800x600/008CD6/ffffff?text=Smart+Charging",mimeType:"image/jpeg"}},mobMedia:{url:"https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4",alt:"Anker \u5145\u7535\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://via.placeholder.com/300x400",mimeType:"video/mp4",poster:{url:"https://via.placeholder.com/600x800/008CD6/ffffff?text=Smart+Charging",mimeType:"image/jpeg"}}},competitor:{text:"\u4F20\u7EDF\u5145\u7535\u5668",media:{url:"https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=800&h=600&fit=crop",alt:"\u4F20\u7EDF\u5145\u7535\u5668",thumbnailURL:"https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=400&h=300&fit=crop",mimeType:"image/jpeg"},mobMedia:{url:"https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=600&h=800&fit=crop",alt:"\u4F20\u7EDF\u5145\u7535\u5668\uFF08\u79FB\u52A8\u7248\uFF09",thumbnailURL:"https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=300&h=400&fit=crop",mimeType:"image/jpeg"}}},s={args:{data:t}},d={args:{data:e}},l={args:{data:i}},h={args:{data:{ourProduct:t.ourProduct,competitor:t.competitor}}},f={args:{data:{...t,title:"\u6781\u81F4\u6027\u80FD\u5BF9\u6BD4",subtitle:"\u79D1\u6280\u521B\u65B0\uFF0C\u8D85\u8D8A\u60F3\u8C61"},className:"bg-gradient-to-b from-gray-100 to-black p-20",style:`
37
+ .section-title {
38
+ background: linear-gradient(135deg,
39
+ #ff0080 0%,
40
+ #ff8c00 25%,
41
+ #40e0d0 50%,
42
+ #7b68ee 75%,
43
+ #ff1493 100%
44
+ );
45
+ -webkit-background-clip: text;
46
+ -webkit-text-fill-color: transparent;
47
+ background-clip: text;
48
+ font-weight: 800;
49
+ }
50
+ .section-subtitle {
51
+ background: linear-gradient(90deg,
52
+ #00f5ff 0%,
53
+ #00ff88 25%,
54
+ #ffeb3b 50%,
55
+ #ff6ec7 75%,
56
+ #ff0080 100%
57
+ );
58
+ -webkit-background-clip: text;
59
+ -webkit-text-fill-color: transparent;
60
+ background-clip: text;
61
+ }
62
+ `}},u={args:{data:{...t}}},n={args:{data:{...t,shape:"square"}}},g={args:{data:{...t,shape:"rounded"}}},b={args:{data:{...e,shape:"square"}}};export{f as CustomStyle,s as Default,d as ImageCompare,b as LightSquare,u as LightTheme,l as MixedMedia,h as NoTitle,g as RoundedShape,n as SquareShape,c as default};
63
+ //# sourceMappingURL=productCompare.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/productCompare.stories.tsx"],
4
+ "sourcesContent": ["import type { Meta, StoryObj } from '@storybook/react'\nimport ProductCompare from '../biz-components/ProductCompare/index.js'\nimport type { ProductCompareProps } from '../biz-components/ProductCompare/index.js'\n\nconst meta = {\n title: 'Biz-Components/ProductCompare',\n component: ProductCompare,\n parameters: {\n layout: 'fullscreen',\n docs: {\n description: {\n component: `\n# ProductCompare \u4EA7\u54C1\u5BF9\u6BD4\u7EC4\u4EF6\n\n\u7528\u4E8E\u5C55\u793A\u6211\u4EEC\u7684\u4EA7\u54C1\u4E0E\u7ADE\u54C1\u7684\u5BF9\u6BD4\u6548\u679C\uFF0C\u901A\u8FC7\u89C6\u89C9\u5316\u7684\u65B9\u5F0F\u7A81\u51FA\u4EA7\u54C1\u4F18\u52BF\u3002\n\n## \uD83C\uDFAF \u6838\u5FC3\u529F\u80FD\n\n- **\u53CC\u680F\u5BF9\u6BD4\u5E03\u5C40**\uFF1A\u5DE6\u4FA7\u7ADE\u54C1\uFF0839.3%\u5BBD\u5EA6\uFF09\uFF0C\u53F3\u4FA7\u6211\u4EEC\u7684\u4EA7\u54C1\uFF0859.53%\u5BBD\u5EA6\uFF09\uFF0C\u7A81\u51FA\u91CD\u70B9\n- **\u5A92\u4F53\u7C7B\u578B\u81EA\u9002\u5E94**\uFF1A\u81EA\u52A8\u8BC6\u522B\u89C6\u9891/\u56FE\u7247\u683C\u5F0F\uFF0C\u6839\u636E mimeType \u6E32\u67D3\u5BF9\u5E94\u5143\u7D20\n- **\u54CD\u5E94\u5F0F\u8BBE\u8BA1**\uFF1A\u79FB\u52A8\u7AEF\u5782\u76F4\u5E03\u5C40\uFF0C\u5E73\u677F/\u684C\u9762\u7AEF\u6C34\u5E73\u5E03\u5C40\uFF0C\u65AD\u70B9 1024px\n- **\u667A\u80FD\u61D2\u52A0\u8F7D**\uFF1A\u4F7F\u7528 Intersection Observer API\uFF0C\u8DDD\u79BB\u89C6\u53E3 1500px \u63D0\u524D\u52A0\u8F7D\uFF0C\u786E\u4FDD\u8FDB\u5165\u65F6\u5DF2\u51C6\u5907\u5C31\u7EEA\n- **\u89C6\u9891\u81EA\u52A8\u64AD\u653E**\uFF1A\u652F\u6301\u81EA\u52A8\u64AD\u653E\u3001\u5FAA\u73AF\u3001\u9759\u97F3\uFF0C\u517C\u5BB9 iOS Safari\u3001\u5FAE\u4FE1/QQ \u6D4F\u89C8\u5668\n- **\u4E3B\u9898\u652F\u6301**\uFF1A\u5185\u7F6E light/dark \u4E3B\u9898\uFF0C\u4F7F\u7528 aiui-dark \u7C7B\u540D\u7EDF\u4E00\u7BA1\u7406\n- **\u5F62\u72B6\u53EF\u9009**\uFF1A\u652F\u6301 rounded\uFF08\u5706\u89D2\uFF09/ square\uFF08\u76F4\u89D2\uFF09\u4E24\u79CD\u98CE\u683C\n\n## \uD83D\uDCF1 \u517C\u5BB9\u6027\n\n- **iOS Safari**\uFF1Awebkit-playsinline \u5185\u8054\u64AD\u653E\n- **Android Chrome**\uFF1A\u6807\u51C6 HTML5 \u89C6\u9891\u64AD\u653E\n- **\u5FAE\u4FE1/QQ \u6D4F\u89C8\u5668**\uFF1AX5 \u5185\u6838\u540C\u5C42\u64AD\u653E\uFF0C\u4E0D\u52AB\u6301\u5168\u5C4F\n- **\u684C\u9762\u6D4F\u89C8\u5668**\uFF1A\u7981\u7528\u753B\u4E2D\u753B\u548C\u8FDC\u7A0B\u64AD\u653E\n\n## \uD83C\uDFA8 \u81EA\u5B9A\u4E49\u6837\u5F0F\n\n\u7EC4\u4EF6\u63D0\u4F9B\u8BED\u4E49\u5316 className\uFF0C\u65B9\u4FBF\u901A\u8FC7 CSS \u81EA\u5B9A\u4E49\uFF1A\n- \\`.product-compare\\` - \u7EC4\u4EF6\u5BB9\u5668\n- \\`.section-title / .section-subtitle\\` - \u6807\u9898\uFF08\u5168\u5C40\u901A\u7528\u7C7B\uFF09\n- \\`.product-compare-item\\` - \u5355\u4E2A\u4EA7\u54C1\u5BB9\u5668\n- \\`.product-compare-label\\` - \u4EA7\u54C1\u6807\u7B7E\n- \\`.product-compare-media\\` - \u5A92\u4F53\u5143\u7D20\n- \\`.product-compare-competitor / .product-compare-our-product\\` - \u5177\u4F53\u4EA7\u54C1\n\n## \uD83D\uDCA1 \u4F7F\u7528\u573A\u666F\n\n\u9002\u7528\u4E8E\u4EA7\u54C1\u8BE6\u60C5\u9875\u3001\u8425\u9500\u843D\u5730\u9875\u3001\u54C1\u724C\u5BF9\u6BD4\u7B49\u573A\u666F\uFF0C\u5E2E\u52A9\u7528\u6237\u5FEB\u901F\u4E86\u89E3\u4EA7\u54C1\u5DEE\u5F02\u5316\u4F18\u52BF\u3002\n `,\n },\n },\n },\n decorators: [\n Story => (\n <div style={{ padding: '2em' }}>\n <Story />\n </div>\n ),\n ],\n tags: ['autodocs'],\n} satisfies Meta<typeof ProductCompare>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\n// \u89C6\u9891\u5BF9\u6BD4\u793A\u4F8B\u6570\u636E\nconst videoCompareData: ProductCompareProps['data'] = {\n title: '\u6027\u80FD\u5BF9\u6BD4',\n subtitle: '\u771F\u5B9E\u573A\u666F\u4E0B\u7684\u8868\u73B0\u5DEE\u5F02',\n ourProduct: {\n text: 'Eufy E25',\n media: {\n url: 'https://cdn.shopify.com/videos/c/o/v/763f24558ba84e098b817740384a0f38.mp4',\n alt: 'Eufy E25 \u4EA7\u54C1\u6F14\u793A',\n thumbnailURL: 'https://via.placeholder.com/400x300',\n mimeType: 'video/mp4',\n height: 560,\n width: 360,\n poster: {\n url: 'https://via.placeholder.com/800x600/008CD6/ffffff?text=Anker+E25',\n mimeType: 'image/jpeg',\n }\n },\n mobMedia: {\n url: 'https://cdn.shopify.com/videos/c/o/v/bb1e9dcefc9e433a8bdf70215c39eedc.mp4',\n alt: 'Eufy E25 \u4EA7\u54C1\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://via.placeholder.com/300x400',\n mimeType: 'video/mp4',\n poster: {\n url: 'https://via.placeholder.com/600x800/008CD6/ffffff?text=Anker+E25',\n mimeType: 'image/jpeg',\n }\n },\n \n\n },\n competitor: {\n text: '\u5176\u4ED6\u54C1\u724C',\n media: {\n url: 'https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4',\n alt: '\u7ADE\u54C1\u6F14\u793A',\n thumbnailURL: 'https://via.placeholder.com/400x300',\n mimeType: 'video/mp4',\n height: 560,\n width: 544,\n poster: {\n url: 'https://via.placeholder.com/800x600/666666/ffffff?text=Competitor',\n mimeType: 'image/jpeg',\n } \n },\n mobMedia: {\n url: 'https://cdn.shopify.com/videos/c/o/v/3f97af0b92b2434eb2d11cb0307e3d08.mp4',\n alt: '\u7ADE\u54C1\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://via.placeholder.com/300x400',\n mimeType: 'video/mp4',\n poster: {\n url: 'https://via.placeholder.com/600x800/666666/ffffff?text=Competitor',\n mimeType: 'image/jpeg',\n } \n },\n\n },\n}\n\n// \u56FE\u7247\u5BF9\u6BD4\u793A\u4F8B\u6570\u636E\nconst imageCompareData: ProductCompareProps['data'] = {\n title: '\u4EA7\u54C1\u5916\u89C2\u5BF9\u6BD4',\n subtitle: '\u7EC6\u8282\u8BBE\u8BA1\u7684\u5DEE\u5F02',\n ourProduct: {\n text: 'Anker \u65D7\u8230\u4EA7\u54C1',\n media: {\n url: 'https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=800&h=600&fit=crop',\n alt: 'Anker \u4EA7\u54C1\u56FE',\n thumbnailURL: 'https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=400&h=300&fit=crop',\n mimeType: 'image/jpeg',\n },\n mobMedia: {\n url: 'https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=600&h=800&fit=crop',\n alt: 'Anker \u4EA7\u54C1\u56FE\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://images.unsplash.com/photo-1593642632559-0c6d3fc62b89?w=300&h=400&fit=crop',\n mimeType: 'image/jpeg',\n },\n },\n competitor: {\n text: '\u666E\u901A\u4EA7\u54C1',\n media: {\n url: 'https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=800&h=600&fit=crop',\n alt: '\u7ADE\u54C1\u56FE',\n thumbnailURL: 'https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=400&h=300&fit=crop',\n mimeType: 'image/jpeg',\n },\n mobMedia: {\n url: 'https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=600&h=800&fit=crop',\n alt: '\u7ADE\u54C1\u56FE\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://images.unsplash.com/photo-1505740420928-5e560c06d30e?w=300&h=400&fit=crop',\n mimeType: 'image/jpeg',\n },\n },\n}\n\n// \u6DF7\u5408\u5BF9\u6BD4\u793A\u4F8B\u6570\u636E\uFF08\u4E00\u8FB9\u89C6\u9891\u4E00\u8FB9\u56FE\u7247\uFF09\nconst mixedCompareData: ProductCompareProps['data'] = {\n title: '\u521B\u65B0\u79D1\u6280\u5BF9\u6BD4',\n subtitle: '\u52A8\u6001\u5C55\u793A\u4E0E\u9759\u6001\u5BF9\u6BD4',\n ourProduct: {\n text: 'Anker \u667A\u80FD\u5145\u7535',\n media: {\n url: 'https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4',\n alt: 'Anker \u5145\u7535\u6F14\u793A',\n thumbnailURL: 'https://via.placeholder.com/400x300',\n mimeType: 'video/mp4',\n poster: {\n url: 'https://via.placeholder.com/800x600/008CD6/ffffff?text=Smart+Charging',\n mimeType: 'image/jpeg',\n }\n },\n mobMedia: {\n url: 'https://cdn.shopify.com/videos/c/o/v/61c978092bd24ca585f8a188b77458a6.mp4',\n alt: 'Anker \u5145\u7535\u6F14\u793A\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://via.placeholder.com/300x400',\n mimeType: 'video/mp4',\n poster: {\n url: 'https://via.placeholder.com/600x800/008CD6/ffffff?text=Smart+Charging',\n mimeType: 'image/jpeg',\n }\n },\n },\n competitor: {\n text: '\u4F20\u7EDF\u5145\u7535\u5668',\n media: {\n url: 'https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=800&h=600&fit=crop',\n alt: '\u4F20\u7EDF\u5145\u7535\u5668',\n thumbnailURL: 'https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=400&h=300&fit=crop',\n mimeType: 'image/jpeg',\n },\n mobMedia: {\n url: 'https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=600&h=800&fit=crop',\n alt: '\u4F20\u7EDF\u5145\u7535\u5668\uFF08\u79FB\u52A8\u7248\uFF09',\n thumbnailURL: 'https://images.unsplash.com/photo-1609091839311-d5365f9ff1c5?w=300&h=400&fit=crop',\n mimeType: 'image/jpeg',\n },\n },\n}\n\n// \u9ED8\u8BA4\u89C6\u9891\u5BF9\u6BD4\u6545\u4E8B\nexport const Default: Story = {\n args: {\n data: videoCompareData,\n },\n}\n\n// \u56FE\u7247\u5BF9\u6BD4\u6545\u4E8B\nexport const ImageCompare: Story = {\n args: {\n data: imageCompareData,\n },\n}\n\n// \u6DF7\u5408\u5BF9\u6BD4\u6545\u4E8B\uFF08\u89C6\u9891 + \u56FE\u7247\uFF09\nexport const MixedMedia: Story = {\n args: {\n data: mixedCompareData,\n },\n}\n\n// \u65E0\u6807\u9898\u7684\u5BF9\u6BD4\nexport const NoTitle: Story = {\n args: {\n data: {\n ourProduct: videoCompareData.ourProduct,\n competitor: videoCompareData.competitor,\n },\n },\n}\n\n// \u81EA\u5B9A\u4E49\u6837\u5F0F\uFF08\u5E26\u6E10\u53D8\u8272\u6587\u5B57\uFF09\nexport const CustomStyle: Story = {\n args: {\n data: {\n ...videoCompareData,\n title: '\u6781\u81F4\u6027\u80FD\u5BF9\u6BD4',\n subtitle: '\u79D1\u6280\u521B\u65B0\uFF0C\u8D85\u8D8A\u60F3\u8C61',\n },\n className: 'bg-gradient-to-b from-gray-100 to-black p-20',\n style: `\n .section-title {\n background: linear-gradient(135deg, \n #ff0080 0%, \n #ff8c00 25%, \n #40e0d0 50%, \n #7b68ee 75%, \n #ff1493 100%\n );\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n background-clip: text;\n font-weight: 800;\n }\n .section-subtitle {\n background: linear-gradient(90deg, \n #00f5ff 0%, \n #00ff88 25%, \n #ffeb3b 50%, \n #ff6ec7 75%, \n #ff0080 100%\n );\n -webkit-background-clip: text;\n -webkit-text-fill-color: transparent;\n background-clip: text;\n }\n `\n },\n}\n\n// Light \u4E3B\u9898\nexport const LightTheme: Story = {\n args: {\n data: {\n ...videoCompareData,\n },\n },\n}\n\n\n\n// Square \u5F62\u72B6\nexport const SquareShape: Story = {\n args: {\n data: {\n ...videoCompareData,\n shape: 'square',\n },\n },\n}\n\n// Rounded \u5F62\u72B6\uFF08\u9ED8\u8BA4\uFF09\nexport const RoundedShape: Story = {\n args: {\n data: {\n ...videoCompareData,\n shape: 'rounded',\n },\n },\n}\n\n// Light \u4E3B\u9898 + Square \u5F62\u72B6\nexport const LightSquare: Story = {\n args: {\n data: {\n ...imageCompareData,\n shape: 'square',\n },\n },\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "ProductCompare", "meta", "Story", "productCompare_stories_default", "videoCompareData", "imageCompareData", "mixedCompareData", "Default", "ImageCompare", "MixedMedia", "NoTitle", "CustomStyle", "LightTheme", "SquareShape", "RoundedShape", "LightSquare"]
7
+ }
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import type { StoryObj } from '@storybook/react';
3
+ import type { ProductHeroProps } from '../biz-components/ProductHero/types.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<ProductHeroProps & React.RefAttributes<HTMLDivElement>, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
7
+ className?: string;
8
+ data?: Record<string, any>;
9
+ }, "ref"> & React.RefAttributes<any>>;
10
+ parameters: {
11
+ layout: string;
12
+ backgrounds: {
13
+ default: string;
14
+ };
15
+ docs: {
16
+ description: {
17
+ component: string;
18
+ };
19
+ };
20
+ };
21
+ tags: string[];
22
+ };
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+ export declare const Default: Story;
26
+ export declare const LongTitle: Story;
27
+ export declare const ShortSubtitle: Story;
28
+ export declare const CustomCTA: Story;
@@ -0,0 +1,2 @@
1
+ import"react";import o from"../biz-components/ProductHero/index.js";const e={title:"Biz Components/ProductHero",component:o,parameters:{layout:"padded",backgrounds:{default:"dark"},docs:{description:{component:"\u4EA7\u54C1\u5C55\u793A\u7EC4\u4EF6\uFF0C\u5305\u542B\u6807\u9898\u3001\u526F\u6807\u9898\u3001CTA \u6309\u94AE\u548C\u4EA7\u54C1\u56FE\u7247"}}},tags:["autodocs"]};var c=e;const t={title:"Buy your cleaning housekeeper now",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/e25-poster.png?v=1751427172",ctaLink:"/products/t2353111",ctaText:"shop now",subtitle:"The World's First HydrJet\u2122 Robot Vacuum with 20,000 Pa Turbo Suction",mobPoster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/mob-e25-poster.png?v=1751427222"},n={args:{data:t}},p={args:{data:{...t,title:"Buy your advanced cleaning housekeeper with revolutionary technology now"}}},i={args:{data:{...t,subtitle:"Revolutionary Robot Vacuum"}}},u={args:{data:{...t,ctaText:"Learn More",ctaLink:"/learn-more"}}};export{u as CustomCTA,n as Default,p as LongTitle,i as ShortSubtitle,c as default};
2
+ //# sourceMappingURL=productHero.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/productHero.stories.tsx"],
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport ProductHero from '../biz-components/ProductHero/index.js'\nimport type { ProductHeroProps } from '../biz-components/ProductHero/types.js'\n\nconst meta = {\n title: 'Biz Components/ProductHero',\n component: ProductHero,\n parameters: {\n layout: 'padded',\n backgrounds: {\n default: 'dark',\n },\n docs: {\n description: {\n component: '\u4EA7\u54C1\u5C55\u793A\u7EC4\u4EF6\uFF0C\u5305\u542B\u6807\u9898\u3001\u526F\u6807\u9898\u3001CTA \u6309\u94AE\u548C\u4EA7\u54C1\u56FE\u7247',\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof ProductHero>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\nconst defaultData: ProductHeroProps['data'] = {\n title: 'Buy your cleaning housekeeper now',\n poster: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/e25-poster.png?v=1751427172',\n ctaLink: '/products/t2353111',\n ctaText: 'shop now',\n subtitle: \"The World's First HydrJet\u2122 Robot Vacuum with 20,000 Pa Turbo Suction\",\n mobPoster: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/mob-e25-poster.png?v=1751427222',\n}\n\nexport const Default: Story = {\n args: {\n data: defaultData,\n },\n}\n\nexport const LongTitle: Story = {\n args: {\n data: {\n ...defaultData,\n title: 'Buy your advanced cleaning housekeeper with revolutionary technology now',\n },\n },\n}\n\nexport const ShortSubtitle: Story = {\n args: {\n data: {\n ...defaultData,\n subtitle: 'Revolutionary Robot Vacuum',\n },\n },\n}\n\nexport const CustomCTA: Story = {\n args: {\n data: {\n ...defaultData,\n ctaText: 'Learn More',\n ctaLink: '/learn-more',\n },\n },\n}\n"],
5
+ "mappings": "AAAA,MAAkB,QAElB,OAAOA,MAAiB,yCAGxB,MAAMC,EAAO,CACX,MAAO,6BACP,UAAWD,EACX,WAAY,CACV,OAAQ,SACR,YAAa,CACX,QAAS,MACX,EACA,KAAM,CACJ,YAAa,CACX,UAAW,gJACb,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOE,EAAQD,EAIf,MAAME,EAAwC,CAC5C,MAAO,oCACP,OAAQ,qFACR,QAAS,qBACT,QAAS,WACT,SAAU,4EACV,UAAW,wFACb,EAEaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAEaE,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,GAAGF,EACH,MAAO,0EACT,CACF,CACF,EAEaG,EAAuB,CAClC,KAAM,CACJ,KAAM,CACJ,GAAGH,EACH,SAAU,4BACZ,CACF,CACF,EAEaI,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,GAAGJ,EACH,QAAS,aACT,QAAS,aACX,CACF,CACF",
6
+ "names": ["ProductHero", "meta", "productHero_stories_default", "defaultData", "Default", "LongTitle", "ShortSubtitle", "CustomCTA"]
7
+ }
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import type { StoryObj } from '@storybook/react';
3
+ import type { SpecsComparisonProps } from '../biz-components/SpecsComparison/types.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<SpecsComparisonProps & React.RefAttributes<HTMLDivElement>, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
7
+ className?: string;
8
+ data?: Record<string, any>;
9
+ }, "ref"> & React.RefAttributes<any>>;
10
+ parameters: {
11
+ layout: string;
12
+ backgrounds: {
13
+ default: string;
14
+ };
15
+ docs: {
16
+ description: {
17
+ component: string;
18
+ };
19
+ };
20
+ };
21
+ tags: string[];
22
+ };
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+ export declare const Default: Story;
26
+ export declare const SingleProduct: Story;
27
+ export declare const FourProducts: Story;
@@ -0,0 +1,30 @@
1
+ import"react";import n from"../biz-components/SpecsComparison/index.js";const e={title:"Biz Components/SpecsComparison",component:n,parameters:{layout:"fullscreen",backgrounds:{default:"light"},docs:{description:{component:"\u4EA7\u54C1\u89C4\u683C\u5BF9\u6BD4\u7EC4\u4EF6\uFF0C\u5C55\u793A\u591A\u4E2A\u4EA7\u54C1\u7684\u89C4\u683C\u53C2\u6570\u5BF9\u6BD4"}}},tags:["autodocs"]};var r=e;const t={LeftMenu:{data:[{title:"",subTitle:["Clean Types","Portable Deep Cleaner","HydroJet\u2122 Mopping System","Mop Type","Downward Pressure","Rotations Per Minute","Suction Power","Auto-Detangling","Obstacle Avoidance","Omni Station","Obstacle Clearance Height","Minimum Height and Width Restrictions","Robot/Station","Run Time","App Control","Bluetooth","Wi-Fi"],isProduct:!0}]},RightMenu:{menus:[{sku:"T2353111",handle:"t2353111",subTitle:{"Wi-Fi":"\u2705","Mop Type":"Rolling Mop","Run Time":`Vacuum and Mop\uFF1A
2
+ 125 min (Standard)
3
+
4
+ Vacuum\uFF1A
5
+ 216 min (Standard)`,Bluetooth:"\u2705","App Control":"\u2705","Clean Types":"Vacuum and Mop","Omni Station":"\u2705","Robot/Station":`Robot:
6
+ 12.83 \xD7 13.72 \xD7 4.40 in
7
+ Station\uFF1A
8
+ 14.63 \xD7 19.07 \xD7 17.29 in`,"Suction Power":"20,000 Pa","Auto-Detangling":"DuoSpiral\u2122 Brushes","Downward Pressure":"1.5kg","Obstacle Avoidance":"RGB Camera + LED","Rotations Per Minute":"180RPM","Portable Deep Cleaner":"\u274C","Obstacle Clearance Height":"0.83 in","HydroJet\u2122 Mopping System":"\u2705","Minimum Height and Width Restrictions":"4.40 in / 12.83 in"}},{sku:"T2352111",handle:"t2352111",subTitle:{"Wi-Fi":"\u2705","Mop Type":"Rolling Mop","Run Time":`Vacuum and Mop\uFF1A
9
+ 125 min (Standard)
10
+
11
+ Vacuum\uFF1A
12
+ 216 min (Standard)`,Bluetooth:"\u2705","App Control":"\u2705","Clean Types":"Vacuum and Mop","Omni Station":"\u2705","Robot/Station":`Robot:
13
+ 12.83 \xD7 13.72 \xD7 4.40 in
14
+ Station\uFF1A
15
+ 14.63 \xD7 19.07 \xD7 17.29 in`,"Suction Power":"20,000 Pa","Auto-Detangling":"DuoSpiral\u2122 Brushes","Downward Pressure":"1.5kg","Obstacle Avoidance":"RGB Camera + LED","Rotations Per Minute":"180RPM","Portable Deep Cleaner":"\u2705","Obstacle Clearance Height":"0.83 in","HydroJet\u2122 Mopping System":"\u2705","Minimum Height and Width Restrictions":"4.40 in / 12.83 in"}}]},DefaultSelectMenu:{buttonText:"Buy Now"}},s={args:{data:t}},u={args:{data:{...t,RightMenu:{menus:[t.RightMenu.menus[0]]}}}},p={args:{data:{...t,RightMenu:{menus:[...t.RightMenu.menus,{sku:"T20801A1",handle:"t2080111-c",subTitle:{"Wi-Fi":"\u2705","Mop Type":"Rolling Mop","Run Time":`Vacuum and Mop\uFF1A
16
+ 136 min (Standard)
17
+
18
+ Vacuum\uFF1A
19
+ 216 min (Standard)`,Bluetooth:"\u2705","App Control":"\u2705","Clean Types":"Vacuum and Mop","Omni Station":"\u2705","Robot/Station":`Robot:
20
+ 12.79 \xD7 13.66 \xD7 3.78 in
21
+ Station:
22
+ 15.08 \xD7 18.39 \xD7 26.38 in`,"Suction Power":"8,000 Pa","Auto-Detangling":"Detangling Brush","Downward Pressure":"1kg","Obstacle Avoidance":"Active Binocular Infrared Camera + RGB camera","Rotations Per Minute":"170RPM","Portable Deep Cleaner":"\u274C","Obstacle Clearance Height":"0.79 in","HydroJet\u2122 Mopping System":"\u2705","Minimum Height and Width Restrictions":"4.02 in / 16.54 in"}},{sku:"T2351111",handle:"t2351111",subTitle:{"Wi-Fi":"\u2705","Mop Type":"Dual Rotating Mop Pads","Run Time":`Vacuum and Mop\uFF1A
23
+ 136 min (Standard)
24
+
25
+ Vacuum\uFF1A
26
+ 173 min (Standard)`,Bluetooth:"\u2705","App Control":"\u2705","Clean Types":"Vacuum and Mop","Omni Station":"\u2705","Robot/Station":`Robot:
27
+ 12.8 \xD7 13.90 \xD7 4.47 in
28
+ Station\uFF1A
29
+ 14.41 \xD7 18.90 \xD7 18.11 in`,"Suction Power":"8,000 Pa","Auto-Detangling":"Pro-Detangle Comb\u2122","Downward Pressure":"1kg","Obstacle Avoidance":"RGB Camera + LED","Rotations Per Minute":"180RPM","Portable Deep Cleaner":"\u274C","Obstacle Clearance Height":"0.83 in","HydroJet\u2122 Mopping System":"\u274C","Minimum Height and Width Restrictions":"5.12 in / 13.78 in"}}]}}}};export{s as Default,p as FourProducts,u as SingleProduct,r as default};
30
+ //# sourceMappingURL=specsComparison.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/specsComparison.stories.tsx"],
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport SpecsComparison from '../biz-components/SpecsComparison/index.js'\nimport type { SpecsComparisonProps } from '../biz-components/SpecsComparison/types.js'\n\nconst meta = {\n title: 'Biz Components/SpecsComparison',\n component: SpecsComparison,\n parameters: {\n layout: 'fullscreen',\n backgrounds: {\n default: 'light',\n },\n docs: {\n description: {\n component: '\u4EA7\u54C1\u89C4\u683C\u5BF9\u6BD4\u7EC4\u4EF6\uFF0C\u5C55\u793A\u591A\u4E2A\u4EA7\u54C1\u7684\u89C4\u683C\u53C2\u6570\u5BF9\u6BD4',\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof SpecsComparison>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\nconst defaultData: SpecsComparisonProps['data'] = {\n LeftMenu: {\n data: [\n {\n title: '',\n subTitle: [\n 'Clean Types',\n 'Portable Deep Cleaner',\n 'HydroJet\u2122 Mopping System',\n 'Mop Type',\n 'Downward Pressure',\n 'Rotations Per Minute',\n 'Suction Power',\n 'Auto-Detangling',\n 'Obstacle Avoidance',\n 'Omni Station',\n 'Obstacle Clearance Height',\n 'Minimum Height and Width Restrictions',\n 'Robot/Station',\n 'Run Time',\n 'App Control',\n 'Bluetooth',\n 'Wi-Fi',\n ],\n isProduct: true,\n },\n ],\n },\n RightMenu: {\n menus: [\n {\n sku: 'T2353111',\n handle: 't2353111',\n subTitle: {\n 'Wi-Fi': '\u2705',\n 'Mop Type': 'Rolling Mop',\n 'Run Time': 'Vacuum and Mop\uFF1A\\n125 min (Standard)\\n\\nVacuum\uFF1A\\n216 min (Standard)',\n Bluetooth: '\u2705',\n 'App Control': '\u2705',\n 'Clean Types': 'Vacuum and Mop',\n 'Omni Station': '\u2705',\n 'Robot/Station':\n 'Robot: \\n12.83 \u00D7 13.72 \u00D7 4.40 in\\nStation\uFF1A\\n14.63 \u00D7 19.07 \u00D7 17.29 in',\n 'Suction Power': '20,000 Pa',\n 'Auto-Detangling': 'DuoSpiral\u2122 Brushes',\n 'Downward Pressure': '1.5kg',\n 'Obstacle Avoidance': 'RGB Camera + LED',\n 'Rotations Per Minute': '180RPM',\n 'Portable Deep Cleaner': '\u274C',\n 'Obstacle Clearance Height': '0.83 in',\n 'HydroJet\u2122 Mopping System': '\u2705',\n 'Minimum Height and Width Restrictions': '4.40 in / 12.83 in',\n },\n },\n {\n sku: 'T2352111',\n handle: 't2352111',\n subTitle: {\n 'Wi-Fi': '\u2705',\n 'Mop Type': 'Rolling Mop',\n 'Run Time': 'Vacuum and Mop\uFF1A\\n125 min (Standard)\\n\\nVacuum\uFF1A\\n216 min (Standard)',\n Bluetooth: '\u2705',\n 'App Control': '\u2705',\n 'Clean Types': 'Vacuum and Mop',\n 'Omni Station': '\u2705',\n 'Robot/Station':\n 'Robot: \\n12.83 \u00D7 13.72 \u00D7 4.40 in\\nStation\uFF1A\\n14.63 \u00D7 19.07 \u00D7 17.29 in',\n 'Suction Power': '20,000 Pa',\n 'Auto-Detangling': 'DuoSpiral\u2122 Brushes',\n 'Downward Pressure': '1.5kg',\n 'Obstacle Avoidance': 'RGB Camera + LED',\n 'Rotations Per Minute': '180RPM',\n 'Portable Deep Cleaner': '\u2705',\n 'Obstacle Clearance Height': '0.83 in',\n 'HydroJet\u2122 Mopping System': '\u2705',\n 'Minimum Height and Width Restrictions': '4.40 in / 12.83 in',\n },\n },\n ],\n },\n DefaultSelectMenu: {\n buttonText: 'Buy Now',\n },\n}\n\nexport const Default: Story = {\n args: {\n data: defaultData,\n },\n}\n\nexport const SingleProduct: Story = {\n args: {\n data: {\n ...defaultData,\n RightMenu: {\n menus: [defaultData.RightMenu.menus[0]],\n },\n },\n },\n}\n\nexport const FourProducts: Story = {\n args: {\n data: {\n ...defaultData,\n RightMenu: {\n menus: [\n ...defaultData.RightMenu.menus,\n {\n sku: 'T20801A1',\n handle: 't2080111-c',\n subTitle: {\n 'Wi-Fi': '\u2705',\n 'Mop Type': 'Rolling Mop',\n 'Run Time':\n 'Vacuum and Mop\uFF1A\\n136 min (Standard)\\n\\nVacuum\uFF1A\\n216 min (Standard)',\n Bluetooth: '\u2705',\n 'App Control': '\u2705',\n 'Clean Types': 'Vacuum and Mop',\n 'Omni Station': '\u2705',\n 'Robot/Station':\n 'Robot:\\n12.79 \u00D7 13.66 \u00D7 3.78 in\\nStation:\\n15.08 \u00D7 18.39 \u00D7 26.38 in',\n 'Suction Power': '8,000 Pa',\n 'Auto-Detangling': 'Detangling Brush',\n 'Downward Pressure': '1kg',\n 'Obstacle Avoidance': 'Active Binocular Infrared Camera + RGB camera',\n 'Rotations Per Minute': '170RPM',\n 'Portable Deep Cleaner': '\u274C',\n 'Obstacle Clearance Height': '0.79 in',\n 'HydroJet\u2122 Mopping System': '\u2705',\n 'Minimum Height and Width Restrictions': '4.02 in / 16.54 in',\n },\n },\n {\n sku: 'T2351111',\n handle: 't2351111',\n subTitle: {\n 'Wi-Fi': '\u2705',\n 'Mop Type': 'Dual Rotating Mop Pads',\n 'Run Time':\n 'Vacuum and Mop\uFF1A\\n136 min (Standard)\\n\\nVacuum\uFF1A\\n173 min (Standard)',\n Bluetooth: '\u2705',\n 'App Control': '\u2705',\n 'Clean Types': 'Vacuum and Mop',\n 'Omni Station': '\u2705',\n 'Robot/Station':\n 'Robot: \\n12.8 \u00D7 13.90 \u00D7 4.47 in\\nStation\uFF1A\\n14.41 \u00D7 18.90 \u00D7 18.11 in',\n 'Suction Power': '8,000 Pa',\n 'Auto-Detangling': 'Pro-Detangle Comb\u2122',\n 'Downward Pressure': '1kg',\n 'Obstacle Avoidance': 'RGB Camera + LED',\n 'Rotations Per Minute': '180RPM',\n 'Portable Deep Cleaner': '\u274C',\n 'Obstacle Clearance Height': '0.83 in',\n 'HydroJet\u2122 Mopping System': '\u274C',\n 'Minimum Height and Width Restrictions': '5.12 in / 13.78 in',\n },\n },\n ],\n },\n },\n },\n}\n"],
5
+ "mappings": "AAAA,MAAkB,QAElB,OAAOA,MAAqB,6CAG5B,MAAMC,EAAO,CACX,MAAO,iCACP,UAAWD,EACX,WAAY,CACV,OAAQ,aACR,YAAa,CACX,QAAS,OACX,EACA,KAAM,CACJ,YAAa,CACX,UAAW,sIACb,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOE,EAAQD,EAIf,MAAME,EAA4C,CAChD,SAAU,CACR,KAAM,CACJ,CACE,MAAO,GACP,SAAU,CACR,cACA,wBACA,gCACA,WACA,oBACA,uBACA,gBACA,kBACA,qBACA,eACA,4BACA,wCACA,gBACA,WACA,cACA,YACA,OACF,EACA,UAAW,EACb,CACF,CACF,EACA,UAAW,CACT,MAAO,CACL,CACE,IAAK,WACL,OAAQ,WACR,SAAU,CACR,QAAS,SACT,WAAY,cACZ,WAAY;AAAA;AAAA;AAAA;AAAA,oBACZ,UAAW,SACX,cAAe,SACf,cAAe,iBACf,eAAgB,SAChB,gBACE;AAAA;AAAA;AAAA,gCACF,gBAAiB,YACjB,kBAAmB,0BACnB,oBAAqB,QACrB,qBAAsB,mBACtB,uBAAwB,SACxB,wBAAyB,SACzB,4BAA6B,UAC7B,gCAA4B,SAC5B,wCAAyC,oBAC3C,CACF,EACA,CACE,IAAK,WACL,OAAQ,WACR,SAAU,CACR,QAAS,SACT,WAAY,cACZ,WAAY;AAAA;AAAA;AAAA;AAAA,oBACZ,UAAW,SACX,cAAe,SACf,cAAe,iBACf,eAAgB,SAChB,gBACE;AAAA;AAAA;AAAA,gCACF,gBAAiB,YACjB,kBAAmB,0BACnB,oBAAqB,QACrB,qBAAsB,mBACtB,uBAAwB,SACxB,wBAAyB,SACzB,4BAA6B,UAC7B,gCAA4B,SAC5B,wCAAyC,oBAC3C,CACF,CACF,CACF,EACA,kBAAmB,CACjB,WAAY,SACd,CACF,EAEaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAEaE,EAAuB,CAClC,KAAM,CACJ,KAAM,CACJ,GAAGF,EACH,UAAW,CACT,MAAO,CAACA,EAAY,UAAU,MAAM,CAAC,CAAC,CACxC,CACF,CACF,CACF,EAEaG,EAAsB,CACjC,KAAM,CACJ,KAAM,CACJ,GAAGH,EACH,UAAW,CACT,MAAO,CACL,GAAGA,EAAY,UAAU,MACzB,CACE,IAAK,WACL,OAAQ,aACR,SAAU,CACR,QAAS,SACT,WAAY,cACZ,WACE;AAAA;AAAA;AAAA;AAAA,oBACF,UAAW,SACX,cAAe,SACf,cAAe,iBACf,eAAgB,SAChB,gBACE;AAAA;AAAA;AAAA,gCACF,gBAAiB,WACjB,kBAAmB,mBACnB,oBAAqB,MACrB,qBAAsB,gDACtB,uBAAwB,SACxB,wBAAyB,SACzB,4BAA6B,UAC7B,gCAA4B,SAC5B,wCAAyC,oBAC3C,CACF,EACA,CACE,IAAK,WACL,OAAQ,WACR,SAAU,CACR,QAAS,SACT,WAAY,yBACZ,WACE;AAAA;AAAA;AAAA;AAAA,oBACF,UAAW,SACX,cAAe,SACf,cAAe,iBACf,eAAgB,SAChB,gBACE;AAAA;AAAA;AAAA,gCACF,gBAAiB,WACjB,kBAAmB,0BACnB,oBAAqB,MACrB,qBAAsB,mBACtB,uBAAwB,SACxB,wBAAyB,SACzB,4BAA6B,UAC7B,gCAA4B,SAC5B,wCAAyC,oBAC3C,CACF,CACF,CACF,CACF,CACF,CACF",
6
+ "names": ["SpecsComparison", "meta", "specsComparison_stories_default", "defaultData", "Default", "SingleProduct", "FourProducts"]
7
+ }
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import type { StoryObj } from '@storybook/react';
3
+ import type { TabWithImageProps } from '../biz-components/TabWithImage/types.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<TabWithImageProps & React.RefAttributes<HTMLDivElement>, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
7
+ className?: string;
8
+ data?: Record<string, any>;
9
+ }, "ref"> & React.RefAttributes<any>>;
10
+ parameters: {
11
+ layout: string;
12
+ backgrounds: {
13
+ default: string;
14
+ };
15
+ docs: {
16
+ description: {
17
+ component: string;
18
+ };
19
+ };
20
+ };
21
+ tags: string[];
22
+ };
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+ export declare const Default: Story;
26
+ export declare const ThreeItems: Story;
27
+ export declare const SingleItem: Story;
@@ -0,0 +1,2 @@
1
+ import"react";import t from"../biz-components/TabWithImage/index.js";const a={title:"Biz Components/TabWithImage",component:t,parameters:{layout:"padded",backgrounds:{default:"dark"},docs:{description:{component:"Tab \u5207\u6362\u548C\u56FE\u7247\u5C55\u793A\u7EC4\u4EF6\uFF0C\u4F7F\u7528\u6ED1\u52A8\u80CC\u666F\u9AD8\u4EAE\u6548\u679C\u548C Framer Motion \u52A8\u753B"}}},tags:["autodocs"]};var f=a;const e={desc:"Effortless customization at your fingertips.",title:"Smart App Control",datalist:[{image:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/4e735b0f-8e44-4715-ae1e-d18977ca5404_Frame_2121235327.png?v=1751439585",title:"Customizable Cleaning Modes",imgPad:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/efc82cbc-e848-4ba8-95ae-9e2766323588_Frame_2121235504.png?v=1752664131",imageMob:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/7ef86e71-eba4-46a5-ab44-61c8bf7c2232_Frame_2121235328.png?v=1752582614"},{image:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/e55fcd7a-cebf-45c1-bb71-452abdaf95ae_Frame_2121235327_1.png?v=1751439903",title:"Multi-Floor Mapping",imgPad:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/ccdbbbff-5c33-4805-a434-e04a12e32a72_Frame_2121235493.png?v=1752735394",imageMob:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/ac28983f-6257-469d-81bb-03dfb54429b6_Frame_2121235514_1.png?v=1752735193"}]},m={args:{data:e}},p={args:{data:{...e,datalist:[...e.datalist,{image:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/4e735b0f-8e44-4715-ae1e-d18977ca5404_Frame_2121235327.png?v=1751439585",title:"Smart Scheduling",imgPad:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/efc82cbc-e848-4ba8-95ae-9e2766323588_Frame_2121235504.png?v=1752664131",imageMob:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/7ef86e71-eba4-46a5-ab44-61c8bf7c2232_Frame_2121235328.png?v=1752582614"}]}}},c={args:{data:{...e,datalist:[e.datalist[0]]}}};export{m as Default,c as SingleItem,p as ThreeItems,f as default};
2
+ //# sourceMappingURL=tabWithImage.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/tabWithImage.stories.tsx"],
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport TabWithImage from '../biz-components/TabWithImage/index.js'\nimport type { TabWithImageProps } from '../biz-components/TabWithImage/types.js'\n\nconst meta = {\n title: 'Biz Components/TabWithImage',\n component: TabWithImage,\n parameters: {\n layout: 'padded',\n backgrounds: {\n default: 'dark',\n },\n docs: {\n description: {\n component: 'Tab \u5207\u6362\u548C\u56FE\u7247\u5C55\u793A\u7EC4\u4EF6\uFF0C\u4F7F\u7528\u6ED1\u52A8\u80CC\u666F\u9AD8\u4EAE\u6548\u679C\u548C Framer Motion \u52A8\u753B',\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof TabWithImage>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\nconst defaultData: TabWithImageProps['data'] = {\n desc: 'Effortless customization at your fingertips.',\n title: 'Smart App Control',\n datalist: [\n {\n image:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/4e735b0f-8e44-4715-ae1e-d18977ca5404_Frame_2121235327.png?v=1751439585',\n title: 'Customizable Cleaning Modes',\n imgPad:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/efc82cbc-e848-4ba8-95ae-9e2766323588_Frame_2121235504.png?v=1752664131',\n imageMob:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/7ef86e71-eba4-46a5-ab44-61c8bf7c2232_Frame_2121235328.png?v=1752582614',\n },\n {\n image:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/e55fcd7a-cebf-45c1-bb71-452abdaf95ae_Frame_2121235327_1.png?v=1751439903',\n title: 'Multi-Floor Mapping',\n imgPad:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/ccdbbbff-5c33-4805-a434-e04a12e32a72_Frame_2121235493.png?v=1752735394',\n imageMob:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/ac28983f-6257-469d-81bb-03dfb54429b6_Frame_2121235514_1.png?v=1752735193',\n },\n ],\n}\n\nexport const Default: Story = {\n args: {\n data: defaultData,\n },\n}\n\nexport const ThreeItems: Story = {\n args: {\n data: {\n ...defaultData,\n datalist: [\n ...defaultData.datalist,\n {\n image:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/4e735b0f-8e44-4715-ae1e-d18977ca5404_Frame_2121235327.png?v=1751439585',\n title: 'Smart Scheduling',\n imgPad:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/efc82cbc-e848-4ba8-95ae-9e2766323588_Frame_2121235504.png?v=1752664131',\n imageMob:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/7ef86e71-eba4-46a5-ab44-61c8bf7c2232_Frame_2121235328.png?v=1752582614',\n },\n ],\n },\n },\n}\n\nexport const SingleItem: Story = {\n args: {\n data: {\n ...defaultData,\n datalist: [defaultData.datalist[0]],\n },\n },\n}\n"],
5
+ "mappings": "AAAA,MAAkB,QAElB,OAAOA,MAAkB,0CAGzB,MAAMC,EAAO,CACX,MAAO,8BACP,UAAWD,EACX,WAAY,CACV,OAAQ,SACR,YAAa,CACX,QAAS,MACX,EACA,KAAM,CACJ,YAAa,CACX,UAAW,+JACb,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOE,EAAQD,EAIf,MAAME,EAAyC,CAC7C,KAAM,+CACN,MAAO,oBACP,SAAU,CACR,CACE,MACE,gIACF,MAAO,8BACP,OACE,gIACF,SACE,+HACJ,EACA,CACE,MACE,kIACF,MAAO,sBACP,OACE,gIACF,SACE,iIACJ,CACF,CACF,EAEaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAEaE,EAAoB,CAC/B,KAAM,CACJ,KAAM,CACJ,GAAGF,EACH,SAAU,CACR,GAAGA,EAAY,SACf,CACE,MACE,gIACF,MAAO,mBACP,OACE,gIACF,SACE,+HACJ,CACF,CACF,CACF,CACF,EAEaG,EAAoB,CAC/B,KAAM,CACJ,KAAM,CACJ,GAAGH,EACH,SAAU,CAACA,EAAY,SAAS,CAAC,CAAC,CACpC,CACF,CACF",
6
+ "names": ["TabWithImage", "meta", "tabWithImage_stories_default", "defaultData", "Default", "ThreeItems", "SingleItem"]
7
+ }
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import type { StoryObj } from '@storybook/react';
3
+ import type { TabsWithMediaProps } from '../biz-components/TabsWithMedia/types.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<TabsWithMediaProps & React.RefAttributes<HTMLDivElement>, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
7
+ className?: string;
8
+ data?: Record<string, any>;
9
+ }, "ref"> & React.RefAttributes<any>>;
10
+ parameters: {
11
+ layout: string;
12
+ backgrounds: {
13
+ default: string;
14
+ };
15
+ docs: {
16
+ description: {
17
+ component: string;
18
+ };
19
+ };
20
+ };
21
+ tags: string[];
22
+ };
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+ export declare const Default: Story;
26
+ export declare const ThreeItems: Story;
27
+ export declare const FourItems: Story;
@@ -0,0 +1,2 @@
1
+ import"react";import e from"../biz-components/TabsWithMedia/index.js";const i={title:"Biz Components/TabsWithMedia",component:e,parameters:{layout:"padded",backgrounds:{default:"dark"},docs:{description:{component:"Tab \u5207\u6362\u5A92\u4F53\u5C55\u793A\u7EC4\u4EF6\uFF0C\u652F\u6301\u89C6\u9891\u81EA\u52A8\u5207\u6362 Tab\u3001Swiper \u5185\u5BB9\u5207\u6362\u3001\u52A8\u753B\u6548\u679C\uFF0C\u9002\u5408\u5C55\u793A\u591A\u4E2A\u529F\u80FD\u7279\u6027"}}},tags:["autodocs"]};var c=i;const t={title:"All You Need, All-in-One",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/a4bb1353-863a-4541-8abb-fd19f1db548d_1952837054.png?v=1751440046",videoUrl:"https://cdn.shopify.com/videos/c/o/v/1478fa98828e4879890963a4c60fff14.mp4",mobvideoUrl:"https://cdn.shopify.com/videos/c/vp/b8cf80b388c54228860dd0bf1de7c36c/b8cf80b388c54228860dd0bf1de7c36c.SD-480p-0.9Mbps-50503406.mp4",items:[{tab:"Self-Emptying",desc:"3L dust bag supports up to 75 days of maintenance-free cleaning.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/6a7e92ad-5be0-4ba1-a549-eb794a8cbdcb_Property_1_Self-Emptying.png?v=1751509824",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/a4bb1353-863a-4541-8abb-fd19f1db548d_1952837054.png?v=1751440046",tabIcon:"",videoUrl:""},{tab:"Self-Refilling",desc:"Features a 2.5L clean water tank, sufficient for 4 mopping sessions in a 2,000 sq ft house.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/98814790-6119-48d3-9518-3706103971ce_Property_1_Self-Refilling.png?v=1751509870",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/62f8efdb-baa0-4b66-b0ce-e43ba80aaa93_1952837054_2.png?v=1751440082",tabIcon:"",videoUrl:""},{tab:"Self-Washing",desc:"Automatically washes the mop after each session.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/cb041a84-9e89-4844-ac1b-8fc6fff8f13c_Property_1_Self-Washing.png?v=1751509912",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/0506a613-f916-4bce-84ab-a3da4cd9078a_1952837054_4.png?v=1751440128",tabIcon:"",videoUrl:""},{tab:"Hot Air Drying",desc:"Intelligent 35-50\xB0C (95-122\xB0F) temperature control for efficient drying.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/074f6c07-dc85-44b1-9351-fcc8b3423f1f_Property_1_Hot_Air_Drying.png?v=1751509932",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/65e9ba72-06d6-49cb-90b4-27406c409567_1952837054_3.png?v=1751440106",tabIcon:"",videoUrl:""},{tab:"Wastewater Collection",desc:"1.8L tank collects dirty water.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/6f392913-919d-4842-9b40-a1736c3b1213_Property_1_Wastewater_Collection.png?v=1751509955",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/39b69bf4-e615-42b7-8eda-eaef031c79c4_1952837054_5.png?v=1751536624",tabIcon:"",videoUrl:""},{tab:"Automatic Detergent Dispensing",desc:"Automatically dispenses detergent, lasting up to 6 months.",icon:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/57d9d293-e511-40a5-a100-0763f7681ba6_Property_1_Automatic_Detergent_Dispensing.png?v=1751510012",poster:"https://cdn.shopify.com/s/files/1/0521/9411/5753/files/03b6c2d7-e5a8-47c4-9d21-20fcb70eb385_1952837054_6.png?v=1751536659",tabIcon:"",videoUrl:""}]},p={args:{data:t}},n={args:{data:{...t,items:t.items.slice(0,3),timeIdx:[{time:2.4,point:2.4,highlightIdx:0},{time:2.5,point:4.9,highlightIdx:1},{time:2.5,point:7.4,highlightIdx:2}]}}},f={args:{data:{...t,items:t.items.slice(0,4),timeIdx:[{time:2.4,point:2.4,highlightIdx:0},{time:2.5,point:4.9,highlightIdx:1},{time:2.5,point:7.4,highlightIdx:2},{time:2.8,point:10.2,highlightIdx:3}]}}};export{p as Default,f as FourItems,n as ThreeItems,c as default};
2
+ //# sourceMappingURL=tabsWithMedia.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/tabsWithMedia.stories.tsx"],
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport TabsWithMedia from '../biz-components/TabsWithMedia/index.js'\nimport type { TabsWithMediaProps } from '../biz-components/TabsWithMedia/types.js'\n\nconst meta = {\n title: 'Biz Components/TabsWithMedia',\n component: TabsWithMedia,\n parameters: {\n layout: 'padded',\n backgrounds: {\n default: 'dark',\n },\n docs: {\n description: {\n component:\n 'Tab \u5207\u6362\u5A92\u4F53\u5C55\u793A\u7EC4\u4EF6\uFF0C\u652F\u6301\u89C6\u9891\u81EA\u52A8\u5207\u6362 Tab\u3001Swiper \u5185\u5BB9\u5207\u6362\u3001\u52A8\u753B\u6548\u679C\uFF0C\u9002\u5408\u5C55\u793A\u591A\u4E2A\u529F\u80FD\u7279\u6027',\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof TabsWithMedia>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\nconst defaultData: TabsWithMediaProps['data'] = {\n title: 'All You Need, All-in-One',\n poster: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/a4bb1353-863a-4541-8abb-fd19f1db548d_1952837054.png?v=1751440046',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/1478fa98828e4879890963a4c60fff14.mp4',\n mobvideoUrl:\n 'https://cdn.shopify.com/videos/c/vp/b8cf80b388c54228860dd0bf1de7c36c/b8cf80b388c54228860dd0bf1de7c36c.SD-480p-0.9Mbps-50503406.mp4',\n items: [\n {\n tab: 'Self-Emptying',\n desc: '3L dust bag supports up to 75 days of maintenance-free cleaning.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/6a7e92ad-5be0-4ba1-a549-eb794a8cbdcb_Property_1_Self-Emptying.png?v=1751509824',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/a4bb1353-863a-4541-8abb-fd19f1db548d_1952837054.png?v=1751440046',\n tabIcon: '',\n videoUrl: '',\n },\n {\n tab: 'Self-Refilling',\n desc: 'Features a 2.5L clean water tank, sufficient for 4 mopping sessions in a 2,000 sq ft house.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/98814790-6119-48d3-9518-3706103971ce_Property_1_Self-Refilling.png?v=1751509870',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/62f8efdb-baa0-4b66-b0ce-e43ba80aaa93_1952837054_2.png?v=1751440082',\n tabIcon: '',\n videoUrl: '',\n },\n {\n tab: 'Self-Washing',\n desc: 'Automatically washes the mop after each session.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/cb041a84-9e89-4844-ac1b-8fc6fff8f13c_Property_1_Self-Washing.png?v=1751509912',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/0506a613-f916-4bce-84ab-a3da4cd9078a_1952837054_4.png?v=1751440128',\n tabIcon: '',\n videoUrl: '',\n },\n {\n tab: 'Hot Air Drying',\n desc: 'Intelligent 35-50\u00B0C (95-122\u00B0F) temperature control for efficient drying.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/074f6c07-dc85-44b1-9351-fcc8b3423f1f_Property_1_Hot_Air_Drying.png?v=1751509932',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/65e9ba72-06d6-49cb-90b4-27406c409567_1952837054_3.png?v=1751440106',\n tabIcon: '',\n videoUrl: '',\n },\n {\n tab: 'Wastewater Collection',\n desc: '1.8L tank collects dirty water.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/6f392913-919d-4842-9b40-a1736c3b1213_Property_1_Wastewater_Collection.png?v=1751509955',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/39b69bf4-e615-42b7-8eda-eaef031c79c4_1952837054_5.png?v=1751536624',\n tabIcon: '',\n videoUrl: '',\n },\n {\n tab: 'Automatic Detergent Dispensing',\n desc: 'Automatically dispenses detergent, lasting up to 6 months.',\n icon: 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/57d9d293-e511-40a5-a100-0763f7681ba6_Property_1_Automatic_Detergent_Dispensing.png?v=1751510012',\n poster:\n 'https://cdn.shopify.com/s/files/1/0521/9411/5753/files/03b6c2d7-e5a8-47c4-9d21-20fcb70eb385_1952837054_6.png?v=1751536659',\n tabIcon: '',\n videoUrl: '',\n },\n ],\n}\n\nexport const Default: Story = {\n args: {\n data: defaultData,\n },\n}\n\nexport const ThreeItems: Story = {\n args: {\n data: {\n ...defaultData,\n items: defaultData.items.slice(0, 3),\n timeIdx: [\n { time: 2.4, point: 2.4, highlightIdx: 0 },\n { time: 2.5, point: 4.9, highlightIdx: 1 },\n { time: 2.5, point: 7.4, highlightIdx: 2 },\n ],\n },\n },\n}\n\nexport const FourItems: Story = {\n args: {\n data: {\n ...defaultData,\n items: defaultData.items.slice(0, 4),\n timeIdx: [\n { time: 2.4, point: 2.4, highlightIdx: 0 },\n { time: 2.5, point: 4.9, highlightIdx: 1 },\n { time: 2.5, point: 7.4, highlightIdx: 2 },\n { time: 2.8, point: 10.2, highlightIdx: 3 },\n ],\n },\n },\n}\n"],
5
+ "mappings": "AAAA,MAAkB,QAElB,OAAOA,MAAmB,2CAG1B,MAAMC,EAAO,CACX,MAAO,+BACP,UAAWD,EACX,WAAY,CACV,OAAQ,SACR,YAAa,CACX,QAAS,MACX,EACA,KAAM,CACJ,YAAa,CACX,UACE,qPACJ,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOE,EAAQD,EAIf,MAAME,EAA0C,CAC9C,MAAO,2BACP,OAAQ,0HACR,SAAU,4EACV,YACE,qIACF,MAAO,CACL,CACE,IAAK,gBACL,KAAM,mEACN,KAAM,wIACN,OACE,0HACF,QAAS,GACT,SAAU,EACZ,EACA,CACE,IAAK,iBACL,KAAM,8FACN,KAAM,yIACN,OACE,4HACF,QAAS,GACT,SAAU,EACZ,EACA,CACE,IAAK,eACL,KAAM,mDACN,KAAM,uIACN,OACE,4HACF,QAAS,GACT,SAAU,EACZ,EACA,CACE,IAAK,iBACL,KAAM,iFACN,KAAM,yIACN,OACE,4HACF,QAAS,GACT,SAAU,EACZ,EACA,CACE,IAAK,wBACL,KAAM,kCACN,KAAM,gJACN,OACE,4HACF,QAAS,GACT,SAAU,EACZ,EACA,CACE,IAAK,iCACL,KAAM,8DACN,KAAM,yJACN,OACE,4HACF,QAAS,GACT,SAAU,EACZ,CACF,CACF,EAEaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAEaE,EAAoB,CAC/B,KAAM,CACJ,KAAM,CACJ,GAAGF,EACH,MAAOA,EAAY,MAAM,MAAM,EAAG,CAAC,EACnC,QAAS,CACP,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,EACzC,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,EACzC,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,CAC3C,CACF,CACF,CACF,EAEaG,EAAmB,CAC9B,KAAM,CACJ,KAAM,CACJ,GAAGH,EACH,MAAOA,EAAY,MAAM,MAAM,EAAG,CAAC,EACnC,QAAS,CACP,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,EACzC,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,EACzC,CAAE,KAAM,IAAK,MAAO,IAAK,aAAc,CAAE,EACzC,CAAE,KAAM,IAAK,MAAO,KAAM,aAAc,CAAE,CAC5C,CACF,CACF,CACF",
6
+ "names": ["TabsWithMedia", "meta", "tabsWithMedia_stories_default", "defaultData", "Default", "ThreeItems", "FourItems"]
7
+ }
@@ -0,0 +1,28 @@
1
+ import React from 'react';
2
+ import type { StoryObj } from '@storybook/react';
3
+ import type { VideoFeatureProps } from '../biz-components/VideoFeature/types.js';
4
+ declare const meta: {
5
+ title: string;
6
+ component: React.ForwardRefExoticComponent<Omit<Omit<VideoFeatureProps & React.RefAttributes<HTMLDivElement>, keyof import("../shared/Styles.js").StylesProps> & Partial<import("../shared/Styles.js").StylesProps & import("../shared/Styles.js").ContainerProps> & {
7
+ className?: string;
8
+ data?: Record<string, any>;
9
+ }, "ref"> & React.RefAttributes<any>>;
10
+ parameters: {
11
+ layout: string;
12
+ backgrounds: {
13
+ default: string;
14
+ };
15
+ docs: {
16
+ description: {
17
+ component: string;
18
+ };
19
+ };
20
+ };
21
+ tags: string[];
22
+ };
23
+ export default meta;
24
+ type Story = StoryObj<typeof meta>;
25
+ export declare const Default: Story;
26
+ export declare const WithoutSubtitle: Story;
27
+ export declare const DesktopOnly: Story;
28
+ export declare const WithoutPosters: Story;
@@ -0,0 +1,2 @@
1
+ import"react";import e from"../biz-components/VideoFeature/index.js";const o={title:"Biz Components/VideoFeature",component:e,parameters:{layout:"padded",backgrounds:{default:"dark"},docs:{description:{component:"\u89C6\u9891\u7279\u6027\u5C55\u793A\u7EC4\u4EF6\uFF0C\u7528\u4E8E\u5C55\u793A\u4EA7\u54C1\u89C6\u9891\u548C\u63CF\u8FF0\uFF0C\u652F\u6301\u684C\u9762\u7AEF\u548C\u79FB\u52A8\u7AEF\u4E0D\u540C\u89C6\u9891\uFF0C\u5E26\u61D2\u52A0\u8F7D\u529F\u80FD"}}},tags:["autodocs"]};var r=o;const t={title:"DuoSpiral\u2122 Detangle Brushes",poster:"https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806",subtitle:"DuoSpiral\u2122 brushes prevent hair from getting tangled for a hassle-free cleaning experience.",videoUrl:"https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4",mobPoster:"https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_3_790f438a-3cb2-4a8b-a79b-4f47825ee911.png?v=1752820811",mobvideoUrl:"https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4"},c={args:{data:t}},p={args:{data:{title:"DuoSpiral\u2122 Detangle Brushes",poster:"https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806",videoUrl:"https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4",mobPoster:"https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_3_790f438a-3cb2-4a8b-a79b-4f47825ee911.png?v=1752820811",mobvideoUrl:"https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4"}}},d={args:{data:{title:"Advanced Cleaning Technology",subtitle:"Experience powerful cleaning with our latest innovation.",poster:"https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806",videoUrl:"https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4"}}},f={args:{data:{title:"DuoSpiral\u2122 Detangle Brushes",subtitle:"DuoSpiral\u2122 brushes prevent hair from getting tangled for a hassle-free cleaning experience.",videoUrl:"https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4",mobvideoUrl:"https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4"}}};export{c as Default,d as DesktopOnly,f as WithoutPosters,p as WithoutSubtitle,r as default};
2
+ //# sourceMappingURL=videoFeature.stories.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/stories/videoFeature.stories.tsx"],
4
+ "sourcesContent": ["import React from 'react'\nimport type { Meta, StoryObj } from '@storybook/react'\nimport VideoFeature from '../biz-components/VideoFeature/index.js'\nimport type { VideoFeatureProps } from '../biz-components/VideoFeature/types.js'\n\nconst meta = {\n title: 'Biz Components/VideoFeature',\n component: VideoFeature,\n parameters: {\n layout: 'padded',\n backgrounds: {\n default: 'dark',\n },\n docs: {\n description: {\n component: '\u89C6\u9891\u7279\u6027\u5C55\u793A\u7EC4\u4EF6\uFF0C\u7528\u4E8E\u5C55\u793A\u4EA7\u54C1\u89C6\u9891\u548C\u63CF\u8FF0\uFF0C\u652F\u6301\u684C\u9762\u7AEF\u548C\u79FB\u52A8\u7AEF\u4E0D\u540C\u89C6\u9891\uFF0C\u5E26\u61D2\u52A0\u8F7D\u529F\u80FD',\n },\n },\n },\n tags: ['autodocs'],\n} satisfies Meta<typeof VideoFeature>\n\nexport default meta\n\ntype Story = StoryObj<typeof meta>\n\nconst defaultData: VideoFeatureProps['data'] = {\n title: 'DuoSpiral\u2122 Detangle Brushes',\n poster: 'https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806',\n subtitle: 'DuoSpiral\u2122 brushes prevent hair from getting tangled for a hassle-free cleaning experience.',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4',\n mobPoster:\n 'https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_3_790f438a-3cb2-4a8b-a79b-4f47825ee911.png?v=1752820811',\n mobvideoUrl: 'https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4',\n}\n\nexport const Default: Story = {\n args: {\n data: defaultData,\n },\n}\n\nexport const WithoutSubtitle: Story = {\n args: {\n data: {\n title: 'DuoSpiral\u2122 Detangle Brushes',\n poster:\n 'https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4',\n mobPoster:\n 'https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_3_790f438a-3cb2-4a8b-a79b-4f47825ee911.png?v=1752820811',\n mobvideoUrl: 'https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4',\n },\n },\n}\n\nexport const DesktopOnly: Story = {\n args: {\n data: {\n title: 'Advanced Cleaning Technology',\n subtitle: 'Experience powerful cleaning with our latest innovation.',\n poster:\n 'https://cdn.shopify.com/s/files/1/0504/7094/4954/files/videoframe_0_2_a320c1e6-6860-481b-9d1d-fc8a3338ebaf.png?v=1752820806',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4',\n },\n },\n}\n\nexport const WithoutPosters: Story = {\n args: {\n data: {\n title: 'DuoSpiral\u2122 Detangle Brushes',\n subtitle: 'DuoSpiral\u2122 brushes prevent hair from getting tangled for a hassle-free cleaning experience.',\n videoUrl: 'https://cdn.shopify.com/videos/c/o/v/82766208a03240b2b0a5f461578923dc.mp4',\n mobvideoUrl: 'https://cdn.shopify.com/videos/c/o/v/00a233ef01dc40628874e563c8abffac.mp4',\n },\n },\n}\n"],
5
+ "mappings": "AAAA,MAAkB,QAElB,OAAOA,MAAkB,0CAGzB,MAAMC,EAAO,CACX,MAAO,8BACP,UAAWD,EACX,WAAY,CACV,OAAQ,SACR,YAAa,CACX,QAAS,MACX,EACA,KAAM,CACJ,YAAa,CACX,UAAW,wPACb,CACF,CACF,EACA,KAAM,CAAC,UAAU,CACnB,EAEA,IAAOE,EAAQD,EAIf,MAAME,EAAyC,CAC7C,MAAO,mCACP,OAAQ,8HACR,SAAU,mGACV,SAAU,4EACV,UACE,8HACF,YAAa,2EACf,EAEaC,EAAiB,CAC5B,KAAM,CACJ,KAAMD,CACR,CACF,EAEaE,EAAyB,CACpC,KAAM,CACJ,KAAM,CACJ,MAAO,mCACP,OACE,8HACF,SAAU,4EACV,UACE,8HACF,YAAa,2EACf,CACF,CACF,EAEaC,EAAqB,CAChC,KAAM,CACJ,KAAM,CACJ,MAAO,+BACP,SAAU,2DACV,OACE,8HACF,SAAU,2EACZ,CACF,CACF,EAEaC,EAAwB,CACnC,KAAM,CACJ,KAAM,CACJ,MAAO,mCACP,SAAU,mGACV,SAAU,4EACV,YAAa,2EACf,CACF,CACF",
6
+ "names": ["VideoFeature", "meta", "videoFeature_stories_default", "defaultData", "Default", "WithoutSubtitle", "DesktopOnly", "WithoutPosters"]
7
+ }
@@ -35,6 +35,10 @@ export type Media = {
35
35
  height?: number;
36
36
  focalX?: number;
37
37
  focalY?: number;
38
+ poster?: {
39
+ url: string;
40
+ mimeType: 'image/jpeg' | 'image/png' | 'image/webp';
41
+ };
38
42
  };
39
43
  export type GSAPContext = {
40
44
  gsap?: any;
@@ -38,6 +38,8 @@
38
38
  --container-primary-color: #ffffff;
39
39
  --container-secondary-color-0: #f5f5f7;
40
40
  --container-secondary-color-1: #EAEAEC;
41
+ --container-tertiary-color: #EAEAEC;
42
+
41
43
  --bg-color-0: #f5f5f7;
42
44
  --bg-color-1: #ffffff;
43
45
  --bg-color-2: rgba(0, 190, 250, 0.08);
@@ -118,6 +120,7 @@
118
120
  --container-primary-color: #1d1d1f;
119
121
  --container-secondary-color-0: #353537;
120
122
  --container-secondary-color-1: #F7F8F9;
123
+ --container-tertiary-color: #F7F8F9;
121
124
 
122
125
 
123
126
  --bg-color-0: #000000;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anker-in/headless-ui",
3
- "version": "1.0.25",
3
+ "version": "1.0.26-alpha.1761893017767",
4
4
  "type": "commonjs",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "types": "./dist/cjs/index.d.ts",
@@ -71,6 +71,7 @@
71
71
  "@testing-library/jest-dom": "^6.4.6",
72
72
  "@testing-library/react": "^14.3.1",
73
73
  "@types/jest": "^29.5.12",
74
+ "@types/jump.js": "^1.0.6",
74
75
  "@types/node": "^20",
75
76
  "babel-jest": "^29.7.0",
76
77
  "esbuild": "^0.20.2",
@@ -112,6 +113,8 @@
112
113
  "embla-carousel-wheel-gestures": "^8.0.1",
113
114
  "es-toolkit": "^1.36.0",
114
115
  "fitty": "^2.4.2",
116
+ "framer-motion": "^12.23.24",
117
+ "jump.js": "^1.0.2",
115
118
  "postcss": "^8.4.38",
116
119
  "react-fast-marquee": "^1.6.5",
117
120
  "react-intersection-observer": "^9.4.0",