@anker-in/headless-ui 1.1.68 → 1.1.69

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 (292) hide show
  1. package/dist/cjs/biz-components/AccordionCards/index.d.ts +37 -2
  2. package/dist/cjs/biz-components/AccordionCards/index.js +1 -1
  3. package/dist/cjs/biz-components/AccordionCards/index.js.map +3 -3
  4. package/dist/cjs/biz-components/AnchorNavigation/index.js +1 -1
  5. package/dist/cjs/biz-components/AnchorNavigation/index.js.map +3 -3
  6. package/dist/cjs/biz-components/AplusDesc/index.d.ts +2 -3
  7. package/dist/cjs/biz-components/AplusDesc/index.js +1 -1
  8. package/dist/cjs/biz-components/AplusDesc/index.js.map +3 -3
  9. package/dist/cjs/biz-components/Category/index.d.ts +1 -2
  10. package/dist/cjs/biz-components/Category/index.js +1 -1
  11. package/dist/cjs/biz-components/Category/index.js.map +3 -3
  12. package/dist/cjs/biz-components/CreativeModule/index.d.ts +2 -3
  13. package/dist/cjs/biz-components/CreativeModule/index.js +1 -1
  14. package/dist/cjs/biz-components/CreativeModule/index.js.map +3 -3
  15. package/dist/cjs/biz-components/DownLoad/index.d.ts +2 -3
  16. package/dist/cjs/biz-components/DownLoad/index.js +1 -1
  17. package/dist/cjs/biz-components/DownLoad/index.js.map +3 -3
  18. package/dist/cjs/biz-components/Evaluate/index.d.ts +1 -2
  19. package/dist/cjs/biz-components/Evaluate/index.js +1 -1
  20. package/dist/cjs/biz-components/Evaluate/index.js.map +3 -3
  21. package/dist/cjs/biz-components/EventSchedule/index.js +1 -1
  22. package/dist/cjs/biz-components/EventSchedule/index.js.map +3 -3
  23. package/dist/cjs/biz-components/Features/index.d.ts +2 -4
  24. package/dist/cjs/biz-components/Features/index.js +1 -1
  25. package/dist/cjs/biz-components/Features/index.js.map +3 -3
  26. package/dist/cjs/biz-components/FootCharger/index.d.ts +2 -3
  27. package/dist/cjs/biz-components/FootCharger/index.js +1 -1
  28. package/dist/cjs/biz-components/FootCharger/index.js.map +3 -3
  29. package/dist/cjs/biz-components/FooterNavigation/index.js +1 -1
  30. package/dist/cjs/biz-components/FooterNavigation/index.js.map +3 -3
  31. package/dist/cjs/biz-components/FooterNavigation/types.d.ts +2 -1
  32. package/dist/cjs/biz-components/FooterNavigation/types.js +1 -1
  33. package/dist/cjs/biz-components/FooterNavigation/types.js.map +2 -2
  34. package/dist/cjs/biz-components/GiftBox/index.d.ts +5 -5
  35. package/dist/cjs/biz-components/GiftBox/index.js +1 -1
  36. package/dist/cjs/biz-components/GiftBox/index.js.map +3 -3
  37. package/dist/cjs/biz-components/Graphic/index.d.ts +1 -2
  38. package/dist/cjs/biz-components/Graphic/index.js +1 -1
  39. package/dist/cjs/biz-components/Graphic/index.js.map +3 -3
  40. package/dist/cjs/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
  41. package/dist/cjs/biz-components/GraphicAttractionBlock/index.js +1 -1
  42. package/dist/cjs/biz-components/GraphicAttractionBlock/index.js.map +3 -3
  43. package/dist/cjs/biz-components/GraphicMore/index.d.ts +2 -3
  44. package/dist/cjs/biz-components/GraphicMore/index.js +1 -1
  45. package/dist/cjs/biz-components/GraphicMore/index.js.map +3 -3
  46. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.d.ts +9 -2
  47. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.js +1 -1
  48. package/dist/cjs/biz-components/GraphicOverlay/GraphicOverlay.js.map +3 -3
  49. package/dist/cjs/biz-components/GraphicOverlay/types.d.ts +1 -2
  50. package/dist/cjs/biz-components/GraphicOverlay/types.js +1 -1
  51. package/dist/cjs/biz-components/GraphicOverlay/types.js.map +1 -1
  52. package/dist/cjs/biz-components/HeaderNavigation/index.js +1 -1
  53. package/dist/cjs/biz-components/HeaderNavigation/index.js.map +3 -3
  54. package/dist/cjs/biz-components/HeaderNavigation/types.d.ts +2 -1
  55. package/dist/cjs/biz-components/HeaderNavigation/types.js +1 -1
  56. package/dist/cjs/biz-components/HeaderNavigation/types.js.map +2 -2
  57. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js +1 -1
  58. package/dist/cjs/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  59. package/dist/cjs/biz-components/HeroBanner/types.d.ts +1 -3
  60. package/dist/cjs/biz-components/HeroBanner/types.js +1 -1
  61. package/dist/cjs/biz-components/HeroBanner/types.js.map +1 -1
  62. package/dist/cjs/biz-components/InlineVideo/index.d.ts +2 -3
  63. package/dist/cjs/biz-components/InlineVideo/index.js +1 -1
  64. package/dist/cjs/biz-components/InlineVideo/index.js.map +3 -3
  65. package/dist/cjs/biz-components/Ksp/index.d.ts +1 -1
  66. package/dist/cjs/biz-components/Ksp/index.js +1 -1
  67. package/dist/cjs/biz-components/Ksp/index.js.map +3 -3
  68. package/dist/cjs/biz-components/MarqueeReview/index.d.ts +4 -5
  69. package/dist/cjs/biz-components/MarqueeReview/index.js +1 -1
  70. package/dist/cjs/biz-components/MarqueeReview/index.js.map +3 -3
  71. package/dist/cjs/biz-components/MediaPlayerBase/index.js +1 -1
  72. package/dist/cjs/biz-components/MediaPlayerBase/index.js.map +3 -3
  73. package/dist/cjs/biz-components/MediaPlayerBase/types.d.ts +1 -1
  74. package/dist/cjs/biz-components/MediaPlayerBase/types.js +1 -1
  75. package/dist/cjs/biz-components/MediaPlayerBase/types.js.map +1 -1
  76. package/dist/cjs/biz-components/MediaPlayerMulti/index.js +1 -1
  77. package/dist/cjs/biz-components/MediaPlayerMulti/index.js.map +3 -3
  78. package/dist/cjs/biz-components/MediaPlayerMulti/types.d.ts +1 -1
  79. package/dist/cjs/biz-components/MediaPlayerMulti/types.js +1 -1
  80. package/dist/cjs/biz-components/MediaPlayerMulti/types.js.map +1 -1
  81. package/dist/cjs/biz-components/MediaPlayerSticky/index.js +1 -1
  82. package/dist/cjs/biz-components/MediaPlayerSticky/index.js.map +3 -3
  83. package/dist/cjs/biz-components/MediaPlayerSticky/types.d.ts +2 -2
  84. package/dist/cjs/biz-components/MediaPlayerSticky/types.js +1 -1
  85. package/dist/cjs/biz-components/MediaPlayerSticky/types.js.map +1 -1
  86. package/dist/cjs/biz-components/MemberEquity/index.js +2 -2
  87. package/dist/cjs/biz-components/MemberEquity/index.js.map +3 -3
  88. package/dist/cjs/biz-components/MemberEquity/types.d.ts +1 -1
  89. package/dist/cjs/biz-components/MemberEquity/types.js +1 -1
  90. package/dist/cjs/biz-components/MemberEquity/types.js.map +1 -1
  91. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +16 -2
  92. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  93. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +3 -3
  94. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.d.ts +1 -2
  95. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js +1 -1
  96. package/dist/cjs/biz-components/MultiLayoutGraphicBlock/types.js.map +1 -1
  97. package/dist/cjs/biz-components/NavigationSearch/index.js +2 -2
  98. package/dist/cjs/biz-components/NavigationSearch/index.js.map +3 -3
  99. package/dist/cjs/biz-components/NavigationSearch/types.d.ts +2 -1
  100. package/dist/cjs/biz-components/NavigationSearch/types.js +1 -1
  101. package/dist/cjs/biz-components/NavigationSearch/types.js.map +2 -2
  102. package/dist/cjs/biz-components/ProductCompare/index.d.ts +1 -3
  103. package/dist/cjs/biz-components/ProductCompare/index.js +1 -1
  104. package/dist/cjs/biz-components/ProductCompare/index.js.map +3 -3
  105. package/dist/cjs/biz-components/ProductNav/ProductNav.js +1 -1
  106. package/dist/cjs/biz-components/ProductNav/ProductNav.js.map +3 -3
  107. package/dist/cjs/biz-components/PromotionalBar/index.js +1 -1
  108. package/dist/cjs/biz-components/PromotionalBar/index.js.map +3 -3
  109. package/dist/cjs/biz-components/SearchPage/index.d.ts +1 -1
  110. package/dist/cjs/biz-components/SearchPage/index.js +1 -1
  111. package/dist/cjs/biz-components/SearchPage/index.js.map +3 -3
  112. package/dist/cjs/biz-components/SearchPage/types.d.ts +1 -1
  113. package/dist/cjs/biz-components/SearchPage/types.js +1 -1
  114. package/dist/cjs/biz-components/SearchPage/types.js.map +1 -1
  115. package/dist/cjs/biz-components/SelectStore/index.d.ts +5 -5
  116. package/dist/cjs/biz-components/SelectStore/index.js +1 -1
  117. package/dist/cjs/biz-components/SelectStore/index.js.map +3 -3
  118. package/dist/cjs/biz-components/ShelfDisplay/index.js +1 -1
  119. package/dist/cjs/biz-components/ShelfDisplay/index.js.map +3 -3
  120. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.d.ts +1 -2
  121. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  122. package/dist/cjs/biz-components/ShelfDisplay/shelfDisplay.js.map +1 -1
  123. package/dist/cjs/biz-components/Slogan/index.js +1 -1
  124. package/dist/cjs/biz-components/Slogan/index.js.map +3 -3
  125. package/dist/cjs/biz-components/Slogan/types.d.ts +2 -5
  126. package/dist/cjs/biz-components/Slogan/types.js +1 -1
  127. package/dist/cjs/biz-components/Slogan/types.js.map +1 -1
  128. package/dist/cjs/biz-components/Spacer/index.js +1 -1
  129. package/dist/cjs/biz-components/Spacer/index.js.map +3 -3
  130. package/dist/cjs/biz-components/Spacer/types.d.ts +1 -5
  131. package/dist/cjs/biz-components/Spacer/types.js +1 -1
  132. package/dist/cjs/biz-components/Spacer/types.js.map +1 -1
  133. package/dist/cjs/biz-components/Specs/index.d.ts +7 -1
  134. package/dist/cjs/biz-components/Specs/index.js +1 -1
  135. package/dist/cjs/biz-components/Specs/index.js.map +3 -3
  136. package/dist/cjs/biz-components/Subscribe/index.d.ts +11 -10
  137. package/dist/cjs/biz-components/Subscribe/index.js +2 -2
  138. package/dist/cjs/biz-components/Subscribe/index.js.map +3 -3
  139. package/dist/cjs/biz-components/SwiperBox/index.js +1 -1
  140. package/dist/cjs/biz-components/SwiperBox/index.js.map +3 -3
  141. package/dist/cjs/biz-components/SwiperBox/types.d.ts +1 -2
  142. package/dist/cjs/biz-components/SwiperBox/types.js +1 -1
  143. package/dist/cjs/biz-components/SwiperBox/types.js.map +1 -1
  144. package/dist/cjs/biz-components/TabsGroup/index.js +1 -1
  145. package/dist/cjs/biz-components/TabsGroup/index.js.map +3 -3
  146. package/dist/cjs/biz-components/TabsGroup/types.d.ts +2 -3
  147. package/dist/cjs/biz-components/TabsGroup/types.js +1 -1
  148. package/dist/cjs/biz-components/TabsGroup/types.js.map +1 -1
  149. package/dist/cjs/biz-components/Title/index.d.ts +3 -1
  150. package/dist/cjs/biz-components/Title/index.js +1 -1
  151. package/dist/cjs/biz-components/Title/index.js.map +3 -3
  152. package/dist/cjs/biz-components/Title/types.d.ts +3 -1
  153. package/dist/cjs/biz-components/Title/types.js +1 -1
  154. package/dist/cjs/biz-components/Title/types.js.map +1 -1
  155. package/dist/cjs/biz-components/VideoModal/index.d.ts +2 -2
  156. package/dist/cjs/biz-components/VideoModal/index.js +1 -1
  157. package/dist/cjs/biz-components/VideoModal/index.js.map +3 -3
  158. package/dist/esm/biz-components/AccordionCards/index.d.ts +37 -2
  159. package/dist/esm/biz-components/AccordionCards/index.js +1 -1
  160. package/dist/esm/biz-components/AccordionCards/index.js.map +3 -3
  161. package/dist/esm/biz-components/AnchorNavigation/index.js +1 -1
  162. package/dist/esm/biz-components/AnchorNavigation/index.js.map +3 -3
  163. package/dist/esm/biz-components/AplusDesc/index.d.ts +2 -3
  164. package/dist/esm/biz-components/AplusDesc/index.js +1 -1
  165. package/dist/esm/biz-components/AplusDesc/index.js.map +3 -3
  166. package/dist/esm/biz-components/Category/index.d.ts +1 -2
  167. package/dist/esm/biz-components/Category/index.js +1 -1
  168. package/dist/esm/biz-components/Category/index.js.map +3 -3
  169. package/dist/esm/biz-components/CreativeModule/index.d.ts +2 -3
  170. package/dist/esm/biz-components/CreativeModule/index.js +1 -1
  171. package/dist/esm/biz-components/CreativeModule/index.js.map +3 -3
  172. package/dist/esm/biz-components/DownLoad/index.d.ts +2 -3
  173. package/dist/esm/biz-components/DownLoad/index.js +1 -1
  174. package/dist/esm/biz-components/DownLoad/index.js.map +3 -3
  175. package/dist/esm/biz-components/Evaluate/index.d.ts +1 -2
  176. package/dist/esm/biz-components/Evaluate/index.js +1 -1
  177. package/dist/esm/biz-components/Evaluate/index.js.map +3 -3
  178. package/dist/esm/biz-components/EventSchedule/index.js +1 -1
  179. package/dist/esm/biz-components/EventSchedule/index.js.map +3 -3
  180. package/dist/esm/biz-components/Features/index.d.ts +2 -4
  181. package/dist/esm/biz-components/Features/index.js +1 -1
  182. package/dist/esm/biz-components/Features/index.js.map +3 -3
  183. package/dist/esm/biz-components/FootCharger/index.d.ts +2 -3
  184. package/dist/esm/biz-components/FootCharger/index.js +1 -1
  185. package/dist/esm/biz-components/FootCharger/index.js.map +3 -3
  186. package/dist/esm/biz-components/FooterNavigation/index.js +1 -1
  187. package/dist/esm/biz-components/FooterNavigation/index.js.map +3 -3
  188. package/dist/esm/biz-components/FooterNavigation/types.d.ts +2 -1
  189. package/dist/esm/biz-components/FooterNavigation/types.js +1 -1
  190. package/dist/esm/biz-components/FooterNavigation/types.js.map +2 -2
  191. package/dist/esm/biz-components/GiftBox/index.d.ts +5 -5
  192. package/dist/esm/biz-components/GiftBox/index.js +1 -1
  193. package/dist/esm/biz-components/GiftBox/index.js.map +3 -3
  194. package/dist/esm/biz-components/Graphic/index.d.ts +1 -2
  195. package/dist/esm/biz-components/Graphic/index.js +1 -1
  196. package/dist/esm/biz-components/Graphic/index.js.map +3 -3
  197. package/dist/esm/biz-components/GraphicAttractionBlock/index.d.ts +3 -3
  198. package/dist/esm/biz-components/GraphicAttractionBlock/index.js +1 -1
  199. package/dist/esm/biz-components/GraphicAttractionBlock/index.js.map +3 -3
  200. package/dist/esm/biz-components/GraphicMore/index.d.ts +2 -3
  201. package/dist/esm/biz-components/GraphicMore/index.js +1 -1
  202. package/dist/esm/biz-components/GraphicMore/index.js.map +3 -3
  203. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.d.ts +9 -2
  204. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.js +1 -1
  205. package/dist/esm/biz-components/GraphicOverlay/GraphicOverlay.js.map +3 -3
  206. package/dist/esm/biz-components/GraphicOverlay/types.d.ts +1 -2
  207. package/dist/esm/biz-components/HeaderNavigation/index.js +1 -1
  208. package/dist/esm/biz-components/HeaderNavigation/index.js.map +3 -3
  209. package/dist/esm/biz-components/HeaderNavigation/types.d.ts +2 -1
  210. package/dist/esm/biz-components/HeaderNavigation/types.js +1 -1
  211. package/dist/esm/biz-components/HeaderNavigation/types.js.map +2 -2
  212. package/dist/esm/biz-components/HeroBanner/HeroBanner.js +1 -1
  213. package/dist/esm/biz-components/HeroBanner/HeroBanner.js.map +3 -3
  214. package/dist/esm/biz-components/HeroBanner/types.d.ts +1 -3
  215. package/dist/esm/biz-components/InlineVideo/index.d.ts +2 -3
  216. package/dist/esm/biz-components/InlineVideo/index.js +1 -1
  217. package/dist/esm/biz-components/InlineVideo/index.js.map +3 -3
  218. package/dist/esm/biz-components/Ksp/index.d.ts +1 -1
  219. package/dist/esm/biz-components/Ksp/index.js +1 -1
  220. package/dist/esm/biz-components/Ksp/index.js.map +3 -3
  221. package/dist/esm/biz-components/MarqueeReview/index.d.ts +4 -5
  222. package/dist/esm/biz-components/MarqueeReview/index.js +1 -1
  223. package/dist/esm/biz-components/MarqueeReview/index.js.map +3 -3
  224. package/dist/esm/biz-components/MediaPlayerBase/index.js +1 -1
  225. package/dist/esm/biz-components/MediaPlayerBase/index.js.map +3 -3
  226. package/dist/esm/biz-components/MediaPlayerBase/types.d.ts +1 -1
  227. package/dist/esm/biz-components/MediaPlayerMulti/index.js +1 -1
  228. package/dist/esm/biz-components/MediaPlayerMulti/index.js.map +3 -3
  229. package/dist/esm/biz-components/MediaPlayerMulti/types.d.ts +1 -1
  230. package/dist/esm/biz-components/MediaPlayerSticky/index.js +1 -1
  231. package/dist/esm/biz-components/MediaPlayerSticky/index.js.map +3 -3
  232. package/dist/esm/biz-components/MediaPlayerSticky/types.d.ts +2 -2
  233. package/dist/esm/biz-components/MemberEquity/index.js +2 -2
  234. package/dist/esm/biz-components/MemberEquity/index.js.map +3 -3
  235. package/dist/esm/biz-components/MemberEquity/types.d.ts +1 -1
  236. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.d.ts +16 -2
  237. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js +1 -1
  238. package/dist/esm/biz-components/MultiLayoutGraphicBlock/MultiLayoutGraphicBlock.js.map +3 -3
  239. package/dist/esm/biz-components/MultiLayoutGraphicBlock/types.d.ts +1 -2
  240. package/dist/esm/biz-components/NavigationSearch/index.js +2 -2
  241. package/dist/esm/biz-components/NavigationSearch/index.js.map +3 -3
  242. package/dist/esm/biz-components/NavigationSearch/types.d.ts +2 -1
  243. package/dist/esm/biz-components/NavigationSearch/types.js +1 -1
  244. package/dist/esm/biz-components/NavigationSearch/types.js.map +2 -2
  245. package/dist/esm/biz-components/ProductCompare/index.d.ts +1 -3
  246. package/dist/esm/biz-components/ProductCompare/index.js +1 -1
  247. package/dist/esm/biz-components/ProductCompare/index.js.map +3 -3
  248. package/dist/esm/biz-components/ProductNav/ProductNav.js +1 -1
  249. package/dist/esm/biz-components/ProductNav/ProductNav.js.map +3 -3
  250. package/dist/esm/biz-components/PromotionalBar/index.js +1 -1
  251. package/dist/esm/biz-components/PromotionalBar/index.js.map +3 -3
  252. package/dist/esm/biz-components/SearchPage/index.d.ts +1 -1
  253. package/dist/esm/biz-components/SearchPage/index.js +1 -1
  254. package/dist/esm/biz-components/SearchPage/index.js.map +3 -3
  255. package/dist/esm/biz-components/SearchPage/types.d.ts +1 -1
  256. package/dist/esm/biz-components/SearchPage/types.js +1 -1
  257. package/dist/esm/biz-components/SearchPage/types.js.map +1 -1
  258. package/dist/esm/biz-components/SelectStore/index.d.ts +5 -5
  259. package/dist/esm/biz-components/SelectStore/index.js +1 -1
  260. package/dist/esm/biz-components/SelectStore/index.js.map +3 -3
  261. package/dist/esm/biz-components/ShelfDisplay/index.js +1 -1
  262. package/dist/esm/biz-components/ShelfDisplay/index.js.map +3 -3
  263. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.d.ts +1 -2
  264. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js +1 -1
  265. package/dist/esm/biz-components/ShelfDisplay/shelfDisplay.js.map +1 -1
  266. package/dist/esm/biz-components/Slogan/index.js +1 -1
  267. package/dist/esm/biz-components/Slogan/index.js.map +3 -3
  268. package/dist/esm/biz-components/Slogan/types.d.ts +2 -5
  269. package/dist/esm/biz-components/Spacer/index.js +1 -1
  270. package/dist/esm/biz-components/Spacer/index.js.map +3 -3
  271. package/dist/esm/biz-components/Spacer/types.d.ts +1 -5
  272. package/dist/esm/biz-components/Specs/index.d.ts +7 -1
  273. package/dist/esm/biz-components/Specs/index.js +1 -1
  274. package/dist/esm/biz-components/Specs/index.js.map +3 -3
  275. package/dist/esm/biz-components/Subscribe/index.d.ts +11 -10
  276. package/dist/esm/biz-components/Subscribe/index.js +2 -2
  277. package/dist/esm/biz-components/Subscribe/index.js.map +3 -3
  278. package/dist/esm/biz-components/SwiperBox/index.js +1 -1
  279. package/dist/esm/biz-components/SwiperBox/index.js.map +3 -3
  280. package/dist/esm/biz-components/SwiperBox/types.d.ts +1 -2
  281. package/dist/esm/biz-components/SwiperBox/types.js.map +1 -1
  282. package/dist/esm/biz-components/TabsGroup/index.js +1 -1
  283. package/dist/esm/biz-components/TabsGroup/index.js.map +3 -3
  284. package/dist/esm/biz-components/TabsGroup/types.d.ts +2 -3
  285. package/dist/esm/biz-components/Title/index.d.ts +3 -1
  286. package/dist/esm/biz-components/Title/index.js +1 -1
  287. package/dist/esm/biz-components/Title/index.js.map +3 -3
  288. package/dist/esm/biz-components/Title/types.d.ts +3 -1
  289. package/dist/esm/biz-components/VideoModal/index.d.ts +2 -2
  290. package/dist/esm/biz-components/VideoModal/index.js +1 -1
  291. package/dist/esm/biz-components/VideoModal/index.js.map +3 -3
  292. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";var L=Object.create;var k=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var F=Object.getPrototypeOf,z=Object.prototype.hasOwnProperty;var E=(t,l)=>{for(var i in l)k(t,i,{get:l[i],enumerable:!0})},N=(t,l,i,c)=>{if(l&&typeof l=="object"||typeof l=="function")for(let a of D(l))!z.call(t,a)&&a!==i&&k(t,a,{get:()=>l[a],enumerable:!(c=A(l,a))||c.enumerable});return t};var S=(t,l,i)=>(i=t!=null?L(F(t)):{},N(l||!t||!t.__esModule?k(i,"default",{value:t,enumerable:!0}):i,t)),$=t=>N(k({},"__esModule",{value:!0}),t);var q={};E(q,{default:()=>Q});module.exports=$(q);var e=require("react/jsx-runtime"),x=require("react"),o=require("../../components/index.js"),C=S(require("../Subscribe/index.js")),h=require("./types.js"),m=require("./icons/index.js"),v=require("react-responsive"),n=require("../../helpers/utils.js"),b=require("../AiuiProvider/index.js"),M=require("../../shared/Styles.js");const T=({data:{footer:t}={},currentCountry:l,event:i,subscribeLoading:c,classNames:a})=>{const[r,u]=(0,x.useState)(!1),f=(0,v.useMediaQuery)({query:"(max-width: 1439px)"});(0,x.useEffect)(()=>{u(f)},[f]);const p=(0,x.useMemo)(()=>t?.blocks?.find(d=>d?.blockType===h.FooterNavigationBlockType.Brand)?.country||{},[t]);return(0,e.jsx)("footer",{className:(0,n.cn)(a?.root),children:(0,e.jsxs)(o.Container,{className:(0,n.cn)(a?.child),childClassName:(0,n.cn)("laptop:py-16 desktop:gap-16 flex flex-col gap-8 bg-black py-8"),children:[(0,e.jsx)(o.Text,{html:t?.story,className:"desktop:text-sm text-xs font-bold text-[#6D6D6F]"}),t?.blocks?.map(d=>{if(d?.blockType===h.FooterNavigationBlockType.Signup)return(0,e.jsx)(P,{subscribeLoading:c,data:d,onSubmit:i?.signup},d.id);if(d?.blockType===h.FooterNavigationBlockType.Brand)return(0,e.jsx)(j,{data:d,isMobile:r,event:i,currentCountry:l},d?.id);if(d?.blockType===h.FooterNavigationBlockType.Main)return(0,e.jsx)(O,{data:{...d,country:p},event:i,isMobile:r,currentCountry:l},d.id)})]})})},P=({data:t,onSubmit:l,subscribeLoading:i})=>{const{locale:c="us"}=(0,b.useAiuiContext)();return(0,e.jsxs)("div",{className:"desktop:py-16 desktop:gap-16 laptop:px-8 desktop:flex-row rounded-btn flex flex-col gap-8 bg-[#1E2024] px-4 py-8",children:[(0,e.jsx)(C.default,{subscribeMetadata:t?.signup,className:"desktop:flex-[744]",onSubmit:l,loading:i}),(0,e.jsx)("div",{className:"desktop:hidden h-px w-full bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"desktop:gap-6 laptop:flex-row desktop:flex-[792] flex flex-col gap-4",children:[(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)(o.Text,{html:t?.enjoy?.title,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex flex-col gap-2",children:t?.enjoy?.enjoys?.map(a=>(0,e.jsxs)("div",{className:"flex-start flex gap-2",children:[(0,e.jsx)("img",{src:a?.icon?.url,loading:"lazy",alt:a?.icon?.alt||"",className:"size-5 shrink-0"}),(0,e.jsx)(o.Text,{html:a?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})]},a?.id))})]}),(0,e.jsx)("div",{className:"desktop:block hidden w-px bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)(o.Text,{html:t?.benefit?.title,className:"text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex flex-col gap-2",children:t?.benefit?.benefits?.map(a=>(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(a?.link,c)}?ref=footer`,asChild:!a?.link,className:"no-underline",children:(0,e.jsx)(o.Text,{html:a?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white"})},a?.id))})]})]})]})},O=({data:t,event:l,isMobile:i,currentCountry:c})=>{const{locale:a="us"}=(0,b.useAiuiContext)(),[r,u]=(0,x.useState)(!1),{services:f,mainNav:p,country:d}=t,g="contact-section";return(0,e.jsxs)("nav",{className:"flex flex-col gap-8","aria-label":"Main navigation",children:[(0,e.jsxs)("div",{className:(0,n.cn)({"desktop:gap-16 flex":f?.download?.title}),children:[(0,e.jsxs)("div",{className:(0,n.cn)("w-full",{"desktop:flex-[1260]":f?.download?.title}),children:[(0,e.jsx)(o.Text,{html:f?.storeBenefits?.title,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:(0,n.cn)("laptop:flex-row desktop:gap-4 laptop:flex-wrap mt-4 flex flex-col gap-2",{"desktop:max-w-[648px]":f?.download?.title}),children:f?.storeBenefits?.reasons?.map(s=>(0,e.jsxs)("div",{className:"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2",children:[(0,e.jsx)("img",{src:s?.icon?.url,loading:"lazy",alt:s?.icon?.alt||"",className:"size-5 shrink-0"}),(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(s?.link,a)}?ref=footer`,asChild:!s?.link,className:"no-underline",children:(0,e.jsx)(o.Text,{html:s?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})})]},s?.id))})]}),(0,e.jsx)(w,{className:(0,n.cn)({"desktop:flex-[404] hidden desktop:block":f?.download?.title}),title:f?.download?.title,apps:f?.download?.apps})]}),(0,e.jsx)("div",{className:"desktop:block hidden h-px bg-[#3D3E3F]","aria-hidden":"true"}),(0,e.jsxs)("div",{className:"desktop:grid grid-cols-4 gap-4",children:[(0,e.jsx)(y,{title:p?.products?.title,lists:p?.products?.products}),(0,e.jsx)(y,{title:p?.explore?.title,lists:p?.explore?.explores}),(0,e.jsx)(y,{title:p?.support?.title,lists:p?.support?.supports}),(0,e.jsxs)("div",{className:"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4",children:[(0,e.jsxs)("div",{className:"desktop:pb-0 flex items-center justify-between pb-4",children:[(0,e.jsx)(o.Text,{as:"p",html:p?.contact?.title,className:"text-xl font-bold leading-[1.2] text-white",id:g}),i&&(0,e.jsx)("button",{onClick:()=>u(!r),"aria-expanded":r,"aria-controls":g,"aria-label":r?"Collapse contact section":"Expand contact section",children:r?(0,e.jsx)(m.SubtractIcon,{width:20,height:20}):(0,e.jsx)(m.AddIcon,{width:20,height:20})})]}),(r&&i||!i)&&(0,e.jsx)("div",{className:"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2",role:"region","aria-labelledby":g,children:p?.contact?.contacts?.map(s=>(0,e.jsxs)(o.Link,{href:s?.link,className:"group flex items-start gap-2 no-underline",children:[(0,e.jsx)("img",{src:s?.icon?.url,loading:"lazy",alt:s?.icon?.alt,className:"size-5 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"}),(0,e.jsx)(o.Text,{html:s?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] transition-colors duration-200 group-hover:text-white"})]},s?.id))}),(0,e.jsx)(B,{country:c||d,className:"desktop:hidden border-b border-[#3D3E3F]",isMobile:i,onChangeCountry:l?.country}),(0,e.jsx)("div",{className:"desktop:hidden mt-8",children:(0,e.jsx)(w,{title:f?.download?.title,apps:f?.download?.apps})}),!!p?.socials?.length&&(0,e.jsx)("div",{className:"mt-8 flex items-center gap-2",role:"list","aria-label":"Social media links",children:p?.socials?.map(s=>(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(s?.link,a)}?ref=footer`,className:"group",role:"listitem","aria-label":s?.icon?.alt||"Social media",children:(0,e.jsx)("img",{src:s?.icon?.url,loading:"lazy",alt:s?.icon?.alt,className:"size-8 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"})},s?.id))}),(0,e.jsx)("div",{className:"mt-4 flex flex-wrap gap-2",role:"list","aria-label":"Payment methods",children:p?.payment?.map(s=>(0,e.jsx)(o.Link,{href:(0,n.getLocalizedPath)(s?.link,a),asChild:!s?.link,role:"listitem","aria-label":s?.icon?.alt||"Payment method",children:(0,e.jsx)("img",{src:s?.icon?.url,loading:"lazy",alt:s?.icon?.alt||"",className:"h-[28px] w-[44px] shrink-0"})},s?.id))})]})]})]})},j=({data:t,isMobile:l,event:i,currentCountry:c})=>{const{locale:a="us"}=(0,b.useAiuiContext)();return(0,e.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,e.jsxs)("div",{className:"desktop:items-center desktop:flex desktop:gap-4",children:[(0,e.jsxs)("div",{className:"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4",children:[(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(t?.brand?.link,a)}?ref=footer`,asChild:!t?.brand?.link,children:(0,e.jsx)(o.Text,{html:t?.brand?.currentBrand,className:"cursor-pointer text-[#B6B6BA] hover:text-white"})}),(0,e.jsx)("div",{className:"laptop:block laptop:mb-[10px] hidden h-[20px] w-px bg-[#B6B6BA]"}),(0,e.jsx)("div",{className:"desktop:gap-6 flex flex-wrap items-center gap-4",children:t?.brand?.brands?.map(r=>(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(r?.link,a)}?ref=footer`,children:(0,e.jsx)(o.Text,{html:r?.icon,className:"text-[#B6B6BA] hover:text-white"})},r?.id))})]}),(0,e.jsx)(B,{country:c||t?.country,className:"desktop:flex-[316] desktop:block hidden",isMobile:l,onChangeCountry:i?.country})]}),(0,e.jsx)("div",{className:"h-px bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1",children:[(0,e.jsx)(o.Text,{html:t?.copyright?.label,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[t?.policy?.policies?.map(r=>(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(r?.link,a)}?ref=footer`,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white",children:r?.label},r?.id)),t?.policy?.cookies&&(0,e.jsx)("button",{"data-cc":"show-preferencesModal",onClick:i?.cookiesSet,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black","aria-label":`Cookie preferences: ${t?.policy?.cookies}`,children:t?.policy?.cookies})]})]})]})},y=({title:t,lists:l,className:i})=>{const{locale:c="us"}=(0,b.useAiuiContext)(),[a,r]=(0,x.useState)(!1),[u,f]=(0,x.useState)(!1),p=(0,v.useMediaQuery)({query:"(max-width: 1439px)"});(0,x.useEffect)(()=>{f(p)},[p]);const d=`nav-section-${t?.replace(/\s+/g,"-").toLowerCase()}`;return(0,e.jsxs)("div",{className:(0,n.cn)("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",i),children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsx)(o.Text,{as:"p",html:t,className:"text-xl font-bold leading-[1.2] text-white",id:d}),u&&(0,e.jsx)("button",{onClick:()=>r(!a),"aria-expanded":a,"aria-controls":d,"aria-label":a?`Collapse ${t}`:`Expand ${t}`,className:"focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black",children:a?(0,e.jsx)(m.SubtractIcon,{width:20,height:20}):(0,e.jsx)(m.AddIcon,{width:20,height:20})})]}),(a&&u||!u)&&(0,e.jsx)("nav",{className:"mt-4 flex flex-col gap-2",role:"region","aria-labelledby":d,children:l?.map(g=>(0,e.jsx)(o.Link,{href:`${(0,n.getLocalizedPath)(g?.link,c)}?ref=footer`,className:"no-underline",children:(0,e.jsx)(o.Text,{html:g?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white"})},g?.id))})]})},w=({title:t,apps:l,className:i})=>{const{locale:c="us"}=(0,b.useAiuiContext)();return l?.length?(0,e.jsxs)("div",{className:i,children:[(0,e.jsx)(o.Text,{html:t,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex items-center gap-4",role:"list","aria-label":"Download apps",children:l?.map(a=>(0,e.jsxs)(o.Link,{href:(0,n.getLocalizedPath)(a?.link,c),className:"group flex flex-col items-center gap-[6px]",role:"listitem","aria-label":a?.icon?.alt||a?.label||"Download app",children:[(0,e.jsx)("img",{src:a?.icon?.url,loading:"lazy",alt:a?.icon?.alt,className:"size-10 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"}),a?.label&&(0,e.jsx)(o.Text,{html:a?.label,className:"text-xs font-bold text-[#999999] transition-colors duration-200 group-hover:text-white"})]},a?.id))})]}):null},B=({country:t,isMobile:l,className:i,onChangeCountry:c})=>(0,e.jsx)("div",{className:(0,n.cn)("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",i),children:(0,e.jsxs)("button",{onClick:()=>c?.(),className:"flex w-full items-center justify-between focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black","aria-label":`Change country/region, current: ${t?.countryName||t?.country}`,children:[(0,e.jsxs)("div",{className:"group flex items-center gap-2",children:[(0,e.jsx)(m.CountryIcon,{width:20,height:20,className:"shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100","aria-hidden":"true"}),(0,e.jsx)(o.Text,{as:"span",html:t?.countryName||t?.country,className:"desktop:text-[#B6B6BA] desktop:group-hover:text-white text-base font-bold leading-[1.4] text-white transition-colors duration-200"})]}),l&&(0,e.jsx)(m.ArrowRightIcon,{width:20,height:20,"aria-hidden":"true"})]})});var Q=(0,M.withLayout)(T);
1
+ "use strict";var L=Object.create;var k=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var D=Object.getOwnPropertyNames;var F=Object.getPrototypeOf,z=Object.prototype.hasOwnProperty;var E=(t,s)=>{for(var l in s)k(t,l,{get:s[l],enumerable:!0})},N=(t,s,l,d)=>{if(s&&typeof s=="object"||typeof s=="function")for(let a of D(s))!z.call(t,a)&&a!==l&&k(t,a,{get:()=>s[a],enumerable:!(d=A(s,a))||d.enumerable});return t};var S=(t,s,l)=>(l=t!=null?L(F(t)):{},N(s||!t||!t.__esModule?k(l,"default",{value:t,enumerable:!0}):l,t)),$=t=>N(k({},"__esModule",{value:!0}),t);var q={};E(q,{default:()=>Q});module.exports=$(q);var e=require("react/jsx-runtime"),f=require("react"),i=require("../../components/index.js"),C=S(require("../Subscribe/index.js")),h=require("./types.js"),x=require("./icons/index.js"),v=require("react-responsive"),n=require("../../helpers/utils.js"),b=require("../AiuiProvider/index.js"),M=require("../../shared/Styles.js");const T=({data:{footer:t}={},currentCountry:s,event:l,subscribeLoading:d,classNames:a,className:r,...g})=>{const[p,c]=(0,f.useState)(!1),u=(0,v.useMediaQuery)({query:"(max-width: 1439px)"});(0,f.useEffect)(()=>{c(u)},[u]);const m=(0,f.useMemo)(()=>t?.blocks?.find(o=>o?.blockType===h.FooterNavigationBlockType.Brand)?.country||{},[t]);return(0,e.jsx)("footer",{...g,className:(0,n.cn)(a?.root,r),children:(0,e.jsxs)(i.Container,{className:(0,n.cn)(a?.child),childClassName:(0,n.cn)("laptop:py-16 desktop:gap-16 flex flex-col gap-8 bg-black py-8"),children:[(0,e.jsx)(i.Text,{html:t?.story,className:"desktop:text-sm text-xs font-bold text-[#6D6D6F]"}),t?.blocks?.map(o=>{if(o?.blockType===h.FooterNavigationBlockType.Signup)return(0,e.jsx)(P,{subscribeLoading:d,data:o,onSubmit:l?.signup},o.id);if(o?.blockType===h.FooterNavigationBlockType.Brand)return(0,e.jsx)(j,{data:o,isMobile:p,event:l,currentCountry:s},o?.id);if(o?.blockType===h.FooterNavigationBlockType.Main)return(0,e.jsx)(O,{data:{...o,country:m},event:l,isMobile:p,currentCountry:s},o.id)})]})})},P=({data:t,onSubmit:s,subscribeLoading:l})=>{const{locale:d="us"}=(0,b.useAiuiContext)();return(0,e.jsxs)("div",{className:"desktop:py-16 desktop:gap-16 laptop:px-8 desktop:flex-row rounded-btn flex flex-col gap-8 bg-[#1E2024] px-4 py-8",children:[(0,e.jsx)(C.default,{subscribeMetadata:t?.signup,className:"desktop:flex-[744]",onSubmit:s,loading:l}),(0,e.jsx)("div",{className:"desktop:hidden h-px w-full bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"desktop:gap-6 laptop:flex-row desktop:flex-[792] flex flex-col gap-4",children:[(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)(i.Text,{html:t?.enjoy?.title,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex flex-col gap-2",children:t?.enjoy?.enjoys?.map(a=>(0,e.jsxs)("div",{className:"flex-start flex gap-2",children:[(0,e.jsx)("img",{src:a?.icon?.url,loading:"lazy",alt:a?.icon?.alt||"",className:"size-5 shrink-0"}),(0,e.jsx)(i.Text,{html:a?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})]},a?.id))})]}),(0,e.jsx)("div",{className:"desktop:block hidden w-px bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"flex-1",children:[(0,e.jsx)(i.Text,{html:t?.benefit?.title,className:"text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex flex-col gap-2",children:t?.benefit?.benefits?.map(a=>(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(a?.link,d)}?ref=footer`,asChild:!a?.link,className:"no-underline",children:(0,e.jsx)(i.Text,{html:a?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white"})},a?.id))})]})]})]})},O=({data:t,event:s,isMobile:l,currentCountry:d})=>{const{locale:a="us"}=(0,b.useAiuiContext)(),[r,g]=(0,f.useState)(!1),{services:p,mainNav:c,country:u}=t,m="contact-section";return(0,e.jsxs)("nav",{className:"flex flex-col gap-8","aria-label":"Main navigation",children:[(0,e.jsxs)("div",{className:(0,n.cn)({"desktop:gap-16 flex":p?.download?.title}),children:[(0,e.jsxs)("div",{className:(0,n.cn)("w-full",{"desktop:flex-[1260]":p?.download?.title}),children:[(0,e.jsx)(i.Text,{html:p?.storeBenefits?.title,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:(0,n.cn)("laptop:flex-row desktop:gap-4 laptop:flex-wrap mt-4 flex flex-col gap-2",{"desktop:max-w-[648px]":p?.download?.title}),children:p?.storeBenefits?.reasons?.map(o=>(0,e.jsxs)("div",{className:"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2",children:[(0,e.jsx)("img",{src:o?.icon?.url,loading:"lazy",alt:o?.icon?.alt||"",className:"size-5 shrink-0"}),(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(o?.link,a)}?ref=footer`,asChild:!o?.link,className:"no-underline",children:(0,e.jsx)(i.Text,{html:o?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]"})})]},o?.id))})]}),(0,e.jsx)(w,{className:(0,n.cn)({"desktop:flex-[404] hidden desktop:block":p?.download?.title}),title:p?.download?.title,apps:p?.download?.apps})]}),(0,e.jsx)("div",{className:"desktop:block hidden h-px bg-[#3D3E3F]","aria-hidden":"true"}),(0,e.jsxs)("div",{className:"desktop:grid grid-cols-4 gap-4",children:[(0,e.jsx)(y,{title:c?.products?.title,lists:c?.products?.products}),(0,e.jsx)(y,{title:c?.explore?.title,lists:c?.explore?.explores}),(0,e.jsx)(y,{title:c?.support?.title,lists:c?.support?.supports}),(0,e.jsxs)("div",{className:"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4",children:[(0,e.jsxs)("div",{className:"desktop:pb-0 flex items-center justify-between pb-4",children:[(0,e.jsx)(i.Text,{as:"p",html:c?.contact?.title,className:"text-xl font-bold leading-[1.2] text-white",id:m}),l&&(0,e.jsx)("button",{onClick:()=>g(!r),"aria-expanded":r,"aria-controls":m,"aria-label":r?"Collapse contact section":"Expand contact section",children:r?(0,e.jsx)(x.SubtractIcon,{width:20,height:20}):(0,e.jsx)(x.AddIcon,{width:20,height:20})})]}),(r&&l||!l)&&(0,e.jsx)("div",{className:"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2",role:"region","aria-labelledby":m,children:c?.contact?.contacts?.map(o=>(0,e.jsxs)(i.Link,{href:o?.link,className:"group flex items-start gap-2 no-underline",children:[(0,e.jsx)("img",{src:o?.icon?.url,loading:"lazy",alt:o?.icon?.alt,className:"size-5 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"}),(0,e.jsx)(i.Text,{html:o?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] transition-colors duration-200 group-hover:text-white"})]},o?.id))}),(0,e.jsx)(B,{country:d||u,className:"desktop:hidden border-b border-[#3D3E3F]",isMobile:l,onChangeCountry:s?.country}),(0,e.jsx)("div",{className:"desktop:hidden mt-8",children:(0,e.jsx)(w,{title:p?.download?.title,apps:p?.download?.apps})}),!!c?.socials?.length&&(0,e.jsx)("div",{className:"mt-8 flex items-center gap-2",role:"list","aria-label":"Social media links",children:c?.socials?.map(o=>(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(o?.link,a)}?ref=footer`,className:"group",role:"listitem","aria-label":o?.icon?.alt||"Social media",children:(0,e.jsx)("img",{src:o?.icon?.url,loading:"lazy",alt:o?.icon?.alt,className:"size-8 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"})},o?.id))}),(0,e.jsx)("div",{className:"mt-4 flex flex-wrap gap-2",role:"list","aria-label":"Payment methods",children:c?.payment?.map(o=>(0,e.jsx)(i.Link,{href:(0,n.getLocalizedPath)(o?.link,a),asChild:!o?.link,role:"listitem","aria-label":o?.icon?.alt||"Payment method",children:(0,e.jsx)("img",{src:o?.icon?.url,loading:"lazy",alt:o?.icon?.alt||"",className:"h-[28px] w-[44px] shrink-0"})},o?.id))})]})]})]})},j=({data:t,isMobile:s,event:l,currentCountry:d})=>{const{locale:a="us"}=(0,b.useAiuiContext)();return(0,e.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,e.jsxs)("div",{className:"desktop:items-center desktop:flex desktop:gap-4",children:[(0,e.jsxs)("div",{className:"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4",children:[(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(t?.brand?.link,a)}?ref=footer`,asChild:!t?.brand?.link,children:(0,e.jsx)(i.Text,{html:t?.brand?.currentBrand,className:"cursor-pointer text-[#B6B6BA] hover:text-white"})}),(0,e.jsx)("div",{className:"laptop:block laptop:mb-[10px] hidden h-[20px] w-px bg-[#B6B6BA]"}),(0,e.jsx)("div",{className:"desktop:gap-6 flex flex-wrap items-center gap-4",children:t?.brand?.brands?.map(r=>(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(r?.link,a)}?ref=footer`,children:(0,e.jsx)(i.Text,{html:r?.icon,className:"text-[#B6B6BA] hover:text-white"})},r?.id))})]}),(0,e.jsx)(B,{country:d||t?.country,className:"desktop:flex-[316] desktop:block hidden",isMobile:s,onChangeCountry:l?.country})]}),(0,e.jsx)("div",{className:"h-px bg-[#3D3E3F]"}),(0,e.jsxs)("div",{className:"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1",children:[(0,e.jsx)(i.Text,{html:t?.copyright?.label,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]"}),(0,e.jsxs)("div",{className:"flex flex-wrap items-center gap-x-2 gap-y-1",children:[t?.policy?.policies?.map(r=>(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(r?.link,a)}?ref=footer`,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white",children:r?.label},r?.id)),t?.policy?.cookies&&(0,e.jsx)("button",{"data-cc":"show-preferencesModal",onClick:l?.cookiesSet,className:"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black","aria-label":`Cookie preferences: ${t?.policy?.cookies}`,children:t?.policy?.cookies})]})]})]})},y=({title:t,lists:s,className:l})=>{const{locale:d="us"}=(0,b.useAiuiContext)(),[a,r]=(0,f.useState)(!1),[g,p]=(0,f.useState)(!1),c=(0,v.useMediaQuery)({query:"(max-width: 1439px)"});(0,f.useEffect)(()=>{p(c)},[c]);const u=`nav-section-${t?.replace(/\s+/g,"-").toLowerCase()}`;return(0,e.jsxs)("div",{className:(0,n.cn)("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",l),children:[(0,e.jsxs)("div",{className:"flex items-center justify-between",children:[(0,e.jsx)(i.Text,{as:"p",html:t,className:"text-xl font-bold leading-[1.2] text-white",id:u}),g&&(0,e.jsx)("button",{onClick:()=>r(!a),"aria-expanded":a,"aria-controls":u,"aria-label":a?`Collapse ${t}`:`Expand ${t}`,className:"focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black",children:a?(0,e.jsx)(x.SubtractIcon,{width:20,height:20}):(0,e.jsx)(x.AddIcon,{width:20,height:20})})]}),(a&&g||!g)&&(0,e.jsx)("nav",{className:"mt-4 flex flex-col gap-2",role:"region","aria-labelledby":u,children:s?.map(m=>(0,e.jsx)(i.Link,{href:`${(0,n.getLocalizedPath)(m?.link,d)}?ref=footer`,className:"no-underline",children:(0,e.jsx)(i.Text,{html:m?.label,className:"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white"})},m?.id))})]})},w=({title:t,apps:s,className:l})=>{const{locale:d="us"}=(0,b.useAiuiContext)();return s?.length?(0,e.jsxs)("div",{className:l,children:[(0,e.jsx)(i.Text,{html:t,className:" text-xl font-bold leading-[1.2] text-white"}),(0,e.jsx)("div",{className:"mt-4 flex items-center gap-4",role:"list","aria-label":"Download apps",children:s?.map(a=>(0,e.jsxs)(i.Link,{href:(0,n.getLocalizedPath)(a?.link,d),className:"group flex flex-col items-center gap-[6px]",role:"listitem","aria-label":a?.icon?.alt||a?.label||"Download app",children:[(0,e.jsx)("img",{src:a?.icon?.url,loading:"lazy",alt:a?.icon?.alt,className:"size-10 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100"}),a?.label&&(0,e.jsx)(i.Text,{html:a?.label,className:"text-xs font-bold text-[#999999] transition-colors duration-200 group-hover:text-white"})]},a?.id))})]}):null},B=({country:t,isMobile:s,className:l,onChangeCountry:d})=>(0,e.jsx)("div",{className:(0,n.cn)("desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4",l),children:(0,e.jsxs)("button",{onClick:()=>d?.(),className:"flex w-full items-center justify-between focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black","aria-label":`Change country/region, current: ${t?.countryName||t?.country}`,children:[(0,e.jsxs)("div",{className:"group flex items-center gap-2",children:[(0,e.jsx)(x.CountryIcon,{width:20,height:20,className:"shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100","aria-hidden":"true"}),(0,e.jsx)(i.Text,{as:"span",html:t?.countryName||t?.country,className:"desktop:text-[#B6B6BA] desktop:group-hover:text-white text-base font-bold leading-[1.4] text-white transition-colors duration-200"})]}),s&&(0,e.jsx)(x.ArrowRightIcon,{width:20,height:20,"aria-hidden":"true"})]})});var Q=(0,M.withLayout)(T);
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/FooterNavigation/index.tsx"],
4
- "sourcesContent": ["import { useEffect, useMemo, useState } from 'react'\nimport { Text, Container, Link } from '../../components/index.js'\nimport Subscribe from '../Subscribe/index.js'\nimport type { FooterNavigationProps } from './types.js'\nimport { FooterNavigationBlockType } from './types.js'\nimport { AddIcon, SubtractIcon, ArrowRightIcon, CountryIcon } from './icons/index.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { cn, getLocalizedPath } from '../../helpers/utils.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { withLayout } from '../../shared/Styles.js'\n\nconst FooterNavigation = ({\n data: { footer } = {},\n currentCountry,\n event,\n subscribeLoading,\n classNames,\n}: FooterNavigationProps) => {\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1439px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const country = useMemo(() => {\n return footer?.blocks?.find((block: any) => block?.blockType === FooterNavigationBlockType.Brand)?.country || {}\n }, [footer])\n\n return (\n <footer className={cn(classNames?.root)}>\n <Container\n className={cn(classNames?.child)}\n childClassName={cn('laptop:py-16 desktop:gap-16 flex flex-col gap-8 bg-black py-8')}\n >\n <Text html={footer?.story} className=\"desktop:text-sm text-xs font-bold text-[#6D6D6F]\" />\n {footer?.blocks?.map((block: any) => {\n if (block?.blockType === FooterNavigationBlockType.Signup) {\n return (\n <MarketingConversion\n key={block.id}\n subscribeLoading={subscribeLoading}\n data={block}\n onSubmit={event?.signup}\n />\n )\n }\n if (block?.blockType === FooterNavigationBlockType.Brand) {\n return (\n <FooterBrand\n key={block?.id}\n data={block}\n isMobile={isMobile}\n event={event}\n currentCountry={currentCountry}\n />\n )\n }\n if (block?.blockType === FooterNavigationBlockType.Main) {\n return (\n <MainServices\n key={block.id}\n data={{ ...block, country }}\n event={event}\n isMobile={isMobile}\n currentCountry={currentCountry}\n />\n )\n }\n })}\n </Container>\n </footer>\n )\n}\n\n/**\n * MarketingConversion \u8425\u9500\u8F6C\u5316\u6A21\u5757\n * @param data\n * @param onSubmit signup\u63D0\u4EA4\u4E8B\u4EF6\n * @returns\n */\nconst MarketingConversion = ({\n data,\n onSubmit,\n subscribeLoading,\n}: {\n data: any\n onSubmit?: (_params: any) => void\n subscribeLoading?: boolean\n}) => {\n const { locale = 'us' } = useAiuiContext()\n\n return (\n <div className=\"desktop:py-16 desktop:gap-16 laptop:px-8 desktop:flex-row rounded-btn flex flex-col gap-8 bg-[#1E2024] px-4 py-8\">\n <Subscribe\n subscribeMetadata={data?.signup}\n className=\"desktop:flex-[744]\"\n onSubmit={onSubmit}\n loading={subscribeLoading}\n />\n <div className=\"desktop:hidden h-px w-full bg-[#3D3E3F]\" />\n <div className=\"desktop:gap-6 laptop:flex-row desktop:flex-[792] flex flex-col gap-4\">\n <div className=\"flex-1\">\n <Text html={data?.enjoy?.title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.enjoy?.enjoys?.map((enjoyItem: any) => (\n <div key={enjoyItem?.id} className=\"flex-start flex gap-2\">\n <img\n src={enjoyItem?.icon?.url}\n loading=\"lazy\"\n alt={enjoyItem?.icon?.alt || ''}\n className=\"size-5 shrink-0\"\n />\n <Text\n html={enjoyItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </div>\n ))}\n </div>\n </div>\n <div className=\"desktop:block hidden w-px bg-[#3D3E3F]\" />\n <div className=\"flex-1\">\n <Text html={data?.benefit?.title} className=\"text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.benefit?.benefits?.map((benefitItem: any) => (\n <Link\n href={`${getLocalizedPath(benefitItem?.link, locale)}?ref=footer`}\n asChild={!benefitItem?.link}\n key={benefitItem?.id}\n className=\"no-underline\"\n >\n <Text\n html={benefitItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\n/**\n * MainServices \u4E3B\u5BFC\u822A\u4E0E\u670D\u52A1\u6A21\u5757\n * @param services \u670D\u52A1\n * @param mainNav \u4E3B\u5BFC\u822A\n * @param event \u4E8B\u4EF6\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @param currentCountry \u5F53\u524D\u56FD\u5BB6\n * @returns\n */\nconst MainServices = ({\n data,\n event,\n isMobile,\n currentCountry,\n}: {\n data: any\n event: any\n isMobile: boolean\n currentCountry: any\n}) => {\n const { locale = 'us' } = useAiuiContext()\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const { services, mainNav, country } = data\n const contactSectionId = 'contact-section'\n\n return (\n <nav className=\"flex flex-col gap-8\" aria-label=\"Main navigation\">\n <div\n className={cn({\n 'desktop:gap-16 flex': services?.download?.title,\n })}\n >\n <div\n className={cn('w-full', {\n 'desktop:flex-[1260]': services?.download?.title,\n })}\n >\n <Text html={services?.storeBenefits?.title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div\n className={cn('laptop:flex-row desktop:gap-4 laptop:flex-wrap mt-4 flex flex-col gap-2', {\n 'desktop:max-w-[648px]': services?.download?.title,\n })}\n >\n {services?.storeBenefits?.reasons?.map((reasonItem: any) => (\n <div key={reasonItem?.id} className=\"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2\">\n <img\n src={reasonItem?.icon?.url}\n loading=\"lazy\"\n alt={reasonItem?.icon?.alt || ''}\n className=\"size-5 shrink-0\"\n />\n <Link\n href={`${getLocalizedPath(reasonItem?.link, locale)}?ref=footer`}\n asChild={!reasonItem?.link}\n className=\"no-underline\"\n >\n <Text\n html={reasonItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </Link>\n </div>\n ))}\n </div>\n </div>\n <DownloadApp\n className={cn({\n 'desktop:flex-[404] hidden desktop:block': services?.download?.title,\n })}\n title={services?.download?.title}\n apps={services?.download?.apps}\n />\n </div>\n <div className=\"desktop:block hidden h-px bg-[#3D3E3F]\" aria-hidden=\"true\" />\n <div className=\"desktop:grid grid-cols-4 gap-4\">\n <MainNavMenu title={mainNav?.products?.title} lists={mainNav?.products?.products} />\n <MainNavMenu title={mainNav?.explore?.title} lists={mainNav?.explore?.explores} />\n <MainNavMenu title={mainNav?.support?.title} lists={mainNav?.support?.supports} />\n <div className=\"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4\">\n <div className=\"desktop:pb-0 flex items-center justify-between pb-4\">\n <Text\n as=\"p\"\n html={mainNav?.contact?.title}\n className=\"text-xl font-bold leading-[1.2] text-white\"\n id={contactSectionId}\n />\n {isMobile && (\n <button\n onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}\n aria-expanded={mainNavMenuOpen}\n aria-controls={contactSectionId}\n aria-label={mainNavMenuOpen ? 'Collapse contact section' : 'Expand contact section'}\n >\n {mainNavMenuOpen ? <SubtractIcon width={20} height={20} /> : <AddIcon width={20} height={20} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div\n className=\"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2\"\n role=\"region\"\n aria-labelledby={contactSectionId}\n >\n {mainNav?.contact?.contacts?.map((contactItem: any) => (\n <Link\n key={contactItem?.id}\n href={contactItem?.link}\n className=\"group flex items-start gap-2 no-underline\"\n >\n <img\n src={contactItem?.icon?.url}\n loading=\"lazy\"\n alt={contactItem?.icon?.alt}\n className=\"size-5 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n <Text\n html={contactItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] transition-colors duration-200 group-hover:text-white\"\n />\n </Link>\n ))}\n </div>\n )}\n <ChangeCountry\n country={currentCountry || country}\n className=\"desktop:hidden border-b border-[#3D3E3F]\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n <div className=\"desktop:hidden mt-8\">\n <DownloadApp title={services?.download?.title} apps={services?.download?.apps} />\n </div>\n {!!mainNav?.socials?.length && (\n <div className=\"mt-8 flex items-center gap-2\" role=\"list\" aria-label=\"Social media links\">\n {mainNav?.socials?.map((socialItem: any) => (\n <Link\n href={`${getLocalizedPath(socialItem?.link, locale)}?ref=footer`}\n key={socialItem?.id}\n className=\"group\"\n role=\"listitem\"\n aria-label={socialItem?.icon?.alt || 'Social media'}\n >\n <img\n src={socialItem?.icon?.url}\n loading=\"lazy\"\n alt={socialItem?.icon?.alt}\n className=\"size-8 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n </Link>\n ))}\n </div>\n )}\n <div className=\"mt-4 flex flex-wrap gap-2\" role=\"list\" aria-label=\"Payment methods\">\n {mainNav?.payment?.map((paymentItem: any) => (\n <Link\n href={getLocalizedPath(paymentItem?.link, locale)}\n asChild={!paymentItem?.link}\n key={paymentItem?.id}\n role=\"listitem\"\n aria-label={paymentItem?.icon?.alt || 'Payment method'}\n >\n <img\n src={paymentItem?.icon?.url}\n loading=\"lazy\"\n alt={paymentItem?.icon?.alt || ''}\n className=\"h-[28px] w-[44px] shrink-0\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </nav>\n )\n}\n\nconst FooterBrand = ({\n data,\n isMobile,\n event,\n currentCountry,\n}: {\n data: any\n isMobile: boolean\n event: any\n currentCountry: any\n}) => {\n const { locale = 'us' } = useAiuiContext()\n\n return (\n <div className=\"flex flex-col gap-4\">\n <div className=\"desktop:items-center desktop:flex desktop:gap-4\">\n <div className=\"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4\">\n <Link href={`${getLocalizedPath(data?.brand?.link, locale)}?ref=footer`} asChild={!data?.brand?.link}>\n <Text html={data?.brand?.currentBrand} className=\"cursor-pointer text-[#B6B6BA] hover:text-white\" />\n </Link>\n <div className=\"laptop:block laptop:mb-[10px] hidden h-[20px] w-px bg-[#B6B6BA]\" />\n <div className=\"desktop:gap-6 flex flex-wrap items-center gap-4\">\n {data?.brand?.brands?.map((brandItem: any) => (\n <Link href={`${getLocalizedPath(brandItem?.link, locale)}?ref=footer`} key={brandItem?.id}>\n <Text html={brandItem?.icon} className=\"text-[#B6B6BA] hover:text-white\" />\n </Link>\n ))}\n </div>\n </div>\n <ChangeCountry\n country={currentCountry || data?.country}\n className=\"desktop:flex-[316] desktop:block hidden\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n </div>\n <div className=\"h-px bg-[#3D3E3F]\" />\n <div className=\"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1\">\n <Text\n html={data?.copyright?.label}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n <div className=\"flex flex-wrap items-center gap-x-2 gap-y-1\">\n {data?.policy?.policies?.map((policyItem: any) => (\n <Link\n href={`${getLocalizedPath(policyItem?.link, locale)}?ref=footer`}\n key={policyItem?.id}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white\"\n >\n {policyItem?.label}\n </Link>\n ))}\n {data?.policy?.cookies && (\n <button\n data-cc=\"show-preferencesModal\"\n onClick={event?.cookiesSet}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n aria-label={`Cookie preferences: ${data?.policy?.cookies}`}\n >\n {data?.policy?.cookies}\n </button>\n )}\n </div>\n </div>\n </div>\n )\n}\n\nconst MainNavMenu = ({ title, lists, className }: { title: string; lists: any[]; className?: string }) => {\n const { locale = 'us' } = useAiuiContext()\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1439px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const sectionId = `nav-section-${title?.replace(/\\s+/g, '-').toLowerCase()}`\n\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <Text as=\"p\" html={title} className=\"text-xl font-bold leading-[1.2] text-white\" id={sectionId} />\n {isMobile && (\n <button\n onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}\n aria-expanded={mainNavMenuOpen}\n aria-controls={sectionId}\n aria-label={mainNavMenuOpen ? `Collapse ${title}` : `Expand ${title}`}\n className=\"focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n >\n {mainNavMenuOpen ? <SubtractIcon width={20} height={20} /> : <AddIcon width={20} height={20} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <nav className=\"mt-4 flex flex-col gap-2\" role=\"region\" aria-labelledby={sectionId}>\n {lists?.map((item: any) => (\n <Link href={`${getLocalizedPath(item?.link, locale)}?ref=footer`} key={item?.id} className=\"no-underline\">\n <Text\n html={item?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white\"\n />\n </Link>\n ))}\n </nav>\n )}\n </div>\n )\n}\n\n/**\n * DownloadApp \u4E0B\u8F7D\u5E94\u7528\u6A21\u5757\n * @param title\n * @param apps\n * @param className\n * @returns\n */\nconst DownloadApp = ({ title, apps, className }: { title: string; apps: any[]; className?: string }) => {\n const { locale = 'us' } = useAiuiContext()\n\n if (!apps?.length) return null\n return (\n <div className={className}>\n <Text html={title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex items-center gap-4\" role=\"list\" aria-label=\"Download apps\">\n {apps?.map((appItem: any) => (\n <Link\n key={appItem?.id}\n href={getLocalizedPath(appItem?.link, locale)}\n className=\"group flex flex-col items-center gap-[6px]\"\n role=\"listitem\"\n aria-label={appItem?.icon?.alt || appItem?.label || 'Download app'}\n >\n <img\n src={appItem?.icon?.url}\n loading=\"lazy\"\n alt={appItem?.icon?.alt}\n className=\"size-10 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n {appItem?.label && (\n <Text\n html={appItem?.label}\n className=\"text-xs font-bold text-[#999999] transition-colors duration-200 group-hover:text-white\"\n />\n )}\n </Link>\n ))}\n </div>\n </div>\n )\n}\n\n/**\n * ChangeCountry \u5207\u6362\u56FD\u5BB6\u6A21\u5757\n * @param data \u6570\u636E\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @returns\n */\nconst ChangeCountry = ({\n country,\n isMobile,\n className,\n onChangeCountry,\n}: {\n country: any\n isMobile: boolean\n className?: string\n onChangeCountry?: () => void\n}) => {\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <button\n onClick={() => onChangeCountry?.()}\n className=\"flex w-full items-center justify-between focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n aria-label={`Change country/region, current: ${country?.countryName || country?.country}`}\n >\n <div className=\"group flex items-center gap-2\">\n <CountryIcon\n width={20}\n height={20}\n className=\"shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n aria-hidden=\"true\"\n />\n <Text\n as=\"span\"\n html={country?.countryName || country?.country}\n className=\"desktop:text-[#B6B6BA] desktop:group-hover:text-white text-base font-bold leading-[1.4] text-white transition-colors duration-200\"\n />\n </div>\n {isMobile && <ArrowRightIcon width={20} height={20} aria-hidden=\"true\" />}\n </button>\n </div>\n )\n}\n\nexport default withLayout(FooterNavigation)\n"],
5
- "mappings": "0jBAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GAgCM,IAAAI,EAAA,6BAhCNC,EAA6C,iBAC7CC,EAAsC,qCACtCC,EAAsB,oCAEtBC,EAA0C,sBAC1CC,EAAmE,4BACnEC,EAA8B,4BAC9BC,EAAqC,kCACrCC,EAA+B,oCAC/BC,EAA2B,kCAE3B,MAAMC,EAAmB,CAAC,CACxB,KAAM,CAAE,OAAAC,CAAO,EAAI,CAAC,EACpB,eAAAC,EACA,MAAAC,EACA,iBAAAC,EACA,WAAAC,CACF,IAA6B,CAC3B,KAAM,CAACC,EAAUC,CAAW,KAAI,YAAS,EAAK,EAExCC,KAAa,iBAAc,CAAE,MAAO,qBAAsB,CAAC,KAEjE,aAAU,IAAM,CACdD,EAAYC,CAAU,CACxB,EAAG,CAACA,CAAU,CAAC,EAEf,MAAMC,KAAU,WAAQ,IACfR,GAAQ,QAAQ,KAAMS,GAAeA,GAAO,YAAc,4BAA0B,KAAK,GAAG,SAAW,CAAC,EAC9G,CAACT,CAAM,CAAC,EAEX,SACE,OAAC,UAAO,aAAW,MAAGI,GAAY,IAAI,EACpC,oBAAC,aACC,aAAW,MAAGA,GAAY,KAAK,EAC/B,kBAAgB,MAAG,+DAA+D,EAElF,oBAAC,QAAK,KAAMJ,GAAQ,MAAO,UAAU,mDAAmD,EACvFA,GAAQ,QAAQ,IAAKS,GAAe,CACnC,GAAIA,GAAO,YAAc,4BAA0B,OACjD,SACE,OAACC,EAAA,CAEC,iBAAkBP,EAClB,KAAMM,EACN,SAAUP,GAAO,QAHZO,EAAM,EAIb,EAGJ,GAAIA,GAAO,YAAc,4BAA0B,MACjD,SACE,OAACE,EAAA,CAEC,KAAMF,EACN,SAAUJ,EACV,MAAOH,EACP,eAAgBD,GAJXQ,GAAO,EAKd,EAGJ,GAAIA,GAAO,YAAc,4BAA0B,KACjD,SACE,OAACG,EAAA,CAEC,KAAM,CAAE,GAAGH,EAAO,QAAAD,CAAQ,EAC1B,MAAON,EACP,SAAUG,EACV,eAAgBJ,GAJXQ,EAAM,EAKb,CAGN,CAAC,GACH,EACF,CAEJ,EAQMC,EAAsB,CAAC,CAC3B,KAAAG,EACA,SAAAC,EACA,iBAAAX,CACF,IAIM,CACJ,KAAM,CAAE,OAAAY,EAAS,IAAK,KAAI,kBAAe,EAEzC,SACE,QAAC,OAAI,UAAU,mHACb,oBAAC,EAAAC,QAAA,CACC,kBAAmBH,GAAM,OACzB,UAAU,qBACV,SAAUC,EACV,QAASX,EACX,KACA,OAAC,OAAI,UAAU,0CAA0C,KACzD,QAAC,OAAI,UAAU,uEACb,qBAAC,OAAI,UAAU,SACb,oBAAC,QAAK,KAAMU,GAAM,OAAO,MAAO,UAAU,8CAA8C,KACxF,OAAC,OAAI,UAAU,2BACZ,SAAAA,GAAM,OAAO,QAAQ,IAAKI,MACzB,QAAC,OAAwB,UAAU,wBACjC,oBAAC,OACC,IAAKA,GAAW,MAAM,IACtB,QAAQ,OACR,IAAKA,GAAW,MAAM,KAAO,GAC7B,UAAU,kBACZ,KACA,OAAC,QACC,KAAMA,GAAW,MACjB,UAAU,mEACZ,IAVQA,GAAW,EAWrB,CACD,EACH,GACF,KACA,OAAC,OAAI,UAAU,yCAAyC,KACxD,QAAC,OAAI,UAAU,SACb,oBAAC,QAAK,KAAMJ,GAAM,SAAS,MAAO,UAAU,6CAA6C,KACzF,OAAC,OAAI,UAAU,2BACZ,SAAAA,GAAM,SAAS,UAAU,IAAKK,MAC7B,OAAC,QACC,KAAM,MAAG,oBAAiBA,GAAa,KAAMH,CAAM,CAAC,cACpD,QAAS,CAACG,GAAa,KAEvB,UAAU,eAEV,mBAAC,QACC,KAAMA,GAAa,MACnB,UAAU,oFACZ,GANKA,GAAa,EAOpB,CACD,EACH,GACF,GACF,GACF,CAEJ,EAWMN,EAAe,CAAC,CACpB,KAAAC,EACA,MAAAX,EACA,SAAAG,EACA,eAAAJ,CACF,IAKM,CACJ,KAAM,CAAE,OAAAc,EAAS,IAAK,KAAI,kBAAe,EACnC,CAACI,EAAiBC,CAAkB,KAAI,YAAkB,EAAK,EAC/D,CAAE,SAAAC,EAAU,QAAAC,EAAS,QAAAd,CAAQ,EAAIK,EACjCU,EAAmB,kBAEzB,SACE,QAAC,OAAI,UAAU,sBAAsB,aAAW,kBAC9C,qBAAC,OACC,aAAW,MAAG,CACZ,sBAAuBF,GAAU,UAAU,KAC7C,CAAC,EAED,qBAAC,OACC,aAAW,MAAG,SAAU,CACtB,sBAAuBA,GAAU,UAAU,KAC7C,CAAC,EAED,oBAAC,QAAK,KAAMA,GAAU,eAAe,MAAO,UAAU,8CAA8C,KACpG,OAAC,OACC,aAAW,MAAG,0EAA2E,CACvF,wBAAyBA,GAAU,UAAU,KAC/C,CAAC,EAEA,SAAAA,GAAU,eAAe,SAAS,IAAKG,MACtC,QAAC,OAAyB,UAAU,gEAClC,oBAAC,OACC,IAAKA,GAAY,MAAM,IACvB,QAAQ,OACR,IAAKA,GAAY,MAAM,KAAO,GAC9B,UAAU,kBACZ,KACA,OAAC,QACC,KAAM,MAAG,oBAAiBA,GAAY,KAAMT,CAAM,CAAC,cACnD,QAAS,CAACS,GAAY,KACtB,UAAU,eAEV,mBAAC,QACC,KAAMA,GAAY,MAClB,UAAU,mEACZ,EACF,IAhBQA,GAAY,EAiBtB,CACD,EACH,GACF,KACA,OAACC,EAAA,CACC,aAAW,MAAG,CACZ,0CAA2CJ,GAAU,UAAU,KACjE,CAAC,EACD,MAAOA,GAAU,UAAU,MAC3B,KAAMA,GAAU,UAAU,KAC5B,GACF,KACA,OAAC,OAAI,UAAU,yCAAyC,cAAY,OAAO,KAC3E,QAAC,OAAI,UAAU,iCACb,oBAACK,EAAA,CAAY,MAAOJ,GAAS,UAAU,MAAO,MAAOA,GAAS,UAAU,SAAU,KAClF,OAACI,EAAA,CAAY,MAAOJ,GAAS,SAAS,MAAO,MAAOA,GAAS,SAAS,SAAU,KAChF,OAACI,EAAA,CAAY,MAAOJ,GAAS,SAAS,MAAO,MAAOA,GAAS,SAAS,SAAU,KAChF,QAAC,OAAI,UAAU,kEACb,qBAAC,OAAI,UAAU,sDACb,oBAAC,QACC,GAAG,IACH,KAAMA,GAAS,SAAS,MACxB,UAAU,6CACV,GAAIC,EACN,EACClB,MACC,OAAC,UACC,QAAS,IAAMe,EAAmB,CAACD,CAAe,EAClD,gBAAeA,EACf,gBAAeI,EACf,aAAYJ,EAAkB,2BAA6B,yBAE1D,SAAAA,KAAkB,OAAC,gBAAa,MAAO,GAAI,OAAQ,GAAI,KAAK,OAAC,WAAQ,MAAO,GAAI,OAAQ,GAAI,EAC/F,GAEJ,GACGA,GAAmBd,GAAa,CAACA,OAClC,OAAC,OACC,UAAU,qDACV,KAAK,SACL,kBAAiBkB,EAEhB,SAAAD,GAAS,SAAS,UAAU,IAAKK,MAChC,QAAC,QAEC,KAAMA,GAAa,KACnB,UAAU,4CAEV,oBAAC,OACC,IAAKA,GAAa,MAAM,IACxB,QAAQ,OACR,IAAKA,GAAa,MAAM,IACxB,UAAU,qFACZ,KACA,OAAC,QACC,KAAMA,GAAa,MACnB,UAAU,yHACZ,IAbKA,GAAa,EAcpB,CACD,EACH,KAEF,OAACC,EAAA,CACC,QAAS3B,GAAkBO,EAC3B,UAAU,2CACV,SAAUH,EACV,gBAAiBH,GAAO,QAC1B,KACA,OAAC,OAAI,UAAU,sBACb,mBAACuB,EAAA,CAAY,MAAOJ,GAAU,UAAU,MAAO,KAAMA,GAAU,UAAU,KAAM,EACjF,EACC,CAAC,CAACC,GAAS,SAAS,WACnB,OAAC,OAAI,UAAU,+BAA+B,KAAK,OAAO,aAAW,qBAClE,SAAAA,GAAS,SAAS,IAAKO,MACtB,OAAC,QACC,KAAM,MAAG,oBAAiBA,GAAY,KAAMd,CAAM,CAAC,cAEnD,UAAU,QACV,KAAK,WACL,aAAYc,GAAY,MAAM,KAAO,eAErC,mBAAC,OACC,IAAKA,GAAY,MAAM,IACvB,QAAQ,OACR,IAAKA,GAAY,MAAM,IACvB,UAAU,qFACZ,GAVKA,GAAY,EAWnB,CACD,EACH,KAEF,OAAC,OAAI,UAAU,4BAA4B,KAAK,OAAO,aAAW,kBAC/D,SAAAP,GAAS,SAAS,IAAKQ,MACtB,OAAC,QACC,QAAM,oBAAiBA,GAAa,KAAMf,CAAM,EAChD,QAAS,CAACe,GAAa,KAEvB,KAAK,WACL,aAAYA,GAAa,MAAM,KAAO,iBAEtC,mBAAC,OACC,IAAKA,GAAa,MAAM,IACxB,QAAQ,OACR,IAAKA,GAAa,MAAM,KAAO,GAC/B,UAAU,6BACZ,GATKA,GAAa,EAUpB,CACD,EACH,GACF,GACF,GACF,CAEJ,EAEMnB,EAAc,CAAC,CACnB,KAAAE,EACA,SAAAR,EACA,MAAAH,EACA,eAAAD,CACF,IAKM,CACJ,KAAM,CAAE,OAAAc,EAAS,IAAK,KAAI,kBAAe,EAEzC,SACE,QAAC,OAAI,UAAU,sBACb,qBAAC,OAAI,UAAU,kDACb,qBAAC,OAAI,UAAU,yFACb,oBAAC,QAAK,KAAM,MAAG,oBAAiBF,GAAM,OAAO,KAAME,CAAM,CAAC,cAAe,QAAS,CAACF,GAAM,OAAO,KAC9F,mBAAC,QAAK,KAAMA,GAAM,OAAO,aAAc,UAAU,iDAAiD,EACpG,KACA,OAAC,OAAI,UAAU,kEAAkE,KACjF,OAAC,OAAI,UAAU,kDACZ,SAAAA,GAAM,OAAO,QAAQ,IAAKkB,MACzB,OAAC,QAAK,KAAM,MAAG,oBAAiBA,GAAW,KAAMhB,CAAM,CAAC,cACtD,mBAAC,QAAK,KAAMgB,GAAW,KAAM,UAAU,kCAAkC,GADCA,GAAW,EAEvF,CACD,EACH,GACF,KACA,OAACH,EAAA,CACC,QAAS3B,GAAkBY,GAAM,QACjC,UAAU,0CACV,SAAUR,EACV,gBAAiBH,GAAO,QAC1B,GACF,KACA,OAAC,OAAI,UAAU,oBAAoB,KACnC,QAAC,OAAI,UAAU,qFACb,oBAAC,QACC,KAAMW,GAAM,WAAW,MACvB,UAAU,mEACZ,KACA,QAAC,OAAI,UAAU,8CACZ,UAAAA,GAAM,QAAQ,UAAU,IAAKmB,MAC5B,OAAC,QACC,KAAM,MAAG,oBAAiBA,GAAY,KAAMjB,CAAM,CAAC,cAEnD,UAAU,iGAET,SAAAiB,GAAY,OAHRA,GAAY,EAInB,CACD,EACAnB,GAAM,QAAQ,YACb,OAAC,UACC,UAAQ,wBACR,QAASX,GAAO,WAChB,UAAU,8LACV,aAAY,uBAAuBW,GAAM,QAAQ,OAAO,GAEvD,SAAAA,GAAM,QAAQ,QACjB,GAEJ,GACF,GACF,CAEJ,EAEMa,EAAc,CAAC,CAAE,MAAAO,EAAO,MAAAC,EAAO,UAAAC,CAAU,IAA2D,CACxG,KAAM,CAAE,OAAApB,EAAS,IAAK,KAAI,kBAAe,EACnC,CAACI,EAAiBC,CAAkB,KAAI,YAAkB,EAAK,EAC/D,CAACf,EAAUC,CAAW,KAAI,YAAS,EAAK,EAExCC,KAAa,iBAAc,CAAE,MAAO,qBAAsB,CAAC,KAEjE,aAAU,IAAM,CACdD,EAAYC,CAAU,CACxB,EAAG,CAACA,CAAU,CAAC,EAEf,MAAM6B,EAAY,eAAeH,GAAO,QAAQ,OAAQ,GAAG,EAAE,YAAY,CAAC,GAE1E,SACE,QAAC,OAAI,aAAW,MAAG,kEAAmEE,CAAS,EAC7F,qBAAC,OAAI,UAAU,oCACb,oBAAC,QAAK,GAAG,IAAI,KAAMF,EAAO,UAAU,6CAA6C,GAAIG,EAAW,EAC/F/B,MACC,OAAC,UACC,QAAS,IAAMe,EAAmB,CAACD,CAAe,EAClD,gBAAeA,EACf,gBAAeiB,EACf,aAAYjB,EAAkB,YAAYc,CAAK,GAAK,UAAUA,CAAK,GACnE,UAAU,+FAET,SAAAd,KAAkB,OAAC,gBAAa,MAAO,GAAI,OAAQ,GAAI,KAAK,OAAC,WAAQ,MAAO,GAAI,OAAQ,GAAI,EAC/F,GAEJ,GACGA,GAAmBd,GAAa,CAACA,OAClC,OAAC,OAAI,UAAU,2BAA2B,KAAK,SAAS,kBAAiB+B,EACtE,SAAAF,GAAO,IAAKG,MACX,OAAC,QAAK,KAAM,MAAG,oBAAiBA,GAAM,KAAMtB,CAAM,CAAC,cAA8B,UAAU,eACzF,mBAAC,QACC,KAAMsB,GAAM,MACZ,UAAU,oFACZ,GAJqEA,GAAM,EAK7E,CACD,EACH,GAEJ,CAEJ,EASMZ,EAAc,CAAC,CAAE,MAAAQ,EAAO,KAAAK,EAAM,UAAAH,CAAU,IAA0D,CACtG,KAAM,CAAE,OAAApB,EAAS,IAAK,KAAI,kBAAe,EAEzC,OAAKuB,GAAM,UAET,QAAC,OAAI,UAAWH,EACd,oBAAC,QAAK,KAAMF,EAAO,UAAU,8CAA8C,KAC3E,OAAC,OAAI,UAAU,+BAA+B,KAAK,OAAO,aAAW,gBAClE,SAAAK,GAAM,IAAKC,MACV,QAAC,QAEC,QAAM,oBAAiBA,GAAS,KAAMxB,CAAM,EAC5C,UAAU,6CACV,KAAK,WACL,aAAYwB,GAAS,MAAM,KAAOA,GAAS,OAAS,eAEpD,oBAAC,OACC,IAAKA,GAAS,MAAM,IACpB,QAAQ,OACR,IAAKA,GAAS,MAAM,IACpB,UAAU,sFACZ,EACCA,GAAS,UACR,OAAC,QACC,KAAMA,GAAS,MACf,UAAU,yFACZ,IAhBGA,GAAS,EAkBhB,CACD,EACH,GACF,EA5BwB,IA8B5B,EAQMX,EAAgB,CAAC,CACrB,QAAApB,EACA,SAAAH,EACA,UAAA8B,EACA,gBAAAK,CACF,OAOI,OAAC,OAAI,aAAW,MAAG,kEAAmEL,CAAS,EAC7F,oBAAC,UACC,QAAS,IAAMK,IAAkB,EACjC,UAAU,wIACV,aAAY,mCAAmChC,GAAS,aAAeA,GAAS,OAAO,GAEvF,qBAAC,OAAI,UAAU,gCACb,oBAAC,eACC,MAAO,GACP,OAAQ,GACR,UAAU,8EACV,cAAY,OACd,KACA,OAAC,QACC,GAAG,OACH,KAAMA,GAAS,aAAeA,GAAS,QACvC,UAAU,oIACZ,GACF,EACCH,MAAY,OAAC,kBAAe,MAAO,GAAI,OAAQ,GAAI,cAAY,OAAO,GACzE,EACF,EAIJ,IAAOlB,KAAQ,cAAWY,CAAgB",
6
- "names": ["FooterNavigation_exports", "__export", "FooterNavigation_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_Subscribe", "import_types", "import_icons", "import_react_responsive", "import_utils", "import_AiuiProvider", "import_Styles", "FooterNavigation", "footer", "currentCountry", "event", "subscribeLoading", "classNames", "isMobile", "setIsMobile", "mediaQuery", "country", "block", "MarketingConversion", "FooterBrand", "MainServices", "data", "onSubmit", "locale", "Subscribe", "enjoyItem", "benefitItem", "mainNavMenuOpen", "setMainNavMenuOpen", "services", "mainNav", "contactSectionId", "reasonItem", "DownloadApp", "MainNavMenu", "contactItem", "ChangeCountry", "socialItem", "paymentItem", "brandItem", "policyItem", "title", "lists", "className", "sectionId", "item", "apps", "appItem", "onChangeCountry"]
4
+ "sourcesContent": ["import { useEffect, useMemo, useState } from 'react'\nimport { Text, Container, Link } from '../../components/index.js'\nimport Subscribe from '../Subscribe/index.js'\nimport type { FooterNavigationProps } from './types.js'\nimport { FooterNavigationBlockType } from './types.js'\nimport { AddIcon, SubtractIcon, ArrowRightIcon, CountryIcon } from './icons/index.js'\nimport { useMediaQuery } from 'react-responsive'\nimport { cn, getLocalizedPath } from '../../helpers/utils.js'\nimport { useAiuiContext } from '../AiuiProvider/index.js'\nimport { withLayout } from '../../shared/Styles.js'\n\nconst FooterNavigation = ({\n data: { footer } = {},\n currentCountry,\n event,\n subscribeLoading,\n classNames,\n className,\n ...rest\n}: FooterNavigationProps) => {\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1439px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const country = useMemo(() => {\n return footer?.blocks?.find((block: any) => block?.blockType === FooterNavigationBlockType.Brand)?.country || {}\n }, [footer])\n\n return (\n <footer {...rest} className={cn(classNames?.root, className)}>\n <Container\n className={cn(classNames?.child)}\n childClassName={cn('laptop:py-16 desktop:gap-16 flex flex-col gap-8 bg-black py-8')}\n >\n <Text html={footer?.story} className=\"desktop:text-sm text-xs font-bold text-[#6D6D6F]\" />\n {footer?.blocks?.map((block: any) => {\n if (block?.blockType === FooterNavigationBlockType.Signup) {\n return (\n <MarketingConversion\n key={block.id}\n subscribeLoading={subscribeLoading}\n data={block}\n onSubmit={event?.signup}\n />\n )\n }\n if (block?.blockType === FooterNavigationBlockType.Brand) {\n return (\n <FooterBrand\n key={block?.id}\n data={block}\n isMobile={isMobile}\n event={event}\n currentCountry={currentCountry}\n />\n )\n }\n if (block?.blockType === FooterNavigationBlockType.Main) {\n return (\n <MainServices\n key={block.id}\n data={{ ...block, country }}\n event={event}\n isMobile={isMobile}\n currentCountry={currentCountry}\n />\n )\n }\n })}\n </Container>\n </footer>\n )\n}\n\n/**\n * MarketingConversion \u8425\u9500\u8F6C\u5316\u6A21\u5757\n * @param data\n * @param onSubmit signup\u63D0\u4EA4\u4E8B\u4EF6\n * @returns\n */\nconst MarketingConversion = ({\n data,\n onSubmit,\n subscribeLoading,\n}: {\n data: any\n onSubmit?: (_params: any) => void\n subscribeLoading?: boolean\n}) => {\n const { locale = 'us' } = useAiuiContext()\n\n return (\n <div className=\"desktop:py-16 desktop:gap-16 laptop:px-8 desktop:flex-row rounded-btn flex flex-col gap-8 bg-[#1E2024] px-4 py-8\">\n <Subscribe\n subscribeMetadata={data?.signup}\n className=\"desktop:flex-[744]\"\n onSubmit={onSubmit}\n loading={subscribeLoading}\n />\n <div className=\"desktop:hidden h-px w-full bg-[#3D3E3F]\" />\n <div className=\"desktop:gap-6 laptop:flex-row desktop:flex-[792] flex flex-col gap-4\">\n <div className=\"flex-1\">\n <Text html={data?.enjoy?.title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.enjoy?.enjoys?.map((enjoyItem: any) => (\n <div key={enjoyItem?.id} className=\"flex-start flex gap-2\">\n <img\n src={enjoyItem?.icon?.url}\n loading=\"lazy\"\n alt={enjoyItem?.icon?.alt || ''}\n className=\"size-5 shrink-0\"\n />\n <Text\n html={enjoyItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </div>\n ))}\n </div>\n </div>\n <div className=\"desktop:block hidden w-px bg-[#3D3E3F]\" />\n <div className=\"flex-1\">\n <Text html={data?.benefit?.title} className=\"text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex flex-col gap-2\">\n {data?.benefit?.benefits?.map((benefitItem: any) => (\n <Link\n href={`${getLocalizedPath(benefitItem?.link, locale)}?ref=footer`}\n asChild={!benefitItem?.link}\n key={benefitItem?.id}\n className=\"no-underline\"\n >\n <Text\n html={benefitItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\n/**\n * MainServices \u4E3B\u5BFC\u822A\u4E0E\u670D\u52A1\u6A21\u5757\n * @param services \u670D\u52A1\n * @param mainNav \u4E3B\u5BFC\u822A\n * @param event \u4E8B\u4EF6\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @param currentCountry \u5F53\u524D\u56FD\u5BB6\n * @returns\n */\nconst MainServices = ({\n data,\n event,\n isMobile,\n currentCountry,\n}: {\n data: any\n event: any\n isMobile: boolean\n currentCountry: any\n}) => {\n const { locale = 'us' } = useAiuiContext()\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const { services, mainNav, country } = data\n const contactSectionId = 'contact-section'\n\n return (\n <nav className=\"flex flex-col gap-8\" aria-label=\"Main navigation\">\n <div\n className={cn({\n 'desktop:gap-16 flex': services?.download?.title,\n })}\n >\n <div\n className={cn('w-full', {\n 'desktop:flex-[1260]': services?.download?.title,\n })}\n >\n <Text html={services?.storeBenefits?.title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div\n className={cn('laptop:flex-row desktop:gap-4 laptop:flex-wrap mt-4 flex flex-col gap-2', {\n 'desktop:max-w-[648px]': services?.download?.title,\n })}\n >\n {services?.storeBenefits?.reasons?.map((reasonItem: any) => (\n <div key={reasonItem?.id} className=\"desktop:min-w-[288px] flex flex-1 shrink-0 items-center gap-2\">\n <img\n src={reasonItem?.icon?.url}\n loading=\"lazy\"\n alt={reasonItem?.icon?.alt || ''}\n className=\"size-5 shrink-0\"\n />\n <Link\n href={`${getLocalizedPath(reasonItem?.link, locale)}?ref=footer`}\n asChild={!reasonItem?.link}\n className=\"no-underline\"\n >\n <Text\n html={reasonItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA]\"\n />\n </Link>\n </div>\n ))}\n </div>\n </div>\n <DownloadApp\n className={cn({\n 'desktop:flex-[404] hidden desktop:block': services?.download?.title,\n })}\n title={services?.download?.title}\n apps={services?.download?.apps}\n />\n </div>\n <div className=\"desktop:block hidden h-px bg-[#3D3E3F]\" aria-hidden=\"true\" />\n <div className=\"desktop:grid grid-cols-4 gap-4\">\n <MainNavMenu title={mainNav?.products?.title} lists={mainNav?.products?.products} />\n <MainNavMenu title={mainNav?.explore?.title} lists={mainNav?.explore?.explores} />\n <MainNavMenu title={mainNav?.support?.title} lists={mainNav?.support?.supports} />\n <div className=\"desktop:py-0 desktop:border-none border-t border-[#3D3E3F] pt-4\">\n <div className=\"desktop:pb-0 flex items-center justify-between pb-4\">\n <Text\n as=\"p\"\n html={mainNav?.contact?.title}\n className=\"text-xl font-bold leading-[1.2] text-white\"\n id={contactSectionId}\n />\n {isMobile && (\n <button\n onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}\n aria-expanded={mainNavMenuOpen}\n aria-controls={contactSectionId}\n aria-label={mainNavMenuOpen ? 'Collapse contact section' : 'Expand contact section'}\n >\n {mainNavMenuOpen ? <SubtractIcon width={20} height={20} /> : <AddIcon width={20} height={20} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <div\n className=\"desktop:mt-4 desktop:mb-0 mb-4 flex flex-col gap-2\"\n role=\"region\"\n aria-labelledby={contactSectionId}\n >\n {mainNav?.contact?.contacts?.map((contactItem: any) => (\n <Link\n key={contactItem?.id}\n href={contactItem?.link}\n className=\"group flex items-start gap-2 no-underline\"\n >\n <img\n src={contactItem?.icon?.url}\n loading=\"lazy\"\n alt={contactItem?.icon?.alt}\n className=\"size-5 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n <Text\n html={contactItem?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] transition-colors duration-200 group-hover:text-white\"\n />\n </Link>\n ))}\n </div>\n )}\n <ChangeCountry\n country={currentCountry || country}\n className=\"desktop:hidden border-b border-[#3D3E3F]\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n <div className=\"desktop:hidden mt-8\">\n <DownloadApp title={services?.download?.title} apps={services?.download?.apps} />\n </div>\n {!!mainNav?.socials?.length && (\n <div className=\"mt-8 flex items-center gap-2\" role=\"list\" aria-label=\"Social media links\">\n {mainNav?.socials?.map((socialItem: any) => (\n <Link\n href={`${getLocalizedPath(socialItem?.link, locale)}?ref=footer`}\n key={socialItem?.id}\n className=\"group\"\n role=\"listitem\"\n aria-label={socialItem?.icon?.alt || 'Social media'}\n >\n <img\n src={socialItem?.icon?.url}\n loading=\"lazy\"\n alt={socialItem?.icon?.alt}\n className=\"size-8 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n </Link>\n ))}\n </div>\n )}\n <div className=\"mt-4 flex flex-wrap gap-2\" role=\"list\" aria-label=\"Payment methods\">\n {mainNav?.payment?.map((paymentItem: any) => (\n <Link\n href={getLocalizedPath(paymentItem?.link, locale)}\n asChild={!paymentItem?.link}\n key={paymentItem?.id}\n role=\"listitem\"\n aria-label={paymentItem?.icon?.alt || 'Payment method'}\n >\n <img\n src={paymentItem?.icon?.url}\n loading=\"lazy\"\n alt={paymentItem?.icon?.alt || ''}\n className=\"h-[28px] w-[44px] shrink-0\"\n />\n </Link>\n ))}\n </div>\n </div>\n </div>\n </nav>\n )\n}\n\nconst FooterBrand = ({\n data,\n isMobile,\n event,\n currentCountry,\n}: {\n data: any\n isMobile: boolean\n event: any\n currentCountry: any\n}) => {\n const { locale = 'us' } = useAiuiContext()\n\n return (\n <div className=\"flex flex-col gap-4\">\n <div className=\"desktop:items-center desktop:flex desktop:gap-4\">\n <div className=\"laptop:flex-row laptop:items-center desktop:flex-[980] flex flex-col items-start gap-4\">\n <Link href={`${getLocalizedPath(data?.brand?.link, locale)}?ref=footer`} asChild={!data?.brand?.link}>\n <Text html={data?.brand?.currentBrand} className=\"cursor-pointer text-[#B6B6BA] hover:text-white\" />\n </Link>\n <div className=\"laptop:block laptop:mb-[10px] hidden h-[20px] w-px bg-[#B6B6BA]\" />\n <div className=\"desktop:gap-6 flex flex-wrap items-center gap-4\">\n {data?.brand?.brands?.map((brandItem: any) => (\n <Link href={`${getLocalizedPath(brandItem?.link, locale)}?ref=footer`} key={brandItem?.id}>\n <Text html={brandItem?.icon} className=\"text-[#B6B6BA] hover:text-white\" />\n </Link>\n ))}\n </div>\n </div>\n <ChangeCountry\n country={currentCountry || data?.country}\n className=\"desktop:flex-[316] desktop:block hidden\"\n isMobile={isMobile}\n onChangeCountry={event?.country}\n />\n </div>\n <div className=\"h-px bg-[#3D3E3F]\" />\n <div className=\"laptop:flex-row desktop:gap-4 desktop:items-center flex flex-col items-start gap-1\">\n <Text\n html={data?.copyright?.label}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#6D6D6F]\"\n />\n <div className=\"flex flex-wrap items-center gap-x-2 gap-y-1\">\n {data?.policy?.policies?.map((policyItem: any) => (\n <Link\n href={`${getLocalizedPath(policyItem?.link, locale)}?ref=footer`}\n key={policyItem?.id}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white\"\n >\n {policyItem?.label}\n </Link>\n ))}\n {data?.policy?.cookies && (\n <button\n data-cc=\"show-preferencesModal\"\n onClick={event?.cookiesSet}\n className=\"desktop:text-base text-xs font-bold leading-[1.4] text-[#B6B6BA] no-underline hover:text-white focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n aria-label={`Cookie preferences: ${data?.policy?.cookies}`}\n >\n {data?.policy?.cookies}\n </button>\n )}\n </div>\n </div>\n </div>\n )\n}\n\nconst MainNavMenu = ({ title, lists, className }: { title: string; lists: any[]; className?: string }) => {\n const { locale = 'us' } = useAiuiContext()\n const [mainNavMenuOpen, setMainNavMenuOpen] = useState<boolean>(false)\n const [isMobile, setIsMobile] = useState(false)\n\n const mediaQuery = useMediaQuery({ query: '(max-width: 1439px)' })\n\n useEffect(() => {\n setIsMobile(mediaQuery)\n }, [mediaQuery])\n\n const sectionId = `nav-section-${title?.replace(/\\s+/g, '-').toLowerCase()}`\n\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <div className=\"flex items-center justify-between\">\n <Text as=\"p\" html={title} className=\"text-xl font-bold leading-[1.2] text-white\" id={sectionId} />\n {isMobile && (\n <button\n onClick={() => setMainNavMenuOpen(!mainNavMenuOpen)}\n aria-expanded={mainNavMenuOpen}\n aria-controls={sectionId}\n aria-label={mainNavMenuOpen ? `Collapse ${title}` : `Expand ${title}`}\n className=\"focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n >\n {mainNavMenuOpen ? <SubtractIcon width={20} height={20} /> : <AddIcon width={20} height={20} />}\n </button>\n )}\n </div>\n {((mainNavMenuOpen && isMobile) || !isMobile) && (\n <nav className=\"mt-4 flex flex-col gap-2\" role=\"region\" aria-labelledby={sectionId}>\n {lists?.map((item: any) => (\n <Link href={`${getLocalizedPath(item?.link, locale)}?ref=footer`} key={item?.id} className=\"no-underline\">\n <Text\n html={item?.label}\n className=\"desktop:text-base text-sm font-bold leading-[1.2] text-[#B6B6BA] hover:text-white\"\n />\n </Link>\n ))}\n </nav>\n )}\n </div>\n )\n}\n\n/**\n * DownloadApp \u4E0B\u8F7D\u5E94\u7528\u6A21\u5757\n * @param title\n * @param apps\n * @param className\n * @returns\n */\nconst DownloadApp = ({ title, apps, className }: { title: string; apps: any[]; className?: string }) => {\n const { locale = 'us' } = useAiuiContext()\n\n if (!apps?.length) return null\n return (\n <div className={className}>\n <Text html={title} className=\" text-xl font-bold leading-[1.2] text-white\" />\n <div className=\"mt-4 flex items-center gap-4\" role=\"list\" aria-label=\"Download apps\">\n {apps?.map((appItem: any) => (\n <Link\n key={appItem?.id}\n href={getLocalizedPath(appItem?.link, locale)}\n className=\"group flex flex-col items-center gap-[6px]\"\n role=\"listitem\"\n aria-label={appItem?.icon?.alt || appItem?.label || 'Download app'}\n >\n <img\n src={appItem?.icon?.url}\n loading=\"lazy\"\n alt={appItem?.icon?.alt}\n className=\"size-10 shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n />\n {appItem?.label && (\n <Text\n html={appItem?.label}\n className=\"text-xs font-bold text-[#999999] transition-colors duration-200 group-hover:text-white\"\n />\n )}\n </Link>\n ))}\n </div>\n </div>\n )\n}\n\n/**\n * ChangeCountry \u5207\u6362\u56FD\u5BB6\u6A21\u5757\n * @param data \u6570\u636E\n * @param isMobile \u662F\u5426\u662F\u79FB\u52A8\u7AEF\n * @returns\n */\nconst ChangeCountry = ({\n country,\n isMobile,\n className,\n onChangeCountry,\n}: {\n country: any\n isMobile: boolean\n className?: string\n onChangeCountry?: () => void\n}) => {\n return (\n <div className={cn('desktop:py-0 desktop:border-none border-t border-[#3D3E3F] py-4', className)}>\n <button\n onClick={() => onChangeCountry?.()}\n className=\"flex w-full items-center justify-between focus:outline-none focus:ring-2 focus:ring-white focus:ring-offset-2 focus:ring-offset-black\"\n aria-label={`Change country/region, current: ${country?.countryName || country?.country}`}\n >\n <div className=\"group flex items-center gap-2\">\n <CountryIcon\n width={20}\n height={20}\n className=\"shrink-0 opacity-70 transition-opacity duration-200 group-hover:opacity-100\"\n aria-hidden=\"true\"\n />\n <Text\n as=\"span\"\n html={country?.countryName || country?.country}\n className=\"desktop:text-[#B6B6BA] desktop:group-hover:text-white text-base font-bold leading-[1.4] text-white transition-colors duration-200\"\n />\n </div>\n {isMobile && <ArrowRightIcon width={20} height={20} aria-hidden=\"true\" />}\n </button>\n </div>\n )\n}\n\nexport default withLayout(FooterNavigation)\n"],
5
+ "mappings": "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",
6
+ "names": ["FooterNavigation_exports", "__export", "FooterNavigation_default", "__toCommonJS", "import_jsx_runtime", "import_react", "import_components", "import_Subscribe", "import_types", "import_icons", "import_react_responsive", "import_utils", "import_AiuiProvider", "import_Styles", "FooterNavigation", "footer", "currentCountry", "event", "subscribeLoading", "classNames", "className", "rest", "isMobile", "setIsMobile", "mediaQuery", "country", "block", "MarketingConversion", "FooterBrand", "MainServices", "data", "onSubmit", "locale", "Subscribe", "enjoyItem", "benefitItem", "mainNavMenuOpen", "setMainNavMenuOpen", "services", "mainNav", "contactSectionId", "reasonItem", "DownloadApp", "MainNavMenu", "contactItem", "ChangeCountry", "socialItem", "paymentItem", "brandItem", "policyItem", "title", "lists", "sectionId", "item", "apps", "appItem", "onChangeCountry"]
7
7
  }
