@anker-in/headless-ui 1.1.9-alpha.1764084619241 → 1.1.9-alpha.1764141671439

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 (613) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.d.ts +2 -2
  2. package/dist/cjs/biz-components/AplusDesc/index.d.ts +3 -2
  3. package/dist/cjs/biz-components/BrandEquity/BrandEquity.d.ts +3 -2
  4. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js +1 -1
  5. package/dist/cjs/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  6. package/dist/cjs/biz-components/BrandEquity/types.d.ts +0 -1
  7. package/dist/cjs/biz-components/BrandEquity/types.js +1 -1
  8. package/dist/cjs/biz-components/BrandEquity/types.js.map +1 -1
  9. package/dist/cjs/biz-components/Category/index.d.ts +2 -2
  10. package/dist/cjs/biz-components/CreativeModule/index.d.ts +3 -2
  11. package/dist/cjs/biz-components/DownLoad/index.d.ts +3 -2
  12. package/dist/cjs/biz-components/Evaluate/index.d.ts +2 -2
  13. package/dist/cjs/biz-components/Faq/Faq.d.ts +2 -2
  14. package/dist/cjs/biz-components/Faq/Faq.js.map +2 -2
  15. package/dist/cjs/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  16. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js +2 -0
  17. package/dist/cjs/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  18. package/dist/cjs/biz-components/FeatureCards/index.d.ts +2 -0
  19. package/dist/cjs/biz-components/FeatureCards/index.js +2 -0
  20. package/dist/cjs/biz-components/FeatureCards/index.js.map +7 -0
  21. package/dist/cjs/biz-components/FeatureCards/types.d.ts +27 -0
  22. package/dist/cjs/biz-components/FeatureCards/types.js +2 -0
  23. package/dist/cjs/biz-components/FeatureCards/types.js.map +7 -0
  24. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  25. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  26. package/dist/cjs/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  27. package/dist/cjs/biz-components/FeatureShowcase/index.d.ts +2 -0
  28. package/dist/cjs/biz-components/FeatureShowcase/index.js +2 -0
  29. package/dist/cjs/biz-components/FeatureShowcase/index.js.map +7 -0
  30. package/dist/cjs/biz-components/FeatureShowcase/types.d.ts +23 -0
  31. package/dist/cjs/biz-components/FeatureShowcase/types.js +2 -0
  32. package/dist/cjs/biz-components/FeatureShowcase/types.js.map +7 -0
  33. package/dist/cjs/biz-components/Features/index.d.ts +3 -2
  34. package/dist/cjs/biz-components/FootCharger/index.d.ts +3 -2
  35. package/dist/cjs/biz-components/FooterNavigation/index.d.ts +3 -2
  36. package/dist/cjs/biz-components/GiftBox/index.d.ts +3 -2
  37. package/dist/cjs/biz-components/Graphic/index.d.ts +2 -2
  38. package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +2 -2
  39. package/dist/cjs/biz-components/GraphicMore/index.d.ts +3 -2
  40. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.d.ts +2 -2
  41. package/dist/cjs/biz-components/HeaderNavigation/index.d.ts +2 -2
  42. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +2 -2
  43. package/dist/cjs/biz-components/HeroBanner/HeroBanner.d.ts +2 -2
  44. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
  45. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  46. package/dist/cjs/biz-components/HeroBanner/types.d.ts +2 -0
  47. package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
  48. package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
  49. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  50. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  51. package/dist/cjs/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  52. package/dist/cjs/biz-components/ImageTextFeature/index.d.ts +2 -0
  53. package/dist/cjs/biz-components/ImageTextFeature/index.js +2 -0
  54. package/dist/cjs/biz-components/ImageTextFeature/index.js.map +7 -0
  55. package/dist/cjs/biz-components/ImageTextFeature/types.d.ts +31 -0
  56. package/dist/cjs/biz-components/ImageTextFeature/types.js +2 -0
  57. package/dist/cjs/biz-components/ImageTextFeature/types.js.map +7 -0
  58. package/dist/cjs/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  59. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js +2 -0
  60. package/dist/cjs/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  61. package/dist/cjs/biz-components/ImageWithText/index.d.ts +3 -0
  62. package/dist/cjs/biz-components/ImageWithText/index.js +2 -0
  63. package/dist/cjs/biz-components/ImageWithText/index.js.map +7 -0
  64. package/dist/cjs/biz-components/ImageWithText/types.d.ts +110 -0
  65. package/dist/cjs/biz-components/ImageWithText/types.js +2 -0
  66. package/dist/cjs/biz-components/ImageWithText/types.js.map +7 -0
  67. package/dist/cjs/biz-components/InlineVideo/index.d.ts +16 -0
  68. package/dist/cjs/biz-components/InlineVideo/index.js +2 -0
  69. package/dist/cjs/biz-components/InlineVideo/index.js.map +7 -0
  70. package/dist/cjs/biz-components/Ksp/index.d.ts +44 -0
  71. package/dist/cjs/biz-components/Ksp/index.js +2 -0
  72. package/dist/cjs/biz-components/Ksp/index.js.map +7 -0
  73. package/dist/cjs/biz-components/Listing/BizProductProvider.d.ts +1 -1
  74. package/dist/cjs/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js +1 -1
  75. package/dist/cjs/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js.map +2 -2
  76. package/dist/cjs/biz-components/Listing/components/PaidShipping/index.d.ts +19 -6
  77. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +2 -2
  78. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -2
  79. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -2
  80. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -2
  81. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +1 -1
  82. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +2 -2
  83. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -2
  84. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -2
  85. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +1 -1
  86. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +1 -1
  87. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -2
  88. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js +1 -1
  89. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +2 -2
  90. package/dist/cjs/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -2
  91. package/dist/cjs/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +1 -0
  92. package/dist/cjs/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -2
  93. package/dist/cjs/biz-components/Marquee/Marquee.d.ts +2 -2
  94. package/dist/cjs/biz-components/MarqueeReview/index.d.ts +42 -0
  95. package/dist/cjs/biz-components/MarqueeReview/index.js +2 -0
  96. package/dist/cjs/biz-components/MarqueeReview/index.js.map +7 -0
  97. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.d.ts +7 -0
  98. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.js +2 -0
  99. package/dist/cjs/biz-components/MediaPlayerBase/index.backup.js.map +7 -0
  100. package/dist/cjs/biz-components/MediaPlayerBase/index.d.ts +3 -2
  101. package/dist/cjs/biz-components/MediaPlayerBase/index.js +1 -1
  102. package/dist/cjs/biz-components/MediaPlayerBase/index.js.map +3 -3
  103. package/dist/cjs/biz-components/MediaPlayerMulti/index.d.ts +3 -2
  104. package/dist/cjs/biz-components/MediaPlayerSticky/index.d.ts +2 -2
  105. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +8 -0
  106. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js +11 -0
  107. package/dist/cjs/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js.map +7 -0
  108. package/dist/cjs/biz-components/MediaSceneSwitcher/index.d.ts +2 -0
  109. package/dist/cjs/biz-components/MediaSceneSwitcher/index.js +2 -0
  110. package/dist/cjs/biz-components/MediaSceneSwitcher/index.js.map +7 -0
  111. package/dist/cjs/biz-components/MediaSceneSwitcher/types.d.ts +19 -0
  112. package/dist/cjs/biz-components/MediaSceneSwitcher/types.js +2 -0
  113. package/dist/cjs/biz-components/MediaSceneSwitcher/types.js.map +7 -0
  114. package/dist/cjs/biz-components/MemberEquity/index.d.ts +2 -2
  115. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +2 -2
  116. package/dist/cjs/biz-components/NavigationSearch/index.d.ts +1 -0
  117. package/dist/cjs/biz-components/ProductCompare/index.d.ts +54 -0
  118. package/dist/cjs/biz-components/ProductCompare/index.js +2 -0
  119. package/dist/cjs/biz-components/ProductCompare/index.js.map +7 -0
  120. package/dist/cjs/biz-components/ProductHero/ProductHero.d.ts +7 -0
  121. package/dist/cjs/biz-components/ProductHero/ProductHero.js +2 -0
  122. package/dist/cjs/biz-components/ProductHero/ProductHero.js.map +7 -0
  123. package/dist/cjs/biz-components/ProductHero/index.d.ts +2 -0
  124. package/dist/cjs/biz-components/ProductHero/index.js +2 -0
  125. package/dist/cjs/biz-components/ProductHero/index.js.map +7 -0
  126. package/dist/cjs/biz-components/ProductHero/types.d.ts +23 -0
  127. package/dist/cjs/biz-components/ProductHero/types.js +2 -0
  128. package/dist/cjs/biz-components/ProductHero/types.js.map +7 -0
  129. package/dist/cjs/biz-components/ProductNav/ProductNav.d.ts +7 -0
  130. package/dist/cjs/biz-components/ProductNav/ProductNav.js +2 -0
  131. package/dist/cjs/biz-components/ProductNav/ProductNav.js.map +7 -0
  132. package/dist/cjs/biz-components/ProductNav/index.d.ts +2 -0
  133. package/dist/cjs/biz-components/ProductNav/index.js +2 -0
  134. package/dist/cjs/biz-components/ProductNav/index.js.map +7 -0
  135. package/dist/cjs/biz-components/ProductNav/types.d.ts +35 -0
  136. package/dist/cjs/biz-components/ProductNav/types.js +2 -0
  137. package/dist/cjs/biz-components/ProductNav/types.js.map +7 -0
  138. package/dist/cjs/biz-components/SelectStore/index.d.ts +3 -2
  139. package/dist/cjs/biz-components/ShelfDisplay/index.d.ts +2 -2
  140. package/dist/cjs/biz-components/Slogan/index.d.ts +2 -2
  141. package/dist/cjs/biz-components/Spacer/index.d.ts +2 -2
  142. package/dist/cjs/biz-components/Spacer/index.js +1 -1
  143. package/dist/cjs/biz-components/Spacer/index.js.map +2 -2
  144. package/dist/cjs/biz-components/Specs/index.d.ts +2 -2
  145. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  146. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  147. package/dist/cjs/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  148. package/dist/cjs/biz-components/SpecsComparison/index.d.ts +2 -0
  149. package/dist/cjs/biz-components/SpecsComparison/index.js +2 -0
  150. package/dist/cjs/biz-components/SpecsComparison/index.js.map +7 -0
  151. package/dist/cjs/biz-components/SpecsComparison/types.d.ts +34 -0
  152. package/dist/cjs/biz-components/SpecsComparison/types.js +2 -0
  153. package/dist/cjs/biz-components/SpecsComparison/types.js.map +7 -0
  154. package/dist/cjs/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  155. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js +2 -0
  156. package/dist/cjs/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  157. package/dist/cjs/biz-components/TabWithImage/index.d.ts +2 -0
  158. package/dist/cjs/biz-components/TabWithImage/index.js +2 -0
  159. package/dist/cjs/biz-components/TabWithImage/index.js.map +7 -0
  160. package/dist/cjs/biz-components/TabWithImage/types.d.ts +29 -0
  161. package/dist/cjs/biz-components/TabWithImage/types.js +2 -0
  162. package/dist/cjs/biz-components/TabWithImage/types.js.map +7 -0
  163. package/dist/cjs/biz-components/Tabs/Tabs.d.ts +2 -2
  164. package/dist/cjs/biz-components/Tabs/Tabs.js +1 -1
  165. package/dist/cjs/biz-components/Tabs/Tabs.js.map +1 -1
  166. package/dist/cjs/biz-components/Tabs/types.d.ts +11 -0
  167. package/dist/cjs/biz-components/Tabs/types.js +1 -1
  168. package/dist/cjs/biz-components/Tabs/types.js.map +1 -1
  169. package/dist/cjs/biz-components/TabsGroup/index.d.ts +2 -2
  170. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  171. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  172. package/dist/cjs/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  173. package/dist/cjs/biz-components/TabsWithMedia/index.d.ts +2 -0
  174. package/dist/cjs/biz-components/TabsWithMedia/index.js +2 -0
  175. package/dist/cjs/biz-components/TabsWithMedia/index.js.map +7 -0
  176. package/dist/cjs/biz-components/TabsWithMedia/types.d.ts +43 -0
  177. package/dist/cjs/biz-components/TabsWithMedia/types.js +2 -0
  178. package/dist/cjs/biz-components/TabsWithMedia/types.js.map +7 -0
  179. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +11 -0
  180. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.js +2 -0
  181. package/dist/cjs/biz-components/ThreeDCarousel/ThreeDCarousel.js.map +7 -0
  182. package/dist/cjs/biz-components/ThreeDCarousel/index.d.ts +2 -0
  183. package/dist/cjs/biz-components/ThreeDCarousel/index.js +2 -0
  184. package/dist/cjs/biz-components/ThreeDCarousel/index.js.map +7 -0
  185. package/dist/cjs/biz-components/ThreeDCarousel/types.d.ts +26 -0
  186. package/dist/cjs/biz-components/ThreeDCarousel/types.js +2 -0
  187. package/dist/cjs/biz-components/ThreeDCarousel/types.js.map +7 -0
  188. package/dist/cjs/biz-components/Title/index.d.ts +2 -2
  189. package/dist/cjs/biz-components/Title/types.js +1 -1
  190. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  191. package/dist/cjs/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  192. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js +2 -0
  193. package/dist/cjs/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  194. package/dist/cjs/biz-components/VideoFeature/index.d.ts +2 -0
  195. package/dist/cjs/biz-components/VideoFeature/index.js +2 -0
  196. package/dist/cjs/biz-components/VideoFeature/index.js.map +7 -0
  197. package/dist/cjs/biz-components/VideoFeature/types.d.ts +19 -0
  198. package/dist/cjs/biz-components/VideoFeature/types.js +2 -0
  199. package/dist/cjs/biz-components/VideoFeature/types.js.map +7 -0
  200. package/dist/cjs/biz-components/WhyChoose/WhyChoose.d.ts +2 -2
  201. package/dist/cjs/biz-components/index.d.ts +33 -0
  202. package/dist/cjs/biz-components/index.js +1 -1
  203. package/dist/cjs/biz-components/index.js.map +3 -3
  204. package/dist/cjs/components/alert.d.ts +2 -2
  205. package/dist/cjs/components/avatar.d.ts +8 -8
  206. package/dist/cjs/components/container.d.ts +7 -7
  207. package/dist/cjs/components/container.js +1 -1
  208. package/dist/cjs/components/container.js.map +2 -2
  209. package/dist/cjs/components/dialog.d.ts +1 -1
  210. package/dist/cjs/components/drop-down.d.ts +3 -3
  211. package/dist/cjs/components/heading.d.ts +1 -0
  212. package/dist/cjs/components/heading.js +1 -1
  213. package/dist/cjs/components/heading.js.map +3 -3
  214. package/dist/cjs/components/input-number.d.ts +15 -15
  215. package/dist/cjs/components/link.d.ts +6 -6
  216. package/dist/cjs/components/tabs.d.ts +2 -2
  217. package/dist/cjs/components/tabs.js +1 -1
  218. package/dist/cjs/components/tabs.js.map +2 -2
  219. package/dist/cjs/cpn-components/CpnNavigation/index.js +1 -1
  220. package/dist/cjs/cpn-components/CpnNavigation/index.js.map +3 -3
  221. package/dist/cjs/helpers/ScrollLoadVideo.js.map +2 -2
  222. package/dist/cjs/shared/ErrorBoundary.d.ts +18 -0
  223. package/dist/cjs/shared/ErrorBoundary.js +2 -0
  224. package/dist/cjs/shared/ErrorBoundary.js.map +7 -0
  225. package/dist/cjs/shared/Styles.d.ts +2 -2
  226. package/dist/cjs/shared/Styles.js +1 -1
  227. package/dist/cjs/shared/Styles.js.map +3 -3
  228. package/dist/cjs/stories/InlineVideo.stories.js +164 -0
  229. package/dist/cjs/stories/InlineVideo.stories.js.map +7 -0
  230. package/dist/cjs/stories/MarqueeReview.stories.js +19 -0
  231. package/dist/cjs/stories/MarqueeReview.stories.js.map +7 -0
  232. package/dist/cjs/stories/MediaSceneSwitcher.stories.js +2 -0
  233. package/dist/cjs/stories/MediaSceneSwitcher.stories.js.map +7 -0
  234. package/dist/cjs/stories/ProductNav.stories.js +2 -0
  235. package/dist/cjs/stories/ProductNav.stories.js.map +7 -0
  236. package/dist/cjs/stories/ThreeDCarousel.stories.js +118 -0
  237. package/dist/cjs/stories/ThreeDCarousel.stories.js.map +7 -0
  238. package/dist/cjs/stories/featureCards.stories.js +61 -0
  239. package/dist/cjs/stories/featureCards.stories.js.map +7 -0
  240. package/dist/cjs/stories/featureShowcase.stories.js +44 -0
  241. package/dist/cjs/stories/featureShowcase.stories.js.map +7 -0
  242. package/dist/cjs/stories/imageTextFeature.stories.js +50 -0
  243. package/dist/cjs/stories/imageTextFeature.stories.js.map +7 -0
  244. package/dist/cjs/stories/imageWithText.stories.js +84 -0
  245. package/dist/cjs/stories/imageWithText.stories.js.map +7 -0
  246. package/dist/cjs/stories/ksp.stories.js +128 -0
  247. package/dist/cjs/stories/ksp.stories.js.map +7 -0
  248. package/dist/cjs/stories/productCompare.stories.js +54 -0
  249. package/dist/cjs/stories/productCompare.stories.js.map +7 -0
  250. package/dist/cjs/stories/productHero.stories.js +50 -0
  251. package/dist/cjs/stories/productHero.stories.js.map +7 -0
  252. package/dist/cjs/stories/specsComparison.stories.js +105 -0
  253. package/dist/cjs/stories/specsComparison.stories.js.map +7 -0
  254. package/dist/cjs/stories/tabWithImage.stories.js +53 -0
  255. package/dist/cjs/stories/tabWithImage.stories.js.map +7 -0
  256. package/dist/cjs/stories/tabsWithMedia.stories.js +68 -0
  257. package/dist/cjs/stories/tabsWithMedia.stories.js.map +7 -0
  258. package/dist/cjs/stories/videoFeature.stories.js +56 -0
  259. package/dist/cjs/stories/videoFeature.stories.js.map +7 -0
  260. package/dist/cjs/types/props.d.ts +9 -2
  261. package/dist/cjs/types/props.js +1 -1
  262. package/dist/cjs/types/props.js.map +1 -1
  263. package/dist/esm/biz-components/AccordionCards/index.d.ts +2 -2
  264. package/dist/esm/biz-components/AplusDesc/index.d.ts +3 -2
  265. package/dist/esm/biz-components/BrandEquity/BrandEquity.d.ts +3 -2
  266. package/dist/esm/biz-components/BrandEquity/BrandEquity.js +1 -1
  267. package/dist/esm/biz-components/BrandEquity/BrandEquity.js.map +3 -3
  268. package/dist/esm/biz-components/BrandEquity/types.d.ts +0 -1
  269. package/dist/esm/biz-components/Category/index.d.ts +2 -2
  270. package/dist/esm/biz-components/CreativeModule/index.d.ts +3 -2
  271. package/dist/esm/biz-components/DownLoad/index.d.ts +3 -2
  272. package/dist/esm/biz-components/Evaluate/index.d.ts +2 -2
  273. package/dist/esm/biz-components/Faq/Faq.d.ts +2 -2
  274. package/dist/esm/biz-components/Faq/Faq.js +1 -1
  275. package/dist/esm/biz-components/Faq/Faq.js.map +2 -2
  276. package/dist/esm/biz-components/FeatureCards/FeatureCards.d.ts +7 -0
  277. package/dist/esm/biz-components/FeatureCards/FeatureCards.js +2 -0
  278. package/dist/esm/biz-components/FeatureCards/FeatureCards.js.map +7 -0
  279. package/dist/esm/biz-components/FeatureCards/index.d.ts +2 -0
  280. package/dist/esm/biz-components/FeatureCards/index.js +2 -0
  281. package/dist/esm/biz-components/FeatureCards/index.js.map +7 -0
  282. package/dist/esm/biz-components/FeatureCards/types.d.ts +27 -0
  283. package/dist/esm/biz-components/FeatureCards/types.js +1 -0
  284. package/dist/esm/biz-components/FeatureCards/types.js.map +7 -0
  285. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.d.ts +7 -0
  286. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js +2 -0
  287. package/dist/esm/biz-components/FeatureShowcase/FeatureShowcase.js.map +7 -0
  288. package/dist/esm/biz-components/FeatureShowcase/index.d.ts +2 -0
  289. package/dist/esm/biz-components/FeatureShowcase/index.js +2 -0
  290. package/dist/esm/biz-components/FeatureShowcase/index.js.map +7 -0
  291. package/dist/esm/biz-components/FeatureShowcase/types.d.ts +23 -0
  292. package/dist/esm/biz-components/FeatureShowcase/types.js +1 -0
  293. package/dist/esm/biz-components/FeatureShowcase/types.js.map +7 -0
  294. package/dist/esm/biz-components/Features/index.d.ts +3 -2
  295. package/dist/esm/biz-components/FootCharger/index.d.ts +3 -2
  296. package/dist/esm/biz-components/FooterNavigation/index.d.ts +3 -2
  297. package/dist/esm/biz-components/GiftBox/index.d.ts +3 -2
  298. package/dist/esm/biz-components/Graphic/index.d.ts +2 -2
  299. package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +2 -2
  300. package/dist/esm/biz-components/GraphicMore/index.d.ts +3 -2
  301. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.d.ts +2 -2
  302. package/dist/esm/biz-components/HeaderNavigation/index.d.ts +2 -2
  303. package/dist/esm/biz-components/HeaderNavigation/index.js.map +2 -2
  304. package/dist/esm/biz-components/HeroBanner/HeroBanner.d.ts +2 -2
  305. package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
  306. package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  307. package/dist/esm/biz-components/HeroBanner/types.d.ts +2 -0
  308. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.d.ts +7 -0
  309. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js +2 -0
  310. package/dist/esm/biz-components/ImageTextFeature/ImageTextFeature.js.map +7 -0
  311. package/dist/esm/biz-components/ImageTextFeature/index.d.ts +2 -0
  312. package/dist/esm/biz-components/ImageTextFeature/index.js +2 -0
  313. package/dist/esm/biz-components/ImageTextFeature/index.js.map +7 -0
  314. package/dist/esm/biz-components/ImageTextFeature/types.d.ts +31 -0
  315. package/dist/esm/biz-components/ImageTextFeature/types.js +1 -0
  316. package/dist/esm/biz-components/ImageTextFeature/types.js.map +7 -0
  317. package/dist/esm/biz-components/ImageWithText/ImageWithText.d.ts +7 -0
  318. package/dist/esm/biz-components/ImageWithText/ImageWithText.js +2 -0
  319. package/dist/esm/biz-components/ImageWithText/ImageWithText.js.map +7 -0
  320. package/dist/esm/biz-components/ImageWithText/index.d.ts +3 -0
  321. package/dist/esm/biz-components/ImageWithText/index.js +2 -0
  322. package/dist/esm/biz-components/ImageWithText/index.js.map +7 -0
  323. package/dist/esm/biz-components/ImageWithText/types.d.ts +110 -0
  324. package/dist/esm/biz-components/ImageWithText/types.js +2 -0
  325. package/dist/esm/biz-components/ImageWithText/types.js.map +7 -0
  326. package/dist/esm/biz-components/InlineVideo/index.d.ts +16 -0
  327. package/dist/esm/biz-components/InlineVideo/index.js +2 -0
  328. package/dist/esm/biz-components/InlineVideo/index.js.map +7 -0
  329. package/dist/esm/biz-components/Ksp/index.d.ts +44 -0
  330. package/dist/esm/biz-components/Ksp/index.js +2 -0
  331. package/dist/esm/biz-components/Ksp/index.js.map +7 -0
  332. package/dist/esm/biz-components/Listing/BizProductProvider.d.ts +1 -1
  333. package/dist/esm/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js +1 -1
  334. package/dist/esm/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.js.map +2 -2
  335. package/dist/esm/biz-components/Listing/components/PaidShipping/index.d.ts +19 -6
  336. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/BenefitsTab.d.ts +2 -2
  337. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductBundle/index.d.ts +3 -2
  338. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductExchangePurchase/index.d.ts +3 -2
  339. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.d.ts +3 -2
  340. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js +1 -1
  341. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.js.map +3 -3
  342. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductHighlight/index.d.ts +3 -2
  343. package/dist/esm/biz-components/Listing/components/ProductCard/ProductDetail/ProductOptions/index.d.ts +3 -2
  344. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js +1 -1
  345. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.js.map +1 -1
  346. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.d.ts +3 -2
  347. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js +1 -1
  348. package/dist/esm/biz-components/Listing/components/ProductCard/ProductGallery/index.js.map +3 -3
  349. package/dist/esm/biz-components/Listing/components/ProductCard/ProductSummary/index.d.ts +3 -2
  350. package/dist/esm/biz-components/Listing/components/PurchaseBar/ScrollSpyNav/types.d.ts +1 -0
  351. package/dist/esm/biz-components/Listing/components/PurchaseBar/index.d.ts +3 -2
  352. package/dist/esm/biz-components/Marquee/Marquee.d.ts +2 -2
  353. package/dist/esm/biz-components/MarqueeReview/index.d.ts +42 -0
  354. package/dist/esm/biz-components/MarqueeReview/index.js +2 -0
  355. package/dist/esm/biz-components/MarqueeReview/index.js.map +7 -0
  356. package/dist/esm/biz-components/MediaPlayerBase/index.backup.d.ts +7 -0
  357. package/dist/esm/biz-components/MediaPlayerBase/index.backup.js +2 -0
  358. package/dist/esm/biz-components/MediaPlayerBase/index.backup.js.map +7 -0
  359. package/dist/esm/biz-components/MediaPlayerBase/index.d.ts +3 -2
  360. package/dist/esm/biz-components/MediaPlayerBase/index.js +1 -1
  361. package/dist/esm/biz-components/MediaPlayerBase/index.js.map +3 -3
  362. package/dist/esm/biz-components/MediaPlayerMulti/index.d.ts +3 -2
  363. package/dist/esm/biz-components/MediaPlayerSticky/index.d.ts +2 -2
  364. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.d.ts +8 -0
  365. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js +11 -0
  366. package/dist/esm/biz-components/MediaSceneSwitcher/MediaSceneSwitcher.js.map +7 -0
  367. package/dist/esm/biz-components/MediaSceneSwitcher/index.d.ts +2 -0
  368. package/dist/esm/biz-components/MediaSceneSwitcher/index.js +2 -0
  369. package/dist/esm/biz-components/MediaSceneSwitcher/index.js.map +7 -0
  370. package/dist/esm/biz-components/MediaSceneSwitcher/types.d.ts +19 -0
  371. package/dist/esm/biz-components/MediaSceneSwitcher/types.js +1 -0
  372. package/dist/esm/biz-components/MediaSceneSwitcher/types.js.map +7 -0
  373. package/dist/esm/biz-components/MemberEquity/index.d.ts +2 -2
  374. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +2 -2
  375. package/dist/esm/biz-components/NavigationSearch/index.d.ts +1 -0
  376. package/dist/esm/biz-components/ProductCompare/index.d.ts +54 -0
  377. package/dist/esm/biz-components/ProductCompare/index.js +2 -0
  378. package/dist/esm/biz-components/ProductCompare/index.js.map +7 -0
  379. package/dist/esm/biz-components/ProductHero/ProductHero.d.ts +7 -0
  380. package/dist/esm/biz-components/ProductHero/ProductHero.js +2 -0
  381. package/dist/esm/biz-components/ProductHero/ProductHero.js.map +7 -0
  382. package/dist/esm/biz-components/ProductHero/index.d.ts +2 -0
  383. package/dist/esm/biz-components/ProductHero/index.js +2 -0
  384. package/dist/esm/biz-components/ProductHero/index.js.map +7 -0
  385. package/dist/esm/biz-components/ProductHero/types.d.ts +23 -0
  386. package/dist/esm/biz-components/ProductHero/types.js +1 -0
  387. package/dist/esm/biz-components/ProductHero/types.js.map +7 -0
  388. package/dist/esm/biz-components/ProductNav/ProductNav.d.ts +7 -0
  389. package/dist/esm/biz-components/ProductNav/ProductNav.js +2 -0
  390. package/dist/esm/biz-components/ProductNav/ProductNav.js.map +7 -0
  391. package/dist/esm/biz-components/ProductNav/index.d.ts +2 -0
  392. package/dist/esm/biz-components/ProductNav/index.js +2 -0
  393. package/dist/esm/biz-components/ProductNav/index.js.map +7 -0
  394. package/dist/esm/biz-components/ProductNav/types.d.ts +35 -0
  395. package/dist/esm/biz-components/ProductNav/types.js +1 -0
  396. package/dist/esm/biz-components/ProductNav/types.js.map +7 -0
  397. package/dist/esm/biz-components/SelectStore/index.d.ts +3 -2
  398. package/dist/esm/biz-components/ShelfDisplay/index.d.ts +2 -2
  399. package/dist/esm/biz-components/Slogan/index.d.ts +2 -2
  400. package/dist/esm/biz-components/Spacer/index.d.ts +2 -2
  401. package/dist/esm/biz-components/Spacer/index.js +1 -1
  402. package/dist/esm/biz-components/Spacer/index.js.map +2 -2
  403. package/dist/esm/biz-components/Specs/index.d.ts +2 -2
  404. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.d.ts +7 -0
  405. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js +2 -0
  406. package/dist/esm/biz-components/SpecsComparison/SpecsComparison.js.map +7 -0
  407. package/dist/esm/biz-components/SpecsComparison/index.d.ts +2 -0
  408. package/dist/esm/biz-components/SpecsComparison/index.js +2 -0
  409. package/dist/esm/biz-components/SpecsComparison/index.js.map +7 -0
  410. package/dist/esm/biz-components/SpecsComparison/types.d.ts +34 -0
  411. package/dist/esm/biz-components/SpecsComparison/types.js +1 -0
  412. package/dist/esm/biz-components/SpecsComparison/types.js.map +7 -0
  413. package/dist/esm/biz-components/TabWithImage/TabWithImage.d.ts +7 -0
  414. package/dist/esm/biz-components/TabWithImage/TabWithImage.js +2 -0
  415. package/dist/esm/biz-components/TabWithImage/TabWithImage.js.map +7 -0
  416. package/dist/esm/biz-components/TabWithImage/index.d.ts +2 -0
  417. package/dist/esm/biz-components/TabWithImage/index.js +2 -0
  418. package/dist/esm/biz-components/TabWithImage/index.js.map +7 -0
  419. package/dist/esm/biz-components/TabWithImage/types.d.ts +29 -0
  420. package/dist/esm/biz-components/TabWithImage/types.js +1 -0
  421. package/dist/esm/biz-components/TabWithImage/types.js.map +7 -0
  422. package/dist/esm/biz-components/Tabs/Tabs.d.ts +2 -2
  423. package/dist/esm/biz-components/Tabs/Tabs.js +1 -1
  424. package/dist/esm/biz-components/Tabs/Tabs.js.map +1 -1
  425. package/dist/esm/biz-components/Tabs/types.d.ts +11 -0
  426. package/dist/esm/biz-components/TabsGroup/index.d.ts +2 -2
  427. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.d.ts +7 -0
  428. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js +2 -0
  429. package/dist/esm/biz-components/TabsWithMedia/TabsWithMedia.js.map +7 -0
  430. package/dist/esm/biz-components/TabsWithMedia/index.d.ts +2 -0
  431. package/dist/esm/biz-components/TabsWithMedia/index.js +2 -0
  432. package/dist/esm/biz-components/TabsWithMedia/index.js.map +7 -0
  433. package/dist/esm/biz-components/TabsWithMedia/types.d.ts +43 -0
  434. package/dist/esm/biz-components/TabsWithMedia/types.js +1 -0
  435. package/dist/esm/biz-components/TabsWithMedia/types.js.map +7 -0
  436. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.d.ts +11 -0
  437. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.js +2 -0
  438. package/dist/esm/biz-components/ThreeDCarousel/ThreeDCarousel.js.map +7 -0
  439. package/dist/esm/biz-components/ThreeDCarousel/index.d.ts +2 -0
  440. package/dist/esm/biz-components/ThreeDCarousel/index.js +2 -0
  441. package/dist/esm/biz-components/ThreeDCarousel/index.js.map +7 -0
  442. package/dist/esm/biz-components/ThreeDCarousel/types.d.ts +26 -0
  443. package/dist/esm/biz-components/ThreeDCarousel/types.js +1 -0
  444. package/dist/esm/biz-components/ThreeDCarousel/types.js.map +7 -0
  445. package/dist/esm/biz-components/Title/index.d.ts +2 -2
  446. package/dist/esm/biz-components/VideoFeature/VideoFeature.d.ts +7 -0
  447. package/dist/esm/biz-components/VideoFeature/VideoFeature.js +2 -0
  448. package/dist/esm/biz-components/VideoFeature/VideoFeature.js.map +7 -0
  449. package/dist/esm/biz-components/VideoFeature/index.d.ts +2 -0
  450. package/dist/esm/biz-components/VideoFeature/index.js +2 -0
  451. package/dist/esm/biz-components/VideoFeature/index.js.map +7 -0
  452. package/dist/esm/biz-components/VideoFeature/types.d.ts +19 -0
  453. package/dist/esm/biz-components/VideoFeature/types.js +1 -0
  454. package/dist/esm/biz-components/VideoFeature/types.js.map +7 -0
  455. package/dist/esm/biz-components/WhyChoose/WhyChoose.d.ts +2 -2
  456. package/dist/esm/biz-components/index.d.ts +33 -0
  457. package/dist/esm/biz-components/index.js +1 -1
  458. package/dist/esm/biz-components/index.js.map +2 -2
  459. package/dist/esm/components/alert.d.ts +2 -2
  460. package/dist/esm/components/avatar.d.ts +8 -8
  461. package/dist/esm/components/container.d.ts +7 -7
  462. package/dist/esm/components/container.js +1 -1
  463. package/dist/esm/components/container.js.map +2 -2
  464. package/dist/esm/components/dialog.d.ts +1 -1
  465. package/dist/esm/components/drop-down.d.ts +3 -3
  466. package/dist/esm/components/heading.d.ts +1 -0
  467. package/dist/esm/components/heading.js +1 -1
  468. package/dist/esm/components/heading.js.map +3 -3
  469. package/dist/esm/components/input-number.d.ts +15 -15
  470. package/dist/esm/components/link.d.ts +6 -6
  471. package/dist/esm/components/tabs.d.ts +2 -2
  472. package/dist/esm/components/tabs.js +1 -1
  473. package/dist/esm/components/tabs.js.map +2 -2
  474. package/dist/esm/cpn-components/CpnNavigation/index.js +1 -1
  475. package/dist/esm/cpn-components/CpnNavigation/index.js.map +2 -2
  476. package/dist/esm/helpers/ScrollLoadVideo.js.map +2 -2
  477. package/dist/esm/shared/ErrorBoundary.d.ts +18 -0
  478. package/dist/esm/shared/ErrorBoundary.js +2 -0
  479. package/dist/esm/shared/ErrorBoundary.js.map +7 -0
  480. package/dist/esm/shared/Styles.d.ts +2 -2
  481. package/dist/esm/shared/Styles.js +1 -1
  482. package/dist/esm/shared/Styles.js.map +3 -3
  483. package/dist/esm/stories/InlineVideo.stories.js +164 -0
  484. package/dist/esm/stories/InlineVideo.stories.js.map +7 -0
  485. package/dist/esm/stories/MarqueeReview.stories.js +19 -0
  486. package/dist/esm/stories/MarqueeReview.stories.js.map +7 -0
  487. package/dist/esm/stories/MediaSceneSwitcher.stories.js +2 -0
  488. package/dist/esm/stories/MediaSceneSwitcher.stories.js.map +7 -0
  489. package/dist/esm/stories/ProductNav.stories.js +2 -0
  490. package/dist/esm/stories/ProductNav.stories.js.map +7 -0
  491. package/dist/esm/stories/ThreeDCarousel.stories.js +118 -0
  492. package/dist/esm/stories/ThreeDCarousel.stories.js.map +7 -0
  493. package/dist/esm/stories/featureCards.stories.js +61 -0
  494. package/dist/esm/stories/featureCards.stories.js.map +7 -0
  495. package/dist/esm/stories/featureShowcase.stories.js +44 -0
  496. package/dist/esm/stories/featureShowcase.stories.js.map +7 -0
  497. package/dist/esm/stories/imageTextFeature.stories.js +50 -0
  498. package/dist/esm/stories/imageTextFeature.stories.js.map +7 -0
  499. package/dist/esm/stories/imageWithText.stories.js +84 -0
  500. package/dist/esm/stories/imageWithText.stories.js.map +7 -0
  501. package/dist/esm/stories/ksp.stories.js +128 -0
  502. package/dist/esm/stories/ksp.stories.js.map +7 -0
  503. package/dist/esm/stories/productCompare.stories.js +54 -0
  504. package/dist/esm/stories/productCompare.stories.js.map +7 -0
  505. package/dist/esm/stories/productHero.stories.js +50 -0
  506. package/dist/esm/stories/productHero.stories.js.map +7 -0
  507. package/dist/esm/stories/specsComparison.stories.js +105 -0
  508. package/dist/esm/stories/specsComparison.stories.js.map +7 -0
  509. package/dist/esm/stories/tabWithImage.stories.js +53 -0
  510. package/dist/esm/stories/tabWithImage.stories.js.map +7 -0
  511. package/dist/esm/stories/tabsWithMedia.stories.js +68 -0
  512. package/dist/esm/stories/tabsWithMedia.stories.js.map +7 -0
  513. package/dist/esm/stories/videoFeature.stories.js +56 -0
  514. package/dist/esm/stories/videoFeature.stories.js.map +7 -0
  515. package/dist/esm/types/props.d.ts +9 -2
  516. package/dist/tokens/base.css +3 -0
  517. package/package.json +18 -13
  518. package/style.css +11 -2
  519. package/tailwind.config.js +24 -0
  520. package/dist/cjs/stories/HeroBanner.stories.d.ts +0 -27
  521. package/dist/cjs/stories/MemberEquity.stories.d.ts +0 -9
  522. package/dist/cjs/stories/MultiLayoutGraphicBlock.stories.d.ts +0 -9
  523. package/dist/cjs/stories/accordionCards.stories.d.ts +0 -17
  524. package/dist/cjs/stories/alert.stories.d.ts +0 -27
  525. package/dist/cjs/stories/avatar.stories.d.ts +0 -39
  526. package/dist/cjs/stories/badge.stories.d.ts +0 -31
  527. package/dist/cjs/stories/bizTabs.stories.d.ts +0 -7
  528. package/dist/cjs/stories/board.stories.d.ts +0 -6
  529. package/dist/cjs/stories/brandEquity.stories.d.ts +0 -16
  530. package/dist/cjs/stories/button.stories.d.ts +0 -56
  531. package/dist/cjs/stories/card.stories.d.ts +0 -27
  532. package/dist/cjs/stories/carousel.stories.d.ts +0 -8
  533. package/dist/cjs/stories/category.stories.d.ts +0 -17
  534. package/dist/cjs/stories/checkbox.stories.d.ts +0 -46
  535. package/dist/cjs/stories/container.stories.d.ts +0 -28
  536. package/dist/cjs/stories/cpnBanner.stories.d.ts +0 -14
  537. package/dist/cjs/stories/cpnCountdown.stories.d.ts +0 -12
  538. package/dist/cjs/stories/cpnNavigation.stories.d.ts +0 -14
  539. package/dist/cjs/stories/cpnProductcard.stories.d.ts +0 -14
  540. package/dist/cjs/stories/cpnTitle.stories.d.ts +0 -14
  541. package/dist/cjs/stories/creativeModule.stories.d.ts +0 -19
  542. package/dist/cjs/stories/dialog.stories.d.ts +0 -20
  543. package/dist/cjs/stories/drawer.stories.d.ts +0 -20
  544. package/dist/cjs/stories/drop-down.stories.d.ts +0 -16
  545. package/dist/cjs/stories/evaluate.stories.d.ts +0 -16
  546. package/dist/cjs/stories/faq.stories.d.ts +0 -21
  547. package/dist/cjs/stories/graphic.stories.d.ts +0 -64
  548. package/dist/cjs/stories/graphicAttractionBlock.stories.d.ts +0 -6
  549. package/dist/cjs/stories/grid.stories.d.ts +0 -22
  550. package/dist/cjs/stories/heading.stories.d.ts +0 -84
  551. package/dist/cjs/stories/input-number.stories.d.ts +0 -39
  552. package/dist/cjs/stories/input.stories.d.ts +0 -35
  553. package/dist/cjs/stories/link.stories.d.ts +0 -69
  554. package/dist/cjs/stories/marquee.stories.d.ts +0 -30
  555. package/dist/cjs/stories/mediaplayerBase.stories.d.ts +0 -6
  556. package/dist/cjs/stories/mediaplayerMulti.stories.d.ts +0 -16
  557. package/dist/cjs/stories/picture.stories.d.ts +0 -22
  558. package/dist/cjs/stories/popover.stories.d.ts +0 -17
  559. package/dist/cjs/stories/radio.stories.d.ts +0 -39
  560. package/dist/cjs/stories/shelfDisplay.stories.d.ts +0 -16
  561. package/dist/cjs/stories/skeleton.stories.d.ts +0 -20
  562. package/dist/cjs/stories/slogan.stories.d.ts +0 -20
  563. package/dist/cjs/stories/specs.stories.d.ts +0 -13
  564. package/dist/cjs/stories/tabs.stories.d.ts +0 -373
  565. package/dist/cjs/stories/text.stories.d.ts +0 -86
  566. package/dist/cjs/stories/whychoose.stories.d.ts +0 -21
  567. package/dist/esm/stories/HeroBanner.stories.d.ts +0 -27
  568. package/dist/esm/stories/MemberEquity.stories.d.ts +0 -9
  569. package/dist/esm/stories/MultiLayoutGraphicBlock.stories.d.ts +0 -9
  570. package/dist/esm/stories/accordionCards.stories.d.ts +0 -17
  571. package/dist/esm/stories/alert.stories.d.ts +0 -27
  572. package/dist/esm/stories/avatar.stories.d.ts +0 -39
  573. package/dist/esm/stories/badge.stories.d.ts +0 -31
  574. package/dist/esm/stories/bizTabs.stories.d.ts +0 -7
  575. package/dist/esm/stories/board.stories.d.ts +0 -6
  576. package/dist/esm/stories/brandEquity.stories.d.ts +0 -16
  577. package/dist/esm/stories/button.stories.d.ts +0 -56
  578. package/dist/esm/stories/card.stories.d.ts +0 -27
  579. package/dist/esm/stories/carousel.stories.d.ts +0 -8
  580. package/dist/esm/stories/category.stories.d.ts +0 -17
  581. package/dist/esm/stories/checkbox.stories.d.ts +0 -46
  582. package/dist/esm/stories/container.stories.d.ts +0 -28
  583. package/dist/esm/stories/cpnBanner.stories.d.ts +0 -14
  584. package/dist/esm/stories/cpnCountdown.stories.d.ts +0 -12
  585. package/dist/esm/stories/cpnNavigation.stories.d.ts +0 -14
  586. package/dist/esm/stories/cpnProductcard.stories.d.ts +0 -14
  587. package/dist/esm/stories/cpnTitle.stories.d.ts +0 -14
  588. package/dist/esm/stories/creativeModule.stories.d.ts +0 -19
  589. package/dist/esm/stories/dialog.stories.d.ts +0 -20
  590. package/dist/esm/stories/drawer.stories.d.ts +0 -20
  591. package/dist/esm/stories/drop-down.stories.d.ts +0 -16
  592. package/dist/esm/stories/evaluate.stories.d.ts +0 -16
  593. package/dist/esm/stories/faq.stories.d.ts +0 -21
  594. package/dist/esm/stories/graphic.stories.d.ts +0 -64
  595. package/dist/esm/stories/graphicAttractionBlock.stories.d.ts +0 -6
  596. package/dist/esm/stories/grid.stories.d.ts +0 -22
  597. package/dist/esm/stories/heading.stories.d.ts +0 -84
  598. package/dist/esm/stories/input-number.stories.d.ts +0 -39
  599. package/dist/esm/stories/input.stories.d.ts +0 -35
  600. package/dist/esm/stories/link.stories.d.ts +0 -69
  601. package/dist/esm/stories/marquee.stories.d.ts +0 -30
  602. package/dist/esm/stories/mediaplayerBase.stories.d.ts +0 -6
  603. package/dist/esm/stories/mediaplayerMulti.stories.d.ts +0 -16
  604. package/dist/esm/stories/picture.stories.d.ts +0 -22
  605. package/dist/esm/stories/popover.stories.d.ts +0 -17
  606. package/dist/esm/stories/radio.stories.d.ts +0 -39
  607. package/dist/esm/stories/shelfDisplay.stories.d.ts +0 -16
  608. package/dist/esm/stories/skeleton.stories.d.ts +0 -20
  609. package/dist/esm/stories/slogan.stories.d.ts +0 -20
  610. package/dist/esm/stories/specs.stories.d.ts +0 -13
  611. package/dist/esm/stories/tabs.stories.d.ts +0 -373
  612. package/dist/esm/stories/text.stories.d.ts +0 -86
  613. package/dist/esm/stories/whychoose.stories.d.ts +0 -21
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/biz-components/Ksp/index.tsx"],
4
+ "sourcesContent": ["import { Heading, Picture, Text } from '../../components/index.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport type { Media, Theme } from '../../types/props.js'\n\n/**\n * KSP \u5361\u7247\u9879\u6570\u636E\u7ED3\u6784\n */\nexport interface KspCardItem {\n /** \u6807\u9898 */\n title?: string\n /** \u63CF\u8FF0 */\n desc?: string\n /** \u684C\u9762\u7AEF\u56FE\u7247 URL */\n image?: Media\n /** \u79FB\u52A8\u7AEF\u56FE\u7247 URL */\n mobImage?: Media\n /** \u684C\u9762\u7AEF\u89C6\u9891 URL */\n video?: Media\n /** \u79FB\u52A8\u7AEF\u89C6\u9891 URL */\n mobVideo?: Media\n}\n\n/**\n * KSP \u6570\u636E\u7ED3\u6784\n */\nexport interface KspData {\n /** \u4E3B\u6807\u9898 */\n title?: string\n /** KSP \u5361\u7247\u5217\u8868\uFF08\u9700\u8981 7 \u4E2A\u9879\uFF09 */\n items: KspCardItem[]\n /** \u4E3B\u9898\uFF0C\u9ED8\u8BA4 light */\n theme?: Theme\n}\n\n/**\n * Ksp \u7EC4\u4EF6 Props\n */\nexport interface KspProps {\n /** KSP \u6570\u636E */\n data: KspData\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n}\n\ninterface ImageCardProps extends KspCardItem {\n /** \u81EA\u5B9A\u4E49\u7C7B\u540D */\n className?: string\n /** \u4E3B\u9898 */\n theme?: Theme\n}\n\nconst ImageCard = ({ title, desc, image, mobImage, video, mobVideo, className, theme }: ImageCardProps) => {\n return (\n <div\n className={cn(\n 'ksp-card rounded-box text-info-primary relative overflow-hidden',\n {\n 'aiui-dark': theme === 'dark',\n },\n className\n )}\n >\n {video && mobVideo ? (\n <>\n <video\n playsInline\n autoPlay\n muted\n loop\n src={video?.url}\n poster={image?.url}\n className=\"ksp-card-video ksp-card-video-desktop laptop:inline-block absolute bottom-0 hidden w-full\"\n />\n <video\n playsInline\n autoPlay\n muted\n loop\n src={mobVideo?.url}\n poster={mobImage?.url}\n className=\"ksp-card-video ksp-card-video-mobile laptop:hidden absolute inline-block -translate-y-[80px] object-contain object-center\"\n />\n </>\n ) : (\n (image || mobImage) && (\n <Picture\n source={image?.url || mobImage?.url}\n alt={image?.alt || mobImage?.alt || ''}\n className=\"ksp-card-image size-full\"\n imgClassName=\"h-full w-full object-cover object-bottom\"\n />\n )\n )}\n <div className=\"ksp-card-content desktop:left-[24px] desktop:top-[24px] lg-desktop:left-[32px] lg-desktop:top-[32px] absolute left-[16px] top-[16px]\">\n <Heading size={3} html={title} className=\"ksp-card-title tablet:block hidden w-full\" />\n <Heading size={2} html={title} className=\"ksp-card-title tablet:hidden tablet:w-[340px] block w-full\" />\n <Text\n size={2}\n html={desc}\n className=\"ksp-card-desc text-info-primary tablet:block tablet:text-[14px] laptop:text-[14px] desktop:text-[16px] lg-desktop:text-[18px] mt-[4px] text-[14px]\"\n />\n </div>\n </div>\n )\n}\n\n/**\n * \u5E03\u5C40\u914D\u7F6E\u6620\u5C04\u8868\n * \u6839\u636E items \u6570\u91CF\u548C\u7D22\u5F15\u4F4D\u7F6E\uFF0C\u5B9A\u4E49\u6BCF\u4E2A\u5361\u7247\u7684\u6805\u683C\u5E03\u5C40\u7C7B\u540D\n */\nconst LAYOUT_CONFIG: Record<number, Record<number, string>> = {\n 4: {\n 0: 'col-span-2 laptop:col-span-6',\n 1: 'col-span-1 laptop:col-span-4',\n 2: 'col-span-1 laptop:col-span-4',\n 3: 'col-span-2 laptop:col-span-6',\n },\n 5: {\n 0: 'col-span-2 laptop:col-span-6',\n 1: 'col-span-2 tablet:col-span-1 laptop:col-span-4',\n 2: 'col-span-1 laptop:col-span-3',\n 3: 'col-span-1 laptop:col-span-4',\n 4: 'col-span-2 tablet:col-span-1 laptop:col-span-3',\n },\n 6: {\n 0: 'col-span-2 tablet:col-span-1 laptop:col-span-4',\n 1: 'col-span-1 laptop:col-span-3',\n 2: 'col-span-1 laptop:col-span-3',\n 3: 'col-span-2 tablet:col-span-1 laptop:col-span-3',\n 4: 'col-span-1 laptop:col-span-3',\n 5: 'col-span-1 laptop:col-span-4',\n },\n 7: {\n 0: 'col-span-2 laptop:col-span-6',\n 1: 'col-span-1 laptop:col-span-4',\n 2: 'col-span-1 laptop:col-span-3',\n 3: 'col-span-2 tablet:col-span-1 laptop:col-span-4',\n 4: 'col-span-1 laptop:col-span-3',\n 5: 'col-span-1 laptop:col-span-4',\n 6: 'col-span-2 laptop:col-span-6',\n },\n 8: {\n 0: 'col-span-2 laptop:col-span-6',\n 1: 'col-span-1 laptop:col-span-4',\n 2: 'col-span-1 laptop:col-span-4',\n 3: 'col-span-1 laptop:col-span-3',\n 4: 'col-span-1 laptop:col-span-3',\n 5: 'col-span-2 tablet:col-span-1 laptop:col-span-3',\n 6: 'col-span-1 laptop:col-span-3',\n 7: 'col-span-1 laptop:col-span-4',\n },\n 9: {\n 0: 'col-span-2 laptop:col-span-3',\n 1: 'col-span-1 laptop:col-span-3',\n 2: 'col-span-1 laptop:col-span-4',\n 3: 'col-span-1 tablet:col-span-2 laptop:col-span-4',\n 4: 'col-span-1 laptop:col-span-3',\n 5: 'col-span-2 tablet:col-span-1 laptop:col-span-3',\n 6: 'col-span-1 laptop:col-span-3',\n 7: 'col-span-1 laptop:col-span-3',\n 8: 'col-span-2 laptop:col-span-4',\n },\n}\n\n/**\n * \u83B7\u53D6\u5361\u7247\u7684\u5E03\u5C40\u7C7B\u540D\n * @param index - \u5361\u7247\u7D22\u5F15\n * @param totalCount - \u5361\u7247\u603B\u6570\n * @returns \u5E03\u5C40\u7C7B\u540D\n */\nconst getCardLayoutClass = (index: number, totalCount: number): string => {\n return LAYOUT_CONFIG[totalCount]?.[index] || ''\n}\n\n/**\n * Ksp - Key Selling Point \u5173\u952E\u5356\u70B9\u7EC4\u4EF6\n *\n * \u5C55\u793A\u4EA7\u54C1\u7684\u5173\u952E\u5356\u70B9\uFF0C\u652F\u6301\u56FE\u7247\u548C\u89C6\u9891\uFF0C\u5177\u6709\u590D\u6742\u7684\u54CD\u5E94\u5F0F\u5E03\u5C40\u3002\n * \u5E03\u5C40\u652F\u6301 4-9 \u4E2A\u5361\u7247\u9879\uFF0C\u5206\u522B\u5BF9\u5E94\u4E0D\u540C\u5C3A\u5BF8\u548C\u4F4D\u7F6E\u3002\n *\n * @example\n * ```tsx\n * <Ksp\n * data={{\n * title: '\u4E3A\u4EC0\u4E48\u9009\u62E9\u6211\u4EEC',\n * items: [\n * {\n * title: '\u9AD8\u6027\u80FD',\n * desc: '\u5F3A\u5927\u7684\u5904\u7406\u80FD\u529B',\n * image: '/desktop.jpg',\n * mobImage: '/mobile.jpg'\n * },\n * // ... \u9700\u8981 4-9 \u4E2A\u9879\n * ]\n * }}\n * />\n * ```\n */\nfunction Ksp({ data, className }: KspProps) {\n const { title, items, theme = 'light' } = data\n return (\n <section\n data-ui-component-id=\"ksp\"\n className={cn(\n 'ksp-container text-info-primary laptop:scroll-mt-[46px] flex scroll-mt-[108px] flex-col justify-center',\n {\n 'aiui-dark': theme === 'dark',\n },\n className\n )}\n >\n <Heading as=\"h1\" size={4} html={title} className=\"ksp-title laptop:text-center text-left text-white\" />\n <div className=\"ksp-layout tablet:grid-cols-3 laptop:grid-cols-10 laptop:gap-4 grid grid-cols-2 gap-3\">\n {items.map((item, index) => (\n <ImageCard key={index} {...item} className={getCardLayoutClass(index, items.length)} />\n ))}\n </div>\n </section>\n )\n}\n\nexport default withLayout(Ksp)\n"],
5
+ "mappings": "AAgEQ,mBAAAA,EACE,OAAAC,EADF,QAAAC,MAAA,oBAhER,OAAS,WAAAC,EAAS,WAAAC,EAAS,QAAAC,MAAY,4BACvC,OAAS,MAAAC,MAAU,yBACnB,OAAS,cAAAC,MAAkB,yBAkD3B,MAAMC,EAAY,CAAC,CAAE,MAAAC,EAAO,KAAAC,EAAM,MAAAC,EAAO,SAAAC,EAAU,MAAAC,EAAO,SAAAC,EAAU,UAAAC,EAAW,MAAAC,CAAM,IAEjFd,EAAC,OACC,UAAWI,EACT,kEACA,CACE,YAAaU,IAAU,MACzB,EACAD,CACF,EAEC,UAAAF,GAASC,EACRZ,EAAAF,EAAA,CACE,UAAAC,EAAC,SACC,YAAW,GACX,SAAQ,GACR,MAAK,GACL,KAAI,GACJ,IAAKY,GAAO,IACZ,OAAQF,GAAO,IACf,UAAU,4FACZ,EACAV,EAAC,SACC,YAAW,GACX,SAAQ,GACR,MAAK,GACL,KAAI,GACJ,IAAKa,GAAU,IACf,OAAQF,GAAU,IAClB,UAAU,4HACZ,GACF,GAECD,GAASC,IACRX,EAACG,EAAA,CACC,OAAQO,GAAO,KAAOC,GAAU,IAChC,IAAKD,GAAO,KAAOC,GAAU,KAAO,GACpC,UAAU,2BACV,aAAa,2CACf,EAGJV,EAAC,OAAI,UAAU,uIACb,UAAAD,EAACE,EAAA,CAAQ,KAAM,EAAG,KAAMM,EAAO,UAAU,4CAA4C,EACrFR,EAACE,EAAA,CAAQ,KAAM,EAAG,KAAMM,EAAO,UAAU,6DAA6D,EACtGR,EAACI,EAAA,CACC,KAAM,EACN,KAAMK,EACN,UAAU,qJACZ,GACF,GACF,EAQEO,EAAwD,CAC5D,EAAG,CACD,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,8BACL,EACA,EAAG,CACD,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,+BACH,EAAG,gDACL,EACA,EAAG,CACD,EAAG,iDACH,EAAG,+BACH,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,8BACL,EACA,EAAG,CACD,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,+BACH,EAAG,8BACL,EACA,EAAG,CACD,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,8BACL,EACA,EAAG,CACD,EAAG,+BACH,EAAG,+BACH,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,iDACH,EAAG,+BACH,EAAG,+BACH,EAAG,8BACL,CACF,EAQMC,EAAqB,CAACC,EAAeC,IAClCH,EAAcG,CAAU,IAAID,CAAK,GAAK,GA2B/C,SAASE,EAAI,CAAE,KAAAC,EAAM,UAAAP,CAAU,EAAa,CAC1C,KAAM,CAAE,MAAAN,EAAO,MAAAc,EAAO,MAAAP,EAAQ,OAAQ,EAAIM,EAC1C,OACEpB,EAAC,WACC,uBAAqB,MACrB,UAAWI,EACT,yGACA,CACE,YAAaU,IAAU,MACzB,EACAD,CACF,EAEA,UAAAd,EAACE,EAAA,CAAQ,GAAG,KAAK,KAAM,EAAG,KAAMM,EAAO,UAAU,oDAAoD,EACrGR,EAAC,OAAI,UAAU,wFACZ,SAAAsB,EAAM,IAAI,CAACC,EAAML,IAChBlB,EAACO,EAAA,CAAuB,GAAGgB,EAAM,UAAWN,EAAmBC,EAAOI,EAAM,MAAM,GAAlEJ,CAAqE,CACtF,EACH,GACF,CAEJ,CAEA,IAAOM,EAAQlB,EAAWc,CAAG",
6
+ "names": ["Fragment", "jsx", "jsxs", "Heading", "Picture", "Text", "cn", "withLayout", "ImageCard", "title", "desc", "image", "mobImage", "video", "mobVideo", "className", "theme", "LAYOUT_CONFIG", "getCardLayoutClass", "index", "totalCount", "Ksp", "data", "items", "item", "Ksp_default"]
7
+ }
@@ -131,5 +131,5 @@ export interface ProductContextType {
131
131
  }
132
132
  export declare const BizProductContext: React.Context<ProductContextType>;
133
133
  export declare const useBizProductContext: () => ProductContextType;
134
- declare const ProductProvider: ({ product, isLogin, profile, isMobile, isDesktop, children, renderRating, freeGift, exchangePurchase, bundle, checkedBundle, checkedGift, setCheckedBundle, setCheckedGift, checkedExchangePurchase, setCheckedExchangePurchase, variant, selectedOptions, setSelectedOptions, compareData, coupon, finalPrice, comparePrice, totalSavings, savingDetail, setSavingDetail, selectedVariants, onAddToCart, onBuyNow, creditsRedemption, memberFunctionResult, openModal, openSignInPopup, openAuthCodePopup, openSignUpPopup, renderInstallments, onUseCouponChange, onUseMemberDiscountChange, discount, buyNowLoading, addToCartLoading, }: PropsWithChildren<Omit<ProductContextType, "joinedRecommendBuyProducts" | "setJoinedRecommendBuyProducts" | "addOrder" | "setAddOrder">>) => import("react/jsx-runtime").JSX.Element;
134
+ declare const ProductProvider: ({ product, isLogin, profile, isMobile, isDesktop, children, renderRating, freeGift, exchangePurchase, bundle, checkedBundle, checkedGift, setCheckedBundle, setCheckedGift, checkedExchangePurchase, setCheckedExchangePurchase, variant, selectedOptions, setSelectedOptions, compareData, coupon, finalPrice, comparePrice, totalSavings, savingDetail, setSavingDetail, selectedVariants, onAddToCart, onBuyNow, creditsRedemption, memberFunctionResult, openModal, openSignInPopup, openAuthCodePopup, openSignUpPopup, renderInstallments, onUseCouponChange, onUseMemberDiscountChange, discount, buyNowLoading, addToCartLoading, }: PropsWithChildren<Omit<ProductContextType, 'joinedRecommendBuyProducts' | 'setJoinedRecommendBuyProducts' | 'addOrder' | 'setAddOrder'>>) => import("react/jsx-runtime").JSX.Element;
135
135
  export default ProductProvider;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as l}from"react/jsx-runtime";import{Text as p,Link as m}from"../../../../components/index.js";import{Dialog as g,DialogContent as d,DialogHeader as c,DialogTitle as x}from"../../../../components/index.js";const h=({data:e,onClose:o,open:s})=>t(g,{open:s,onOpenChange:o,children:l(d,{overlayClassName:"z-[100]",className:"laptop:top-1/2 laptop:max-w-[90vw] laptop:bottom-auto laptop:-translate-y-1/2 laptop:h-auto laptop:w-[896px] laptop:px-8 bottom-0 top-auto z-[110] h-[calc(100vh-240px)] max-h-[80vh] translate-y-0 gap-0 overflow-hidden overflow-y-auto !py-0 px-4 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:!size-6 [&_.dialog-close-icon]:text-[#6D6D6F]",children:[t(c,{className:"laptop:pt-4 laptop:pb-3 pb-2 pt-4",children:t(x,{className:"laptop:text-[24px] text-left text-[20px] font-bold",children:e?.title})}),l("div",{className:"laptop:gap-8 laptop:py-8 py-6",children:[t(p,{className:"text-[20px] font-bold leading-[1.2] md:text-[16px]",html:e?.shippingCoupon?.title}),t("ul",{className:"mt-3 grid grid-flow-row gap-[4px] font-bold leading-[1.4]",children:e?.shippingCoupon?.list.map((a,i)=>l("li",{className:"text-[18px]",children:[l("span",{className:"text-[#86868C]",children:[i+1,"."]}),t("span",{className:"ml-[4px] font-bold text-[#86868C]",children:a})]},i))}),l("div",{className:"mt-[24px] md:mt-[16px]",children:[t(p,{className:"text-[18px] font-bold leading-[1.2]",html:e?.shippingService?.title}),t("div",{className:"mt-1 grid w-full grid-cols-2 gap-[12px] md:grid-cols-1",children:e?.shippingService?.list.map((a,i)=>l("div",{className:"rounded-[12px] bg-[#EAEAEC] p-4",children:[t(p,{as:"p",className:"text-base font-bold leading-[1.2]",html:a.title}),t("div",{className:"mt-3 grid grid-flow-row gap-[4px]",children:a.list.map((n,r)=>t(p,{as:"p",className:"text-base font-bold text-[#86868C]",children:n},r))})]},i))})]}),t(m,{className:"text-brand-0 mt-8 block text-[16px] font-medium leading-[1.2] underline",href:`${e?.terms?.url}`,children:e?.terms?.text})]})]})});export{h as ShippingPolicyModal};