@@ -1,5 +1,6 @@
1
+ import type React from 'react';
1
2
  export type FooterNavigationSemanticName = 'root' | 'child';
2
- export interface FooterNavigationProps {
3
+ export interface FooterNavigationProps extends React.HTMLAttributes<HTMLElement> {
3
4
  data: any;
4
5
  currentCountry?: any;
5
6
  subscribeLoading?: boolean;
@@ -1,2 +1,2 @@
1
- "use strict";var r=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var s=Object.getOwnPropertyNames;var c=Object.prototype.hasOwnProperty;var p=(o,a)=>{for(var e in a)r(o,e,{get:a[e],enumerable:!0})},m=(o,a,e,n)=>{if(a&&typeof a=="object"||typeof a=="function")for(let i of s(a))!c.call(o,i)&&i!==e&&r(o,i,{get:()=>a[i],enumerable:!(n=d(a,i))||n.enumerable});return o};var u=o=>m(r({},"__esModule",{value:!0}),o);var g={};p(g,{FooterNavigationBlockType:()=>t});module.exports=u(g);var t=(n=>(n.Signup="ipc-footer-signup",n.Main="ipc-footer-main",n.Brand="ipc-footer-brand",n))(t||{});
1
+ "use strict";var r=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var d=Object.getOwnPropertyNames;var s=Object.prototype.hasOwnProperty;var m=(t,e)=>{for(var n in e)r(t,n,{get:e[n],enumerable:!0})},p=(t,e,n,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of d(e))!s.call(t,o)&&o!==n&&r(t,o,{get:()=>e[o],enumerable:!(a=c(e,o))||a.enumerable});return t};var u=t=>p(r({},"__esModule",{value:!0}),t);var b={};m(b,{FooterNavigationBlockType:()=>i});module.exports=u(b);var i=(a=>(a.Signup="ipc-footer-signup",a.Main="ipc-footer-main",a.Brand="ipc-footer-brand",a))(i||{});
2
2
  //# sourceMappingURL=types.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/FooterNavigation/types.ts"],
4
- "sourcesContent": ["export type FooterNavigationSemanticName = 'root' | 'child'\n\nexport interface FooterNavigationProps {\n data: any\n currentCountry?: any\n subscribeLoading?: boolean\n event?: {\n signup?: (_params: any) => void\n download?: () => void\n country?: () => void\n cookiesSet?: () => void\n }\n classNames?: Partial<Record<FooterNavigationSemanticName, string>>\n}\n\nexport enum FooterNavigationBlockType {\n Signup = 'ipc-footer-signup',\n Main = 'ipc-footer-main',\n Brand = 'ipc-footer-brand',\n}\n"],
5
- "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,+BAAAE,IAAA,eAAAC,EAAAH,GAeO,IAAKE,OACVA,EAAA,OAAS,oBACTA,EAAA,KAAO,kBACPA,EAAA,MAAQ,mBAHEA,OAAA",
4
+ "sourcesContent": ["import type React from 'react'\n\nexport type FooterNavigationSemanticName = 'root' | 'child'\n\nexport interface FooterNavigationProps extends React.HTMLAttributes<HTMLElement> {\n data: any\n currentCountry?: any\n subscribeLoading?: boolean\n event?: {\n signup?: (_params: any) => void\n download?: () => void\n country?: () => void\n cookiesSet?: () => void\n }\n classNames?: Partial<Record<FooterNavigationSemanticName, string>>\n}\n\nexport enum FooterNavigationBlockType {\n Signup = 'ipc-footer-signup',\n Main = 'ipc-footer-main',\n Brand = 'ipc-footer-brand',\n}\n"],
5
+ "mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,+BAAAE,IAAA,eAAAC,EAAAH,GAiBO,IAAKE,OACVA,EAAA,OAAS,oBACTA,EAAA,KAAO,kBACPA,EAAA,MAAQ,mBAHEA,OAAA",
6
6
  "names": ["types_exports", "__export", "FooterNavigationBlockType", "__toCommonJS"]
7
7
  }