1
+ import{jsx as t,jsxs as l}from"react/jsx-runtime";import{Text as o,Link as m}from"../../../../components/index.js";import{Dialog as d,DialogContent as g,DialogHeader as x,DialogTitle as c}from"../../../../components/index.js";const h=({data:e,onClose:p,open:s})=>t(d,{open:s,onOpenChange:p,children:l(g,{overlayClassName:"z-[100]",className:"laptop:top-1/2 laptop:max-w-[90vw] laptop:bottom-auto laptop:-translate-y-1/2 laptop:h-auto laptop:w-[896px] laptop:px-8 bottom-0 top-auto z-[110] h-[calc(100vh-240px)] max-h-[80vh] translate-y-0 gap-0 overflow-hidden overflow-y-auto !py-0 px-4 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:!size-6 [&_.dialog-close-icon]:text-[#6D6D6F]",children:[t(x,{className:"laptop:pt-4 pb-2 pt-4",children:t(c,{className:"laptop:text-[24px] text-left text-[20px] font-bold",children:e?.title})}),l("div",{className:"laptop:gap-8 laptop:py-8 py-6",children:[t(o,{className:"text-[20px] font-bold leading-[1.2] text-[#1d1d1f] md:text-[16px]",html:e?.shippingCoupon?.title}),t("ul",{className:"mt-3 grid grid-flow-row gap-[4px] font-bold leading-[1.4]",children:e?.shippingCoupon?.list.map((i,a)=>l("li",{className:"flex text-[18px]",children:[l("span",{className:"text-[#86868C]",children:[a+1,"."]}),t("span",{className:"ml-[4px] font-bold text-[#86868C]",children:i})]},a))}),l("div",{className:"mt-[24px] md:mt-[16px]",children:[t(o,{className:"text-[18px] font-bold leading-[1.2] text-[#1d1d1f]",html:e?.shippingService?.title}),t("div",{className:"mt-1 grid w-full grid-cols-2 gap-[12px] md:grid-cols-1",children:e?.shippingService?.list.map((i,a)=>l("div",{className:"rounded-[12px] bg-[#EAEAEC] p-4",children:[t(o,{as:"p",className:"text-base font-bold !leading-[1.2] text-[#1d1d1f]",html:i.title}),t("div",{className:"mt-3 grid grid-flow-row",children:i.list.map((n,r)=>t(o,{as:"p",className:"text-base font-bold text-[#86868C]",children:n},r))})]},a))})]}),t(m,{className:"text-brand-0 mt-8 block text-[16px] font-medium leading-[1.2] underline",href:`${e?.terms?.url}`,children:e?.terms?.text})]})]})});export{h as ShippingPolicyModal};
2
2
  //# sourceMappingURL=ShippingPolicyModal.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../src/biz-components/Listing/components/PaidShipping/ShippingPolicyModal.tsx"],