@@ -1,17 +1,17 @@
1
+ import * as React from 'react';
1
2
  import type { Img } from '../../types/props.js';
2
3
  export type GiftBoxDataType = {
3
4
  img: Img;
4
5
  mobileImg: Img;
5
6
  title: string;
6
7
  };
7
- type GiftBoxType = {
8
+ interface GiftBoxType extends React.HTMLAttributes<HTMLDivElement> {
8
9
  data: {
9
10
  list: GiftBoxDataType[];
10
11
  };
11
- className?: string;
12
- };
13
- declare const _default: import("react").ForwardRefExoticComponent<GiftBoxType & {
12
+ }
13
+ declare const _default: React.ForwardRefExoticComponent<GiftBoxType & {
14
14
  style?: string | React.CSSProperties;
15
15
  container?: import("../../shared/Styles.js").ContainerProps["container"];
16
- } & import("react").RefAttributes<any>>;
16
+ } & React.RefAttributes<any>>;
17
17
  export default _default;
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var i=Object.defineProperty;var d=Object.getOwnPropertyDescriptor;var r=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var c=(a,t)=>{for(var s in t)i(a,s,{get:t[s],enumerable:!0})},x=(a,t,s,l)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of r(t))!g.call(a,o)&&o!==s&&i(a,o,{get:()=>t[o],enumerable:!(l=d(t,o))||l.enumerable});return a};var f=a=>x(i({},"__esModule",{value:!0}),a);var y={};c(y,{default:()=>u});module.exports=f(y);var e=require("react/jsx-runtime"),m=require("../../shared/Styles.js"),p=require("../../components/index.js");const n=a=>{const{data:t}=a,{list:s}=t;return(0,e.jsx)("div",{className:"w-full rounded-2xl bg-[#EAEAEC]",children:(0,e.jsx)("div",{className:"laptop:gap-4 tablet:grid-cols-4 laptop:grid-cols-3 desktop:grid-cols-5 lg-desktop:grid-cols-6 grid grid-cols-2 gap-3",children:s.map((l,o)=>(0,e.jsxs)("div",{className:"laptop:p-[20px] flex flex-col items-center justify-center p-[12px]",children:[(0,e.jsxs)("div",{children:[l?.img?.url&&(0,e.jsx)(p.Picture,{className:"laptop:hidden aspect-[194/194]",imgClassName:"",source:l?.img?.url,alt:l?.img?.alt||""}),l?.mobileImg?.url&&(0,e.jsx)(p.Picture,{className:"laptop:hidden aspect-[120/120]",imgClassName:"",source:l?.mobileImg?.url,alt:l?.mobileImg?.alt||""})]}),(0,e.jsx)(p.Text,{html:l?.title,className:"laptop:text-[18px] text-[14px] font-bold leading-[1.4]"})]},o))})})};var u=(0,m.withLayout)(n);
1
+ "use strict";"use client";var s=Object.defineProperty;var c=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var f=Object.prototype.hasOwnProperty;var x=(l,e)=>{for(var o in e)s(l,o,{get:e[o],enumerable:!0})},n=(l,e,o,p)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of g(e))!f.call(l,t)&&t!==o&&s(l,t,{get:()=>e[t],enumerable:!(p=c(e,t))||p.enumerable});return l};var u=l=>n(s({},"__esModule",{value:!0}),l);var b={};x(b,{default:()=>v});module.exports=u(b);var a=require("react/jsx-runtime"),I=require("react"),m=require("../../helpers/utils.js"),r=require("../../shared/Styles.js"),i=require("../../components/index.js");const y=({data:l,className:e,...o})=>{const{list:p}=l;return(0,a.jsx)("div",{...o,className:(0,m.cn)("w-full rounded-2xl bg-[#EAEAEC]",e),children:(0,a.jsx)("div",{className:"laptop:gap-4 tablet:grid-cols-4 laptop:grid-cols-3 desktop:grid-cols-5 lg-desktop:grid-cols-6 grid grid-cols-2 gap-3",children:p.map((t,d)=>(0,a.jsxs)("div",{className:"laptop:p-[20px] flex flex-col items-center justify-center p-[12px]",children:[(0,a.jsxs)("div",{children:[t?.img?.url&&(0,a.jsx)(i.Picture,{className:"laptop:hidden aspect-[194/194]",imgClassName:"",source:t?.img?.url,alt:t?.img?.alt||""}),t?.mobileImg?.url&&(0,a.jsx)(i.Picture,{className:"laptop:hidden aspect-[120/120]",imgClassName:"",source:t?.mobileImg?.url,alt:t?.mobileImg?.alt||""})]}),(0,a.jsx)(i.Text,{html:t?.title,className:"laptop:text-[18px] text-[14px] font-bold leading-[1.4]"})]},d))})})};var v=(0,r.withLayout)(y);
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/GiftBox/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport type { Img } from '../../types/props.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Picture, Text } from '../../components/index.js'\n\nexport type GiftBoxDataType = {\n img: Img\n mobileImg: Img\n title: string\n}\n\ntype GiftBoxType = {\n data: {\n list: GiftBoxDataType[]\n }\n className?: string\n}\n\nconst GiftBox = (props: GiftBoxType) => {\n const { data } = props\n const { list } = data\n\n return (\n <div className=\"w-full rounded-2xl bg-[#EAEAEC]\">\n <div className=\"laptop:gap-4 tablet:grid-cols-4 laptop:grid-cols-3 desktop:grid-cols-5 lg-desktop:grid-cols-6 grid grid-cols-2 gap-3\">\n {list.map((item, index) => (\n <div key={index} className=\"laptop:p-[20px] flex flex-col items-center justify-center p-[12px]\">\n <div>\n {item?.img?.url && (\n <Picture\n className=\"laptop:hidden aspect-[194/194]\"\n imgClassName=\"\"\n source={item?.img?.url}\n alt={item?.img?.alt || ''}\n />\n )}\n {item?.mobileImg?.url && (\n <Picture\n className=\"laptop:hidden aspect-[120/120]\"\n imgClassName=\"\"\n source={item?.mobileImg?.url}\n alt={item?.mobileImg?.alt || ''}\n />\n )}\n </div>\n <Text html={item?.title} className=\"laptop:text-[18px] text-[14px] font-bold leading-[1.4]\" />\n </div>\n ))}\n </div>\n </div>\n )\n}\n\nexport default withLayout(GiftBox)\n"],
5
- "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA2BY,IAAAI,EAAA,6BAzBZC,EAA2B,kCAC3BC,EAA8B,qCAe9B,MAAMC,EAAWC,GAAuB,CACtC,KAAM,CAAE,KAAAC,CAAK,EAAID,EACX,CAAE,KAAAE,CAAK,EAAID,EAEjB,SACE,OAAC,OAAI,UAAU,kCACb,mBAAC,OAAI,UAAU,uHACZ,SAAAC,EAAK,IAAI,CAACC,EAAMC,OACf,QAAC,OAAgB,UAAU,qEACzB,qBAAC,OACE,UAAAD,GAAM,KAAK,QACV,OAAC,WACC,UAAU,iCACV,aAAa,GACb,OAAQA,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GACzB,EAEDA,GAAM,WAAW,QAChB,OAAC,WACC,UAAU,iCACV,aAAa,GACb,OAAQA,GAAM,WAAW,IACzB,IAAKA,GAAM,WAAW,KAAO,GAC/B,GAEJ,KACA,OAAC,QAAK,KAAMA,GAAM,MAAO,UAAU,yDAAyD,IAnBpFC,CAoBV,CACD,EACH,EACF,CAEJ,EAEA,IAAOV,KAAQ,cAAWK,CAAO",
6
- "names": ["GiftBox_exports", "__export", "GiftBox_default", "__toCommonJS", "import_jsx_runtime", "import_Styles", "import_components", "GiftBox", "props", "data", "list", "item", "index"]
4
+ "sourcesContent": ["'use client'\nimport * as React from 'react'\nimport type { Img } from '../../types/props.js'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport { Picture, Text } from '../../components/index.js'\n\nexport type GiftBoxDataType = {\n img: Img\n mobileImg: Img\n title: string\n}\n\ninterface GiftBoxType extends React.HTMLAttributes<HTMLDivElement> {\n data: {\n list: GiftBoxDataType[]\n }\n}\n\nconst GiftBox = ({ data, className, ...rest }: GiftBoxType) => {\n const { list } = data\n\n return (\n <div {...rest} className={cn('w-full rounded-2xl bg-[#EAEAEC]', className)}>\n <div className=\"laptop:gap-4 tablet:grid-cols-4 laptop:grid-cols-3 desktop:grid-cols-5 lg-desktop:grid-cols-6 grid grid-cols-2 gap-3\">\n {list.map((item, index) => (\n <div key={index} className=\"laptop:p-[20px] flex flex-col items-center justify-center p-[12px]\">\n <div>\n {item?.img?.url && (\n <Picture\n className=\"laptop:hidden aspect-[194/194]\"\n imgClassName=\"\"\n source={item?.img?.url}\n alt={item?.img?.alt || ''}\n />\n )}\n {item?.mobileImg?.url && (\n <Picture\n className=\"laptop:hidden aspect-[120/120]\"\n imgClassName=\"\"\n source={item?.mobileImg?.url}\n alt={item?.mobileImg?.alt || ''}\n />\n )}\n </div>\n <Text html={item?.title} className=\"laptop:text-[18px] text-[14px] font-bold leading-[1.4]\" />\n </div>\n ))}\n </div>\n </div>\n )\n}\n\nexport default withLayout(GiftBox)\n"],
5
+ "mappings": "sbAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,aAAAE,IAAA,eAAAC,EAAAH,GA2BY,IAAAI,EAAA,6BA1BZC,EAAuB,iBAEvBC,EAAmB,kCACnBC,EAA2B,kCAC3BC,EAA8B,qCAc9B,MAAMC,EAAU,CAAC,CAAE,KAAAC,EAAM,UAAAC,EAAW,GAAGC,CAAK,IAAmB,CAC7D,KAAM,CAAE,KAAAC,CAAK,EAAIH,EAEjB,SACE,OAAC,OAAK,GAAGE,EAAM,aAAW,MAAG,kCAAmCD,CAAS,EACvE,mBAAC,OAAI,UAAU,uHACZ,SAAAE,EAAK,IAAI,CAACC,EAAMC,OACf,QAAC,OAAgB,UAAU,qEACzB,qBAAC,OACE,UAAAD,GAAM,KAAK,QACV,OAAC,WACC,UAAU,iCACV,aAAa,GACb,OAAQA,GAAM,KAAK,IACnB,IAAKA,GAAM,KAAK,KAAO,GACzB,EAEDA,GAAM,WAAW,QAChB,OAAC,WACC,UAAU,iCACV,aAAa,GACb,OAAQA,GAAM,WAAW,IACzB,IAAKA,GAAM,WAAW,KAAO,GAC/B,GAEJ,KACA,OAAC,QAAK,KAAMA,GAAM,MAAO,UAAU,yDAAyD,IAnBpFC,CAoBV,CACD,EACH,EACF,CAEJ,EAEA,IAAOb,KAAQ,cAAWO,CAAO",
6
+ "names": ["GiftBox_exports", "__export", "GiftBox_default", "__toCommonJS", "import_jsx_runtime", "React", "import_utils", "import_Styles", "import_components", "GiftBox", "data", "className", "rest", "list", "item", "index"]
7
7
  }