4
- "sourcesContent": ["import { Text, Link } from '../../../../components/index.js'\nimport { Dialog, DialogContent, DialogHeader, DialogTitle } from '../../../../components/index.js'\n\ninterface Terms {\n text: string\n url: string\n}\n\ninterface List {\n title: string\n list: string[]\n}\n\ninterface ShippingService {\n title: string\n list: List[]\n}\n\ninterface Data {\n title: string\n shippingCoupon: List\n shippingService: ShippingService\n terms: Terms\n}\n\ninterface Props {\n data: Data\n onClose: () => void\n open: boolean\n}\n\nexport const ShippingPolicyModal = ({ data, onClose, open }: Props) => {\n return (\n <Dialog open={open} onOpenChange={onClose}>\n <DialogContent\n overlayClassName=\"z-[100]\"\n className=\"laptop:top-1/2 laptop:max-w-[90vw] laptop:bottom-auto laptop:-translate-y-1/2 laptop:h-auto laptop:w-[896px] laptop:px-8 bottom-0 top-auto z-[110] h-[calc(100vh-240px)] max-h-[80vh] translate-y-0 gap-0 overflow-hidden overflow-y-auto !py-0 px-4 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:!size-6 [&_.dialog-close-icon]:text-[#6D6D6F]\"\n >\n <DialogHeader className=\"laptop:pt-4 laptop:pb-3 pb-2 pt-4\">\n <DialogTitle className=\"laptop:text-[24px] text-left text-[20px] font-bold\">{data?.title}</DialogTitle>\n </DialogHeader>\n <div className=\"laptop:gap-8 laptop:py-8 py-6\">\n <Text className=\"text-[20px] font-bold leading-[1.2] md:text-[16px]\" html={data?.shippingCoupon?.title} />\n <ul className=\"mt-3 grid grid-flow-row gap-[4px] font-bold leading-[1.4]\">\n {data?.shippingCoupon?.list.map((item, index) => (\n <li className=\"text-[18px]\" key={index}>\n <span className=\"text-[#86868C]\">{index + 1}.</span>\n <span className=\"ml-[4px] font-bold text-[#86868C]\">{item}</span>\n </li>\n ))}\n </ul>\n <div className=\"mt-[24px] md:mt-[16px]\">\n <Text className=\"text-[18px] font-bold leading-[1.2]\" html={data?.shippingService?.title} />\n <div className=\"mt-1 grid w-full grid-cols-2 gap-[12px] md:grid-cols-1\">\n {data?.shippingService?.list.map((item, index) => (\n <div className=\"rounded-[12px] bg-[#EAEAEC] p-4\" key={index}>\n <Text as=\"p\" className=\"text-base font-bold leading-[1.2]\" html={item.title} />\n <div className=\"mt-3 grid grid-flow-row gap-[4px]\">\n {item.list.map((subItem, subIndex) => (\n <Text as=\"p\" className=\"text-base font-bold text-[#86868C]\" key={subIndex}>\n {subItem}\n </Text>\n ))}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n <Link\n className=\"text-brand-0 mt-8 block text-[16px] font-medium leading-[1.2] underline\"\n href={`${data?.terms?.url}`}\n >\n {data?.terms?.text}\n </Link>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n"],
5
- "mappings": "AAuCU,cAAAA,EAOM,QAAAC,MAPN,oBAvCV,OAAS,QAAAC,EAAM,QAAAC,MAAY,kCAC3B,OAAS,UAAAC,EAAQ,iBAAAC,EAAe,gBAAAC,EAAc,eAAAC,MAAmB,kCA8B1D,MAAMC,EAAsB,CAAC,CAAE,KAAAC,EAAM,QAAAC,EAAS,KAAAC,CAAK,IAEtDX,EAACI,EAAA,CAAO,KAAMO,EAAM,aAAcD,EAChC,SAAAT,EAACI,EAAA,CACC,iBAAiB,UACjB,UAAU,oWAEV,UAAAL,EAACM,EAAA,CAAa,UAAU,qCACtB,SAAAN,EAACO,EAAA,CAAY,UAAU,qDAAsD,SAAAE,GAAM,MAAM,EAC3F,EACAR,EAAC,OAAI,UAAU,gCACb,UAAAD,EAACE,EAAA,CAAK,UAAU,qDAAqD,KAAMO,GAAM,gBAAgB,MAAO,EACxGT,EAAC,MAAG,UAAU,4DACX,SAAAS,GAAM,gBAAgB,KAAK,IAAI,CAACG,EAAMC,IACrCZ,EAAC,MAAG,UAAU,cACZ,UAAAA,EAAC,QAAK,UAAU,iBAAkB,UAAAY,EAAQ,EAAE,KAAC,EAC7Cb,EAAC,QAAK,UAAU,oCAAqC,SAAAY,EAAK,IAF3BC,CAGjC,CACD,EACH,EACAZ,EAAC,OAAI,UAAU,yBACb,UAAAD,EAACE,EAAA,CAAK,UAAU,sCAAsC,KAAMO,GAAM,iBAAiB,MAAO,EAC1FT,EAAC,OAAI,UAAU,yDACZ,SAAAS,GAAM,iBAAiB,KAAK,IAAI,CAACG,EAAMC,IACtCZ,EAAC,OAAI,UAAU,kCACb,UAAAD,EAACE,EAAA,CAAK,GAAG,IAAI,UAAU,oCAAoC,KAAMU,EAAK,MAAO,EAC7EZ,EAAC,OAAI,UAAU,oCACZ,SAAAY,EAAK,KAAK,IAAI,CAACE,EAASC,IACvBf,EAACE,EAAA,CAAK,GAAG,IAAI,UAAU,qCACpB,SAAAY,GAD8DC,CAEjE,CACD,EACH,IARoDF,CAStD,CACD,EACH,GACF,EAEAb,EAACG,EAAA,CACC,UAAU,0EACV,KAAM,GAAGM,GAAM,OAAO,GAAG,GAExB,SAAAA,GAAM,OAAO,KAChB,GACF,GACF,EACF",
4
+ "sourcesContent": ["import { Text, Link } from '../../../../components/index.js'\nimport { Dialog, DialogContent, DialogHeader, DialogTitle } from '../../../../components/index.js'\n\ninterface Terms {\n text: string\n url: string\n}\n\ninterface List {\n title: string\n list: string[]\n}\n\ninterface ShippingService {\n title: string\n list: List[]\n}\n\ninterface Data {\n title: string\n shippingCoupon: List\n shippingService: ShippingService\n terms: Terms\n}\n\ninterface Props {\n data: Data\n onClose: () => void\n open: boolean\n}\n\nexport const ShippingPolicyModal = ({ data, onClose, open }: Props) => {\n return (\n <Dialog open={open} onOpenChange={onClose}>\n <DialogContent\n overlayClassName=\"z-[100]\"\n className=\"laptop:top-1/2 laptop:max-w-[90vw] laptop:bottom-auto laptop:-translate-y-1/2 laptop:h-auto laptop:w-[896px] laptop:px-8 bottom-0 top-auto z-[110] h-[calc(100vh-240px)] max-h-[80vh] translate-y-0 gap-0 overflow-hidden overflow-y-auto !py-0 px-4 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:!size-6 [&_.dialog-close-icon]:text-[#6D6D6F]\"\n >\n <DialogHeader className=\"laptop:pt-4 pb-2 pt-4\">\n <DialogTitle className=\"laptop:text-[24px] text-left text-[20px] font-bold\">{data?.title}</DialogTitle>\n </DialogHeader>\n <div className=\"laptop:gap-8 laptop:py-8 py-6\">\n <Text\n className=\"text-[20px] font-bold leading-[1.2] text-[#1d1d1f] md:text-[16px]\"\n html={data?.shippingCoupon?.title}\n />\n <ul className=\"mt-3 grid grid-flow-row gap-[4px] font-bold leading-[1.4]\">\n {data?.shippingCoupon?.list.map((item, index) => (\n <li className=\"flex text-[18px]\" key={index}>\n <span className=\"text-[#86868C]\">{index + 1}.</span>\n <span className=\"ml-[4px] font-bold text-[#86868C]\">{item}</span>\n </li>\n ))}\n </ul>\n <div className=\"mt-[24px] md:mt-[16px]\">\n <Text className=\"text-[18px] font-bold leading-[1.2] text-[#1d1d1f]\" html={data?.shippingService?.title} />\n <div className=\"mt-1 grid w-full grid-cols-2 gap-[12px] md:grid-cols-1\">\n {data?.shippingService?.list.map((item, index) => (\n <div className=\"rounded-[12px] bg-[#EAEAEC] p-4\" key={index}>\n <Text as=\"p\" className=\"text-base font-bold !leading-[1.2] text-[#1d1d1f]\" html={item.title} />\n <div className=\"mt-3 grid grid-flow-row\">\n {item.list.map((subItem, subIndex) => (\n <Text as=\"p\" className=\"text-base font-bold text-[#86868C]\" key={subIndex}>\n {subItem}\n </Text>\n ))}\n </div>\n </div>\n ))}\n </div>\n </div>\n\n <Link\n className=\"text-brand-0 mt-8 block text-[16px] font-medium leading-[1.2] underline\"\n href={`${data?.terms?.url}`}\n >\n {data?.terms?.text}\n </Link>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n"],
5
+ "mappings": "AAuCU,cAAAA,EAUM,QAAAC,MAVN,oBAvCV,OAAS,QAAAC,EAAM,QAAAC,MAAY,kCAC3B,OAAS,UAAAC,EAAQ,iBAAAC,EAAe,gBAAAC,EAAc,eAAAC,MAAmB,kCA8B1D,MAAMC,EAAsB,CAAC,CAAE,KAAAC,EAAM,QAAAC,EAAS,KAAAC,CAAK,IAEtDX,EAACI,EAAA,CAAO,KAAMO,EAAM,aAAcD,EAChC,SAAAT,EAACI,EAAA,CACC,iBAAiB,UACjB,UAAU,oWAEV,UAAAL,EAACM,EAAA,CAAa,UAAU,wBACtB,SAAAN,EAACO,EAAA,CAAY,UAAU,qDAAsD,SAAAE,GAAM,MAAM,EAC3F,EACAR,EAAC,OAAI,UAAU,gCACb,UAAAD,EAACE,EAAA,CACC,UAAU,oEACV,KAAMO,GAAM,gBAAgB,MAC9B,EACAT,EAAC,MAAG,UAAU,4DACX,SAAAS,GAAM,gBAAgB,KAAK,IAAI,CAACG,EAAMC,IACrCZ,EAAC,MAAG,UAAU,mBACZ,UAAAA,EAAC,QAAK,UAAU,iBAAkB,UAAAY,EAAQ,EAAE,KAAC,EAC7Cb,EAAC,QAAK,UAAU,oCAAqC,SAAAY,EAAK,IAFtBC,CAGtC,CACD,EACH,EACAZ,EAAC,OAAI,UAAU,yBACb,UAAAD,EAACE,EAAA,CAAK,UAAU,sDAAsD,KAAMO,GAAM,iBAAiB,MAAO,EAC1GT,EAAC,OAAI,UAAU,yDACZ,SAAAS,GAAM,iBAAiB,KAAK,IAAI,CAACG,EAAMC,IACtCZ,EAAC,OAAI,UAAU,kCACb,UAAAD,EAACE,EAAA,CAAK,GAAG,IAAI,UAAU,oDAAoD,KAAMU,EAAK,MAAO,EAC7FZ,EAAC,OAAI,UAAU,0BACZ,SAAAY,EAAK,KAAK,IAAI,CAACE,EAASC,IACvBf,EAACE,EAAA,CAAK,GAAG,IAAI,UAAU,qCACpB,SAAAY,GAD8DC,CAEjE,CACD,EACH,IARoDF,CAStD,CACD,EACH,GACF,EAEAb,EAACG,EAAA,CACC,UAAU,0EACV,KAAM,GAAGM,GAAM,OAAO,GAAG,GAExB,SAAAA,GAAM,OAAO,KAChB,GACF,GACF,EACF",
6
6
  "names": ["jsx", "jsxs", "Text", "Link", "Dialog", "DialogContent", "DialogHeader", "DialogTitle", "ShippingPolicyModal", "data", "onClose", "open", "item", "index", "subItem", "subIndex"]
7
7
  }
@@ -1,15 +1,28 @@
1
- import type { Product, ProductVariant } from '../../types/product';
1
+ /// <reference types="react" />
2
+ import type { ProductVariant } from '../../types/product';
2
3
  import type { DeliveryCustom } from './type';
3
4
  declare const _default: import("react").ForwardRefExoticComponent<Omit<{
4
5
  metafields: any;
5
- productList: Array<Product & {
6
+ productList: ({
7
+ path?: string | undefined;
8
+ images: import("../../types/graphql.js").Image[];
9
+ media: import("../../types/product").ProductMedia[];
10
+ variants: ProductVariant[];
11
+ price: import("../../types/product").ProductPrice;
12
+ options: import("../../types/product").ProductOption[];
13
+ metafields?: {
14
+ [key: string]: any;
15
+ } | undefined;
16
+ slug: string;
17
+ payload?: any;
18
+ } & Omit<import("../../types/graphql.js").Product, "media" | "metafields" | "price" | "options" | "images" | "variants"> & {
6
19
  variant: ProductVariant;
7
- }>;
20
+ })[];
8
21
  variant: ProductVariant;
9
22
  onShippingInfoChange: (deliveryCustom: DeliveryCustom) => void;
10
- className?: string;
23
+ className?: string | undefined;
11
24
  }, keyof import("../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../shared/Styles.js").StylesProps & import("../../../../shared/Styles.js").ContainerProps> & {
12
- className?: string;
13
- data?: Record<string, any>;
25
+ className?: string | undefined;
26
+ data?: Record<string, any> | undefined;
14
27
  } & import("react").RefAttributes<any>>;
15
28
  export default _default;
@@ -33,7 +33,7 @@ interface BenefitsTabProps {
33
33
  textConfig?: BenefitsTabTextConfig;
34
34
  }
35
35
  declare const _default: React.ForwardRefExoticComponent<Omit<BenefitsTabProps, keyof import("../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../shared/Styles.js").StylesProps & import("../../../../../shared/Styles.js").ContainerProps> & {
36
- className?: string;
37
- data?: Record<string, any>;
36
+ className?: string | undefined;
37
+ data?: Record<string, any> | undefined;
38
38
  } & React.RefAttributes<any>>;
39
39
  export default _default;
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../../shared/Styles.js").StylesProps & import("../../../../../../shared/Styles.js").ContainerProps> & {
2
- className?: string;
3
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
4
5
  } & import("react").RefAttributes<any>>;
5
6
  export default _default;
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../../shared/Styles.js").StylesProps & import("../../../../../../shared/Styles.js").ContainerProps> & {
2
- className?: string;
3
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
4
5
  } & import("react").RefAttributes<any>>;
5
6
  export default _default;
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../../shared/Styles.js").StylesProps & import("../../../../../../shared/Styles.js").ContainerProps> & {
2
- className?: string;
3
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
4
5
  } & import("react").RefAttributes<any>>;
5
6
  export default _default;
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as o}from"react/jsx-runtime";import{Text as i,Picture as N,Checkbox as y}from"../../../../../../components/index.js";import{cn as u}from"../../../../../../helpers/index.js";import{useEffect as P,useMemo as E}from"react";import{useBizProductContext as G}from"../../../../BizProductProvider.js";import{formatPrice as w}from"../../../../utils/index.js";import{useAiuiContext as z}from"../../../../../AiuiProvider/index.js";import{withLayout as B}from"../../../../../../shared/Styles.js";const D=()=>{const{locale:x="us"}=z(),{freeGift:b,checkedGift:l,setCheckedGift:a,setCheckedBundle:F,setSavingDetail:h,savingDetail:g,setJoinedRecommendBuyProducts:s,joinedRecommendBuyProducts:c,setAddOrder:n}=G(),{title:k,giftList:m=[],freeLabel:v}=b||{},r=E(()=>m?.filter(e=>e.availableForSale),[m]),p=e=>{l?.id===e.id?(a?.(void 0),h?.({...g,freeGift:0}),s?.({...c,gift:{value:void 0,canOperate:!0}}),n?.(d=>d.filter(f=>f!=="gift"))):(a?.(e),s?.({...c,gift:{value:e,canOperate:!1}}),n?.(d=>[...d.filter(C=>C!=="gift"),"gift"]))};return P(()=>{r?.[0]&&p(r?.[0])},[r]),r?.length?o("div",{className:"ipc-product-detail-free-gift",children:[t(i,{size:3,className:"font-bold leading-[1.2]",html:k}),t("div",{className:"laptop:grid-cols-2 desktop:grid-cols-1 lg-desktop:mt-4 mt-3 grid grid-cols-1 gap-3",children:r.map(e=>o("div",{className:u("rounded-box flex items-center gap-2 border-2 border-[#E4E5E6] px-4 text-left font-bold",{"border-brand":l?.id===e.id}),children:[t(y,{onCheckedChange:()=>p(e),size:"lg",className:u("rounded-full border-2 border-[#E4E5E6]",{"border-brand":l?.id===e.id}),id:e.id,checked:l?.id===e.id,value:e.id}),o("label",{htmlFor:e.id,className:"flex w-full cursor-pointer items-center justify-between gap-4 py-6",children:[o("div",{className:"flex items-center gap-2",children:[t(N,{source:e.image?.url,className:"size-12 shrink-0"}),t(i,{className:"laptop:text-[16px] lg-desktop:text-[18px] line-clamp-2 text-sm font-bold",html:e.product.title})]}),o("div",{className:"tablet:flex-row flex shrink-0 flex-col items-center gap-1",children:[t(i,{className:"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold",html:v}),t(i,{className:"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold text-[#6D6D6F] line-through",html:w({amount:e.price.amount,locale:x,currencyCode:e.price.currencyCode})})]})]})]},e.id))})]}):null};var J=B(D);export{J as default};
1
+ import{jsx as t,jsxs as r}from"react/jsx-runtime";import{Text as l,Picture as N,Checkbox as y}from"../../../../../../components/index.js";import{cn as f}from"../../../../../../helpers/index.js";import{useMemo as P}from"react";import{useBizProductContext as E}from"../../../../BizProductProvider.js";import{formatPrice as G}from"../../../../utils/index.js";import{useAiuiContext as w}from"../../../../../AiuiProvider/index.js";import{withLayout as z}from"../../../../../../shared/Styles.js";const B=()=>{const{locale:u="us"}=w(),{freeGift:x,checkedGift:o,setCheckedGift:d,setCheckedBundle:D,setSavingDetail:b,savingDetail:h,setJoinedRecommendBuyProducts:a,joinedRecommendBuyProducts:s,setAddOrder:c}=E(),{title:g,giftList:n=[],freeLabel:k}=x||{},m=P(()=>n?.filter(e=>e.availableForSale),[n]),v=e=>{o?.id===e.id?(d?.(void 0),b?.({...h,freeGift:0}),a?.({...s,gift:{value:void 0,canOperate:!0}}),c?.(i=>i.filter(p=>p!=="gift"))):(d?.(e),a?.({...s,gift:{value:e,canOperate:!1}}),c?.(i=>[...i.filter(C=>C!=="gift"),"gift"]))};return m?.length?r("div",{className:"ipc-product-detail-free-gift",children:[t(l,{size:3,className:"font-bold leading-[1.2]",html:g}),t("div",{className:"laptop:grid-cols-2 desktop:grid-cols-1 lg-desktop:mt-4 mt-3 grid grid-cols-1 gap-3",children:m.map(e=>r("div",{className:f("rounded-box flex items-center gap-2 border-2 border-[#E4E5E6] px-4 text-left font-bold",{"border-brand":o?.id===e.id}),children:[t(y,{onCheckedChange:()=>v(e),size:"lg",className:f("rounded-full border-2 border-[#E4E5E6]",{"border-brand":o?.id===e.id}),id:e.id,checked:o?.id===e.id,value:e.id}),r("label",{htmlFor:e.id,className:"flex w-full cursor-pointer items-center justify-between gap-4 py-6",children:[r("div",{className:"flex items-center gap-2",children:[t(N,{source:e.image?.url,className:"size-12 shrink-0"}),t(l,{className:"laptop:text-[16px] lg-desktop:text-[18px] line-clamp-2 text-sm font-bold",html:e.product.title})]}),r("div",{className:"tablet:flex-row flex shrink-0 flex-col items-center gap-1",children:[t(l,{className:"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold",html:k}),t(l,{className:"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold text-[#6D6D6F] line-through",html:G({amount:e.price.amount,locale:u,currencyCode:e.price.currencyCode})})]})]})]},e.id))})]}):null};var J=z(B);export{J as default};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../src/biz-components/Listing/components/ProductCard/ProductDetail/ProductFreeGift/index.tsx"],
4
- "sourcesContent": ["import { Text, Picture, Checkbox } from '../../../../../../components/index.js'\nimport { cn } from '../../../../../../helpers/index.js'\nimport { useEffect, useMemo } from 'react'\nimport { useBizProductContext } from '../../../../BizProductProvider.js'\nimport { formatPrice } from '../../../../utils/index.js'\nimport { useAiuiContext } from '../../../../../AiuiProvider/index.js'\nimport type { ProductVariant } from '../../../../types/product'\nimport { withLayout } from '../../../../../../shared/Styles.js'\n\nconst ProductFreeGift = () => {\n const { locale = 'us' } = useAiuiContext()\n const {\n freeGift,\n checkedGift,\n setCheckedGift,\n setCheckedBundle,\n setSavingDetail,\n savingDetail,\n setJoinedRecommendBuyProducts,\n joinedRecommendBuyProducts,\n setAddOrder,\n } = useBizProductContext()\n const { title, giftList = [], freeLabel } = freeGift || {}\n const availableGifts = useMemo(() => giftList?.filter(item => item.availableForSale), [giftList])\n\n const handleCheckboxClick = (value: ProductVariant) => {\n if (checkedGift?.id === value.id) {\n setCheckedGift?.(undefined)\n setSavingDetail?.({ ...savingDetail, freeGift: 0 })\n setJoinedRecommendBuyProducts?.({\n ...joinedRecommendBuyProducts,\n gift: {\n value: undefined,\n canOperate: true,\n },\n })\n // \u4ECE\u6DFB\u52A0\u987A\u5E8F\u4E2D\u79FB\u9664\n setAddOrder?.(prev => prev.filter(t => t !== 'gift'))\n } else {\n setCheckedGift?.(value)\n setJoinedRecommendBuyProducts?.({\n ...joinedRecommendBuyProducts,\n gift: {\n value,\n canOperate: false,\n },\n })\n // \u6DFB\u52A0\u5230\u987A\u5E8F\u6570\u7EC4\u7684\u672B\u5C3E\n setAddOrder?.(prev => {\n // \u5982\u679C\u5DF2\u7ECF\u5B58\u5728\uFF0C\u5148\u79FB\u9664\u518D\u6DFB\u52A0\u5230\u672B\u5C3E\n const filtered = prev.filter(t => t !== 'gift')\n return [...filtered, 'gift']\n })\n }\n }\n\n useEffect(() => {\n // \u5982\u679C\u7B2C\u4E00\u4E2A\u793C\u7269\u53EF\u7528\uFF0C\u5219\u9009\u4E2D\u5B83\n availableGifts?.[0] && handleCheckboxClick(availableGifts?.[0])\n }, [availableGifts])\n\n if (!availableGifts?.length) return null\n\n return (\n <div className=\"ipc-product-detail-free-gift\">\n <Text size={3} className=\"font-bold leading-[1.2]\" html={title} />\n <div className=\"laptop:grid-cols-2 desktop:grid-cols-1 lg-desktop:mt-4 mt-3 grid grid-cols-1 gap-3\">\n {availableGifts.map(gift => (\n <div\n key={gift.id}\n className={cn('rounded-box flex items-center gap-2 border-2 border-[#E4E5E6] px-4 text-left font-bold', {\n ['border-brand']: checkedGift?.id === gift.id,\n })}\n >\n <Checkbox\n onCheckedChange={() => handleCheckboxClick(gift)}\n size=\"lg\"\n className={cn('rounded-full border-2 border-[#E4E5E6]', {\n 'border-brand': checkedGift?.id === gift.id,\n })}\n id={gift.id}\n checked={checkedGift?.id === gift.id}\n value={gift.id}\n ></Checkbox>\n <label htmlFor={gift.id} className=\"flex w-full cursor-pointer items-center justify-between gap-4 py-6\">\n <div className=\"flex items-center gap-2\">\n <Picture source={gift.image?.url} className=\"size-12 shrink-0\" />\n <Text\n className=\"laptop:text-[16px] lg-desktop:text-[18px] line-clamp-2 text-sm font-bold\"\n html={gift.product.title}\n />\n </div>\n <div className=\"tablet:flex-row flex shrink-0 flex-col items-center gap-1\">\n <Text className=\"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold\" html={freeLabel} />\n <Text\n className=\"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold text-[#6D6D6F] line-through\"\n html={formatPrice({\n amount: gift.price.amount,\n locale,\n currencyCode: gift.price.currencyCode,\n })}\n />\n </div>\n </label>\n </div>\n ))}\n </div>\n </div>\n )\n}\n\nexport default withLayout(ProductFreeGift)\n"],
5
- "mappings": "AAiEM,cAAAA,EAoBQ,QAAAC,MApBR,oBAjEN,OAAS,QAAAC,EAAM,WAAAC,EAAS,YAAAC,MAAgB,wCACxC,OAAS,MAAAC,MAAU,qCACnB,OAAS,aAAAC,EAAW,WAAAC,MAAe,QACnC,OAAS,wBAAAC,MAA4B,oCACrC,OAAS,eAAAC,MAAmB,6BAC5B,OAAS,kBAAAC,MAAsB,uCAE/B,OAAS,cAAAC,MAAkB,qCAE3B,MAAMC,EAAkB,IAAM,CAC5B,KAAM,CAAE,OAAAC,EAAS,IAAK,EAAIH,EAAe,EACnC,CACJ,SAAAI,EACA,YAAAC,EACA,eAAAC,EACA,iBAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,8BAAAC,EACA,2BAAAC,EACA,YAAAC,CACF,EAAId,EAAqB,EACnB,CAAE,MAAAe,EAAO,SAAAC,EAAW,CAAC,EAAG,UAAAC,CAAU,EAAIX,GAAY,CAAC,EACnDY,EAAiBnB,EAAQ,IAAMiB,GAAU,OAAOG,GAAQA,EAAK,gBAAgB,EAAG,CAACH,CAAQ,CAAC,EAE1FI,EAAuBC,GAA0B,CACjDd,GAAa,KAAOc,EAAM,IAC5Bb,IAAiB,MAAS,EAC1BE,IAAkB,CAAE,GAAGC,EAAc,SAAU,CAAE,CAAC,EAClDC,IAAgC,CAC9B,GAAGC,EACH,KAAM,CACJ,MAAO,OACP,WAAY,EACd,CACF,CAAC,EAEDC,IAAcQ,GAAQA,EAAK,OAAOC,GAAKA,IAAM,MAAM,CAAC,IAEpDf,IAAiBa,CAAK,EACtBT,IAAgC,CAC9B,GAAGC,EACH,KAAM,CACJ,MAAAQ,EACA,WAAY,EACd,CACF,CAAC,EAEDP,IAAcQ,GAGL,CAAC,GADSA,EAAK,OAAOC,GAAKA,IAAM,MAAM,EACzB,MAAM,CAC5B,EAEL,EAOA,OALAzB,EAAU,IAAM,CAEdoB,IAAiB,CAAC,GAAKE,EAAoBF,IAAiB,CAAC,CAAC,CAChE,EAAG,CAACA,CAAc,CAAC,EAEdA,GAAgB,OAGnBzB,EAAC,OAAI,UAAU,+BACb,UAAAD,EAACE,EAAA,CAAK,KAAM,EAAG,UAAU,0BAA0B,KAAMqB,EAAO,EAChEvB,EAAC,OAAI,UAAU,qFACZ,SAAA0B,EAAe,IAAIM,GAClB/B,EAAC,OAEC,UAAWI,EAAG,yFAA0F,CACrG,eAAiBU,GAAa,KAAOiB,EAAK,EAC7C,CAAC,EAED,UAAAhC,EAACI,EAAA,CACC,gBAAiB,IAAMwB,EAAoBI,CAAI,EAC/C,KAAK,KACL,UAAW3B,EAAG,yCAA0C,CACtD,eAAgBU,GAAa,KAAOiB,EAAK,EAC3C,CAAC,EACD,GAAIA,EAAK,GACT,QAASjB,GAAa,KAAOiB,EAAK,GAClC,MAAOA,EAAK,GACb,EACD/B,EAAC,SAAM,QAAS+B,EAAK,GAAI,UAAU,qEACjC,UAAA/B,EAAC,OAAI,UAAU,0BACb,UAAAD,EAACG,EAAA,CAAQ,OAAQ6B,EAAK,OAAO,IAAK,UAAU,mBAAmB,EAC/DhC,EAACE,EAAA,CACC,UAAU,2EACV,KAAM8B,EAAK,QAAQ,MACrB,GACF,EACA/B,EAAC,OAAI,UAAU,4DACb,UAAAD,EAACE,EAAA,CAAK,UAAU,6DAA6D,KAAMuB,EAAW,EAC9FzB,EAACE,EAAA,CACC,UAAU,yFACV,KAAMO,EAAY,CAChB,OAAQuB,EAAK,MAAM,OACnB,OAAAnB,EACA,aAAcmB,EAAK,MAAM,YAC3B,CAAC,EACH,GACF,GACF,IAlCKA,EAAK,EAmCZ,CACD,EACH,GACF,EA9CkC,IAgDtC,EAEA,IAAOC,EAAQtB,EAAWC,CAAe",
6
- "names": ["jsx", "jsxs", "Text", "Picture", "Checkbox", "cn", "useEffect", "useMemo", "useBizProductContext", "formatPrice", "useAiuiContext", "withLayout", "ProductFreeGift", "locale", "freeGift", "checkedGift", "setCheckedGift", "setCheckedBundle", "setSavingDetail", "savingDetail", "setJoinedRecommendBuyProducts", "joinedRecommendBuyProducts", "setAddOrder", "title", "giftList", "freeLabel", "availableGifts", "item", "handleCheckboxClick", "value", "prev", "t", "gift", "ProductFreeGift_default"]
4
+ "sourcesContent": ["import { Text, Picture, Checkbox } from '../../../../../../components/index.js'\nimport { cn } from '../../../../../../helpers/index.js'\nimport { useEffect, useMemo } from 'react'\nimport { useBizProductContext } from '../../../../BizProductProvider.js'\nimport { formatPrice } from '../../../../utils/index.js'\nimport { useAiuiContext } from '../../../../../AiuiProvider/index.js'\nimport type { ProductVariant } from '../../../../types/product'\nimport { withLayout } from '../../../../../../shared/Styles.js'\n\nconst ProductFreeGift = () => {\n const { locale = 'us' } = useAiuiContext()\n const {\n freeGift,\n checkedGift,\n setCheckedGift,\n setCheckedBundle,\n setSavingDetail,\n savingDetail,\n setJoinedRecommendBuyProducts,\n joinedRecommendBuyProducts,\n setAddOrder,\n } = useBizProductContext()\n const { title, giftList = [], freeLabel } = freeGift || {}\n const availableGifts = useMemo(() => giftList?.filter(item => item.availableForSale), [giftList])\n\n const handleCheckboxClick = (value: ProductVariant) => {\n if (checkedGift?.id === value.id) {\n setCheckedGift?.(undefined)\n setSavingDetail?.({ ...savingDetail, freeGift: 0 })\n setJoinedRecommendBuyProducts?.({\n ...joinedRecommendBuyProducts,\n gift: {\n value: undefined,\n canOperate: true,\n },\n })\n // \u4ECE\u6DFB\u52A0\u987A\u5E8F\u4E2D\u79FB\u9664\n setAddOrder?.(prev => prev.filter(t => t !== 'gift'))\n } else {\n setCheckedGift?.(value)\n setJoinedRecommendBuyProducts?.({\n ...joinedRecommendBuyProducts,\n gift: {\n value,\n canOperate: false,\n },\n })\n // \u6DFB\u52A0\u5230\u987A\u5E8F\u6570\u7EC4\u7684\u672B\u5C3E\n setAddOrder?.(prev => {\n // \u5982\u679C\u5DF2\u7ECF\u5B58\u5728\uFF0C\u5148\u79FB\u9664\u518D\u6DFB\u52A0\u5230\u672B\u5C3E\n const filtered = prev.filter(t => t !== 'gift')\n return [...filtered, 'gift']\n })\n }\n }\n\n // useEffect(() => {\n // // \u5982\u679C\u7B2C\u4E00\u4E2A\u793C\u7269\u53EF\u7528\uFF0C\u5219\u9009\u4E2D\u5B83\n // availableGifts?.[0] && handleCheckboxClick(availableGifts?.[0])\n // }, [availableGifts])\n\n if (!availableGifts?.length) return null\n\n return (\n <div className=\"ipc-product-detail-free-gift\">\n <Text size={3} className=\"font-bold leading-[1.2]\" html={title} />\n <div className=\"laptop:grid-cols-2 desktop:grid-cols-1 lg-desktop:mt-4 mt-3 grid grid-cols-1 gap-3\">\n {availableGifts.map(gift => (\n <div\n key={gift.id}\n className={cn('rounded-box flex items-center gap-2 border-2 border-[#E4E5E6] px-4 text-left font-bold', {\n ['border-brand']: checkedGift?.id === gift.id,\n })}\n >\n <Checkbox\n onCheckedChange={() => handleCheckboxClick(gift)}\n size=\"lg\"\n className={cn('rounded-full border-2 border-[#E4E5E6]', {\n 'border-brand': checkedGift?.id === gift.id,\n })}\n id={gift.id}\n checked={checkedGift?.id === gift.id}\n value={gift.id}\n ></Checkbox>\n <label htmlFor={gift.id} className=\"flex w-full cursor-pointer items-center justify-between gap-4 py-6\">\n <div className=\"flex items-center gap-2\">\n <Picture source={gift.image?.url} className=\"size-12 shrink-0\" />\n <Text\n className=\"laptop:text-[16px] lg-desktop:text-[18px] line-clamp-2 text-sm font-bold\"\n html={gift.product.title}\n />\n </div>\n <div className=\"tablet:flex-row flex shrink-0 flex-col items-center gap-1\">\n <Text className=\"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold\" html={freeLabel} />\n <Text\n className=\"laptop:text-[20px] lg-desktop:text-2xl text-base font-bold text-[#6D6D6F] line-through\"\n html={formatPrice({\n amount: gift.price.amount,\n locale,\n currencyCode: gift.price.currencyCode,\n })}\n />\n </div>\n </label>\n </div>\n ))}\n </div>\n </div>\n )\n}\n\nexport default withLayout(ProductFreeGift)\n"],
5
+ "mappings": "AAiEM,cAAAA,EAoBQ,QAAAC,MApBR,oBAjEN,OAAS,QAAAC,EAAM,WAAAC,EAAS,YAAAC,MAAgB,wCACxC,OAAS,MAAAC,MAAU,qCACnB,OAAoB,WAAAC,MAAe,QACnC,OAAS,wBAAAC,MAA4B,oCACrC,OAAS,eAAAC,MAAmB,6BAC5B,OAAS,kBAAAC,MAAsB,uCAE/B,OAAS,cAAAC,MAAkB,qCAE3B,MAAMC,EAAkB,IAAM,CAC5B,KAAM,CAAE,OAAAC,EAAS,IAAK,EAAIH,EAAe,EACnC,CACJ,SAAAI,EACA,YAAAC,EACA,eAAAC,EACA,iBAAAC,EACA,gBAAAC,EACA,aAAAC,EACA,8BAAAC,EACA,2BAAAC,EACA,YAAAC,CACF,EAAId,EAAqB,EACnB,CAAE,MAAAe,EAAO,SAAAC,EAAW,CAAC,EAAG,UAAAC,CAAU,EAAIX,GAAY,CAAC,EACnDY,EAAiBnB,EAAQ,IAAMiB,GAAU,OAAOG,GAAQA,EAAK,gBAAgB,EAAG,CAACH,CAAQ,CAAC,EAE1FI,EAAuBC,GAA0B,CACjDd,GAAa,KAAOc,EAAM,IAC5Bb,IAAiB,MAAS,EAC1BE,IAAkB,CAAE,GAAGC,EAAc,SAAU,CAAE,CAAC,EAClDC,IAAgC,CAC9B,GAAGC,EACH,KAAM,CACJ,MAAO,OACP,WAAY,EACd,CACF,CAAC,EAEDC,IAAcQ,GAAQA,EAAK,OAAOC,GAAKA,IAAM,MAAM,CAAC,IAEpDf,IAAiBa,CAAK,EACtBT,IAAgC,CAC9B,GAAGC,EACH,KAAM,CACJ,MAAAQ,EACA,WAAY,EACd,CACF,CAAC,EAEDP,IAAcQ,GAGL,CAAC,GADSA,EAAK,OAAOC,GAAKA,IAAM,MAAM,EACzB,MAAM,CAC5B,EAEL,EAOA,OAAKL,GAAgB,OAGnBxB,EAAC,OAAI,UAAU,+BACb,UAAAD,EAACE,EAAA,CAAK,KAAM,EAAG,UAAU,0BAA0B,KAAMoB,EAAO,EAChEtB,EAAC,OAAI,UAAU,qFACZ,SAAAyB,EAAe,IAAIM,GAClB9B,EAAC,OAEC,UAAWI,EAAG,yFAA0F,CACrG,eAAiBS,GAAa,KAAOiB,EAAK,EAC7C,CAAC,EAED,UAAA/B,EAACI,EAAA,CACC,gBAAiB,IAAMuB,EAAoBI,CAAI,EAC/C,KAAK,KACL,UAAW1B,EAAG,yCAA0C,CACtD,eAAgBS,GAAa,KAAOiB,EAAK,EAC3C,CAAC,EACD,GAAIA,EAAK,GACT,QAASjB,GAAa,KAAOiB,EAAK,GAClC,MAAOA,EAAK,GACb,EACD9B,EAAC,SAAM,QAAS8B,EAAK,GAAI,UAAU,qEACjC,UAAA9B,EAAC,OAAI,UAAU,0BACb,UAAAD,EAACG,EAAA,CAAQ,OAAQ4B,EAAK,OAAO,IAAK,UAAU,mBAAmB,EAC/D/B,EAACE,EAAA,CACC,UAAU,2EACV,KAAM6B,EAAK,QAAQ,MACrB,GACF,EACA9B,EAAC,OAAI,UAAU,4DACb,UAAAD,EAACE,EAAA,CAAK,UAAU,6DAA6D,KAAMsB,EAAW,EAC9FxB,EAACE,EAAA,CACC,UAAU,yFACV,KAAMM,EAAY,CAChB,OAAQuB,EAAK,MAAM,OACnB,OAAAnB,EACA,aAAcmB,EAAK,MAAM,YAC3B,CAAC,EACH,GACF,GACF,IAlCKA,EAAK,EAmCZ,CACD,EACH,GACF,EA9CkC,IAgDtC,EAEA,IAAOC,EAAQtB,EAAWC,CAAe",
6
+ "names": ["jsx", "jsxs", "Text", "Picture", "Checkbox", "cn", "useMemo", "useBizProductContext", "formatPrice", "useAiuiContext", "withLayout", "ProductFreeGift", "locale", "freeGift", "checkedGift", "setCheckedGift", "setCheckedBundle", "setSavingDetail", "savingDetail", "setJoinedRecommendBuyProducts", "joinedRecommendBuyProducts", "setAddOrder", "title", "giftList", "freeLabel", "availableGifts", "item", "handleCheckboxClick", "value", "prev", "t", "gift", "ProductFreeGift_default"]
7
7
  }
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../../shared/Styles.js").StylesProps & import("../../../../../../shared/Styles.js").ContainerProps> & {
2
- className?: string;
3
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
4
5
  } & import("react").RefAttributes<any>>;
5
6
  export default _default;