@@ -22,8 +22,7 @@ type GraphicType = {
22
22
  textMobileImg: Img;
23
23
  };
24
24
  };
25
- export interface GraphicProps extends ComponentCommonProps {
26
- className?: string;
25
+ export interface GraphicProps extends ComponentCommonProps, React.HTMLAttributes<HTMLDivElement> {
27
26
  data: {
28
27
  title?: string;
29
28
  items?: GraphicType[];
@@ -1,2 +1,2 @@
1
- "use strict";"use client";var j=Object.create;var g=Object.defineProperty;var _=Object.getOwnPropertyDescriptor;var Y=Object.getOwnPropertyNames;var q=Object.getPrototypeOf,A=Object.prototype.hasOwnProperty;var Q=(e,s)=>{for(var o in s)g(e,o,{get:s[o],enumerable:!0})},N=(e,s,o,c)=>{if(s&&typeof s=="object"||typeof s=="function")for(let l of Y(s))!A.call(e,l)&&l!==o&&g(e,l,{get:()=>s[l],enumerable:!(c=_(s,l))||c.enumerable});return e};var w=(e,s,o)=>(o=e!=null?j(q(e)):{},N(s||!e||!e.__esModule?g(o,"default",{value:e,enumerable:!0}):o,e)),X=e=>N(g({},"__esModule",{value:!0}),e);var J={};Q(J,{default:()=>F});module.exports=X(J);var t=require("react/jsx-runtime"),V=require("react-responsive"),i=w(require("react")),$=require("react-dom"),h=require("../../helpers/utils.js"),P=require("../../shared/Styles.js"),G=w(require("../SwiperBox/index.js")),p=require("../../components/index.js"),S=w(require("../Title/index.js")),L=require("../VideoModal/index.js"),B=require("../TextModal/index.js"),y=require("../../hooks/useExposure.js"),T=require("../../shared/trackUrlRef.js");const m="image",d="graphic",I="descTitle lg-desktop:text-[32px] desktop:mt-2 desktop:text-[24px] text-lines-2 mt-1 line-clamp-3 flex-1 text-[24px] font-bold leading-[1.2]",Z=({data:e,configuration:s})=>{const o=(0,i.useRef)(null),[c,l]=(0,i.useState)({visible:!1,x:0,y:0,text:""}),v=()=>{switch(s.num){case 1:return"tablet:aspect-w-[704] tablet:aspect-h-[400] laptop:aspect-w-[896] laptop:aspect-h-[384] desktop:aspect-w-[1312] desktop:aspect-h-[512] lg-desktop:aspect-w-[1664] lg-desktop:aspect-h-[640]";case 2:return"tablet:aspect-w-[346] tablet:aspect-h-[360] laptop:aspect-w-[440] laptop:aspect-h-[360] desktop:aspect-w-[648] desktop:aspect-h-[384] lg-desktop:aspect-w-[824] lg-desktop:aspect-h-[480]";case 3:return"tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[427] desktop:aspect-h-[384] lg-desktop:aspect-w-[544] lg-desktop:aspect-h-[480]";default:return"tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[316] desktop:aspect-h-[384] lg-desktop:aspect-w-[404] lg-desktop:aspect-h-[480]"}},f=r=>{e?.description&&l({visible:!0,x:r.clientX,y:r.clientY,text:e.description})},b=()=>{l(r=>({...r,visible:!1}))};return(0,y.useExposure)(o,{componentType:m,componentName:d,componentTitle:e?.title,componentDescription:e?.description,position:s?.index+1}),(0,t.jsx)("div",{ref:o,className:(0,h.cn)(v(),"graphicItem","laptop:h-auto text-info-primary md-tablet:h-[360px] flex-1 shrink-0 md:basis-[296px]",{"aiui-dark":e.theme==="dark"}),children:(0,t.jsx)("div",{className:(0,h.cn)("absolute inset-0",{"rounded-xl overflow-hidden laptop:rounded-2xl":s?.itemShape==="round"}),children:(0,t.jsxs)("div",{className:`graphic-children relative block size-full overflow-hidden ${e?.href?"cursor-pointer":""}`,children:[e?.href?(0,t.jsx)("a",{"aria-label":e?.title??e?.description,href:(0,T.trackUrlRef)(e?.href||"",`${m}_${d}`),className:"block size-full overflow-hidden","data-headless-nav-postion":`''#${s?.index+1}`,"data-headless-type-name":`${m}#${d}`,"data-headless-title-desc-button":`${e?.title}#${e?.description}`,children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover tablet:hover:scale-110 transition-all duration-300",source:e?.imgUrl?.url,alt:e?.imgUrl?.alt||""})}):(0,t.jsx)("div",{className:"block size-full overflow-hidden",children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover tablet:hover:scale-110 transition-all duration-300",source:e?.imgUrl?.url,alt:e?.imgUrl?.alt||""})}),(0,t.jsxs)("div",{className:"laptop:p-6 absolute bottom-0 z-[1] box-border flex w-full flex-col p-4",children:[(0,t.jsxs)("div",{className:(0,h.cn)("flex items-end gap-1 overflow-hidden","graphic-bottom"),children:[(0,t.jsxs)("div",{className:"flex-1 overflow-hidden",children:[(0,t.jsx)(p.Text,{html:e?.title,style:{color:e?.textColor},className:"spanTitle graphic-title lg-desktop:text-lg desktop:text-base line-clamp-3 text-sm font-bold leading-[1.2]"}),e?.description&&(0,t.jsxs)("div",{onMouseMove:f,onMouseLeave:b,children:[e?.title?(0,t.jsx)(p.Heading,{html:e?.description,style:{color:e?.textColor},as:"h3",className:`${I} graphic-description`}):(0,t.jsx)("h3",{style:{color:e?.textColor},dangerouslySetInnerHTML:{__html:e?.description||""},className:`${I} graphic-description-item`}),typeof window<"u"&&c.visible&&(0,$.createPortal)((0,t.jsx)("div",{className:"pointer-events-none fixed z-[9999] max-w-xs rounded-lg bg-black/60 px-3 py-2 text-sm text-white shadow-lg backdrop-blur-sm transition-opacity duration-200",style:{left:`${c.x+16}px`,top:`${c.y+16}px`},children:c.text}),document.body)]})]}),!e?.isShowIcon&&(e?.video?.url||e?.youtubeId)&&(0,t.jsx)("button",{"aria-label":"Play Video",onClick:r=>{r.preventDefault(),r.stopPropagation(),s?.onVideoPlayBtnClick?.(s?.index||0,e)},className:"laptop:size-12 flex size-8 items-center justify-center rounded-full bg-white/20 hover:bg-black/75",children:(0,t.jsx)("svg",{width:"12",height:"14",viewBox:"0 0 12 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M12 7L0 14L0 0L12 7Z",fill:"white"})})}),e?.isShowIcon&&e?.icon?.url&&(0,t.jsx)("button",{onClick:r=>{r.preventDefault(),r.stopPropagation(),s?.onIconClick?.(e,s)},className:"laptop:size-9 flex size-8 items-center justify-center overflow-hidden rounded-full bg-white/20 hover:bg-black/75",children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover",source:e?.icon?.url,alt:e?.icon?.alt||""})})]}),e.buttonText&&(0,t.jsx)(p.Button,{as:"a","aria-label":e?.title??e?.description,variant:"secondary",className:"bgButton mt-[8px] self-start",href:(0,T.trackUrlRef)(e?.href,`${m}_${d}`),"data-headless-nav-postion":`''#${s?.index+1}`,"data-headless-type-name":`${m}#${d}`,"data-headless-title-desc-button":`${e?.title}#${e?.description}#${e?.buttonText}`,children:e.buttonText})]})]})})})},C=i.default.forwardRef(({data:e,className:s},o)=>{const c=(0,V.useMediaQuery)({query:"(max-width: 768px)"}),l=(0,i.useRef)(null),[v,f]=(0,i.useState)(!1),[b,r]=(0,i.useState)(""),[E,H]=(0,i.useState)(""),[D,U]=(0,i.useState)(""),[z,k]=(0,i.useState)(null),[R,M]=(0,i.useState)(!1),x=a=>{const n=e?.items?.length>3,u=e?.items?.length>2;switch(a){case 1440:return n?4:e?.items?.length;case 1024:return n?3:e?.items?.length;case 768:return e?.items?.length===1?1:n||u?2.3:2;default:return e?.items?.length===1?1:1.2}};return(0,i.useImperativeHandle)(o,()=>l.current),(0,y.useExposure)(l,{componentType:m,componentName:d,componentTitle:e?.title}),(0,i.useEffect)(()=>{const a=l.current?.querySelectorAll(".graphic-description");if(a&&a.length>0){let n=0;a.forEach(u=>{n=Math.max(n,u.offsetHeight)}),a.forEach(u=>{u.style.height=`${n}px`})}},[]),(0,t.jsxs)("div",{className:(0,h.cn)("graphicBlock",s),ref:l,children:[(0,t.jsxs)("div",{className:"graphic-box",children:[e?.title&&(0,t.jsx)(S.default,{data:{title:e?.title}}),(0,t.jsx)(G.default,{id:"Graphic",className:(0,h.cn)("!overflow-visible"),data:{list:e?.items||[],configuration:{itemShape:e.itemShape,num:e?.items?.length||0,onVideoPlayBtnClick:(a,n)=>{f(!0),n?.isYouTube?H?.(n?.youtubeId||""):(r?.(n?.video?.url||""),U?.(n?.mobileVideo?.url||""))},onIconClick:a=>{M(!0),k(a)},title:e?.title}},Slide:Z,breakpoints:{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:x()},768:{spaceBetween:16,freeMode:!1,slidesPerView:x(768)},1024:{spaceBetween:16,freeMode:!1,slidesPerView:x(1024)},1440:{spaceBetween:16,freeMode:!1,slidesPerView:x(1440)}}})]}),(0,t.jsx)(L.VideoModal,{visible:v,youTubeId:E,onCloseModal:()=>f(!1),videoUrl:c&&D||b}),(0,t.jsx)(B.TextModal,{textVisible:R,extension:z?.extension,onCloseModal:()=>{M(!1),k(null)}})]})});C.displayName="Graphic";var F=(0,P.withLayout)(C);
1
+ "use strict";"use client";var _=Object.create;var g=Object.defineProperty;var Y=Object.getOwnPropertyDescriptor;var q=Object.getOwnPropertyNames;var A=Object.getPrototypeOf,Q=Object.prototype.hasOwnProperty;var X=(e,s)=>{for(var o in s)g(e,o,{get:s[o],enumerable:!0})},N=(e,s,o,c)=>{if(s&&typeof s=="object"||typeof s=="function")for(let n of q(s))!Q.call(e,n)&&n!==o&&g(e,n,{get:()=>s[n],enumerable:!(c=Y(s,n))||c.enumerable});return e};var w=(e,s,o)=>(o=e!=null?_(A(e)):{},N(s||!e||!e.__esModule?g(o,"default",{value:e,enumerable:!0}):o,e)),Z=e=>N(g({},"__esModule",{value:!0}),e);var K={};X(K,{default:()=>J});module.exports=Z(K);var t=require("react/jsx-runtime"),V=require("react-responsive"),i=w(require("react")),$=require("react-dom"),u=require("../../helpers/utils.js"),P=require("../../shared/Styles.js"),L=w(require("../SwiperBox/index.js")),p=require("../../components/index.js"),G=w(require("../Title/index.js")),S=require("../VideoModal/index.js"),H=require("../TextModal/index.js"),y=require("../../hooks/useExposure.js"),T=require("../../shared/trackUrlRef.js");const d="image",h="graphic",I="descTitle lg-desktop:text-[32px] desktop:mt-2 desktop:text-[24px] text-lines-2 mt-1 line-clamp-3 flex-1 text-[24px] font-bold leading-[1.2]",F=({data:e,configuration:s})=>{const o=(0,i.useRef)(null),[c,n]=(0,i.useState)({visible:!1,x:0,y:0,text:""}),m=()=>{switch(s.num){case 1:return"tablet:aspect-w-[704] tablet:aspect-h-[400] laptop:aspect-w-[896] laptop:aspect-h-[384] desktop:aspect-w-[1312] desktop:aspect-h-[512] lg-desktop:aspect-w-[1664] lg-desktop:aspect-h-[640]";case 2:return"tablet:aspect-w-[346] tablet:aspect-h-[360] laptop:aspect-w-[440] laptop:aspect-h-[360] desktop:aspect-w-[648] desktop:aspect-h-[384] lg-desktop:aspect-w-[824] lg-desktop:aspect-h-[480]";case 3:return"tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[427] desktop:aspect-h-[384] lg-desktop:aspect-w-[544] lg-desktop:aspect-h-[480]";default:return"tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[316] desktop:aspect-h-[384] lg-desktop:aspect-w-[404] lg-desktop:aspect-h-[480]"}},v=l=>{e?.description&&n({visible:!0,x:l.clientX,y:l.clientY,text:e.description})},b=()=>{n(l=>({...l,visible:!1}))};return(0,y.useExposure)(o,{componentType:d,componentName:h,componentTitle:e?.title,componentDescription:e?.description,position:s?.index+1}),(0,t.jsx)("div",{ref:o,className:(0,u.cn)(m(),"graphicItem","laptop:h-auto text-info-primary md-tablet:h-[360px] flex-1 shrink-0 md:basis-[296px]",{"aiui-dark":e.theme==="dark"}),children:(0,t.jsx)("div",{className:(0,u.cn)("absolute inset-0",{"rounded-xl overflow-hidden laptop:rounded-2xl":s?.itemShape==="round"}),children:(0,t.jsxs)("div",{className:`graphic-children relative block size-full overflow-hidden ${e?.href?"cursor-pointer":""}`,children:[e?.href?(0,t.jsx)("a",{"aria-label":e?.title??e?.description,href:(0,T.trackUrlRef)(e?.href||"",`${d}_${h}`),className:"block size-full overflow-hidden","data-headless-nav-postion":`''#${s?.index+1}`,"data-headless-type-name":`${d}#${h}`,"data-headless-title-desc-button":`${e?.title}#${e?.description}`,children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover tablet:hover:scale-110 transition-all duration-300",source:e?.imgUrl?.url,alt:e?.imgUrl?.alt||""})}):(0,t.jsx)("div",{className:"block size-full overflow-hidden",children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover tablet:hover:scale-110 transition-all duration-300",source:e?.imgUrl?.url,alt:e?.imgUrl?.alt||""})}),(0,t.jsxs)("div",{className:"laptop:p-6 absolute bottom-0 z-[1] box-border flex w-full flex-col p-4",children:[(0,t.jsxs)("div",{className:(0,u.cn)("flex items-end gap-1 overflow-hidden","graphic-bottom"),children:[(0,t.jsxs)("div",{className:"flex-1 overflow-hidden",children:[(0,t.jsx)(p.Text,{html:e?.title,style:{color:e?.textColor},className:"spanTitle graphic-title lg-desktop:text-lg desktop:text-base line-clamp-3 text-sm font-bold leading-[1.2]"}),e?.description&&(0,t.jsxs)("div",{onMouseMove:v,onMouseLeave:b,children:[e?.title?(0,t.jsx)(p.Heading,{html:e?.description,style:{color:e?.textColor},as:"h3",className:`${I} graphic-description`}):(0,t.jsx)("h3",{style:{color:e?.textColor},dangerouslySetInnerHTML:{__html:e?.description||""},className:`${I} graphic-description-item`}),typeof window<"u"&&c.visible&&(0,$.createPortal)((0,t.jsx)("div",{className:"pointer-events-none fixed z-[9999] max-w-xs rounded-lg bg-black/60 px-3 py-2 text-sm text-white shadow-lg backdrop-blur-sm transition-opacity duration-200",style:{left:`${c.x+16}px`,top:`${c.y+16}px`},children:c.text}),document.body)]})]}),!e?.isShowIcon&&(e?.video?.url||e?.youtubeId)&&(0,t.jsx)("button",{"aria-label":"Play Video",onClick:l=>{l.preventDefault(),l.stopPropagation(),s?.onVideoPlayBtnClick?.(s?.index||0,e)},className:"laptop:size-12 flex size-8 items-center justify-center rounded-full bg-white/20 hover:bg-black/75",children:(0,t.jsx)("svg",{width:"12",height:"14",viewBox:"0 0 12 14",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:(0,t.jsx)("path",{d:"M12 7L0 14L0 0L12 7Z",fill:"white"})})}),e?.isShowIcon&&e?.icon?.url&&(0,t.jsx)("button",{onClick:l=>{l.preventDefault(),l.stopPropagation(),s?.onIconClick?.(e,s)},className:"laptop:size-9 flex size-8 items-center justify-center overflow-hidden rounded-full bg-white/20 hover:bg-black/75",children:(0,t.jsx)(p.Picture,{className:"h-full",imgClassName:"h-full object-cover",source:e?.icon?.url,alt:e?.icon?.alt||""})})]}),e.buttonText&&(0,t.jsx)(p.Button,{as:"a","aria-label":e?.title??e?.description,variant:"secondary",className:"bgButton mt-[8px] self-start",href:(0,T.trackUrlRef)(e?.href,`${d}_${h}`),"data-headless-nav-postion":`''#${s?.index+1}`,"data-headless-type-name":`${d}#${h}`,"data-headless-title-desc-button":`${e?.title}#${e?.description}#${e?.buttonText}`,children:e.buttonText})]})]})})})},C=i.default.forwardRef(({data:e,className:s,...o},c)=>{const n=(0,V.useMediaQuery)({query:"(max-width: 768px)"}),m=(0,i.useRef)(null),[v,b]=(0,i.useState)(!1),[l,B]=(0,i.useState)(""),[E,D]=(0,i.useState)(""),[U,z]=(0,i.useState)(""),[R,k]=(0,i.useState)(null),[j,M]=(0,i.useState)(!1),x=a=>{const r=e?.items?.length>3,f=e?.items?.length>2;switch(a){case 1440:return r?4:e?.items?.length;case 1024:return r?3:e?.items?.length;case 768:return e?.items?.length===1?1:r||f?2.3:2;default:return e?.items?.length===1?1:1.2}};return(0,i.useImperativeHandle)(c,()=>m.current),(0,y.useExposure)(m,{componentType:d,componentName:h,componentTitle:e?.title}),(0,i.useEffect)(()=>{const a=m.current?.querySelectorAll(".graphic-description");if(a&&a.length>0){let r=0;a.forEach(f=>{r=Math.max(r,f.offsetHeight)}),a.forEach(f=>{f.style.height=`${r}px`})}},[]),(0,t.jsxs)("div",{...o,ref:m,className:(0,u.cn)("graphicBlock",s),children:[(0,t.jsxs)("div",{className:"graphic-box",children:[e?.title&&(0,t.jsx)(G.default,{data:{title:e?.title}}),(0,t.jsx)(L.default,{id:"Graphic",className:(0,u.cn)("!overflow-visible"),data:{list:e?.items||[],configuration:{itemShape:e.itemShape,num:e?.items?.length||0,onVideoPlayBtnClick:(a,r)=>{b(!0),r?.isYouTube?D?.(r?.youtubeId||""):(B?.(r?.video?.url||""),z?.(r?.mobileVideo?.url||""))},onIconClick:a=>{M(!0),k(a)},title:e?.title}},Slide:F,breakpoints:{0:{spaceBetween:12,freeMode:!1,slidesPerView:1},374:{spaceBetween:12,freeMode:!1,slidesPerView:x()},768:{spaceBetween:16,freeMode:!1,slidesPerView:x(768)},1024:{spaceBetween:16,freeMode:!1,slidesPerView:x(1024)},1440:{spaceBetween:16,freeMode:!1,slidesPerView:x(1440)}}})]}),(0,t.jsx)(S.VideoModal,{visible:v,youTubeId:E,onCloseModal:()=>b(!1),videoUrl:n&&U||l}),(0,t.jsx)(H.TextModal,{textVisible:j,extension:R?.extension,onCloseModal:()=>{M(!1),k(null)}})]})});C.displayName="Graphic";var J=(0,P.withLayout)(C);
2
2
  //# sourceMappingURL=index.js.map
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../src/biz-components/Graphic/index.tsx"],
4
- "sourcesContent": ["'use client'\nimport { useMediaQuery } from 'react-responsive'\nimport React, { useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { Button, Heading, Picture, Text } from '../../components/index.js'\nimport Title from '../Title/index.js'\nimport { VideoModal } from '../VideoModal/index.js'\nimport { TextModal } from '../TextModal/index.js'\nimport type { ComponentCommonProps, Video, Img, Theme } from '../../types/props.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\n\nconst componentType = 'image'\nconst componentName = 'graphic'\n\ntype GraphicType = {\n imgUrl: Img\n title: string\n description?: string\n textColor?: string\n href?: string\n video?: Video\n mobileVideo?: Video\n youtubeId?: string\n isYouTube?: boolean\n isShowIcon?: boolean\n buttonText?: string\n icon?: Img\n theme?: Theme\n extension?: {\n text: string\n textDesc: string\n textTitle: string\n textPcImg: Img\n textMobileImg: Img\n }\n}\n\nconst descriptionClass =\n 'descTitle lg-desktop:text-[32px] desktop:mt-2 desktop:text-[24px] text-lines-2 mt-1 line-clamp-3 flex-1 text-[24px] font-bold leading-[1.2]'\nexport interface GraphicProps extends ComponentCommonProps {\n className?: string\n data: {\n title?: string\n items?: GraphicType[]\n itemShape?: 'round' | 'square'\n itemTheme?: Theme\n }\n}\n\nconst Item = ({ data, configuration }: { data: GraphicType; configuration?: any }) => {\n const ref = useRef<HTMLDivElement>(null)\n const [tooltip, setTooltip] = useState<{ visible: boolean; x: number; y: number; text: string }>({\n visible: false,\n x: 0,\n y: 0,\n text: '',\n })\n\n const handleAspect = () => {\n switch (configuration.num) {\n case 1:\n return 'tablet:aspect-w-[704] tablet:aspect-h-[400] laptop:aspect-w-[896] laptop:aspect-h-[384] desktop:aspect-w-[1312] desktop:aspect-h-[512] lg-desktop:aspect-w-[1664] lg-desktop:aspect-h-[640]'\n case 2:\n return 'tablet:aspect-w-[346] tablet:aspect-h-[360] laptop:aspect-w-[440] laptop:aspect-h-[360] desktop:aspect-w-[648] desktop:aspect-h-[384] lg-desktop:aspect-w-[824] lg-desktop:aspect-h-[480]'\n case 3:\n return 'tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[427] desktop:aspect-h-[384] lg-desktop:aspect-w-[544] lg-desktop:aspect-h-[480]'\n default:\n return 'tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[316] desktop:aspect-h-[384] lg-desktop:aspect-w-[404] lg-desktop:aspect-h-[480]'\n }\n }\n\n const handleMouseMove = (e: React.MouseEvent) => {\n if (data?.description) {\n setTooltip({\n visible: true,\n x: e.clientX,\n y: e.clientY,\n text: data.description,\n })\n }\n }\n\n const handleMouseLeave = () => {\n setTooltip(prev => ({ ...prev, visible: false }))\n }\n\n useExposure(ref, {\n componentType,\n componentName,\n componentTitle: data?.title,\n componentDescription: data?.description,\n position: configuration?.index + 1,\n })\n\n return (\n <div\n ref={ref}\n className={cn(\n handleAspect(),\n 'graphicItem',\n 'laptop:h-auto text-info-primary md-tablet:h-[360px] flex-1 shrink-0 md:basis-[296px]',\n {\n 'aiui-dark': data.theme === 'dark',\n }\n )}\n >\n <div\n className={cn('absolute inset-0', {\n ['rounded-xl overflow-hidden laptop:rounded-2xl']: configuration?.itemShape === 'round',\n })}\n >\n <div\n className={`graphic-children relative block size-full overflow-hidden ${data?.href ? 'cursor-pointer' : ''}`}\n >\n {data?.href ? (\n <a\n aria-label={data?.title ?? data?.description}\n href={trackUrlRef(data?.href || '', `${componentType}_${componentName}`)}\n className=\"block size-full overflow-hidden\"\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}#${data?.description}`}\n >\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover tablet:hover:scale-110 transition-all duration-300\"\n source={data?.imgUrl?.url}\n alt={data?.imgUrl?.alt || ''}\n />\n </a>\n ) : (\n <div className=\"block size-full overflow-hidden\">\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover tablet:hover:scale-110 transition-all duration-300\"\n source={data?.imgUrl?.url}\n alt={data?.imgUrl?.alt || ''}\n />\n </div>\n )}\n <div className=\"laptop:p-6 absolute bottom-0 z-[1] box-border flex w-full flex-col p-4\">\n <div className={cn('flex items-end gap-1 overflow-hidden', 'graphic-bottom')}>\n <div className=\"flex-1 overflow-hidden\">\n <Text\n html={data?.title}\n style={{ color: data?.textColor }}\n className=\"spanTitle graphic-title lg-desktop:text-lg desktop:text-base line-clamp-3 text-sm font-bold leading-[1.2]\"\n />\n {data?.description && (\n <div onMouseMove={handleMouseMove} onMouseLeave={handleMouseLeave}>\n {data?.title ? (\n <Heading\n html={data?.description}\n style={{\n color: data?.textColor,\n }}\n as=\"h3\"\n className={`${descriptionClass} graphic-description`}\n />\n ) : (\n <h3\n style={{\n color: data?.textColor,\n }}\n dangerouslySetInnerHTML={{ __html: data?.description || '' }}\n className={`${descriptionClass} graphic-description-item`}\n />\n )}\n {typeof window !== 'undefined' &&\n tooltip.visible &&\n createPortal(\n <div\n className=\"pointer-events-none fixed z-[9999] max-w-xs rounded-lg bg-black/60 px-3 py-2 text-sm text-white shadow-lg backdrop-blur-sm transition-opacity duration-200\"\n style={{\n left: `${tooltip.x + 16}px`,\n top: `${tooltip.y + 16}px`,\n }}\n >\n {tooltip.text}\n </div>,\n document.body\n )}\n </div>\n )}\n </div>\n {!data?.isShowIcon && (data?.video?.url || data?.youtubeId) && (\n <button\n aria-label=\"Play Video\"\n onClick={(e: any) => {\n e.preventDefault()\n e.stopPropagation()\n configuration?.onVideoPlayBtnClick?.(configuration?.index || 0, data)\n }}\n className=\"laptop:size-12 flex size-8 items-center justify-center rounded-full bg-white/20 hover:bg-black/75\"\n >\n <svg width=\"12\" height=\"14\" viewBox=\"0 0 12 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 7L0 14L0 0L12 7Z\" fill=\"white\" />\n </svg>\n </button>\n )}\n {data?.isShowIcon && data?.icon?.url && (\n <button\n onClick={(e: any) => {\n e.preventDefault()\n e.stopPropagation()\n configuration?.onIconClick?.(data, configuration)\n }}\n className=\"laptop:size-9 flex size-8 items-center justify-center overflow-hidden rounded-full bg-white/20 hover:bg-black/75\"\n >\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover\"\n source={data?.icon?.url}\n alt={data?.icon?.alt || ''}\n />\n </button>\n )}\n </div>\n {data.buttonText && (\n <Button\n as=\"a\"\n aria-label={data?.title ?? data?.description}\n variant=\"secondary\"\n className=\"bgButton mt-[8px] self-start\"\n href={trackUrlRef(data?.href, `${componentType}_${componentName}`)}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}#${data?.description}#${data?.buttonText}`}\n >\n {data.buttonText}\n </Button>\n )}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nconst Graphic = React.forwardRef<HTMLDivElement, GraphicProps>(({ data, className }, ref) => {\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const innerRef = useRef<HTMLDivElement>(null)\n const [visible, setVisible] = useState<boolean>(false)\n const [videoUrl, setVideoUrl] = useState<string>('')\n const [youTubeId, setYouTubeId] = useState<string>('')\n const [mobileVideoUrl, setMobileVideoUrl] = useState<string>('')\n const [currentItem, setCurrentItem] = useState<GraphicType | null>(null)\n const [textVisible, setTextVisible] = useState<boolean>(false)\n\n const handleSwiperShow = (width?: number) => {\n const isShow = (data?.items as GraphicType[])?.length > 3\n const isMobile = (data?.items as GraphicType[])?.length > 2\n switch (width) {\n case 1440:\n return isShow ? 4 : data?.items?.length\n case 1024:\n return isShow ? 3 : data?.items?.length\n case 768:\n if ((data?.items as GraphicType[])?.length === 1) return 1 // \u2705 \u65B0\u589E\uFF1A\u53EA\u6709\u4E00\u4E2A item \u65F6\uFF0C\u5C55\u793A 1 \u4E2A\n return isShow ? 2.3 : isMobile ? 2.3 : 2\n default:\n if ((data?.items as GraphicType[])?.length === 1) return 1 // \u2705 \u65B0\u589E\uFF1A\u53EA\u6709\u4E00\u4E2A item \u65F6\uFF0C\u5C55\u793A 1 \u4E2A\n return 1.2\n }\n }\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType,\n componentName,\n componentTitle: data?.title,\n })\n\n useEffect(() => {\n const descriptions = innerRef.current?.querySelectorAll<HTMLDivElement>('.graphic-description')\n if (descriptions && descriptions.length > 0) {\n let maxHeight = 0\n descriptions.forEach((el: HTMLDivElement) => {\n maxHeight = Math.max(maxHeight, el.offsetHeight)\n })\n descriptions.forEach((el: HTMLDivElement) => {\n el.style.height = `${maxHeight}px`\n })\n }\n }, [])\n\n return (\n <div className={cn('graphicBlock', className)} ref={innerRef}>\n <div className=\"graphic-box\">\n {data?.title && <Title data={{ title: data?.title }} />}\n <SwiperBox\n id=\"Graphic\"\n className={cn('!overflow-visible')}\n data={{\n list: data?.items || [],\n configuration: {\n itemShape: data.itemShape,\n num: data?.items?.length || 0,\n onVideoPlayBtnClick: (_: number, data: GraphicType) => {\n setVisible(true)\n if (data?.isYouTube) {\n setYouTubeId?.(data?.youtubeId || '')\n } else {\n setVideoUrl?.(data?.video?.url || '')\n setMobileVideoUrl?.(data?.mobileVideo?.url || '')\n }\n },\n onIconClick: (data: GraphicType) => {\n setTextVisible(true)\n setCurrentItem(data)\n },\n title: data?.title,\n },\n }}\n Slide={Item}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: handleSwiperShow(),\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(768),\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(1024),\n },\n 1440: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(1440),\n },\n }}\n />\n </div>\n <VideoModal\n visible={visible}\n youTubeId={youTubeId}\n onCloseModal={() => setVisible(false)}\n videoUrl={isMobile ? mobileVideoUrl || videoUrl : videoUrl}\n />\n <TextModal\n textVisible={textVisible}\n extension={currentItem?.extension}\n onCloseModal={() => {\n setTextVisible(false)\n setCurrentItem(null)\n }}\n />\n </div>\n )\n})\n\nGraphic.displayName = 'Graphic'\n\nexport default withLayout(Graphic)\n"],
5
- "mappings": "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",
6
- "names": ["Graphic_exports", "__export", "Graphic_default", "__toCommonJS", "import_jsx_runtime", "import_react_responsive", "import_react", "import_react_dom", "import_utils", "import_Styles", "import_SwiperBox", "import_components", "import_Title", "import_VideoModal", "import_TextModal", "import_useExposure", "import_trackUrlRef", "componentType", "componentName", "descriptionClass", "Item", "data", "configuration", "ref", "tooltip", "setTooltip", "handleAspect", "handleMouseMove", "e", "handleMouseLeave", "prev", "Graphic", "React", "className", "isMobile", "innerRef", "visible", "setVisible", "videoUrl", "setVideoUrl", "youTubeId", "setYouTubeId", "mobileVideoUrl", "setMobileVideoUrl", "currentItem", "setCurrentItem", "textVisible", "setTextVisible", "handleSwiperShow", "width", "isShow", "descriptions", "maxHeight", "el", "Title", "SwiperBox", "_"]
4
+ "sourcesContent": ["'use client'\nimport { useMediaQuery } from 'react-responsive'\nimport React, { useEffect, useImperativeHandle, useRef, useState } from 'react'\nimport { createPortal } from 'react-dom'\nimport { cn } from '../../helpers/utils.js'\nimport { withLayout } from '../../shared/Styles.js'\nimport SwiperBox from '../SwiperBox/index.js'\nimport { Button, Heading, Picture, Text } from '../../components/index.js'\nimport Title from '../Title/index.js'\nimport { VideoModal } from '../VideoModal/index.js'\nimport { TextModal } from '../TextModal/index.js'\nimport type { ComponentCommonProps, Video, Img, Theme } from '../../types/props.js'\nimport { useExposure } from '../../hooks/useExposure.js'\nimport { trackUrlRef } from '../../shared/trackUrlRef.js'\n\nconst componentType = 'image'\nconst componentName = 'graphic'\n\ntype GraphicType = {\n imgUrl: Img\n title: string\n description?: string\n textColor?: string\n href?: string\n video?: Video\n mobileVideo?: Video\n youtubeId?: string\n isYouTube?: boolean\n isShowIcon?: boolean\n buttonText?: string\n icon?: Img\n theme?: Theme\n extension?: {\n text: string\n textDesc: string\n textTitle: string\n textPcImg: Img\n textMobileImg: Img\n }\n}\n\nconst descriptionClass =\n 'descTitle lg-desktop:text-[32px] desktop:mt-2 desktop:text-[24px] text-lines-2 mt-1 line-clamp-3 flex-1 text-[24px] font-bold leading-[1.2]'\nexport interface GraphicProps extends ComponentCommonProps, React.HTMLAttributes<HTMLDivElement> {\n data: {\n title?: string\n items?: GraphicType[]\n itemShape?: 'round' | 'square'\n itemTheme?: Theme\n }\n}\n\nconst Item = ({ data, configuration }: { data: GraphicType; configuration?: any }) => {\n const ref = useRef<HTMLDivElement>(null)\n const [tooltip, setTooltip] = useState<{ visible: boolean; x: number; y: number; text: string }>({\n visible: false,\n x: 0,\n y: 0,\n text: '',\n })\n\n const handleAspect = () => {\n switch (configuration.num) {\n case 1:\n return 'tablet:aspect-w-[704] tablet:aspect-h-[400] laptop:aspect-w-[896] laptop:aspect-h-[384] desktop:aspect-w-[1312] desktop:aspect-h-[512] lg-desktop:aspect-w-[1664] lg-desktop:aspect-h-[640]'\n case 2:\n return 'tablet:aspect-w-[346] tablet:aspect-h-[360] laptop:aspect-w-[440] laptop:aspect-h-[360] desktop:aspect-w-[648] desktop:aspect-h-[384] lg-desktop:aspect-w-[824] lg-desktop:aspect-h-[480]'\n case 3:\n return 'tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[427] desktop:aspect-h-[384] lg-desktop:aspect-w-[544] lg-desktop:aspect-h-[480]'\n default:\n return 'tablet:aspect-w-[296] tablet:aspect-h-[360] laptop:aspect-w-[288] laptop:aspect-h-[360] desktop:aspect-w-[316] desktop:aspect-h-[384] lg-desktop:aspect-w-[404] lg-desktop:aspect-h-[480]'\n }\n }\n\n const handleMouseMove = (e: React.MouseEvent) => {\n if (data?.description) {\n setTooltip({\n visible: true,\n x: e.clientX,\n y: e.clientY,\n text: data.description,\n })\n }\n }\n\n const handleMouseLeave = () => {\n setTooltip(prev => ({ ...prev, visible: false }))\n }\n\n useExposure(ref, {\n componentType,\n componentName,\n componentTitle: data?.title,\n componentDescription: data?.description,\n position: configuration?.index + 1,\n })\n\n return (\n <div\n ref={ref}\n className={cn(\n handleAspect(),\n 'graphicItem',\n 'laptop:h-auto text-info-primary md-tablet:h-[360px] flex-1 shrink-0 md:basis-[296px]',\n {\n 'aiui-dark': data.theme === 'dark',\n }\n )}\n >\n <div\n className={cn('absolute inset-0', {\n ['rounded-xl overflow-hidden laptop:rounded-2xl']: configuration?.itemShape === 'round',\n })}\n >\n <div\n className={`graphic-children relative block size-full overflow-hidden ${data?.href ? 'cursor-pointer' : ''}`}\n >\n {data?.href ? (\n <a\n aria-label={data?.title ?? data?.description}\n href={trackUrlRef(data?.href || '', `${componentType}_${componentName}`)}\n className=\"block size-full overflow-hidden\"\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}#${data?.description}`}\n >\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover tablet:hover:scale-110 transition-all duration-300\"\n source={data?.imgUrl?.url}\n alt={data?.imgUrl?.alt || ''}\n />\n </a>\n ) : (\n <div className=\"block size-full overflow-hidden\">\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover tablet:hover:scale-110 transition-all duration-300\"\n source={data?.imgUrl?.url}\n alt={data?.imgUrl?.alt || ''}\n />\n </div>\n )}\n <div className=\"laptop:p-6 absolute bottom-0 z-[1] box-border flex w-full flex-col p-4\">\n <div className={cn('flex items-end gap-1 overflow-hidden', 'graphic-bottom')}>\n <div className=\"flex-1 overflow-hidden\">\n <Text\n html={data?.title}\n style={{ color: data?.textColor }}\n className=\"spanTitle graphic-title lg-desktop:text-lg desktop:text-base line-clamp-3 text-sm font-bold leading-[1.2]\"\n />\n {data?.description && (\n <div onMouseMove={handleMouseMove} onMouseLeave={handleMouseLeave}>\n {data?.title ? (\n <Heading\n html={data?.description}\n style={{\n color: data?.textColor,\n }}\n as=\"h3\"\n className={`${descriptionClass} graphic-description`}\n />\n ) : (\n <h3\n style={{\n color: data?.textColor,\n }}\n dangerouslySetInnerHTML={{ __html: data?.description || '' }}\n className={`${descriptionClass} graphic-description-item`}\n />\n )}\n {typeof window !== 'undefined' &&\n tooltip.visible &&\n createPortal(\n <div\n className=\"pointer-events-none fixed z-[9999] max-w-xs rounded-lg bg-black/60 px-3 py-2 text-sm text-white shadow-lg backdrop-blur-sm transition-opacity duration-200\"\n style={{\n left: `${tooltip.x + 16}px`,\n top: `${tooltip.y + 16}px`,\n }}\n >\n {tooltip.text}\n </div>,\n document.body\n )}\n </div>\n )}\n </div>\n {!data?.isShowIcon && (data?.video?.url || data?.youtubeId) && (\n <button\n aria-label=\"Play Video\"\n onClick={(e: any) => {\n e.preventDefault()\n e.stopPropagation()\n configuration?.onVideoPlayBtnClick?.(configuration?.index || 0, data)\n }}\n className=\"laptop:size-12 flex size-8 items-center justify-center rounded-full bg-white/20 hover:bg-black/75\"\n >\n <svg width=\"12\" height=\"14\" viewBox=\"0 0 12 14\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path d=\"M12 7L0 14L0 0L12 7Z\" fill=\"white\" />\n </svg>\n </button>\n )}\n {data?.isShowIcon && data?.icon?.url && (\n <button\n onClick={(e: any) => {\n e.preventDefault()\n e.stopPropagation()\n configuration?.onIconClick?.(data, configuration)\n }}\n className=\"laptop:size-9 flex size-8 items-center justify-center overflow-hidden rounded-full bg-white/20 hover:bg-black/75\"\n >\n <Picture\n className=\"h-full\"\n imgClassName=\"h-full object-cover\"\n source={data?.icon?.url}\n alt={data?.icon?.alt || ''}\n />\n </button>\n )}\n </div>\n {data.buttonText && (\n <Button\n as=\"a\"\n aria-label={data?.title ?? data?.description}\n variant=\"secondary\"\n className=\"bgButton mt-[8px] self-start\"\n href={trackUrlRef(data?.href, `${componentType}_${componentName}`)}\n data-headless-nav-postion={`''#${configuration?.index + 1}`}\n data-headless-type-name={`${componentType}#${componentName}`}\n data-headless-title-desc-button={`${data?.title}#${data?.description}#${data?.buttonText}`}\n >\n {data.buttonText}\n </Button>\n )}\n </div>\n </div>\n </div>\n </div>\n )\n}\n\nconst Graphic = React.forwardRef<HTMLDivElement, GraphicProps>(({ data, className, ...rest }, ref) => {\n const isMobile = useMediaQuery({ query: '(max-width: 768px)' })\n const innerRef = useRef<HTMLDivElement>(null)\n const [visible, setVisible] = useState<boolean>(false)\n const [videoUrl, setVideoUrl] = useState<string>('')\n const [youTubeId, setYouTubeId] = useState<string>('')\n const [mobileVideoUrl, setMobileVideoUrl] = useState<string>('')\n const [currentItem, setCurrentItem] = useState<GraphicType | null>(null)\n const [textVisible, setTextVisible] = useState<boolean>(false)\n\n const handleSwiperShow = (width?: number) => {\n const isShow = (data?.items as GraphicType[])?.length > 3\n const isMobile = (data?.items as GraphicType[])?.length > 2\n switch (width) {\n case 1440:\n return isShow ? 4 : data?.items?.length\n case 1024:\n return isShow ? 3 : data?.items?.length\n case 768:\n if ((data?.items as GraphicType[])?.length === 1) return 1 // \u2705 \u65B0\u589E\uFF1A\u53EA\u6709\u4E00\u4E2A item \u65F6\uFF0C\u5C55\u793A 1 \u4E2A\n return isShow ? 2.3 : isMobile ? 2.3 : 2\n default:\n if ((data?.items as GraphicType[])?.length === 1) return 1 // \u2705 \u65B0\u589E\uFF1A\u53EA\u6709\u4E00\u4E2A item \u65F6\uFF0C\u5C55\u793A 1 \u4E2A\n return 1.2\n }\n }\n\n useImperativeHandle(ref, () => innerRef.current as HTMLDivElement)\n\n useExposure(innerRef, {\n componentType,\n componentName,\n componentTitle: data?.title,\n })\n\n useEffect(() => {\n const descriptions = innerRef.current?.querySelectorAll<HTMLDivElement>('.graphic-description')\n if (descriptions && descriptions.length > 0) {\n let maxHeight = 0\n descriptions.forEach((el: HTMLDivElement) => {\n maxHeight = Math.max(maxHeight, el.offsetHeight)\n })\n descriptions.forEach((el: HTMLDivElement) => {\n el.style.height = `${maxHeight}px`\n })\n }\n }, [])\n\n return (\n <div {...rest} ref={innerRef} className={cn('graphicBlock', className)}>\n <div className=\"graphic-box\">\n {data?.title && <Title data={{ title: data?.title }} />}\n <SwiperBox\n id=\"Graphic\"\n className={cn('!overflow-visible')}\n data={{\n list: data?.items || [],\n configuration: {\n itemShape: data.itemShape,\n num: data?.items?.length || 0,\n onVideoPlayBtnClick: (_: number, data: GraphicType) => {\n setVisible(true)\n if (data?.isYouTube) {\n setYouTubeId?.(data?.youtubeId || '')\n } else {\n setVideoUrl?.(data?.video?.url || '')\n setMobileVideoUrl?.(data?.mobileVideo?.url || '')\n }\n },\n onIconClick: (data: GraphicType) => {\n setTextVisible(true)\n setCurrentItem(data)\n },\n title: data?.title,\n },\n }}\n Slide={Item}\n breakpoints={{\n 0: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: 1,\n },\n 374: {\n spaceBetween: 12,\n freeMode: false,\n slidesPerView: handleSwiperShow(),\n },\n 768: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(768),\n },\n 1024: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(1024),\n },\n 1440: {\n spaceBetween: 16,\n freeMode: false,\n slidesPerView: handleSwiperShow(1440),\n },\n }}\n />\n </div>\n <VideoModal\n visible={visible}\n youTubeId={youTubeId}\n onCloseModal={() => setVisible(false)}\n videoUrl={isMobile ? mobileVideoUrl || videoUrl : videoUrl}\n />\n <TextModal\n textVisible={textVisible}\n extension={currentItem?.extension}\n onCloseModal={() => {\n setTextVisible(false)\n setCurrentItem(null)\n }}\n />\n </div>\n )\n})\n\nGraphic.displayName = 'Graphic'\n\nexport default withLayout(Graphic)\n"],
5
+ "mappings": "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",
6
+ "names": ["Graphic_exports", "__export", "Graphic_default", "__toCommonJS", "import_jsx_runtime", "import_react_responsive", "import_react", "import_react_dom", "import_utils", "import_Styles", "import_SwiperBox", "import_components", "import_Title", "import_VideoModal", "import_TextModal", "import_useExposure", "import_trackUrlRef", "componentType", "componentName", "descriptionClass", "Item", "data", "configuration", "ref", "tooltip", "setTooltip", "handleAspect", "handleMouseMove", "e", "handleMouseLeave", "prev", "Graphic", "React", "className", "rest", "isMobile", "innerRef", "visible", "setVisible", "videoUrl", "setVideoUrl", "youTubeId", "setYouTubeId", "mobileVideoUrl", "setMobileVideoUrl", "currentItem", "setCurrentItem", "textVisible", "setTextVisible", "handleSwiperShow", "width", "isShow", "descriptions", "maxHeight", "el", "Title", "SwiperBox", "_"]
7
7
  }
@@ -1,12 +1,12 @@
1
1
  import React from 'react';
2
2
  import type { Shape } from '../../types/props';
3
- import type { ComponentCommonProps, Media, Img } from '../../types/props';
3
+ import type { Media, Img } from '../../types/props';
4
4
  export interface AttractionItem {
5
5
  icon?: Img;
6
6
  title: string;
7
7
  description: string;
8
8
  }
9
- interface GraphicAttractionBlockProps extends ComponentCommonProps {
9
+ interface GraphicAttractionBlockProps extends React.HTMLAttributes<HTMLElement> {
10
10
  data: {
11
11
  shape?: Shape;
12
12
  sectionTitle?: string;
@@ -17,7 +17,7 @@ interface GraphicAttractionBlockProps extends ComponentCommonProps {
17
17
  attractionItems?: AttractionItem[];
18
18
  };
19
19
  }
20
- declare const _default: React.ForwardRefExoticComponent<Omit<GraphicAttractionBlockProps & React.RefAttributes<HTMLDivElement> & {
20
+ declare const _default: React.ForwardRefExoticComponent<Omit<GraphicAttractionBlockProps & React.RefAttributes<HTMLElement> & {
21
21
  style?: string | React.CSSProperties;
22
22
  container?: import("../../shared/Styles.js").ContainerProps["container"];
23
23
  }, "ref"> & React.RefAttributes<any>>;
@@ -1,2 +1,2 @@
1
- "use strict";var w=Object.create;var l=Object.defineProperty;var A=Object.getOwnPropertyDescriptor;var P=Object.getOwnPropertyNames;var T=Object.getPrototypeOf,B=Object.prototype.hasOwnProperty;var C=(t,i)=>{for(var a in i)l(t,a,{get:i[a],enumerable:!0})},g=(t,i,a,s)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of P(i))!B.call(t,o)&&o!==a&&l(t,o,{get:()=>i[o],enumerable:!(s=A(i,o))||s.enumerable});return t};var m=(t,i,a)=>(a=t!=null?w(T(t)):{},g(i||!t||!t.__esModule?l(a,"default",{value:t,enumerable:!0}):a,t)),G=t=>g(l({},"__esModule",{value:!0}),t);var M={};C(M,{default:()=>I});module.exports=G(M);var e=require("react/jsx-runtime"),x=m(require("react")),h=require("../../shared/Styles.js"),n=m(require("../../components/picture.js")),u=require("../../components/heading.js"),p=require("../../components/text.js"),k=m(require("../Title/index.js")),c=require("../../helpers/utils.js");const f=x.default.forwardRef((t,i)=>{const{shape:a,imageUrlPc:s,imageUrlMob:o,sectionTitle:d,imageTitle:v,imageDescription:b,attractionItems:N}=t.data;return(0,e.jsxs)("section",{ref:i,"data-ui-component-id":"GraphicAttractionBlock",className:(0,c.cn)("text-info-primary relative",t.className),children:[d&&(0,e.jsx)(k.default,{data:{title:d}}),(0,e.jsxs)("div",{className:(0,c.cn)("tablet:aspect-[1664/560] relative aspect-[358/480] w-full overflow-hidden",{"rounded-box":a==="rounded"}),children:[(0,e.jsx)(n.default,{source:`${s?.url}, ${o?.url} 767`,className:"inset-0",imgClassName:"h-full object-cover",alt:s?.alt||""}),(0,e.jsxs)("div",{className:"lg-desktop:p-8 absolute inset-0 z-[1] flex flex-col justify-end p-4",children:[(0,e.jsx)(u.Heading,{as:"h3",className:"text-white",size:3,html:v}),(0,e.jsx)(p.Text,{as:"p",className:"text-white",size:2,html:b})]})]}),(0,e.jsx)("div",{className:"tablet:gap-4 tablet:grid-cols-4 tablet:mt-[10px] mt-4 grid grid-cols-2 gap-3",children:N?.map((r,y)=>(0,e.jsxs)("div",{className:(0,c.cn)("lg-desktop:p-8 desktop:p-6 desktop:gap-16 flex flex-col justify-between gap-12 bg-white p-4",{"rounded-box":a==="rounded"}),children:[(0,e.jsxs)("div",{className:"lg-desktop:h-[36px] flex h-[30px] items-center justify-between gap-3",children:[(0,e.jsx)(p.Text,{as:"p",className:"lg-desktop:text-[18px] tracking text-[14px] font-semibold",html:r.title}),(0,e.jsx)(n.default,{className:"lg-desktop:size-[36px] size-[30px] shrink-0 object-cover",source:r.icon?.url,alt:r.icon?.alt,imgClassName:"w-full h-full object-cover"})]}),(0,e.jsx)(p.Text,{as:"p",className:"lg-desktop:text-[24px] tracking text-[20px] leading-tight",html:r.description})]},y))})]})});f.displayName="GraphicAttractionBlock";var I=(0,h.withLayout)(f);
1
+ "use strict";var T=Object.create;var l=Object.defineProperty;var M=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var G=Object.getPrototypeOf,I=Object.prototype.hasOwnProperty;var P=(t,i)=>{for(var a in i)l(t,a,{get:i[a],enumerable:!0})},f=(t,i,a,s)=>{if(i&&typeof i=="object"||typeof i=="function")for(let o of B(i))!I.call(t,o)&&o!==a&&l(t,o,{get:()=>i[o],enumerable:!(s=M(i,o))||s.enumerable});return t};var m=(t,i,a)=>(a=t!=null?T(G(t)):{},f(i||!t||!t.__esModule?l(a,"default",{value:t,enumerable:!0}):a,t)),j=t=>f(l({},"__esModule",{value:!0}),t);var H={};P(H,{default:()=>z});module.exports=j(H);var e=require("react/jsx-runtime"),h=m(require("react")),u=require("../../shared/Styles.js"),n=m(require("../../components/picture.js")),k=require("../../components/heading.js"),p=require("../../components/text.js"),b=m(require("../Title/index.js")),c=require("../../helpers/utils.js");const x=h.default.forwardRef(({data:t,className:i,...a},s)=>{const{shape:o,imageUrlPc:d,imageUrlMob:v,sectionTitle:g,imageTitle:N,imageDescription:y,attractionItems:w}=t;return(0,e.jsxs)("section",{ref:s,"data-ui-component-id":"GraphicAttractionBlock",...a,className:(0,c.cn)("text-info-primary relative",i),children:[g&&(0,e.jsx)(b.default,{data:{title:g}}),(0,e.jsxs)("div",{className:(0,c.cn)("tablet:aspect-[1664/560] relative aspect-[358/480] w-full overflow-hidden",{"rounded-box":o==="rounded"}),children:[(0,e.jsx)(n.default,{source:`${d?.url}, ${v?.url} 767`,className:"inset-0",imgClassName:"h-full object-cover",alt:d?.alt||""}),(0,e.jsxs)("div",{className:"lg-desktop:p-8 absolute inset-0 z-[1] flex flex-col justify-end p-4",children:[(0,e.jsx)(k.Heading,{as:"h3",className:"text-white",size:3,html:N}),(0,e.jsx)(p.Text,{as:"p",className:"text-white",size:2,html:y})]})]}),(0,e.jsx)("div",{className:"tablet:gap-4 tablet:grid-cols-4 tablet:mt-[10px] mt-4 grid grid-cols-2 gap-3",children:w?.map((r,A)=>(0,e.jsxs)("div",{className:(0,c.cn)("lg-desktop:p-8 desktop:p-6 desktop:gap-16 flex flex-col justify-between gap-12 bg-white p-4",{"rounded-box":o==="rounded"}),children:[(0,e.jsxs)("div",{className:"lg-desktop:h-[36px] flex h-[30px] items-center justify-between gap-3",children:[(0,e.jsx)(p.Text,{as:"p",className:"lg-desktop:text-[18px] tracking text-[14px] font-semibold",html:r.title}),(0,e.jsx)(n.default,{className:"lg-desktop:size-[36px] size-[30px] shrink-0 object-cover",source:r.icon?.url,alt:r.icon?.alt,imgClassName:"w-full h-full object-cover"})]}),(0,e.jsx)(p.Text,{as:"p",className:"lg-desktop:text-[24px] tracking text-[20px] leading-tight",html:r.description})]},A))})]})});x.displayName="GraphicAttractionBlock";var z=(0,u.withLayout)(x);
2
2
  //# sourceMappingURL=index.js.map