@@ -1,5 +1,6 @@
1
+ /// <reference types="react" />
1
2
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../../shared/Styles.js").StylesProps & import("../../../../../../shared/Styles.js").ContainerProps> & {
2
- className?: string;
3
- data?: Record<string, any>;
3
+ className?: string | undefined;
4
+ data?: Record<string, any> | undefined;
4
5
  } & import("react").RefAttributes<any>>;
5
6
  export default _default;
@@ -1,2 +1,2 @@
1
- import{jsx as e,jsxs as r}from"react/jsx-runtime";import{useEffect as v,useState as N}from"react";import{Dialog as y,DialogTrigger as D,DialogContent as C,DialogHeader as h,DialogTitle as E,Grid as c,GridItem as o,Text as G}from"../../../../../../components/index.js";import{useBizProductContext as w}from"../../../../BizProductProvider.js";import I from"./Select.js";import{useAiuiContext as k}from"../../../../../AiuiProvider/index.js";import{formatPrice as f}from"../../../../utils/index.js";import{ShopifyColorOption as z}from"./ShopifyColorOption.js";const P=()=>{const{locale:u="us",copyWriting:n}=k(),{compareData:l,product:g}=w(),[m,x]=N();v(()=>{x(l?.availableCompareList[0]?.handle)},[l?.availableCompareList]);const d=[l?.currentProductCompareData?.product,l?.availableCompareList.find(a=>a.handle===m)?.product].filter(Boolean);return l?.specificationKeys?r(y,{children:[e(D,{className:"text-base font-bold leading-[1.4]",children:n?.compare}),r(C,{overlayClassName:"z-[100]",className:"rounded-box [&_.dialog-close-icon]:laptop:size-6 laptop:p-0 laptop:w-[896px] z-[110] max-h-[80vh] max-w-[90vw] gap-0 overflow-hidden !py-0 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:size-4 [&_.dialog-close-icon]:text-[#6D6D6F]",children:[e(h,{className:"laptop:pt-4 laptop:pb-3 laptop:px-8 px-4 pb-2 pt-4",children:e(E,{className:"laptop:text-[24px] text-left text-[20px] font-bold",children:n?.compare})}),r("div",{className:"laptop:px-8 h-[calc(80vh-64px)] overflow-y-auto px-4",children:[r(c,{className:"laptop:py-3 grid-cols-3 items-center gap-[40px] py-4",children:[e(o,{span:1,children:e("div",{className:"text-[16px] font-bold text-[#595959]",children:n?.product||"Product"})}),e(o,{span:1,children:e(G,{as:"div",className:"rounded-btn flex h-[48px] w-full items-center border border-[#E8E8E8] px-4 text-[16px] font-bold",html:l.currentProductCompareData?.shortName||g.title})}),m&&e(o,{span:1,children:e(I,{className:"rounded-btn h-[48px] px-4",value:m,onChange:a=>{x(a)},list:l.options})})]}),r(c,{className:"laptop:gap-8 laptop:py-3 grid-cols-3 py-4",children:[e(o,{span:1}),d.map((a,p)=>e(o,{span:1,className:"flex items-center",children:e("img",{src:a.images[0].url,alt:a.title,className:"size-[100px]",role:"presentation"})},p))]}),r(c,{className:"laptop:py-3 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e(o,{span:1}),d.map((a,p)=>{const t=a.variants[0];return e(o,{span:1,className:"flex h-full",children:e("div",{className:"flex flex-col gap-[8px]",children:t.price.amount<9999999&&e("div",{className:"flex items-center gap-[8px]",children:r("div",{className:"flex items-center gap-[6px]",children:[e("span",{className:"text-[18px] font-bold",children:f({locale:u,amount:t?.coupons?.[0]?.variant_price4wscode||t.price.amount,currencyCode:t.price.currencyCode})}),Number(t?.coupons?.[0]?.variant_price4wscode)>0&&e("span",{className:"text-[18px] font-bold text-[#6D6D6F] line-through",children:f({locale:u,amount:t.price.amount,currencyCode:t.price.currencyCode})})]})})})},p)})]}),r(c,{className:"laptop:py-3 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e(o,{span:1,children:e("div",{className:"text-[16px] font-bold text-[#6D6D6F]",children:n?.color||"Color"})}),d.map((a,p)=>{const t=a.options?.find(s=>["color","colour","couleur"].find(i=>s.name.toLowerCase().includes(i)))?.values.map(s=>s.label);return e(o,{span:1,className:"flex h-full",children:t?.length&&e("div",{className:"flex items-center gap-4",children:t.map(s=>e(z,{label:s,className:"size-6"},s))})},p)})]}),e(c,{className:"laptop:gap-0 grid-cols-12 items-center gap-0 border-b border-[#E8E8E8]",children:l.specificationKeys?.map(a=>r(o,{span:12,className:"laptop:py-3 laptop:gap-4 grid grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e("div",{className:"text-[16px] font-bold text-[#6D6D6F]",children:a}),d.map((p,t)=>{let i=p.metafields?.global?.specifications?.find(b=>b?.key===a)?.value||"";switch(i.trim().toLowerCase()){case"true":i="\u2714\uFE0F";break;case"false":i="\u274C";break;default:break}return e("div",{className:"flex items-center",children:e("div",{className:"text-[16px] font-bold text-[#1D1D1F]",children:i})},t)})]},a))})]})]})]}):null};var A=P;export{A as default};
1
+ import{jsx as e,jsxs as r}from"react/jsx-runtime";import{useEffect as v,useState as N}from"react";import{Dialog as y,DialogTrigger as D,DialogContent as C,DialogHeader as h,DialogTitle as E,Grid as c,GridItem as o,Text as G}from"../../../../../../components/index.js";import{useBizProductContext as w}from"../../../../BizProductProvider.js";import I from"./Select.js";import{useAiuiContext as k}from"../../../../../AiuiProvider/index.js";import{formatPrice as f}from"../../../../utils/index.js";import{ShopifyColorOption as z}from"./ShopifyColorOption.js";const P=()=>{const{locale:u="us",copyWriting:n}=k(),{compareData:l,product:g}=w(),[m,x]=N();v(()=>{x(l?.availableCompareList[0]?.handle)},[l?.availableCompareList]);const d=[l?.currentProductCompareData?.product,l?.availableCompareList.find(a=>a.handle===m)?.product].filter(Boolean);return l?.specificationKeys?r(y,{children:[e(D,{className:"text-base font-bold leading-[1.4]",children:n?.compare}),r(C,{overlayClassName:"z-[100]",className:"rounded-box [&_.dialog-close-icon]:laptop:size-6 laptop:p-0 laptop:w-[896px] z-[110] max-h-[80vh] max-w-[90vw] gap-0 overflow-hidden !py-0 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:size-4 [&_.dialog-close-icon]:text-[#6D6D6F]",children:[e(h,{className:"laptop:pt-4 laptop:pb-3 laptop:px-8 px-4 pb-2 pt-4",children:e(E,{className:"laptop:text-[24px] text-left text-[20px] font-bold",children:n?.compare})}),r("div",{className:"laptop:px-8 h-[calc(80vh-64px)] overflow-y-auto px-4",children:[r(c,{className:"laptop:py-3 grid-cols-3 items-center gap-[40px] py-4",children:[e(o,{span:1,children:e("div",{className:"text-[16px] font-bold text-[#595959]",children:n?.product||"Product"})}),e(o,{span:1,children:e(G,{as:"div",className:"rounded-btn flex h-[48px] w-full items-center border border-[#E8E8E8] px-4 text-[16px] font-bold",html:l.currentProductCompareData?.shortName||g.title})}),m&&e(o,{span:1,children:e(I,{className:"rounded-btn h-[48px] px-4",value:m,onChange:a=>{x(a)},list:l.options})})]}),r(c,{className:"laptop:gap-8 laptop:py-3 grid-cols-3 py-4",children:[e(o,{span:1}),d.map((a,p)=>e(o,{span:1,className:"flex items-center",children:e("img",{src:a.images[0].url,alt:a.title,className:"size-[100px]",role:"presentation"})},p))]}),r(c,{className:"laptop:py-6 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e(o,{span:1}),d.map((a,p)=>{const t=a.variants[0];return e(o,{span:1,className:"flex h-full",children:e("div",{className:"flex flex-col gap-[8px]",children:t.price.amount<9999999&&e("div",{className:"flex items-center gap-[8px]",children:r("div",{className:"flex items-center gap-[6px]",children:[e("span",{className:"text-[18px] font-bold",children:f({locale:u,amount:t?.coupons?.[0]?.variant_price4wscode||t.price.amount,currencyCode:t.price.currencyCode})}),Number(t?.coupons?.[0]?.variant_price4wscode)>0&&e("span",{className:"text-[18px] font-bold text-[#6D6D6F] line-through",children:f({locale:u,amount:t.price.amount,currencyCode:t.price.currencyCode})})]})})})},p)})]}),r(c,{className:"laptop:py-6 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e(o,{span:1,children:e("div",{className:"text-[16px] font-bold text-[#6D6D6F]",children:n?.color||"Color"})}),d.map((a,p)=>{const t=a.options?.find(s=>["color","colour","couleur"].find(i=>s.name.toLowerCase().includes(i)))?.values.map(s=>s.label);return e(o,{span:1,className:"flex h-full",children:t?.length&&e("div",{className:"flex items-center gap-4",children:t.map(s=>e(z,{label:s,className:"size-6"},s))})},p)})]}),e(c,{className:"laptop:gap-0 grid-cols-12 items-center gap-0 border-b border-[#E8E8E8]",children:l.specificationKeys?.map(a=>r(o,{span:12,className:"laptop:py-6 laptop:gap-4 grid grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4",children:[e("div",{className:"text-[16px] font-bold text-[#6D6D6F]",children:a}),d.map((p,t)=>{let i=p.metafields?.global?.specifications?.find(b=>b?.key===a)?.value||"";switch(i.trim().toLowerCase()){case"true":i="\u2714\uFE0F";break;case"false":i="\u274C";break;default:break}return e("div",{className:"flex items-center",children:e("div",{className:"text-[16px] font-bold text-[#1D1D1F]",children:i})},t)})]},a))})]})]})]}):null};var A=P;export{A as default};
2
2
  //# sourceMappingURL=CompareModal.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../../../../src/biz-components/Listing/components/ProductCard/ProductGallery/components/CompareModal.tsx"],
4
- "sourcesContent": ["import { useEffect, useState } from 'react'\nimport {\n Dialog,\n DialogTrigger,\n DialogContent,\n DialogHeader,\n DialogTitle,\n Grid,\n GridItem,\n Text,\n Button,\n} from '../../../../../../components/index.js'\nimport { useBizProductContext } from '../../../../BizProductProvider.js'\nimport type { CompareItem } from '../../../../types'\nimport Select from './Select.js'\nimport { useAiuiContext } from '../../../../../AiuiProvider/index.js'\nimport { formatPrice } from '../../../../utils/index.js'\nimport { ShopifyColorOption } from './ShopifyColorOption.js'\n\nconst CompareModal = () => {\n const { locale = 'us', copyWriting } = useAiuiContext()\n const { compareData, product } = useBizProductContext()\n const [selectedProductHandle, setSelectedProductHandle] = useState<string>()\n\n useEffect(() => {\n setSelectedProductHandle(compareData?.availableCompareList[0]?.handle)\n }, [compareData?.availableCompareList])\n\n const products = [\n compareData?.currentProductCompareData!?.product,\n compareData?.availableCompareList.find(product => product.handle === selectedProductHandle)?.product,\n ].filter(Boolean) as CompareItem['product'][]\n\n if (!compareData?.specificationKeys) return null\n\n return (\n <Dialog>\n <DialogTrigger className=\"text-base font-bold leading-[1.4]\">{copyWriting?.compare}</DialogTrigger>\n <DialogContent\n overlayClassName=\"z-[100]\"\n className=\"rounded-box [&_.dialog-close-icon]:laptop:size-6 laptop:p-0 laptop:w-[896px] z-[110] max-h-[80vh] max-w-[90vw] gap-0 overflow-hidden !py-0 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:size-4 [&_.dialog-close-icon]:text-[#6D6D6F]\"\n >\n <DialogHeader className=\"laptop:pt-4 laptop:pb-3 laptop:px-8 px-4 pb-2 pt-4\">\n <DialogTitle className=\"laptop:text-[24px] text-left text-[20px] font-bold\">\n {copyWriting?.compare}\n </DialogTitle>\n </DialogHeader>\n <div className=\"laptop:px-8 h-[calc(80vh-64px)] overflow-y-auto px-4\">\n <Grid className=\"laptop:py-3 grid-cols-3 items-center gap-[40px] py-4\">\n <GridItem span={1}>\n <div className=\"text-[16px] font-bold text-[#595959]\">{copyWriting?.product || 'Product'}</div>\n </GridItem>\n <GridItem span={1}>\n <Text\n as=\"div\"\n className=\"rounded-btn flex h-[48px] w-full items-center border border-[#E8E8E8] px-4 text-[16px] font-bold\"\n html={compareData.currentProductCompareData?.shortName || product.title}\n ></Text>\n </GridItem>\n {selectedProductHandle && (\n <GridItem span={1}>\n <Select\n className=\"rounded-btn h-[48px] px-4\"\n value={selectedProductHandle}\n onChange={value => {\n setSelectedProductHandle(value)\n }}\n list={compareData.options!}\n />\n </GridItem>\n )}\n </Grid>\n <Grid className=\"laptop:gap-8 laptop:py-3 grid-cols-3 py-4\">\n <GridItem span={1} />\n {products.map((product, productIndex) => {\n return (\n <GridItem key={productIndex} span={1} className=\"flex items-center\">\n <img src={product.images[0].url} alt={product.title} className=\"size-[100px]\" role=\"presentation\" />\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:py-3 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\">\n <GridItem span={1} />\n {products.map((product, productIndex) => {\n const variant = product.variants[0]\n return (\n <GridItem span={1} key={productIndex} className=\"flex h-full\">\n {/* Price with original price */}\n <div className=\"flex flex-col gap-[8px]\">\n {variant.price.amount < 9999999 && (\n <div className=\"flex items-center gap-[8px]\">\n {/* <div className=\"text-[16px] font-semibold text-[#595959]\">Price:</div> */}\n <div className=\"flex items-center gap-[6px]\">\n <span className=\"text-[18px] font-bold\">\n {formatPrice({\n locale,\n amount: variant?.coupons?.[0]?.variant_price4wscode || variant.price.amount,\n currencyCode: variant.price.currencyCode,\n })}\n </span>\n {Number(variant?.coupons?.[0]?.variant_price4wscode) > 0 && (\n <span className=\"text-[18px] font-bold text-[#6D6D6F] line-through\">\n {formatPrice({\n locale,\n amount: variant.price.amount,\n currencyCode: variant.price.currencyCode,\n })}\n </span>\n )}\n </div>\n </div>\n )}\n {/* <Button variant=\"primary\" size=\"lg\">\n {copyWriting?.shopNow || 'Shop Now'}\n </Button> */}\n </div>\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:py-3 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\">\n <GridItem span={1}>\n <div className=\"text-[16px] font-bold text-[#6D6D6F]\">{copyWriting?.color || 'Color'}</div>\n </GridItem>\n {products.map((product, productIndex) => {\n const colors = product.options\n ?.find(option =>\n ['color', 'colour', 'couleur'].find(predicate => option.name.toLowerCase().includes(predicate))\n )\n ?.values.map(value => value.label)\n return (\n <GridItem span={1} key={productIndex} className=\"flex h-full\">\n {colors?.length && (\n <div className=\"flex items-center gap-4\">\n {colors.map(label => (\n <ShopifyColorOption key={label} label={label} className=\"size-6\" />\n ))}\n </div>\n )}\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:gap-0 grid-cols-12 items-center gap-0 border-b border-[#E8E8E8]\">\n {compareData.specificationKeys?.map((key: string) => {\n return (\n <GridItem\n span={12}\n className=\"laptop:py-3 laptop:gap-4 grid grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\"\n key={key}\n >\n {/* Detail value */}\n <div className=\"text-[16px] font-bold text-[#6D6D6F]\">{key}</div>\n {/* Product Values */}\n {products.map((product, productIndex) => {\n const value =\n product.metafields?.global?.specifications?.find(\n (specification: { key: string }) => specification?.key === key\n )?.value || ''\n let text = value\n switch (text.trim().toLowerCase()) {\n case 'true':\n text = '\u2714\uFE0F'\n break\n case 'false':\n text = '\u274C'\n break\n default:\n break\n }\n return (\n <div key={productIndex} className=\"flex items-center\">\n {/* Other details */}\n <div className=\"text-[16px] font-bold text-[#1D1D1F]\">{text}</div>\n </div>\n )\n })}\n </GridItem>\n )\n })}\n </Grid>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n\nexport default CompareModal\n"],
4
+ "sourcesContent": ["import { useEffect, useState } from 'react'\nimport {\n Dialog,\n DialogTrigger,\n DialogContent,\n DialogHeader,\n DialogTitle,\n Grid,\n GridItem,\n Text,\n Button,\n} from '../../../../../../components/index.js'\nimport { useBizProductContext } from '../../../../BizProductProvider.js'\nimport type { CompareItem } from '../../../../types'\nimport Select from './Select.js'\nimport { useAiuiContext } from '../../../../../AiuiProvider/index.js'\nimport { formatPrice } from '../../../../utils/index.js'\nimport { ShopifyColorOption } from './ShopifyColorOption.js'\n\nconst CompareModal = () => {\n const { locale = 'us', copyWriting } = useAiuiContext()\n const { compareData, product } = useBizProductContext()\n const [selectedProductHandle, setSelectedProductHandle] = useState<string>()\n\n useEffect(() => {\n setSelectedProductHandle(compareData?.availableCompareList[0]?.handle)\n }, [compareData?.availableCompareList])\n\n const products = [\n compareData?.currentProductCompareData!?.product,\n compareData?.availableCompareList.find(product => product.handle === selectedProductHandle)?.product,\n ].filter(Boolean) as CompareItem['product'][]\n\n if (!compareData?.specificationKeys) return null\n\n return (\n <Dialog>\n <DialogTrigger className=\"text-base font-bold leading-[1.4]\">{copyWriting?.compare}</DialogTrigger>\n <DialogContent\n overlayClassName=\"z-[100]\"\n className=\"rounded-box [&_.dialog-close-icon]:laptop:size-6 laptop:p-0 laptop:w-[896px] z-[110] max-h-[80vh] max-w-[90vw] gap-0 overflow-hidden !py-0 [&_.dialog-close-button]:focus:!ring-0 [&_.dialog-close-icon]:size-4 [&_.dialog-close-icon]:text-[#6D6D6F]\"\n >\n <DialogHeader className=\"laptop:pt-4 laptop:pb-3 laptop:px-8 px-4 pb-2 pt-4\">\n <DialogTitle className=\"laptop:text-[24px] text-left text-[20px] font-bold\">\n {copyWriting?.compare}\n </DialogTitle>\n </DialogHeader>\n <div className=\"laptop:px-8 h-[calc(80vh-64px)] overflow-y-auto px-4\">\n <Grid className=\"laptop:py-3 grid-cols-3 items-center gap-[40px] py-4\">\n <GridItem span={1}>\n <div className=\"text-[16px] font-bold text-[#595959]\">{copyWriting?.product || 'Product'}</div>\n </GridItem>\n <GridItem span={1}>\n <Text\n as=\"div\"\n className=\"rounded-btn flex h-[48px] w-full items-center border border-[#E8E8E8] px-4 text-[16px] font-bold\"\n html={compareData.currentProductCompareData?.shortName || product.title}\n ></Text>\n </GridItem>\n {selectedProductHandle && (\n <GridItem span={1}>\n <Select\n className=\"rounded-btn h-[48px] px-4\"\n value={selectedProductHandle}\n onChange={value => {\n setSelectedProductHandle(value)\n }}\n list={compareData.options!}\n />\n </GridItem>\n )}\n </Grid>\n <Grid className=\"laptop:gap-8 laptop:py-3 grid-cols-3 py-4\">\n <GridItem span={1} />\n {products.map((product, productIndex) => {\n return (\n <GridItem key={productIndex} span={1} className=\"flex items-center\">\n <img src={product.images[0].url} alt={product.title} className=\"size-[100px]\" role=\"presentation\" />\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:py-6 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\">\n <GridItem span={1} />\n {products.map((product, productIndex) => {\n const variant = product.variants[0]\n return (\n <GridItem span={1} key={productIndex} className=\"flex h-full\">\n {/* Price with original price */}\n <div className=\"flex flex-col gap-[8px]\">\n {variant.price.amount < 9999999 && (\n <div className=\"flex items-center gap-[8px]\">\n {/* <div className=\"text-[16px] font-semibold text-[#595959]\">Price:</div> */}\n <div className=\"flex items-center gap-[6px]\">\n <span className=\"text-[18px] font-bold\">\n {formatPrice({\n locale,\n amount: variant?.coupons?.[0]?.variant_price4wscode || variant.price.amount,\n currencyCode: variant.price.currencyCode,\n })}\n </span>\n {Number(variant?.coupons?.[0]?.variant_price4wscode) > 0 && (\n <span className=\"text-[18px] font-bold text-[#6D6D6F] line-through\">\n {formatPrice({\n locale,\n amount: variant.price.amount,\n currencyCode: variant.price.currencyCode,\n })}\n </span>\n )}\n </div>\n </div>\n )}\n {/* <Button variant=\"primary\" size=\"lg\">\n {copyWriting?.shopNow || 'Shop Now'}\n </Button> */}\n </div>\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:py-6 grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\">\n <GridItem span={1}>\n <div className=\"text-[16px] font-bold text-[#6D6D6F]\">{copyWriting?.color || 'Color'}</div>\n </GridItem>\n {products.map((product, productIndex) => {\n const colors = product.options\n ?.find(option =>\n ['color', 'colour', 'couleur'].find(predicate => option.name.toLowerCase().includes(predicate))\n )\n ?.values.map(value => value.label)\n return (\n <GridItem span={1} key={productIndex} className=\"flex h-full\">\n {colors?.length && (\n <div className=\"flex items-center gap-4\">\n {colors.map(label => (\n <ShopifyColorOption key={label} label={label} className=\"size-6\" />\n ))}\n </div>\n )}\n </GridItem>\n )\n })}\n </Grid>\n <Grid className=\"laptop:gap-0 grid-cols-12 items-center gap-0 border-b border-[#E8E8E8]\">\n {compareData.specificationKeys?.map((key: string) => {\n return (\n <GridItem\n span={12}\n className=\"laptop:py-6 laptop:gap-4 grid grid-cols-3 items-center gap-[40px] border-b border-[#E8E8E8] py-4\"\n key={key}\n >\n {/* Detail value */}\n <div className=\"text-[16px] font-bold text-[#6D6D6F]\">{key}</div>\n {/* Product Values */}\n {products.map((product, productIndex) => {\n const value =\n product.metafields?.global?.specifications?.find(\n (specification: { key: string }) => specification?.key === key\n )?.value || ''\n let text = value\n switch (text.trim().toLowerCase()) {\n case 'true':\n text = '\u2714\uFE0F'\n break\n case 'false':\n text = '\u274C'\n break\n default:\n break\n }\n return (\n <div key={productIndex} className=\"flex items-center\">\n {/* Other details */}\n <div className=\"text-[16px] font-bold text-[#1D1D1F]\">{text}</div>\n </div>\n )\n })}\n </GridItem>\n )\n })}\n </Grid>\n </div>\n </DialogContent>\n </Dialog>\n )\n}\n\nexport default CompareModal\n"],
5
5
  "mappings": "AAqCM,cAAAA,EAWI,QAAAC,MAXJ,oBArCN,OAAS,aAAAC,EAAW,YAAAC,MAAgB,QACpC,OACE,UAAAC,EACA,iBAAAC,EACA,iBAAAC,EACA,gBAAAC,EACA,eAAAC,EACA,QAAAC,EACA,YAAAC,EACA,QAAAC,MAEK,wCACP,OAAS,wBAAAC,MAA4B,oCAErC,OAAOC,MAAY,cACnB,OAAS,kBAAAC,MAAsB,uCAC/B,OAAS,eAAAC,MAAmB,6BAC5B,OAAS,sBAAAC,MAA0B,0BAEnC,MAAMC,EAAe,IAAM,CACzB,KAAM,CAAE,OAAAC,EAAS,KAAM,YAAAC,CAAY,EAAIL,EAAe,EAChD,CAAE,YAAAM,EAAa,QAAAC,CAAQ,EAAIT,EAAqB,EAChD,CAACU,EAAuBC,CAAwB,EAAIpB,EAAiB,EAE3ED,EAAU,IAAM,CACdqB,EAAyBH,GAAa,qBAAqB,CAAC,GAAG,MAAM,CACvE,EAAG,CAACA,GAAa,oBAAoB,CAAC,EAEtC,MAAMI,EAAW,CACfJ,GAAa,2BAA4B,QACzCA,GAAa,qBAAqB,KAAKC,GAAWA,EAAQ,SAAWC,CAAqB,GAAG,OAC/F,EAAE,OAAO,OAAO,EAEhB,OAAKF,GAAa,kBAGhBnB,EAACG,EAAA,CACC,UAAAJ,EAACK,EAAA,CAAc,UAAU,oCAAqC,SAAAc,GAAa,QAAQ,EACnFlB,EAACK,EAAA,CACC,iBAAiB,UACjB,UAAU,wPAEV,UAAAN,EAACO,EAAA,CAAa,UAAU,qDACtB,SAAAP,EAACQ,EAAA,CAAY,UAAU,qDACpB,SAAAW,GAAa,QAChB,EACF,EACAlB,EAAC,OAAI,UAAU,uDACb,UAAAA,EAACQ,EAAA,CAAK,UAAU,uDACd,UAAAT,EAACU,EAAA,CAAS,KAAM,EACd,SAAAV,EAAC,OAAI,UAAU,uCAAwC,SAAAmB,GAAa,SAAW,UAAU,EAC3F,EACAnB,EAACU,EAAA,CAAS,KAAM,EACd,SAAAV,EAACW,EAAA,CACC,GAAG,MACH,UAAU,mGACV,KAAMS,EAAY,2BAA2B,WAAaC,EAAQ,MACnE,EACH,EACCC,GACCtB,EAACU,EAAA,CAAS,KAAM,EACd,SAAAV,EAACa,EAAA,CACC,UAAU,4BACV,MAAOS,EACP,SAAUG,GAAS,CACjBF,EAAyBE,CAAK,CAChC,EACA,KAAML,EAAY,QACpB,EACF,GAEJ,EACAnB,EAACQ,EAAA,CAAK,UAAU,4CACd,UAAAT,EAACU,EAAA,CAAS,KAAM,EAAG,EAClBc,EAAS,IAAI,CAACH,EAASK,IAEpB1B,EAACU,EAAA,CAA4B,KAAM,EAAG,UAAU,oBAC9C,SAAAV,EAAC,OAAI,IAAKqB,EAAQ,OAAO,CAAC,EAAE,IAAK,IAAKA,EAAQ,MAAO,UAAU,eAAe,KAAK,eAAe,GADrFK,CAEf,CAEH,GACH,EACAzB,EAACQ,EAAA,CAAK,UAAU,iFACd,UAAAT,EAACU,EAAA,CAAS,KAAM,EAAG,EAClBc,EAAS,IAAI,CAACH,EAASK,IAAiB,CACvC,MAAMC,EAAUN,EAAQ,SAAS,CAAC,EAClC,OACErB,EAACU,EAAA,CAAS,KAAM,EAAsB,UAAU,cAE9C,SAAAV,EAAC,OAAI,UAAU,0BACZ,SAAA2B,EAAQ,MAAM,OAAS,SACtB3B,EAAC,OAAI,UAAU,8BAEb,SAAAC,EAAC,OAAI,UAAU,8BACb,UAAAD,EAAC,QAAK,UAAU,wBACb,SAAAe,EAAY,CACX,OAAAG,EACA,OAAQS,GAAS,UAAU,CAAC,GAAG,sBAAwBA,EAAQ,MAAM,OACrE,aAAcA,EAAQ,MAAM,YAC9B,CAAC,EACH,EACC,OAAOA,GAAS,UAAU,CAAC,GAAG,oBAAoB,EAAI,GACrD3B,EAAC,QAAK,UAAU,oDACb,SAAAe,EAAY,CACX,OAAAG,EACA,OAAQS,EAAQ,MAAM,OACtB,aAAcA,EAAQ,MAAM,YAC9B,CAAC,EACH,GAEJ,EACF,EAKJ,GA7BsBD,CA8BxB,CAEJ,CAAC,GACH,EACAzB,EAACQ,EAAA,CAAK,UAAU,iFACd,UAAAT,EAACU,EAAA,CAAS,KAAM,EACd,SAAAV,EAAC,OAAI,UAAU,uCAAwC,SAAAmB,GAAa,OAAS,QAAQ,EACvF,EACCK,EAAS,IAAI,CAACH,EAASK,IAAiB,CACvC,MAAME,EAASP,EAAQ,SACnB,KAAKQ,GACL,CAAC,QAAS,SAAU,SAAS,EAAE,KAAKC,GAAaD,EAAO,KAAK,YAAY,EAAE,SAASC,CAAS,CAAC,CAChG,GACE,OAAO,IAAIL,GAASA,EAAM,KAAK,EACnC,OACEzB,EAACU,EAAA,CAAS,KAAM,EAAsB,UAAU,cAC7C,SAAAkB,GAAQ,QACP5B,EAAC,OAAI,UAAU,0BACZ,SAAA4B,EAAO,IAAIG,GACV/B,EAACgB,EAAA,CAA+B,MAAOe,EAAO,UAAU,UAA/BA,CAAwC,CAClE,EACH,GANoBL,CAQxB,CAEJ,CAAC,GACH,EACA1B,EAACS,EAAA,CAAK,UAAU,yEACb,SAAAW,EAAY,mBAAmB,IAAKY,GAEjC/B,EAACS,EAAA,CACC,KAAM,GACN,UAAU,mGAIV,UAAAV,EAAC,OAAI,UAAU,uCAAwC,SAAAgC,EAAI,EAE1DR,EAAS,IAAI,CAACH,EAASK,IAAiB,CAKvC,IAAIO,EAHFZ,EAAQ,YAAY,QAAQ,gBAAgB,KACzCa,GAAmCA,GAAe,MAAQF,CAC7D,GAAG,OAAS,GAEd,OAAQC,EAAK,KAAK,EAAE,YAAY,EAAG,CACjC,IAAK,OACHA,EAAO,eACP,MACF,IAAK,QACHA,EAAO,SACP,MACF,QACE,KACJ,CACA,OACEjC,EAAC,OAAuB,UAAU,oBAEhC,SAAAA,EAAC,OAAI,UAAU,uCAAwC,SAAAiC,EAAK,GAFpDP,CAGV,CAEJ,CAAC,IA3BIM,CA4BP,CAEH,EACH,GACF,GACF,GACF,EAvJ0C,IAyJ9C,EAEA,IAAOG,EAAQlB",
6
6
  "names": ["jsx", "jsxs", "useEffect", "useState", "Dialog", "DialogTrigger", "DialogContent", "DialogHeader", "DialogTitle", "Grid", "GridItem", "Text", "useBizProductContext", "Select", "useAiuiContext", "formatPrice", "ShopifyColorOption", "CompareModal", "locale", "copyWriting", "compareData", "product", "selectedProductHandle", "setSelectedProductHandle", "products", "value", "productIndex", "variant", "colors", "option", "predicate", "label", "key", "text", "specification", "CompareModal_default"]
7
7
  }
@@ -1,8 +1,9 @@
1
+ /// <reference types="react" />
1
2
  export interface ProductGalleryTabRef {
2
3
  scrollToTab: (index: number) => void;
3
4
  }
4
5
  declare const _default: import("react").ForwardRefExoticComponent<Omit<object, keyof import("../../../../../shared/Styles.js").StylesProps> & Partial<import("../../../../../shared/Styles.js").StylesProps & import("../../../../../shared/Styles.js").ContainerProps> & {
5
- className?: string;
6
- data?: Record<string, any>;
6
+ className?: string | undefined;
7
+ data?: Record<string, any> | undefined;
7
8
  } & import("react").RefAttributes<any>>;
8
9
  export default _default;
@@ -1,2 +1,2 @@
1
- import{Fragment as he,jsx as e,jsxs as y}from"react/jsx-runtime";import{useAiuiContext as Z}from"../../../../AiuiProvider/index.js";import{Text as ae,Picture as B,Badge as le}from"../../../../../components/index.js";import{useCallback as w,useMemo as $,useState as G,forwardRef as q,useRef as M,useEffect as D,useImperativeHandle as ie}from"react";import{Swiper as F,SwiperSlide as j}from"swiper/react";import{Navigation as H,Mousewheel as J,Thumbs as W,Pagination as Q}from"swiper/modules";import{cn as S}from"../../../../../helpers/index.js";import{GalleryTabType as L}from"./types.js";import{Content as oe,List as re,Root as se,Trigger as ne}from"@radix-ui/react-tabs";import{useBizProductContext as Y}from"../../../BizProductProvider.js";import{useVariantMedia as ce}from"../../../hooks/use-variant-media.js";import{SpecsModal as de}from"./components/SpecsModal.js";import ue from"./components/CompareModal.js";import{formatPrice as pe}from"../../../utils/index.js";import{withLayout as me}from"../../../../../shared/Styles.js";import{gaTrack as be}from"../../../../../shared/track.js";import{ExposureDetector as ge}from"../../../../../components/index.js";const X=t=>y("svg",{width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t,children:[e("rect",{x:"48",y:"48",width:"48",height:"48",rx:"24",transform:"rotate(-180 48 48)",fill:"white"}),e("path",{d:"M25.1035 16.8545C25.5372 16.3818 26.246 16.3818 26.6797 16.8545C27.1067 17.3201 27.1067 18.0706 26.6797 18.5361L21.668 24L26.6797 29.4639C27.1067 29.9294 27.1067 30.6799 26.6797 31.1455C26.246 31.6182 25.5372 31.6182 25.1035 31.1455L19.3203 24.8408C18.8933 24.3752 18.8933 23.6248 19.3203 23.1592L25.1035 16.8545Z",fill:"currentColor"})]}),ee=t=>y("svg",{width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t,children:[e("rect",{width:"48",height:"48",rx:"24",transform:"matrix(1 -8.74228e-08 -8.74228e-08 -1 0 48)",fill:"white"}),e("path",{d:"M22.8965 16.8545C22.4628 16.3818 21.754 16.3818 21.3203 16.8545C20.8933 17.3201 20.8933 18.0706 21.3203 18.5361L26.332 24L21.3203 29.4639C20.8933 29.9294 20.8933 30.6799 21.3203 31.1455C21.754 31.6182 22.4628 31.6182 22.8965 31.1455L28.6797 24.8408C29.1067 24.3752 29.1067 23.6248 28.6797 23.1592L22.8965 16.8545Z",fill:"currentColor"})]}),fe=()=>{const{copyWriting:t}=Z(),{product:r,variant:p,selectedOptions:N}=Y(),m=ce({product:r,variant:p}),[d,h]=G(null),_=M(null),b=p?.metafields?.component?.custom_media_list;let l,f,E,k;b&&b?.available?(l=b?.product||[],f=b?.scenarios||[],E=b?.keyFeatures||[],k=b?.video||[]):(l=m?.productList,f=m?.sceneList,E=m?.keyFeaturesList,k=m?.videoList);const n=$(()=>[...l,...f,...k],[l,f,k]),u={productList:l,sceneList:f,keyFeaturesList:E,videoList:k},a=$(()=>{const o=r?.payload?.components?.find(v=>v.componentKey==="ProductGallery")?.data||[],x=p?.payload?.components?.find(v=>v.componentKey==="ProductGallery")?.data||[];return o?.map(v=>{const V=x?.find(z=>v?.galleries===z?.galleries);let O=u[v?.galleries]||[];if(V?.images&&Array.isArray(V.images)&&V.images.length>0){const z=V.images.map(s=>{const P=[];if(s.image_1920&&s.image_1920.trim()&&P.push(`${s.image_1920} 1920`),s.image_1440&&s.image_1440.trim()&&P.push(`${s.image_1440} 1440`),s.image_1024&&s.image_1024.trim()&&P.push(`${s.image_1024} 1024`),s.image_768&&s.image_768.trim()&&P.push(`${s.image_768} 767`),s.image_390&&s.image_390.trim()&&P.push(`${s.image_390} 390`),P.length>0){const U=P.join(", ");return{image:{url:U,altText:v.comment?.content||""},_fromImages:!0,_responsiveSource:U}}return null}).filter(s=>s!==null);z.length>0&&(O=z)}return{...v,galleries:O}}).filter(v=>v.galleries.length>0)},[p?.payload,u,r?.payload]),[g,i]=G(a?.[0]),[c,C]=G(0),[I,T]=G(null),A=w(()=>{const o=(c+1)%a.length;C(o),i(a[o]),T(0)},[c,a]),R=w(()=>{const o=c===0?a.length-1:c-1;C(o),i(a[o]);const x=a[o]?.galleries||[];T(x.length-1)},[c,a]);D(()=>{c!=null&&requestAnimationFrame(()=>{_.current?.scrollToTab(c)})},[c]),D(()=>{i(a[0]),C(0)},[p?.id]);const te=(o,x)=>{switch(o?.galleryTabType){case L.GALLERY_IMAGE_MAIN:return e(K,{...o,index:x,onNextTab:A,onPrevTab:R,targetSlideIndex:I,onSlideChange:()=>T(null)});case L.GALLERY_IMAGE_FEATURES:return e(K,{...o,index:x,onNextTab:A,onPrevTab:R,targetSlideIndex:I,onSlideChange:()=>T(null)});case L.GALLERY_IMAGE_SCENE:return e(K,{...o,index:x,onNextTab:A,onPrevTab:R,targetSlideIndex:I,onSlideChange:()=>T(null)});case L.GALLERY_VIDEO:return e(ye,{...o,onNextTab:A,onPrevTab:R,targetSlideIndex:I,onSlideChange:()=>T(null)});default:return null}};return e("div",{id:"ipc-product-gallery",children:y(se,{className:"relative",value:g?.tabValue,defaultValue:a?.[0]?.tabValue,children:[e("div",{className:"tablet:h-[620px] desktop:rounded-2xl desktop:h-[560px] lg-desktop:h-[700px] desktop:relative h-[420px] overflow-hidden bg-[#EAEAEC] ",children:a.map((o,x)=>e(oe,{className:"h-full",value:o.tabValue,children:te(o,x)},o.tabValue))}),e(ve,{ref:_,galleryTabs:a,activeGalleryTab:g,setActiveGalleryTab:i,setActiveTabIndex:C,setTargetSlideIndex:T})]})})},ve=q((t,r)=>{const{galleryTabs:p,activeGalleryTab:N,setActiveGalleryTab:m,setActiveTabIndex:d,setTargetSlideIndex:h}=t,{product:_}=Y(),b=M(null),l=M(new Map),f=w(n=>{if(b.current){const u=b.current,a=n.currentTarget,g=a.offsetLeft-u.offsetWidth/2+a.offsetWidth/2;u.scrollTo({left:g,behavior:"smooth"})}},[]),E=w((n,u,a)=>{m(u),d(a),h(0),f(n)},[m,d,h,f]),k=w(n=>{if(b.current&&p[n]){const u=b.current,a=p[n],g=l.current.get(a.tabValue);if(g){const i=g.offsetLeft-u.offsetWidth/2+g.offsetWidth/2;u.scrollTo({left:i,behavior:"smooth"})}}},[p]);return ie(r,()=>({scrollToTab:k})),y("div",{className:"laptop:inset-x-16 tablet:mt-3 desktop:static absolute inset-x-4 bottom-4 z-[2] flex items-center justify-between",children:[e(re,{ref:b,className:"laptop:p-0 desktop:p-1 overflow-x-auto rounded-full bg-[#EAEAEC] p-1",style:{scrollbarWidth:"none",msOverflowStyle:"none"},children:e("div",{className:"whitespace-nowrap",children:p?.map((n,u)=>e(ne,{ref:a=>{a?l.current.set(n.tabValue,a):l.current.delete(n.tabValue)},className:S("lg-desktop:px-7 lg-desktop:pb-[14px] lg-desktop:pt-[15px] lg-desktop:text-[16px] rounded-full px-5 pb-[10px] pt-[11px] text-[14px] font-bold leading-tight",n.tabValue===N?.tabValue&&"bg-white"),onClick:a=>E(a,n,u),value:n.tabValue,children:n.tabLabel},n.tabValue+u))})}),e("div",{className:"laptop:gap-2 laptop:flex hidden",children:_.metafields?.global?.specifications&&y(he,{children:[e(de,{})," | ",e(ue,{})]})})]})}),K=q((t,r)=>{const{locale:p="us",copyWriting:N}=Z(),{variant:m,totalSavings:d}=Y(),h=M(null),[_,b]=G(null),[l,f]=G(null),E=M(null),[k,n]=G(!1),u=$(()=>{if(t?.galleryTabType===L.GALLERY_IMAGE_MAIN)return"size-[240px] mx-auto mt-[42px] tablet:mt-16 tablet:size-[420px] lg-desktop:size-[560px]";t?.galleryTabType===L.GALLERY_IMAGE_FEATURES||(t?.galleryTabType,L.GALLERY_IMAGE_SCENE)},[t?.galleryTabType]),a=w(()=>{l?.isBeginning?t.onPrevTab?.():l?.slidePrev()},[l,t]),g=w(()=>{l?.isEnd?t.onNextTab?.():l?.slideNext()},[l,t]);return D(()=>{l&&t.targetSlideIndex&&(l.slideTo(t.targetSlideIndex,0),t.onSlideChange?.())},[l,t.targetSlideIndex,t]),y("div",{className:"h-full [&_.swiper-button]:hover:opacity-100",children:[e(F,{ref:r,className:"h-full",onSwiper:f,onTouchEnd:(i,c)=>{i.isBeginning&&i.swipeDirection==="prev"?a():i.isEnd&&i.swipeDirection==="next"&&g()},pagination:{clickable:!0,el:h.current},thumbs:{swiper:_},modules:[J,W,H,Q],mousewheel:{forceToAxis:!0},breakpoints:{0:{slidesPerView:1,freeMode:!1}},children:t?.galleries?.map((i,c)=>{const C=`${t.tabValue}-${c}`,I=()=>{be({event:"ga4Event",event_name:"component_impression",event_parameters:{page_group:`Product Detail Page${m.sku}`,component_type:"image",component_name:t?.tabLabel||"",position:c+1,creative_id:"",component_title:"",component_description:"",navigation:""}})},T=i?._responsiveSource||i?.image?.url||"";return e(j,{className:"h-full",children:e(ge,{onExposure:I,exposureKey:C,threshold:.5,duration:2e3,className:"h-full",children:e(B,{source:T,alt:i?.image?.altText,className:S("h-full",u),imgClassName:"object-cover h-full"})})},t?.id+"SwiperSlideItem"+c)})}),m.availableForSale&&!!d&&!t.index&&e(le,{size:"lg",className:"bg-brand laptop:left-16 laptop:top-5 desktop:left-6 desktop:top-6 absolute left-4 top-3 z-[2] text-white",children:`${pe({amount:d,currencyCode:m?.price?.currencyCode,locale:p})} ${N?.off}`}),e("div",{className:S("tablet:opacity-0 tablet:block tablet:absolute tablet:top-1/2 laptop:left-16 tablet:left-6 desktop:left-6 z-10 hidden -translate-y-1/2 cursor-pointer","swiper-button"),onClick:a,children:e(X,{className:S("tablet:size-10 lg-desktop:size-12")})}),e("div",{className:S("tablet:block tablet:opacity-0 tablet:absolute tablet:top-1/2 laptop:right-16 tablet:right-6 desktop:right-6 z-10 hidden -translate-y-1/2 cursor-pointer","swiper-button"),onClick:g,children:e(ee,{className:S("tablet:size-10 lg-desktop:size-12")})}),y("div",{className:"tablet:bottom-[70px] tablet:flex laptop:inset-x-16 desktop:bottom-[20px] desktop:inset-x-6 absolute inset-x-4 bottom-[94px] z-10 items-center justify-between",children:[e("div",{className:"tablet:block hidden",children:e(F,{className:"flex items-center justify-between",onSwiper:b,spaceBetween:12,slidesPerView:6,freeMode:!0,watchSlidesProgress:!0,modules:[H,W],children:t?.galleries?.map((i,c)=>e(j,{className:"[&.swiper-slide-thumb-active]:border-brand !w-auto cursor-pointer border border-transparent [&.swiper-slide-thumb-active]:rounded",children:e(B,{source:i.image?.url,alt:i.image?.altText,className:"lg-desktop:size-12 size-10 overflow-hidden rounded bg-white",imgClassName:"object-cover h-full"})},t?.id+"SwiperSlideThumbItem"+c))})}),!t?.index&&y("div",{className:"flex items-center gap-2",children:[e(B,{source:t?.comment?.avatar?.url,className:"laptop:size-10 size-8 shrink-0 rounded-full",imgClassName:"object-cover "}),e("div",{className:"relative max-w-[528px] overflow-hidden",children:e("div",{ref:E,className:S("line-clamp-2"),style:{},children:e(ae,{html:t?.comment?.content,className:"lg-desktop:text-base text-sm font-bold text-[#1D1D1F]"})})})]})]}),e("div",{ref:h,className:"tablet:hidden absolute inset-x-4 !bottom-[70px] z-10 text-center [&_.swiper-pagination-bullet-active]:!bg-[#1D1D1F] [&_.swiper-pagination-bullet]:bg-white [&_.swiper-pagination-bullet]:opacity-100"})]})}),ye=t=>{const[r,p]=G(null),N=w(()=>{r?.isBeginning?t.onPrevTab?.():r?.slidePrev()},[r,t]),m=w(()=>{r?.isEnd?t.onNextTab?.():r?.slideNext()},[r,t]);return D(()=>{r&&t.targetSlideIndex!==null&&t.targetSlideIndex!==void 0&&(r.slideTo(t.targetSlideIndex,0),t.onSlideChange?.())},[r,t.targetSlideIndex,t]),y("div",{className:"h-full [&_.swiper-button]:hover:opacity-100",children:[e(F,{className:"h-full",onSwiper:p,onTouchEnd:(d,h)=>{d.isBeginning&&d.swipeDirection==="prev"?N():d.isEnd&&d.swipeDirection==="next"&&m()},modules:[J,W,H,Q],mousewheel:{forceToAxis:!0},breakpoints:{0:{slidesPerView:1,freeMode:!1}},children:t?.galleries?.map((d,h)=>e(j,{className:"h-full",children:y("video",{controls:!0,className:"size-full object-cover",children:[e("track",{kind:"captions"}),e("source",{src:d?.sources?.[0]?.url,type:"video/mp4"}),e("source",{src:d?.sources?.[0]?.url,type:"video/webm"}),e("source",{src:d?.sources?.[0]?.url,type:"video/ogg"})]})},t?.id+"SwiperSlideItem"+h))}),e("div",{className:S("swiper-button tablet:block tablet:opacity-0 tablet:absolute tablet:top-1/2 tablet:left-6 z-10 hidden -translate-y-1/2 cursor-pointer"),onClick:N,children:e(X,{className:"tablet:size-10 lg-desktop:size-12"})}),e("div",{className:S("tablet:block swiper-button tablet:opacity-0 tablet:absolute tablet:top-1/2 tablet:right-6 z-10 hidden -translate-y-1/2 cursor-pointer"),onClick:m,children:e(ee,{className:"tablet:size-10 lg-desktop:size-12"})})]})},ze=t=>e("div",{children:"3D View"});var De=me(fe);export{De as default};
1
+ import{Fragment as xe,jsx as e,jsxs as f}from"react/jsx-runtime";import{useAiuiContext as Z}from"../../../../AiuiProvider/index.js";import{Text as q,Picture as F,Badge as ae}from"../../../../../components/index.js";import{useCallback as w,useMemo as j,useState as k,forwardRef as J,useRef as A,useEffect as B,useImperativeHandle as oe}from"react";import{Swiper as $,SwiperSlide as M}from"swiper/react";import{Navigation as H,Mousewheel as Q,Thumbs as W,Pagination as X,Autoplay as ie}from"swiper/modules";import{cn as N}from"../../../../../helpers/index.js";import{GalleryTabType as P}from"./types.js";import{Content as re,List as se,Root as ne,Trigger as ce}from"@radix-ui/react-tabs";import{useBizProductContext as Y}from"../../../BizProductProvider.js";import{useVariantMedia as de}from"../../../hooks/use-variant-media.js";import{SpecsModal as ue}from"./components/SpecsModal.js";import pe from"./components/CompareModal.js";import{formatPrice as me}from"../../../utils/index.js";import{withLayout as be}from"../../../../../shared/Styles.js";import{gaTrack as ge}from"../../../../../shared/track.js";import{ExposureDetector as fe}from"../../../../../components/index.js";const ee=t=>f("svg",{width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t,children:[e("rect",{x:"48",y:"48",width:"48",height:"48",rx:"24",transform:"rotate(-180 48 48)",fill:"white"}),e("path",{d:"M25.1035 16.8545C25.5372 16.3818 26.246 16.3818 26.6797 16.8545C27.1067 17.3201 27.1067 18.0706 26.6797 18.5361L21.668 24L26.6797 29.4639C27.1067 29.9294 27.1067 30.6799 26.6797 31.1455C26.246 31.6182 25.5372 31.6182 25.1035 31.1455L19.3203 24.8408C18.8933 24.3752 18.8933 23.6248 19.3203 23.1592L25.1035 16.8545Z",fill:"currentColor"})]}),te=t=>f("svg",{width:"48",height:"48",viewBox:"0 0 48 48",fill:"none",xmlns:"http://www.w3.org/2000/svg",...t,children:[e("rect",{width:"48",height:"48",rx:"24",transform:"matrix(1 -8.74228e-08 -8.74228e-08 -1 0 48)",fill:"white"}),e("path",{d:"M22.8965 16.8545C22.4628 16.3818 21.754 16.3818 21.3203 16.8545C20.8933 17.3201 20.8933 18.0706 21.3203 18.5361L26.332 24L21.3203 29.4639C20.8933 29.9294 20.8933 30.6799 21.3203 31.1455C21.754 31.6182 22.4628 31.6182 22.8965 31.1455L28.6797 24.8408C29.1067 24.3752 29.1067 23.6248 28.6797 23.1592L22.8965 16.8545Z",fill:"currentColor"})]}),ve=()=>{const{copyWriting:t}=Z(),{product:r,variant:p,selectedOptions:G}=Y(),m=de({product:r,variant:p}),[d,h]=k(null),L=A(null),b=p?.metafields?.component?.custom_media_list;let a,v,_,S;b&&b?.available?(a=b?.product||[],v=b?.scenarios||[],_=b?.keyFeatures||[],S=b?.video||[]):(a=m?.productList,v=m?.sceneList,_=m?.keyFeaturesList,S=m?.videoList);const n=j(()=>[...a,...v,...S],[a,v,S]),u={productList:a,sceneList:v,keyFeaturesList:_,videoList:S},l=j(()=>{const i=r?.payload?.components?.find(y=>y.componentKey==="ProductGallery")?.data||[],T=p?.payload?.components?.find(y=>y.componentKey==="ProductGallery")?.data||[];return i?.map(y=>{const z=T?.find(D=>y?.galleries===D?.galleries);let K=u[y?.galleries]||[];if(z?.images&&Array.isArray(z.images)&&z.images.length>0){const D=z.images.map(s=>{const E=[];if(s.image_1920&&s.image_1920.trim()&&E.push(`${s.image_1920} 1920`),s.image_1440&&s.image_1440.trim()&&E.push(`${s.image_1440} 1440`),s.image_1024&&s.image_1024.trim()&&E.push(`${s.image_1024} 1024`),s.image_768&&s.image_768.trim()&&E.push(`${s.image_768} 767`),s.image_390&&s.image_390.trim()&&E.push(`${s.image_390} 390`),E.length>0){const U=E.join(", ");return{image:{url:U,altText:y.comment?.content||""},_fromImages:!0,_responsiveSource:U}}return null}).filter(s=>s!==null);D.length>0&&(K=D)}return{...y,galleries:K}}).filter(y=>y.galleries.length>0)},[p?.payload,u,r?.payload]),[g,o]=k(l?.[0]),[c,C]=k(0),[I,x]=k(null),R=w(()=>{const i=(c+1)%l.length;C(i),o(l[i]),x(0)},[c,l]),V=w(()=>{const i=c===0?l.length-1:c-1;C(i),o(l[i]);const T=l[i]?.galleries||[];x(T.length-1)},[c,l]);B(()=>{c!=null&&requestAnimationFrame(()=>{L.current?.scrollToTab(c)})},[c]),B(()=>{o(l[0]),C(0)},[p?.id]);const le=(i,T)=>{switch(i?.galleryTabType){case P.GALLERY_IMAGE_MAIN:return e(O,{...i,index:T,onNextTab:R,onPrevTab:V,targetSlideIndex:I,onSlideChange:()=>x(null)});case P.GALLERY_IMAGE_FEATURES:return e(O,{...i,index:T,onNextTab:R,onPrevTab:V,targetSlideIndex:I,onSlideChange:()=>x(null)});case P.GALLERY_IMAGE_SCENE:return e(O,{...i,index:T,onNextTab:R,onPrevTab:V,targetSlideIndex:I,onSlideChange:()=>x(null)});case P.GALLERY_VIDEO:return e(he,{...i,onNextTab:R,onPrevTab:V,targetSlideIndex:I,onSlideChange:()=>x(null)});default:return null}};return e("div",{id:"ipc-product-gallery",children:f(ne,{className:"relative",value:g?.tabValue,defaultValue:l?.[0]?.tabValue,children:[e("div",{className:"tablet:h-[620px] desktop:rounded-2xl desktop:h-[560px] lg-desktop:h-[700px] desktop:relative h-[420px] overflow-hidden bg-[#EAEAEC] ",children:l.map((i,T)=>e(re,{className:"h-full",value:i.tabValue,children:le(i,T)},i.tabValue))}),e(ye,{ref:L,galleryTabs:l,activeGalleryTab:g,setActiveGalleryTab:o,setActiveTabIndex:C,setTargetSlideIndex:x})]})})},ye=J((t,r)=>{const{galleryTabs:p,activeGalleryTab:G,setActiveGalleryTab:m,setActiveTabIndex:d,setTargetSlideIndex:h}=t,{product:L}=Y(),b=A(null),a=A(new Map),v=w(n=>{if(b.current){const u=b.current,l=n.currentTarget,g=l.offsetLeft-u.offsetWidth/2+l.offsetWidth/2;u.scrollTo({left:g,behavior:"smooth"})}},[]),_=w((n,u,l)=>{m(u),d(l),h(0),v(n)},[m,d,h,v]),S=w(n=>{if(b.current&&p[n]){const u=b.current,l=p[n],g=a.current.get(l.tabValue);if(g){const o=g.offsetLeft-u.offsetWidth/2+g.offsetWidth/2;u.scrollTo({left:o,behavior:"smooth"})}}},[p]);return oe(r,()=>({scrollToTab:S})),f("div",{className:"laptop:inset-x-16 tablet:mt-3 desktop:static absolute inset-x-4 bottom-4 z-[2] flex items-center justify-between",children:[e(se,{ref:b,className:"laptop:p-0 desktop:p-1 overflow-x-auto rounded-full bg-[#EAEAEC] p-1",style:{scrollbarWidth:"none",msOverflowStyle:"none"},children:e("div",{className:"whitespace-nowrap",children:p?.map((n,u)=>e(ce,{ref:l=>{l?a.current.set(n.tabValue,l):a.current.delete(n.tabValue)},className:N("lg-desktop:px-7 lg-desktop:pb-[14px] lg-desktop:pt-[15px] lg-desktop:text-[16px] rounded-full px-5 pb-[10px] pt-[11px] text-[14px] font-bold leading-tight",n.tabValue===G?.tabValue&&"bg-white"),onClick:l=>_(l,n,u),value:n.tabValue,children:n.tabLabel},n.tabValue+u))})}),e("div",{className:"laptop:gap-2 laptop:flex hidden",children:L.metafields?.global?.specifications&&f(xe,{children:[e(ue,{})," | ",e(pe,{})]})})]})}),O=J((t,r)=>{const{locale:p="us",copyWriting:G}=Z(),{variant:m,totalSavings:d}=Y(),h=A(null),[L,b]=k(null),[a,v]=k(null),_=A(null),[S,n]=k(!1),u=j(()=>{if(t?.galleryTabType===P.GALLERY_IMAGE_MAIN)return"size-[240px] mx-auto mt-[42px] tablet:mt-16 tablet:size-[420px] lg-desktop:size-[560px]";t?.galleryTabType===P.GALLERY_IMAGE_FEATURES||(t?.galleryTabType,P.GALLERY_IMAGE_SCENE)},[t?.galleryTabType]),l=w(()=>{a?.isBeginning?t.onPrevTab?.():a?.slidePrev()},[a,t]),g=w(()=>{a?.isEnd?t.onNextTab?.():a?.slideNext()},[a,t]);return B(()=>{a&&t.targetSlideIndex&&(a.slideTo(t.targetSlideIndex,0),t.onSlideChange?.())},[a,t.targetSlideIndex,t]),f("div",{className:"h-full [&_.swiper-button]:hover:opacity-100",children:[e($,{ref:r,className:"h-full",onSwiper:v,onTouchEnd:(o,c)=>{o.isBeginning&&o.swipeDirection==="prev"?l():o.isEnd&&o.swipeDirection==="next"&&g()},pagination:{clickable:!0,el:h.current},thumbs:{swiper:L},modules:[Q,W,H,X],mousewheel:{forceToAxis:!0},breakpoints:{0:{slidesPerView:1,freeMode:!1}},children:t?.galleries?.map((o,c)=>{const C=`${t.tabValue}-${c}`,I=()=>{ge({event:"ga4Event",event_name:"component_impression",event_parameters:{page_group:`Product Detail Page${m.sku}`,component_type:"image",component_name:t?.tabLabel||"",position:c+1,creative_id:"",component_title:"",component_description:"",navigation:""}})},x=o?._responsiveSource||o?.image?.url||"";return e(M,{className:"h-full",children:e(fe,{onExposure:I,exposureKey:C,threshold:.5,duration:2e3,className:"h-full",children:e(F,{source:x,alt:o?.image?.altText,className:N("h-full",u),imgClassName:"object-cover h-full"})})},t?.id+"SwiperSlideItem"+c)})}),m.availableForSale&&!!d&&!t.index&&e(ae,{size:"lg",className:"bg-brand laptop:left-16 laptop:top-5 desktop:left-6 desktop:top-6 absolute left-4 top-3 z-[2] text-white",children:`${me({amount:d,currencyCode:m?.price?.currencyCode,locale:p})} ${G?.off}`}),e("div",{className:N("tablet:opacity-0 tablet:block tablet:absolute tablet:top-1/2 laptop:left-16 tablet:left-6 desktop:left-6 z-10 hidden -translate-y-1/2 cursor-pointer","swiper-button"),onClick:l,children:e(ee,{className:N("tablet:size-10 lg-desktop:size-12")})}),e("div",{className:N("tablet:block tablet:opacity-0 tablet:absolute tablet:top-1/2 laptop:right-16 tablet:right-6 desktop:right-6 z-10 hidden -translate-y-1/2 cursor-pointer","swiper-button"),onClick:g,children:e(te,{className:N("tablet:size-10 lg-desktop:size-12")})}),f("div",{className:"tablet:bottom-[70px] tablet:flex laptop:inset-x-16 desktop:bottom-[20px] desktop:inset-x-6 absolute inset-x-4 bottom-[94px] z-10 items-center justify-between",children:[e("div",{className:"tablet:block hidden",children:e($,{className:"flex items-center justify-between",onSwiper:b,spaceBetween:12,slidesPerView:6,freeMode:!0,watchSlidesProgress:!0,modules:[H,W],children:t?.galleries?.map((o,c)=>e(M,{className:"[&.swiper-slide-thumb-active]:border-brand !w-auto cursor-pointer border border-transparent [&.swiper-slide-thumb-active]:rounded",children:e(F,{source:o.image?.url,alt:o.image?.altText,className:"lg-desktop:size-12 size-10 overflow-hidden rounded bg-white",imgClassName:"object-cover h-full"})},t?.id+"SwiperSlideThumbItem"+c))})}),!t?.index&&f("div",{className:"flex items-center gap-2",children:[e(F,{source:t?.comment?.avatar?.url,className:"laptop:size-10 size-8 shrink-0 rounded-full",imgClassName:"object-cover "}),e("div",{className:"relative max-w-[528px] overflow-hidden",children:f($,{modules:[ie],loop:!0,className:"lg-desktop:h-11 h-10",direction:"vertical",autoplay:{delay:2e3,disableOnInteraction:!1},children:[e(M,{children:e(q,{html:t?.comment?.content,className:"lg-desktop:text-base line-clamp-2 text-sm font-bold text-[#1D1D1F]"})}),e(M,{children:e(q,{html:t?.comment?.content,className:"lg-desktop:text-base line-clamp-2 text-sm font-bold text-[#1D1D1F]"})})]})})]})]}),e("div",{ref:h,className:"tablet:hidden absolute inset-x-4 !bottom-[70px] z-10 text-center [&_.swiper-pagination-bullet-active]:!bg-[#1D1D1F] [&_.swiper-pagination-bullet]:bg-white [&_.swiper-pagination-bullet]:opacity-100"})]})}),he=t=>{const[r,p]=k(null),G=w(()=>{r?.isBeginning?t.onPrevTab?.():r?.slidePrev()},[r,t]),m=w(()=>{r?.isEnd?t.onNextTab?.():r?.slideNext()},[r,t]);return B(()=>{r&&t.targetSlideIndex!==null&&t.targetSlideIndex!==void 0&&(r.slideTo(t.targetSlideIndex,0),t.onSlideChange?.())},[r,t.targetSlideIndex,t]),f("div",{className:"h-full [&_.swiper-button]:hover:opacity-100",children:[e($,{className:"h-full",onSwiper:p,onTouchEnd:(d,h)=>{d.isBeginning&&d.swipeDirection==="prev"?G():d.isEnd&&d.swipeDirection==="next"&&m()},modules:[Q,W,H,X],mousewheel:{forceToAxis:!0},breakpoints:{0:{slidesPerView:1,freeMode:!1}},children:t?.galleries?.map((d,h)=>e(M,{className:"h-full",children:f("video",{controls:!0,className:"size-full object-cover",children:[e("track",{kind:"captions"}),e("source",{src:d?.sources?.[0]?.url,type:"video/mp4"}),e("source",{src:d?.sources?.[0]?.url,type:"video/webm"}),e("source",{src:d?.sources?.[0]?.url,type:"video/ogg"})]})},t?.id+"SwiperSlideItem"+h))}),e("div",{className:N("swiper-button tablet:block tablet:opacity-0 tablet:absolute tablet:top-1/2 tablet:left-6 z-10 hidden -translate-y-1/2 cursor-pointer"),onClick:G,children:e(ee,{className:"tablet:size-10 lg-desktop:size-12"})}),e("div",{className:N("tablet:block swiper-button tablet:opacity-0 tablet:absolute tablet:top-1/2 tablet:right-6 z-10 hidden -translate-y-1/2 cursor-pointer"),onClick:m,children:e(te,{className:"tablet:size-10 lg-desktop:size-12"})})]})},De=t=>e("div",{children:"3D View"});var Be=be(ve);export{Be as default};
2
2
  //# sourceMappingURL=index.js.map