@momo-webplatform/mobase-next 1.0.1

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 (316) hide show
  1. package/README.md +136 -0
  2. package/dist/chunk-7LRQ2WLZ.mjs +1 -0
  3. package/dist/components/blocks/BlogSection/BlogSection.d.mts +17 -0
  4. package/dist/components/blocks/BlogSection/BlogSection.mjs +1 -0
  5. package/dist/components/blocks/BlogSection/BlogSectionTemplate.d.mts +15 -0
  6. package/dist/components/blocks/BlogSection/BlogSectionTemplate.mjs +1 -0
  7. package/dist/components/blocks/BlogSection/index.d.mts +14 -0
  8. package/dist/components/blocks/BlogSection/index.mjs +1 -0
  9. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateOne.d.mts +17 -0
  10. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateOne.mjs +1 -0
  11. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateTwo.d.mts +17 -0
  12. package/dist/components/blocks/BlogSection/templates/BlogSectionTemplateTwo.mjs +1 -0
  13. package/dist/components/blocks/BlogSection/utils.d.mts +49 -0
  14. package/dist/components/blocks/BlogSection/utils.mjs +0 -0
  15. package/dist/components/blocks/CTASection/CTASection.d.mts +17 -0
  16. package/dist/components/blocks/CTASection/CTASection.mjs +1 -0
  17. package/dist/components/blocks/CTASection/CTASectionTemplate.d.mts +18 -0
  18. package/dist/components/blocks/CTASection/CTASectionTemplate.mjs +1 -0
  19. package/dist/components/blocks/CTASection/index.d.mts +14 -0
  20. package/dist/components/blocks/CTASection/index.mjs +1 -0
  21. package/dist/components/blocks/CTASection/utils.d.mts +60 -0
  22. package/dist/components/blocks/CTASection/utils.mjs +0 -0
  23. package/dist/components/blocks/FAQSection/FAQSection.d.mts +17 -0
  24. package/dist/components/blocks/FAQSection/FAQSection.mjs +1 -0
  25. package/dist/components/blocks/FAQSection/FAQTemplate.d.mts +18 -0
  26. package/dist/components/blocks/FAQSection/FAQTemplate.mjs +1 -0
  27. package/dist/components/blocks/FAQSection/index.d.mts +14 -0
  28. package/dist/components/blocks/FAQSection/index.mjs +1 -0
  29. package/dist/components/blocks/FAQSection/utils.d.mts +36 -0
  30. package/dist/components/blocks/FAQSection/utils.mjs +0 -0
  31. package/dist/components/blocks/FeatureSection/FeatureSection.d.mts +17 -0
  32. package/dist/components/blocks/FeatureSection/FeatureSection.mjs +1 -0
  33. package/dist/components/blocks/FeatureSection/FeatureTemlates.d.mts +29 -0
  34. package/dist/components/blocks/FeatureSection/FeatureTemlates.mjs +1 -0
  35. package/dist/components/blocks/FeatureSection/index.d.mts +14 -0
  36. package/dist/components/blocks/FeatureSection/index.mjs +1 -0
  37. package/dist/components/blocks/FeatureSection/utils.d.mts +77 -0
  38. package/dist/components/blocks/FeatureSection/utils.mjs +0 -0
  39. package/dist/components/blocks/GiftListSection/GiftListSection.d.mts +17 -0
  40. package/dist/components/blocks/GiftListSection/GiftListSection.mjs +1 -0
  41. package/dist/components/blocks/GiftListSection/GiftListSectionTemplate.d.mts +17 -0
  42. package/dist/components/blocks/GiftListSection/GiftListSectionTemplate.mjs +1 -0
  43. package/dist/components/blocks/GiftListSection/index.d.mts +14 -0
  44. package/dist/components/blocks/GiftListSection/index.mjs +1 -0
  45. package/dist/components/blocks/GiftListSection/utils.d.mts +81 -0
  46. package/dist/components/blocks/GiftListSection/utils.mjs +0 -0
  47. package/dist/components/blocks/HeroSection/HeroSection.d.mts +18 -0
  48. package/dist/components/blocks/HeroSection/HeroSection.mjs +1 -0
  49. package/dist/components/blocks/HeroSection/HeroSectionFeatures.d.mts +31 -0
  50. package/dist/components/blocks/HeroSection/HeroSectionFeatures.mjs +1 -0
  51. package/dist/components/blocks/HeroSection/HeroSectionMedia.d.mts +17 -0
  52. package/dist/components/blocks/HeroSection/HeroSectionMedia.mjs +1 -0
  53. package/dist/components/blocks/HeroSection/HeroSectionStats.d.mts +19 -0
  54. package/dist/components/blocks/HeroSection/HeroSectionStats.mjs +1 -0
  55. package/dist/components/blocks/HeroSection/HeroSectionTemplate.d.mts +19 -0
  56. package/dist/components/blocks/HeroSection/HeroSectionTemplate.mjs +1 -0
  57. package/dist/components/blocks/HeroSection/index.d.mts +14 -0
  58. package/dist/components/blocks/HeroSection/index.mjs +1 -0
  59. package/dist/components/blocks/HeroSection/utils.d.mts +84 -0
  60. package/dist/components/blocks/HeroSection/utils.mjs +1 -0
  61. package/dist/components/blocks/HowItWorksSection/HowItWorksSection.d.mts +17 -0
  62. package/dist/components/blocks/HowItWorksSection/HowItWorksSection.mjs +1 -0
  63. package/dist/components/blocks/HowItWorksSection/HowItWorksSectionTemplate.d.mts +19 -0
  64. package/dist/components/blocks/HowItWorksSection/HowItWorksSectionTemplate.mjs +1 -0
  65. package/dist/components/blocks/HowItWorksSection/index.d.mts +14 -0
  66. package/dist/components/blocks/HowItWorksSection/index.mjs +1 -0
  67. package/dist/components/blocks/HowItWorksSection/utils.d.mts +47 -0
  68. package/dist/components/blocks/HowItWorksSection/utils.mjs +0 -0
  69. package/dist/components/blocks/MetricsSection/MetricsSection.d.mts +17 -0
  70. package/dist/components/blocks/MetricsSection/MetricsSection.mjs +1 -0
  71. package/dist/components/blocks/MetricsSection/MetricsSectionTemplate.d.mts +15 -0
  72. package/dist/components/blocks/MetricsSection/MetricsSectionTemplate.mjs +1 -0
  73. package/dist/components/blocks/MetricsSection/index.d.mts +14 -0
  74. package/dist/components/blocks/MetricsSection/index.mjs +1 -0
  75. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateOne.d.mts +17 -0
  76. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateOne.mjs +1 -0
  77. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateTwo.d.mts +17 -0
  78. package/dist/components/blocks/MetricsSection/template/MetricsSectionTemplateTwo.mjs +1 -0
  79. package/dist/components/blocks/MetricsSection/utils.d.mts +38 -0
  80. package/dist/components/blocks/MetricsSection/utils.mjs +0 -0
  81. package/dist/components/blocks/NewsSection/NewsSection.d.mts +17 -0
  82. package/dist/components/blocks/NewsSection/NewsSection.mjs +1 -0
  83. package/dist/components/blocks/NewsSection/NewsSectionTemplate.d.mts +17 -0
  84. package/dist/components/blocks/NewsSection/NewsSectionTemplate.mjs +1 -0
  85. package/dist/components/blocks/NewsSection/index.d.mts +14 -0
  86. package/dist/components/blocks/NewsSection/index.mjs +1 -0
  87. package/dist/components/blocks/NewsSection/utils.d.mts +64 -0
  88. package/dist/components/blocks/NewsSection/utils.mjs +0 -0
  89. package/dist/components/blocks/SocialProofSection/SocialProofSection.d.mts +17 -0
  90. package/dist/components/blocks/SocialProofSection/SocialProofSection.mjs +1 -0
  91. package/dist/components/blocks/SocialProofSection/SocialProofTemplates.d.mts +17 -0
  92. package/dist/components/blocks/SocialProofSection/SocialProofTemplates.mjs +1 -0
  93. package/dist/components/blocks/SocialProofSection/index.d.mts +14 -0
  94. package/dist/components/blocks/SocialProofSection/index.mjs +1 -0
  95. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate1.d.mts +17 -0
  96. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate1.mjs +1 -0
  97. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate2.d.mts +17 -0
  98. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate2.mjs +1 -0
  99. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate3.d.mts +17 -0
  100. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate3.mjs +1 -0
  101. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate4.d.mts +17 -0
  102. package/dist/components/blocks/SocialProofSection/templates/SocialProofTemplate4.mjs +18 -0
  103. package/dist/components/blocks/SocialProofSection/utils.d.mts +31 -0
  104. package/dist/components/blocks/SocialProofSection/utils.mjs +0 -0
  105. package/dist/components/blocks/TestimonialSection/TestimonialSection.d.mts +17 -0
  106. package/dist/components/blocks/TestimonialSection/TestimonialSection.mjs +1 -0
  107. package/dist/components/blocks/TestimonialSection/index.d.mts +14 -0
  108. package/dist/components/blocks/TestimonialSection/index.mjs +1 -0
  109. package/dist/components/blocks/TestimonialSection/shared.d.mts +29 -0
  110. package/dist/components/blocks/TestimonialSection/shared.mjs +1 -0
  111. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateOne.d.mts +17 -0
  112. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateOne.mjs +1 -0
  113. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateThree.d.mts +17 -0
  114. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateThree.mjs +1 -0
  115. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateTwo.d.mts +17 -0
  116. package/dist/components/blocks/TestimonialSection/templates/TestimonialTemplateTwo.mjs +5 -0
  117. package/dist/components/blocks/TestimonialSection/utils.d.mts +37 -0
  118. package/dist/components/blocks/TestimonialSection/utils.mjs +1 -0
  119. package/dist/components/blocks/action-button/action-button.d.mts +15 -0
  120. package/dist/components/blocks/action-button/action-button.mjs +1 -0
  121. package/dist/components/blocks/action-button/index.d.mts +12 -0
  122. package/dist/components/blocks/action-button/index.mjs +1 -0
  123. package/dist/components/blocks/action-button/utils.d.mts +40 -0
  124. package/dist/components/blocks/action-button/utils.mjs +1 -0
  125. package/dist/components/blocks/common-blocks/common-blocks.d.mts +18 -0
  126. package/dist/components/blocks/common-blocks/common-blocks.mjs +1 -0
  127. package/dist/components/blocks/common-blocks/index.d.mts +13 -0
  128. package/dist/components/blocks/common-blocks/index.mjs +1 -0
  129. package/dist/components/blocks/common-blocks/utils.d.mts +90 -0
  130. package/dist/components/blocks/common-blocks/utils.mjs +0 -0
  131. package/dist/components/blocks/dialog-qr/DialogQr.d.mts +42 -0
  132. package/dist/components/blocks/dialog-qr/DialogQr.mjs +70 -0
  133. package/dist/components/blocks/dialog-qr/index.d.mts +8 -0
  134. package/dist/components/blocks/dialog-qr/index.mjs +1 -0
  135. package/dist/components/blocks/footer/defaults.d.mts +39 -0
  136. package/dist/components/blocks/footer/defaults.mjs +1 -0
  137. package/dist/components/blocks/footer/footer-content.d.mts +6 -0
  138. package/dist/components/blocks/footer/footer-content.mjs +5 -0
  139. package/dist/components/blocks/footer/footer.d.mts +6 -0
  140. package/dist/components/blocks/footer/footer.mjs +1 -0
  141. package/dist/components/blocks/footer/index.d.mts +5 -0
  142. package/dist/components/blocks/footer/index.mjs +1 -0
  143. package/dist/components/blocks/footer/types.d.mts +27 -0
  144. package/dist/components/blocks/footer/types.mjs +0 -0
  145. package/dist/components/blocks/header-navigation/header-navigation.d.mts +7 -0
  146. package/dist/components/blocks/header-navigation/header-navigation.mjs +5 -0
  147. package/dist/components/blocks/header-navigation/index.d.mts +4 -0
  148. package/dist/components/blocks/header-navigation/index.mjs +1 -0
  149. package/dist/components/blocks/header-navigation/list-item-mobile.d.mts +14 -0
  150. package/dist/components/blocks/header-navigation/list-item-mobile.mjs +1 -0
  151. package/dist/components/blocks/header-navigation/list-item.d.mts +14 -0
  152. package/dist/components/blocks/header-navigation/list-item.mjs +1 -0
  153. package/dist/components/blocks/header-navigation/mobile-menu.d.mts +11 -0
  154. package/dist/components/blocks/header-navigation/mobile-menu.mjs +1 -0
  155. package/dist/components/blocks/header-navigation/nav-items-mobile.d.mts +10 -0
  156. package/dist/components/blocks/header-navigation/nav-items-mobile.mjs +1 -0
  157. package/dist/components/blocks/header-navigation/nav-items.d.mts +11 -0
  158. package/dist/components/blocks/header-navigation/nav-items.mjs +1 -0
  159. package/dist/components/blocks/header-navigation/types.d.mts +44 -0
  160. package/dist/components/blocks/header-navigation/types.mjs +0 -0
  161. package/dist/components/blocks/heading-group/HeadingGroup.d.mts +97 -0
  162. package/dist/components/blocks/heading-group/HeadingGroup.mjs +1 -0
  163. package/dist/components/blocks/heading-group/index.d.mts +3 -0
  164. package/dist/components/blocks/heading-group/index.mjs +1 -0
  165. package/dist/components/mobase/accordion.d.mts +9 -0
  166. package/dist/components/mobase/accordion.mjs +1 -0
  167. package/dist/components/mobase/alert-dialog.d.mts +24 -0
  168. package/dist/components/mobase/alert-dialog.mjs +1 -0
  169. package/dist/components/mobase/alert.d.mts +14 -0
  170. package/dist/components/mobase/alert.mjs +1 -0
  171. package/dist/components/mobase/aspect-ratio.d.mts +8 -0
  172. package/dist/components/mobase/aspect-ratio.mjs +1 -0
  173. package/dist/components/mobase/autocomplete.d.mts +34 -0
  174. package/dist/components/mobase/autocomplete.mjs +1 -0
  175. package/dist/components/mobase/avatar.d.mts +14 -0
  176. package/dist/components/mobase/avatar.mjs +1 -0
  177. package/dist/components/mobase/badge.d.mts +15 -0
  178. package/dist/components/mobase/badge.mjs +1 -0
  179. package/dist/components/mobase/breadcrumb.d.mts +13 -0
  180. package/dist/components/mobase/breadcrumb.mjs +1 -0
  181. package/dist/components/mobase/button-group.d.mts +16 -0
  182. package/dist/components/mobase/button-group.mjs +1 -0
  183. package/dist/components/mobase/button.d.mts +22 -0
  184. package/dist/components/mobase/button.mjs +1 -0
  185. package/dist/components/mobase/calendar.d.mts +16 -0
  186. package/dist/components/mobase/calendar.mjs +1 -0
  187. package/dist/components/mobase/card.d.mts +14 -0
  188. package/dist/components/mobase/card.mjs +1 -0
  189. package/dist/components/mobase/carousel.d.mts +37 -0
  190. package/dist/components/mobase/carousel.mjs +1 -0
  191. package/dist/components/mobase/checkbox.d.mts +7 -0
  192. package/dist/components/mobase/checkbox.mjs +1 -0
  193. package/dist/components/mobase/close-button.d.mts +17 -0
  194. package/dist/components/mobase/close-button.mjs +1 -0
  195. package/dist/components/mobase/combobox.d.mts +29 -0
  196. package/dist/components/mobase/combobox.mjs +1 -0
  197. package/dist/components/mobase/command.d.mts +31 -0
  198. package/dist/components/mobase/command.mjs +1 -0
  199. package/dist/components/mobase/date-picker.d.mts +46 -0
  200. package/dist/components/mobase/date-picker.mjs +1 -0
  201. package/dist/components/mobase/dialog.d.mts +41 -0
  202. package/dist/components/mobase/dialog.mjs +1 -0
  203. package/dist/components/mobase/drawer.d.mts +46 -0
  204. package/dist/components/mobase/drawer.mjs +1 -0
  205. package/dist/components/mobase/dropdown-menu.d.mts +33 -0
  206. package/dist/components/mobase/dropdown-menu.mjs +1 -0
  207. package/dist/components/mobase/empty.d.mts +20 -0
  208. package/dist/components/mobase/empty.mjs +1 -0
  209. package/dist/components/mobase/field.d.mts +30 -0
  210. package/dist/components/mobase/field.mjs +1 -0
  211. package/dist/components/mobase/form.d.mts +7 -0
  212. package/dist/components/mobase/form.mjs +1 -0
  213. package/dist/components/mobase/hitbox.d.mts +19 -0
  214. package/dist/components/mobase/hitbox.mjs +1 -0
  215. package/dist/components/mobase/horizontal-scroll.d.mts +24 -0
  216. package/dist/components/mobase/horizontal-scroll.mjs +1 -0
  217. package/dist/components/mobase/infinite-slider.d.mts +19 -0
  218. package/dist/components/mobase/infinite-slider.mjs +1 -0
  219. package/dist/components/mobase/input-group.d.mts +27 -0
  220. package/dist/components/mobase/input-group.mjs +1 -0
  221. package/dist/components/mobase/input-search.d.mts +8 -0
  222. package/dist/components/mobase/input-search.mjs +1 -0
  223. package/dist/components/mobase/input.d.mts +34 -0
  224. package/dist/components/mobase/input.mjs +1 -0
  225. package/dist/components/mobase/item.d.mts +27 -0
  226. package/dist/components/mobase/item.mjs +1 -0
  227. package/dist/components/mobase/kbd.d.mts +6 -0
  228. package/dist/components/mobase/kbd.mjs +1 -0
  229. package/dist/components/mobase/label.d.mts +6 -0
  230. package/dist/components/mobase/label.mjs +1 -0
  231. package/dist/components/mobase/logo.d.mts +26 -0
  232. package/dist/components/mobase/logo.mjs +1 -0
  233. package/dist/components/mobase/logos-carousel.d.mts +15 -0
  234. package/dist/components/mobase/logos-carousel.mjs +27 -0
  235. package/dist/components/mobase/marquee.d.mts +16 -0
  236. package/dist/components/mobase/marquee.mjs +1 -0
  237. package/dist/components/mobase/native-select.d.mts +11 -0
  238. package/dist/components/mobase/native-select.mjs +1 -0
  239. package/dist/components/mobase/navigation-menu.d.mts +15 -0
  240. package/dist/components/mobase/navigation-menu.mjs +1 -0
  241. package/dist/components/mobase/pagination.d.mts +23 -0
  242. package/dist/components/mobase/pagination.mjs +1 -0
  243. package/dist/components/mobase/popover.d.mts +12 -0
  244. package/dist/components/mobase/popover.mjs +1 -0
  245. package/dist/components/mobase/progress.d.mts +10 -0
  246. package/dist/components/mobase/progress.mjs +1 -0
  247. package/dist/components/mobase/radio-group.d.mts +10 -0
  248. package/dist/components/mobase/radio-group.mjs +1 -0
  249. package/dist/components/mobase/scroll-area.d.mts +11 -0
  250. package/dist/components/mobase/scroll-area.mjs +1 -0
  251. package/dist/components/mobase/select.d.mts +21 -0
  252. package/dist/components/mobase/select.mjs +1 -0
  253. package/dist/components/mobase/separator.d.mts +6 -0
  254. package/dist/components/mobase/separator.mjs +1 -0
  255. package/dist/components/mobase/skeleton.d.mts +5 -0
  256. package/dist/components/mobase/skeleton.mjs +1 -0
  257. package/dist/components/mobase/slider.d.mts +6 -0
  258. package/dist/components/mobase/slider.mjs +1 -0
  259. package/dist/components/mobase/sliding-number.d.mts +10 -0
  260. package/dist/components/mobase/sliding-number.mjs +1 -0
  261. package/dist/components/mobase/spinner.d.mts +12 -0
  262. package/dist/components/mobase/spinner.mjs +1 -0
  263. package/dist/components/mobase/switch.d.mts +8 -0
  264. package/dist/components/mobase/switch.mjs +1 -0
  265. package/dist/components/mobase/table.d.mts +13 -0
  266. package/dist/components/mobase/table.mjs +1 -0
  267. package/dist/components/mobase/tabs.d.mts +14 -0
  268. package/dist/components/mobase/tabs.mjs +1 -0
  269. package/dist/components/mobase/text-effect.d.mts +30 -0
  270. package/dist/components/mobase/text-effect.mjs +2 -0
  271. package/dist/components/mobase/textarea.d.mts +10 -0
  272. package/dist/components/mobase/textarea.mjs +1 -0
  273. package/dist/components/mobase/toast.d.mts +14 -0
  274. package/dist/components/mobase/toast.mjs +1 -0
  275. package/dist/components/mobase/tooltip.d.mts +9 -0
  276. package/dist/components/mobase/tooltip.mjs +1 -0
  277. package/dist/hooks/use-click-outside.d.mts +6 -0
  278. package/dist/hooks/use-click-outside.mjs +1 -0
  279. package/dist/hooks/use-copy-to-clipboard.d.mts +9 -0
  280. package/dist/hooks/use-copy-to-clipboard.mjs +1 -0
  281. package/dist/hooks/use-event-callback.d.mts +19 -0
  282. package/dist/hooks/use-event-callback.mjs +1 -0
  283. package/dist/hooks/use-event-listener.d.mts +8 -0
  284. package/dist/hooks/use-event-listener.mjs +1 -0
  285. package/dist/hooks/use-is-client.d.mts +3 -0
  286. package/dist/hooks/use-is-client.mjs +1 -0
  287. package/dist/hooks/use-is-momo-app.d.mts +3 -0
  288. package/dist/hooks/use-is-momo-app.mjs +1 -0
  289. package/dist/hooks/use-is-touch-device.d.mts +7 -0
  290. package/dist/hooks/use-is-touch-device.mjs +1 -0
  291. package/dist/hooks/use-isomorphic-layout-effect.d.mts +5 -0
  292. package/dist/hooks/use-isomorphic-layout-effect.mjs +1 -0
  293. package/dist/hooks/use-local-storage.d.mts +5 -0
  294. package/dist/hooks/use-local-storage.mjs +1 -0
  295. package/dist/hooks/use-mobile.d.mts +3 -0
  296. package/dist/hooks/use-mobile.mjs +1 -0
  297. package/dist/hooks/use-window-size.d.mts +11 -0
  298. package/dist/hooks/use-window-size.mjs +1 -0
  299. package/dist/index.d.mts +137 -0
  300. package/dist/index.mjs +1 -0
  301. package/dist/lib/legacy-button-variant.d.mts +13 -0
  302. package/dist/lib/legacy-button-variant.mjs +1 -0
  303. package/dist/lib/media-ratio.d.mts +6 -0
  304. package/dist/lib/media-ratio.mjs +1 -0
  305. package/dist/lib/plain-text-from-html.d.mts +6 -0
  306. package/dist/lib/plain-text-from-html.mjs +1 -0
  307. package/dist/lib/qr-image-url.d.mts +13 -0
  308. package/dist/lib/qr-image-url.mjs +1 -0
  309. package/dist/lib/scroll-to-selector.d.mts +9 -0
  310. package/dist/lib/scroll-to-selector.mjs +1 -0
  311. package/dist/lib/testimonial-avatar.d.mts +6 -0
  312. package/dist/lib/testimonial-avatar.mjs +1 -0
  313. package/dist/lib/utils.d.mts +5 -0
  314. package/dist/lib/utils.mjs +1 -0
  315. package/package.json +68 -0
  316. package/src/styles/globals.css +456 -0
package/README.md ADDED
@@ -0,0 +1,136 @@
1
+ # @momo-webplatform/mobase-next
2
+
3
+ UI component library built with shadcn/ui and React.
4
+
5
+ ## Installation
6
+
7
+ Mobase declares **all runtime dependencies as peer dependencies** (React, Base UI, Radix primitives, date-fns, etc.). Your project must provide them.
8
+
9
+ **Recommended:** use pnpm with `auto-install-peers=true` in `.npmrc` — then installing Mobase will install all peers automatically:
10
+
11
+ ```bash
12
+ pnpm add @momo-webplatform/mobase-next
13
+ ```
14
+
15
+ **Otherwise**, install Mobase and its peer dependencies explicitly. See `peerDependencies` in [package.json](https://github.com/your-org/momo-mobase-webplatform/blob/main/packages/ui/package.json) for the full list, or run:
16
+
17
+ ```bash
18
+ pnpm add @momo-webplatform/mobase-next
19
+ pnpm add react react-dom @base-ui/react @hookform/resolvers class-variance-authority clsx cmdk date-fns embla-carousel-react input-otp lucide-react next-themes react-day-picker react-hook-form react-resizable-panels recharts tailwind-merge tailwindcss-animate vaul zod
20
+ ```
21
+
22
+ ## Usage
23
+
24
+ ### Import Components
25
+
26
+ ```tsx
27
+ import { Button, Card, Input } from "@momo-webplatform/mobase-next"
28
+ ```
29
+
30
+ ### Import Styles
31
+
32
+ Import the CSS file in your app's root layout or main CSS file:
33
+
34
+ ```css
35
+ @import "@momo-webplatform/mobase-next/styles";
36
+ ```
37
+
38
+ Or in your Next.js app:
39
+
40
+ ```tsx
41
+ import "@momo-webplatform/mobase-next/styles"
42
+ ```
43
+
44
+ ### Import Hooks
45
+
46
+ ```tsx
47
+ import { useIsMobile, useToast } from "@momo-webplatform/mobase-next"
48
+ ```
49
+
50
+ ### Import Utils
51
+
52
+ ```tsx
53
+ import { cn } from "@momo-webplatform/mobase-next"
54
+ ```
55
+
56
+ ## Available Components
57
+
58
+ All shadcn/ui components are available:
59
+
60
+ - Accordion
61
+ - Alert
62
+ - Alert Dialog
63
+ - Aspect Ratio
64
+ - Avatar
65
+ - Badge
66
+ - Breadcrumb
67
+ - Button
68
+ - Button Group
69
+ - Calendar
70
+ - Card
71
+ - Carousel
72
+ - Chart
73
+ - Checkbox
74
+ - Collapsible
75
+ - Combobox
76
+ - Command
77
+ - Context Menu
78
+ - Dialog
79
+ - Drawer
80
+ - Dropdown Menu
81
+ - Empty
82
+ - Field
83
+ - Form
84
+ - Hover Card
85
+ - Input
86
+ - Input Group
87
+ - Input OTP
88
+ - Item
89
+ - KBD
90
+ - Label
91
+ - Menubar
92
+ - Native Select
93
+ - Navigation Menu
94
+ - Pagination
95
+ - Popover
96
+ - Progress
97
+ - Radio Group
98
+ - Resizable
99
+ - Scroll Area
100
+ - Select
101
+ - Separator
102
+ - Sheet
103
+ - Sidebar
104
+ - Skeleton
105
+ - Slider
106
+ - Spinner
107
+ - Switch
108
+ - Table
109
+ - Tabs
110
+ - Textarea
111
+ - Toast
112
+ - Toaster
113
+ - Toggle
114
+ - Toggle Group
115
+ - Tooltip
116
+
117
+ ## Requirements
118
+
119
+ This package requires:
120
+
121
+ - React 18+
122
+ - Tailwind CSS configured in your project
123
+ - The CSS variables from `globals.css` imported in your app
124
+
125
+ ## Development
126
+
127
+ ```bash
128
+ # Build
129
+ pnpm build
130
+
131
+ # Watch mode
132
+ pnpm dev
133
+
134
+ # Lint
135
+ pnpm lint
136
+ ```
@@ -0,0 +1 @@
1
+ var o=Object.defineProperty,p=Object.defineProperties;var q=Object.getOwnPropertyDescriptors;var f=Object.getOwnPropertySymbols;var k=Object.prototype.hasOwnProperty,l=Object.prototype.propertyIsEnumerable;var j=(a,c,b)=>c in a?o(a,c,{enumerable:!0,configurable:!0,writable:!0,value:b}):a[c]=b,r=(a,c)=>{for(var b in c||(c={}))k.call(c,b)&&j(a,b,c[b]);if(f)for(var b of f(c))l.call(c,b)&&j(a,b,c[b]);return a},s=(a,c)=>p(a,q(c));var t=(a,c)=>{var b={};for(var d in a)k.call(a,d)&&c.indexOf(d)<0&&(b[d]=a[d]);if(a!=null&&f)for(var d of f(a))c.indexOf(d)<0&&l.call(a,d)&&(b[d]=a[d]);return b};var u=(a,c,b)=>new Promise((d,i)=>{var m=e=>{try{g(b.next(e))}catch(h){i(h)}},n=e=>{try{g(b.throw(e))}catch(h){i(h)}},g=e=>e.done?d(e.value):Promise.resolve(e.value).then(m,n);g((b=b.apply(a,c)).next())});export{r as a,s as b,t as c,u as d};
@@ -0,0 +1,17 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { BlogSectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function BlogSection({ dataHeading, dataHorizontalScroll, dataBlog, idSection, className, background, template, onClickModal, onClickLoadMore, }: BlogSectionProps): react_jsx_runtime.JSX.Element;
16
+
17
+ export { BlogSection };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{jsx as a}from"react/jsx-runtime";import{cn as g}from"../../../lib/utils";import{SectionBlock as p}from"../common-blocks/common-blocks";import{BlogSectionTemplateOne as S,BlogSectionTemplateTwo as m}from"./BlogSectionTemplate";function B({dataHeading:o,dataHorizontalScroll:t,dataBlog:e,template:i,onClickModal:l,onClickLoadMore:n}){switch(i){case 2:return a(m,{dataBlog:e,dataHeading:o,dataHorizontalScroll:t,onClickModal:l,onClickLoadMore:n});default:return a(S,{dataBlog:e,dataHeading:o,dataHorizontalScroll:t,onClickModal:l,onClickLoadMore:n})}}function f({dataHeading:o,dataHorizontalScroll:t,dataBlog:e=[],idSection:i,className:l,background:n,template:c=1,onClickModal:r,onClickLoadMore:d}){return a(p,{className:g("overflow-hidden",l),idSection:i,background:n,children:a(B,{dataHeading:o,dataHorizontalScroll:t,dataBlog:e,template:c,onClickModal:r,onClickLoadMore:d})})}export{f as BlogSection};
@@ -0,0 +1,15 @@
1
+ export { BlogSectionTemplateOne } from './templates/BlogSectionTemplateOne.mjs';
2
+ export { BlogSectionTemplateTwo } from './templates/BlogSectionTemplateTwo.mjs';
3
+ import 'react/jsx-runtime';
4
+ import './utils.mjs';
5
+ import '../common-blocks/utils.mjs';
6
+ import '../action-button/utils.mjs';
7
+ import 'react';
8
+ import '../../mobase/button.mjs';
9
+ import 'class-variance-authority/types';
10
+ import '@base-ui/react/button';
11
+ import 'class-variance-authority';
12
+ import '../dialog-qr/DialogQr.mjs';
13
+ import '../../mobase/dialog.mjs';
14
+ import '@base-ui/react/dialog';
15
+ import '@base-ui/react/use-render';
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{BlogSectionTemplateOne as o}from"./templates/BlogSectionTemplateOne";import{BlogSectionTemplateTwo as e}from"./templates/BlogSectionTemplateTwo";export{o as BlogSectionTemplateOne,e as BlogSectionTemplateTwo};
@@ -0,0 +1,14 @@
1
+ export { BlogSection } from './BlogSection.mjs';
2
+ export { BlogItemProps, BlogSectionProps, DataBlogProps } from './utils.mjs';
3
+ import 'react/jsx-runtime';
4
+ import '../common-blocks/utils.mjs';
5
+ import '../action-button/utils.mjs';
6
+ import 'react';
7
+ import '../../mobase/button.mjs';
8
+ import 'class-variance-authority/types';
9
+ import '@base-ui/react/button';
10
+ import 'class-variance-authority';
11
+ import '../dialog-qr/DialogQr.mjs';
12
+ import '../../mobase/dialog.mjs';
13
+ import '@base-ui/react/dialog';
14
+ import '@base-ui/react/use-render';
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{BlogSection as r}from"./BlogSection";export{r as BlogSection};
@@ -0,0 +1,17 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { BlogSectionProps } from '../utils.mjs';
3
+ import '../../common-blocks/utils.mjs';
4
+ import '../../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../../dialog-qr/DialogQr.mjs';
11
+ import '../../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function BlogSectionTemplateOne({ dataHeading, dataBlog, onClickModal, onClickLoadMore, }: BlogSectionProps): react_jsx_runtime.JSX.Element;
16
+
17
+ export { BlogSectionTemplateOne };
@@ -0,0 +1 @@
1
+ "use client";import"../../../../chunk-7LRQ2WLZ.mjs";import{Fragment as u,jsx as t,jsxs as r}from"react/jsx-runtime";import x from"html-react-parser";import{cn as c}from"../../../../lib/utils";import{Tabs as N,TabsContent as w,TabsList as h,TabsTrigger as y}from"../../../mobase/tabs";import{ActionButton as a}from"../../action-button/action-button";import{HeadingBlock as k}from"../../common-blocks/common-blocks";function b({blog:e}){return r(u,{children:[t("div",{className:"basis-1/2 flex-none pr-3 md:basis-full md:pr-0",children:t("div",{className:"relative block aspect-[16/9] w-full overflow-hidden rounded-md bg-muted",children:r("picture",{children:[t("source",{media:"(min-width: 640px)",srcSet:e.thumbnailDesktop}),t("img",{className:"h-full w-full object-cover",src:e.thumbnailMobile,alt:e.title})]})})}),r("div",{className:"basis-1/2 overflow-hidden md:mt-3 md:basis-full",children:[e.category&&e.categoryUrl&&t("a",{href:e.categoryUrl,target:"_blank",rel:"noreferrer",className:"mb-0.5 block line-clamp-1 text-left text-xs text-primary md:hidden",onClick:l=>l.stopPropagation(),children:e.category}),t("div",{className:"line-clamp-3 text-sm font-medium text-foreground group-hover:text-primary md:line-clamp-none md:text-base",children:e.title}),r("div",{className:"mt-2 flex items-center md:space-x-1",children:[e.category&&e.categoryUrl&&r(u,{children:[t("a",{href:e.categoryUrl,target:"_blank",rel:"noreferrer",className:"hidden text-xs text-primary md:block md:line-clamp-1",onClick:l=>l.stopPropagation(),children:e.category}),e.totalViews?t("span",{className:"hidden flex-none leading-none md:block",children:"."}):null]}),e.totalViews?t("div",{className:"flex-none text-xs text-muted-foreground",children:e.totalViews}):null]})]})]})}function C({dataHeading:e,dataBlog:l,onClickModal:o,onClickLoadMore:n}){var p;const v=(s,i)=>{if(o){o(s);return}window.open(i,"_blank")},f=(s,i)=>r("div",{children:[t("div",{className:c("-mx-3 flex flex-row flex-wrap gap-y-5",s.blogList.length<3?"md:justify-center":""),children:s.blogList.map(m=>t("div",{className:"basis-full min-w-0 px-3 md:basis-1/2 lg:basis-1/3",children:t("div",{onClick:()=>v(m.id,m.url),className:c("group flex cursor-pointer flex-row md:flex-col",s.classNameItem),children:t(b,{blog:m})})},m.id))}),s.isShowBtn?t("div",{className:"mt-8 flex w-full items-center justify-center",children:t(a,{action:n?()=>n(i):s.btnUrl,newTab:s.isNewTab,variant:"outline",children:x(s.btnName||"Xem them")})}):null]},s.title||i);return r("div",{"data-slot":"blog-section-template-1",children:[t(k,{tagline:e==null?void 0:e.tagline,title:e==null?void 0:e.title,description:e==null?void 0:e.description,tagHeading:e==null?void 0:e.tagHeading,align:"center",colorScheme:(e==null?void 0:e.colorScheme)||"pink",sizeHeading:e==null?void 0:e.sizeHeading,className:c(e==null?void 0:e.className)}),l.length>1?r(N,{defaultValue:(p=l[0])==null?void 0:p.title,children:[t("div",{className:"mb-6 overflow-x-auto text-center",children:t(h,{className:"mx-auto inline-flex w-auto",children:l.map((s,i)=>t(y,{value:s.title,children:s.title},s.title+i))})}),l.map((s,i)=>t(w,{value:s.title,children:f(s,i)},s.title+i))]}):l[0]?f(l[0],0):null]})}export{C as BlogSectionTemplateOne};
@@ -0,0 +1,17 @@
1
+ import * as React from 'react';
2
+ import { BlogSectionProps } from '../utils.mjs';
3
+ import '../../common-blocks/utils.mjs';
4
+ import '../../action-button/utils.mjs';
5
+ import '../../../mobase/button.mjs';
6
+ import 'react/jsx-runtime';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../../dialog-qr/DialogQr.mjs';
11
+ import '../../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare const BlogSectionTemplateTwo: React.NamedExoticComponent<BlogSectionProps>;
16
+
17
+ export { BlogSectionTemplateTwo };
@@ -0,0 +1 @@
1
+ "use client";import"../../../../chunk-7LRQ2WLZ.mjs";import{Fragment as v,jsx as s,jsxs as m}from"react/jsx-runtime";import{memo as w,useEffect as k,useState as x}from"react";import y from"html-react-parser";import{ChevronLeftIcon as d,ChevronRightIcon as B}from"lucide-react";import{cn as h}from"../../../../lib/utils";import{Button as N}from"../../../mobase/button";import{Carousel as S,CarouselContent as P,CarouselItem as I}from"../../../mobase/carousel";import{ActionButton as A}from"../../action-button/action-button";import{HeadingBlock as T}from"../../common-blocks/common-blocks";const D=({blog:e})=>{var i;const t=(n,l)=>{n==null||n.preventDefault(),n==null||n.stopPropagation(),window.open(l,"_blank")};return m(v,{children:[s("div",{className:"relative block aspect-[16/9] w-full overflow-hidden rounded-md bg-muted",children:s("img",{className:"inset-0 h-full w-full object-cover",src:e==null?void 0:e.thumbnailDesktop,alt:e==null?void 0:e.title})}),m("div",{className:"mt-4 md:pr-3",children:[s("div",{className:"font-semibold text-foreground group-hover:text-primary md:text-lg md:leading-tight",children:e==null?void 0:e.title}),(e==null?void 0:e.description)&&s("div",{className:"mt-2 line-clamp-2 text-sm text-muted-foreground md:text-sm",children:y((i=e==null?void 0:e.description)!=null?i:"")}),m("div",{className:"mt-2 flex items-center space-x-1",children:[(e==null?void 0:e.category)&&(e==null?void 0:e.categoryUrl)&&m(v,{children:[s(N,{type:"button",variant:"link",className:"h-auto shrink-0 justify-start whitespace-normal p-0 text-left text-sm font-normal text-primary md:line-clamp-1",onClick:n=>t(n,(e==null?void 0:e.categoryUrl)||""),children:e==null?void 0:e.category}),(e==null?void 0:e.category)&&(e==null?void 0:e.totalViews)&&s("span",{className:"flex-none leading-none text-muted-foreground/50",children:"\xB7"})]}),(e==null?void 0:e.totalViews)&&s("div",{className:"flex-none text-sm text-muted-foreground",children:e.totalViews})]})]})]})},E=({dataBlog:e,setCarouselRef:t,carouselRef:i,setCurrent:n,handleOnClickItem:l})=>{const{blogList:u=[],isShowBtn:c,btnName:a,btnUrl:p="#",isNewTab:f,classNameItem:o}=e!=null?e:{};return k(()=>{!i||!n||(n(i.selectedScrollSnap()+1),i.on("select",()=>{n&&n(i.selectedScrollSnap()+1)}))},[i,n]),m(v,{children:[s(S,{opts:{dragFree:!1},setApi:t,className:"w-full",children:s(P,{classNameContent:"!overflow-visible",className:"-ml-5",children:u==null?void 0:u.map(r=>s(I,{className:"basis-11/12 pl-5 md:basis-1/2 lg:basis-4/12",children:s("div",{onClick:C=>l(C,r==null?void 0:r.id,r==null?void 0:r.url),className:h("group cursor-pointer",o),children:s(D,{blog:r})},r==null?void 0:r.id)},r==null?void 0:r.id))})}),c&&s("div",{className:"mt-8 flex w-full items-center justify-center md:mt-10",children:m(A,{action:p&&p,newTab:f,variant:"outline",children:[y(a||"Xem th\xEAm")," "]})})]})},M=({carouselRef:e})=>m(N,{type:"button",variant:"secondary",size:"icon-sm",className:"rounded-full",onClick:()=>e==null?void 0:e.scrollPrev(),disabled:!(e!=null&&e.canScrollPrev()),children:[s(d,{className:"size-6"}),s("span",{className:"sr-only",children:"Previous slide"})]}),z=({carouselRef:e})=>m(N,{type:"button",variant:"secondary",size:"icon-sm",className:"rounded-full",onClick:()=>e==null?void 0:e.scrollNext(),disabled:!(e!=null&&e.canScrollNext()),children:[s(B,{className:"size-6"}),s("span",{className:"sr-only",children:"Next slide"})]}),q=w(function({dataHeading:t,dataBlog:i,onClickModal:n,onClickLoadMore:l}){const u=(o,r,C)=>{o==null||o.preventDefault(),o==null||o.stopPropagation(),n?n(r):window.open(C,"_blank")},[c,a]=x(null),[,p]=x(0),f=()=>c?m("div",{className:"ml-3 hidden items-center space-x-2 md:flex",children:[s(M,{carouselRef:c}),s(z,{carouselRef:c})]}):s(v,{});return m("div",{"data-slot":"blog-section-template-2",children:[m("div",{className:"flex items-center justify-between",children:[t&&s(T,{tagline:t==null?void 0:t.tagline,title:t==null?void 0:t.title,description:t==null?void 0:t.description,tagHeading:t==null?void 0:t.tagHeading,align:"left",colorScheme:(t==null?void 0:t.colorScheme)||"pink",sizeHeading:t==null?void 0:t.sizeHeading,className:h(t==null?void 0:t.className)}),s(f,{})]}),s(E,{dataBlog:i==null?void 0:i[0],onClickLoadMore:l,index:0,setCarouselRef:a,carouselRef:c,setCurrent:p,handleOnClickItem:u})]})});export{q as BlogSectionTemplateTwo};
@@ -0,0 +1,49 @@
1
+ import { SectionBlockProps, HeadingBlockProps } from '../common-blocks/utils.mjs';
2
+ import '../action-button/utils.mjs';
3
+ import 'react';
4
+ import '../../mobase/button.mjs';
5
+ import 'react/jsx-runtime';
6
+ import 'class-variance-authority/types';
7
+ import '@base-ui/react/button';
8
+ import 'class-variance-authority';
9
+ import '../dialog-qr/DialogQr.mjs';
10
+ import '../../mobase/dialog.mjs';
11
+ import '@base-ui/react/dialog';
12
+ import '@base-ui/react/use-render';
13
+
14
+ interface BlogItemProps {
15
+ id: number;
16
+ title: string;
17
+ totalViews?: string;
18
+ thumbnailMobile: string;
19
+ thumbnailDesktop: string;
20
+ url: string;
21
+ category?: string;
22
+ categoryUrl?: string;
23
+ description?: string;
24
+ }
25
+ interface DataBlogProps {
26
+ title: string;
27
+ blogList: BlogItemProps[];
28
+ classNameItem?: string;
29
+ isShowBtn?: boolean;
30
+ btnUrl?: string;
31
+ btnName?: string;
32
+ isNewTab?: boolean;
33
+ isLoading?: boolean;
34
+ }
35
+ interface DataHorizontalScrollProps {
36
+ showGradientOverlay?: boolean;
37
+ gradientOverlayColor?: string;
38
+ className?: string;
39
+ }
40
+ interface BlogSectionProps extends SectionBlockProps {
41
+ template?: 1 | 2;
42
+ dataHeading: HeadingBlockProps;
43
+ dataHorizontalScroll?: DataHorizontalScrollProps;
44
+ dataBlog: DataBlogProps[];
45
+ onClickModal?: (id: number) => void;
46
+ onClickLoadMore?: (tabIndex: number) => void;
47
+ }
48
+
49
+ export type { BlogItemProps, BlogSectionProps, DataBlogProps, DataHorizontalScrollProps };
File without changes
@@ -0,0 +1,17 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { CTASectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function CTASection({ template, background, className, idSection, dataHeading, dataCTA, dataButtons, dataMedia, }: CTASectionProps): react_jsx_runtime.JSX.Element;
16
+
17
+ export { CTASection };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{jsx as n}from"react/jsx-runtime";import{SectionBlock as T}from"../common-blocks/common-blocks";import{CTATemplateOne as p,CTATemplateTwo as C}from"./CTASectionTemplate";function m({template:i,dataHeading:t,dataCTA:a,dataButtons:o,dataMedia:e}){switch(i){case 2:return n(C,{dataHeading:t,dataCTA:a,dataButtons:o,dataMedia:e});default:return n(p,{dataHeading:t,dataCTA:a,dataButtons:o,dataMedia:e})}}function s({template:i=1,background:t,className:a,idSection:o,dataHeading:e,dataCTA:c,dataButtons:d,dataMedia:r}){return n(T,{className:a,idSection:o,background:t,children:n(m,{template:i,dataHeading:e,dataCTA:c,dataButtons:d,dataMedia:r})})}export{s as CTASection};
@@ -0,0 +1,18 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { CTASectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function CTATemplateOne({ dataHeading, dataCTA, dataButtons, }: CTASectionProps): react_jsx_runtime.JSX.Element;
16
+ declare function CTATemplateTwo({ dataHeading, dataCTA, dataButtons, dataMedia, }: CTASectionProps): react_jsx_runtime.JSX.Element;
17
+
18
+ export { CTATemplateOne, CTATemplateTwo };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{jsx as c,jsxs as s}from"react/jsx-runtime";import{cn as m}from"../../../lib/utils";import{AspectRatio as b}from"../../mobase/aspect-ratio";import{ButtonsBlock as p,HeadingBlock as u}from"../common-blocks/common-blocks";function v({dataHeading:l,dataCTA:e,dataButtons:o}){var i;return s("div",{"data-slot":"cta-template-1",className:m("relative block overflow-hidden rounded-2xl p-6 md:px-10 md:py-14","bg-muted"),style:e!=null&&e.background?{background:e.background}:void 0,children:[l?c(u,{tagline:l.tagline,title:l.title,description:l.description,tagHeading:l.tagHeading,align:"center",colorScheme:(i=l.colorScheme)!=null?i:"black",sizeHeading:l.sizeHeading,className:l.className}):null,o?c(p,{isFullInMobile:o.isFullInMobile,buttons:o.buttons,className:m("mt-0 md:mt-0",o.className),align:"center"}):null]})}function d({dataHeading:l,dataCTA:e,dataButtons:o,dataMedia:i}){var r,n,t;return s("div",{"data-slot":"cta-template-2",className:m("relative block grid grid-cols-1 overflow-hidden rounded-2xl p-6 pb-0 md:grid-cols-2 md:px-10 md:pb-0 md:pt-0","bg-primary"),style:e!=null&&e.background?{background:e.background}:void 0,children:[s("div",{className:"flex flex-col justify-center md:py-14",children:[l?c(u,{tagline:l.tagline,title:l.title,description:l.description,tagHeading:l.tagHeading,align:"left",colorScheme:(r=l.colorScheme)!=null?r:"white",sizeHeading:l.sizeHeading,className:l.className}):null,o?c(p,{isFullInMobile:o.isFullInMobile,buttons:o.buttons,className:m("mt-0 md:mt-0",o.className),align:"left"}):null]}),c("div",{className:"mx-auto w-full max-w-sm self-end md:ml-auto md:mr-0 md:pt-10",children:i?c(b,{ratio:(n=i.ratio)!=null?n:4/3,children:c("img",{src:i.src,alt:(t=i.alt)!=null?t:"",className:"h-full w-full rounded-md object-contain"})}):null})]})}export{v as CTATemplateOne,d as CTATemplateTwo};
@@ -0,0 +1,14 @@
1
+ export { CTASection } from './CTASection.mjs';
2
+ export { CTABlockData, CTAMedia, CTASectionProps } from './utils.mjs';
3
+ import 'react/jsx-runtime';
4
+ import '../common-blocks/utils.mjs';
5
+ import '../action-button/utils.mjs';
6
+ import 'react';
7
+ import '../../mobase/button.mjs';
8
+ import 'class-variance-authority/types';
9
+ import '@base-ui/react/button';
10
+ import 'class-variance-authority';
11
+ import '../dialog-qr/DialogQr.mjs';
12
+ import '../../mobase/dialog.mjs';
13
+ import '@base-ui/react/dialog';
14
+ import '@base-ui/react/use-render';
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{CTASection as e}from"./CTASection";export{e as CTASection};
@@ -0,0 +1,60 @@
1
+ import { SectionBlockProps, HeadingBlockProps, ButtonsBlockProps } from '../common-blocks/utils.mjs';
2
+ import '../action-button/utils.mjs';
3
+ import 'react';
4
+ import '../../mobase/button.mjs';
5
+ import 'react/jsx-runtime';
6
+ import 'class-variance-authority/types';
7
+ import '@base-ui/react/button';
8
+ import 'class-variance-authority';
9
+ import '../dialog-qr/DialogQr.mjs';
10
+ import '../../mobase/dialog.mjs';
11
+ import '@base-ui/react/dialog';
12
+ import '@base-ui/react/use-render';
13
+
14
+ interface CTAMedia {
15
+ /**
16
+ * The image source.
17
+ */
18
+ src?: string;
19
+ /**
20
+ * The image alt text.
21
+ */
22
+ alt?: string;
23
+ /**
24
+ * The image aspect ratio (width / height). Defaults to 4/3.
25
+ */
26
+ ratio?: number;
27
+ }
28
+ interface CTABlockData {
29
+ /**
30
+ * Override the background color or image of the CTA block.
31
+ * Accepts any CSS background value (color, gradient, url()).
32
+ */
33
+ background?: string;
34
+ }
35
+ interface CTASectionProps extends SectionBlockProps {
36
+ /**
37
+ * Layout template variant.
38
+ * - `1` — centered content on a light background (default).
39
+ * - `2` — split layout: text on the left, media image on the right, on a primary background.
40
+ */
41
+ template?: 1 | 2;
42
+ /**
43
+ * Heading block data (tagline, title, description).
44
+ */
45
+ dataHeading?: HeadingBlockProps;
46
+ /**
47
+ * CTA block styling data (custom background).
48
+ */
49
+ dataCTA?: CTABlockData;
50
+ /**
51
+ * Button group data.
52
+ */
53
+ dataButtons?: ButtonsBlockProps;
54
+ /**
55
+ * Media (image) data used in template 2.
56
+ */
57
+ dataMedia?: CTAMedia;
58
+ }
59
+
60
+ export type { CTABlockData, CTAMedia, CTASectionProps };
File without changes
@@ -0,0 +1,17 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { FAQSectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function FAQSection({ dataHeading, dataFAQ, className, background, idSection, dataButtons, dataHorizontalScroll, template, }: FAQSectionProps): react_jsx_runtime.JSX.Element;
16
+
17
+ export { FAQSection };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{jsx as n}from"react/jsx-runtime";import{SectionBlock as d}from"../common-blocks/common-blocks";import{FAQTemplateOne as p,FAQTemplateTwo as S}from"./FAQTemplate";function m({dataHeading:t,dataFAQ:o,template:i,dataButtons:a,dataHorizontalScroll:e}){switch(i){case 2:return n(S,{dataFAQ:o,dataHeading:t,dataButtons:a,dataHorizontalScroll:e});default:return n(p,{dataFAQ:o,dataHeading:t,dataButtons:a,dataHorizontalScroll:e})}}function s({dataHeading:t,dataFAQ:o=[],className:i,background:a,idSection:e,dataButtons:r,dataHorizontalScroll:c,template:l=1}){return n(d,{className:i,idSection:e,background:a,children:n(m,{dataHeading:t,dataFAQ:o,template:l,dataHorizontalScroll:c,dataButtons:r})})}export{s as FAQSection};
@@ -0,0 +1,18 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { FAQSectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare function FAQTemplateOne({ dataFAQ, dataHeading, dataButtons }: FAQSectionProps): react_jsx_runtime.JSX.Element;
16
+ declare function FAQTemplateTwo({ dataFAQ, dataHeading, dataButtons }: FAQSectionProps): react_jsx_runtime.JSX.Element;
17
+
18
+ export { FAQTemplateOne, FAQTemplateTwo };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{jsx as i,jsxs as r}from"react/jsx-runtime";import g from"html-react-parser";import{cn as c}from"../../../lib/utils";import{Accordion as b,AccordionContent as N,AccordionItem as v,AccordionTrigger as a}from"../../mobase/accordion";import{Tabs as f,TabsContent as T,TabsList as x,TabsTrigger as d}from"../../mobase/tabs";import{ButtonsBlock as m,HeadingBlock as p}from"../common-blocks/common-blocks";function u({dataFAQ:s}){var l,n,o;const e=s.isActiveFistQuestion?(n=(l=s.contents)==null?void 0:l[0])==null?void 0:n.title:void 0;return i(b,{defaultValue:e?[e]:[],className:"w-full",children:(o=s.contents)==null?void 0:o.map(t=>r(v,{value:t.title,className:"last:border-none",children:[i(a,{className:"md:text-lg",children:t.title}),i(N,{className:"prose prose-sm max-w-none text-muted-foreground sm:prose-base",children:g(t.description)})]},t.title))})}function h({dataFAQ:s,dataHeading:e,dataButtons:l}){return r("div",{"data-slot":"faq-template-1",className:"grid grid-cols-1 gap-y-0 md:grid-cols-3 md:gap-x-10",children:[i("div",{className:"relative",children:r("div",{className:"md:sticky md:top-16",children:[e?i(p,{tagline:e.tagline,title:e.title,description:e.description,tagHeading:e.tagHeading||"h2",align:"left",colorScheme:e.colorScheme||"pink",sizeHeading:e.sizeHeading,className:c(e.className)}):null,l?i(m,{isFullInMobile:l.isFullInMobile,buttons:l.buttons,className:c("hidden md:mt-6 md:flex",l.className),align:"left"}):null]})}),s!=null&&s[0]?i("div",{className:"col-span-2",children:i(u,{dataFAQ:s[0]})}):null,l?i(m,{isFullInMobile:l.isFullInMobile,buttons:l.buttons,className:c("mt-3 md:hidden",l.className),align:"center"}):null]})}function k({dataFAQ:s,dataHeading:e,dataButtons:l}){var n;return r("div",{"data-slot":"faq-template-2",children:[e?i(p,{tagline:e.tagline,title:e.title,description:e.description,tagHeading:e.tagHeading||"h2",align:"center",colorScheme:e.colorScheme||"pink",sizeHeading:e.sizeHeading,className:c(e.className)}):null,s!=null&&s.length?r(f,{defaultValue:(n=s[0])==null?void 0:n.title,children:[i("div",{className:"mb-3 overflow-x-auto text-center",children:i(x,{className:"mx-auto inline-flex w-auto items-center",children:s.map((o,t)=>i(d,{value:o.title,children:o.title},o.title+t))})}),s.map((o,t)=>i(T,{className:"mx-auto mt-0 max-w-3xl",value:o.title,children:i(u,{dataFAQ:o})},o.title+t))]}):null,l?i(m,{isFullInMobile:l.isFullInMobile,buttons:l.buttons,className:c(l.className),align:"center"}):null]})}export{h as FAQTemplateOne,k as FAQTemplateTwo};
@@ -0,0 +1,14 @@
1
+ export { FAQSection } from './FAQSection.mjs';
2
+ export { ContentsProps, DataFAQProps, FAQSectionProps } from './utils.mjs';
3
+ import 'react/jsx-runtime';
4
+ import '../common-blocks/utils.mjs';
5
+ import '../action-button/utils.mjs';
6
+ import 'react';
7
+ import '../../mobase/button.mjs';
8
+ import 'class-variance-authority/types';
9
+ import '@base-ui/react/button';
10
+ import 'class-variance-authority';
11
+ import '../dialog-qr/DialogQr.mjs';
12
+ import '../../mobase/dialog.mjs';
13
+ import '@base-ui/react/dialog';
14
+ import '@base-ui/react/use-render';
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{FAQSection as r}from"./FAQSection";export{r as FAQSection};
@@ -0,0 +1,36 @@
1
+ import { SectionBlockProps, HeadingBlockProps, ButtonsBlockProps } from '../common-blocks/utils.mjs';
2
+ import '../action-button/utils.mjs';
3
+ import 'react';
4
+ import '../../mobase/button.mjs';
5
+ import 'react/jsx-runtime';
6
+ import 'class-variance-authority/types';
7
+ import '@base-ui/react/button';
8
+ import 'class-variance-authority';
9
+ import '../dialog-qr/DialogQr.mjs';
10
+ import '../../mobase/dialog.mjs';
11
+ import '@base-ui/react/dialog';
12
+ import '@base-ui/react/use-render';
13
+
14
+ interface ContentsProps {
15
+ title: string;
16
+ description: string;
17
+ }
18
+ interface DataFAQProps {
19
+ title: string;
20
+ isActiveFistQuestion?: boolean;
21
+ contents: ContentsProps[];
22
+ }
23
+ interface DataHorizontalScrollProps {
24
+ showGradientOverlay?: boolean;
25
+ gradientOverlayColor?: string;
26
+ className?: string;
27
+ }
28
+ interface FAQSectionProps extends SectionBlockProps {
29
+ template?: 1 | 2;
30
+ dataHeading?: HeadingBlockProps;
31
+ dataFAQ: DataFAQProps[];
32
+ dataButtons?: ButtonsBlockProps;
33
+ dataHorizontalScroll?: DataHorizontalScrollProps;
34
+ }
35
+
36
+ export type { ContentsProps, DataFAQProps, DataHorizontalScrollProps, FAQSectionProps };
File without changes
@@ -0,0 +1,17 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { FeatureSectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ declare const FeatureSection: ({ template, background, className, idSection, dataHeading, dataFeatures, dataButtons, dataBanner, }: FeatureSectionProps) => react_jsx_runtime.JSX.Element;
16
+
17
+ export { FeatureSection };
@@ -0,0 +1 @@
1
+ import"../../../chunk-7LRQ2WLZ.mjs";import{Fragment as C,jsx as r}from"react/jsx-runtime";import{cn as i}from"../../../lib/utils";import{SectionBlock as F}from"../common-blocks/common-blocks";import{FeatureTemplateEight as m,FeatureTemplateElevent as l,FeatureTemplateFive as d,FeatureTemplateFour as T,FeatureTemplateNine as S,FeatureTemplateOne as o,FeatureTemplateSeven as B,FeatureTemplateSix as P,FeatureTemplateTen as f,FeatureTemplateThree as g,FeatureTemplateTwo as k}from"./FeatureTemlates";const h=({template:u,dataHeading:e,dataFeatures:t,dataButtons:a,dataBanner:n})=>{switch(u){case 1:return r(o,{dataHeading:e,dataFeatures:t,dataButtons:a});case 2:return r(k,{dataHeading:e,dataFeatures:t,dataButtons:a});case 3:return r(g,{dataHeading:e,dataFeatures:t,dataButtons:a});case 4:return r(T,{dataHeading:e,dataFeatures:t,dataButtons:a});case 5:return r(d,{dataHeading:e,dataFeatures:t,dataButtons:a});case 6:return r(P,{dataHeading:e,dataFeatures:t,dataButtons:a});case 7:return r(B,{dataHeading:e,dataFeatures:t,dataButtons:a});case 8:return r(m,{dataHeading:e,dataFeatures:t,dataButtons:a});case 9:return r(S,{dataHeading:e,dataFeatures:t,dataButtons:a,dataBanner:n});case 10:return r(f,{dataHeading:e,dataFeatures:t,dataBanner:n,dataButtons:a});case 11:return r(l,{dataHeading:e,dataFeatures:t,dataBanner:n,dataButtons:a});default:return r(o,{dataHeading:e,dataFeatures:t,dataButtons:a})}};function v({template:u,dataHeading:e,dataFeatures:t,dataButtons:a,dataBanner:n}){return r(C,{children:h({template:u,dataHeading:e,dataFeatures:t,dataButtons:a,dataBanner:n})})}const E=({template:u=1,background:e,className:t,idSection:a,dataHeading:n,dataFeatures:c,dataButtons:s,dataBanner:p})=>r(F,{className:i(t),idSection:a,background:e,children:r(v,{template:u,dataHeading:n,dataFeatures:c,dataButtons:s,dataBanner:p})});export{E as FeatureSection};
@@ -0,0 +1,29 @@
1
+ import * as react_jsx_runtime from 'react/jsx-runtime';
2
+ import { FeatureSectionProps } from './utils.mjs';
3
+ import '../common-blocks/utils.mjs';
4
+ import '../action-button/utils.mjs';
5
+ import 'react';
6
+ import '../../mobase/button.mjs';
7
+ import 'class-variance-authority/types';
8
+ import '@base-ui/react/button';
9
+ import 'class-variance-authority';
10
+ import '../dialog-qr/DialogQr.mjs';
11
+ import '../../mobase/dialog.mjs';
12
+ import '@base-ui/react/dialog';
13
+ import '@base-ui/react/use-render';
14
+
15
+ type FeatureTemplateStandardProps = Pick<FeatureSectionProps, "dataHeading" | "dataFeatures" | "dataButtons">;
16
+ type FeatureTemplateBannerProps = Pick<FeatureSectionProps, "dataHeading" | "dataFeatures" | "dataButtons" | "dataBanner">;
17
+ declare function FeatureTemplateOne({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
18
+ declare function FeatureTemplateTwo({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
19
+ declare function FeatureTemplateThree({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
20
+ declare function FeatureTemplateFour({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
21
+ declare function FeatureTemplateFive({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
22
+ declare function FeatureTemplateSix({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
23
+ declare function FeatureTemplateSeven({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
24
+ declare function FeatureTemplateEight({ dataHeading, dataFeatures, dataButtons }: FeatureTemplateStandardProps): react_jsx_runtime.JSX.Element;
25
+ declare function FeatureTemplateNine({ dataHeading, dataFeatures, dataButtons, dataBanner, }: FeatureTemplateBannerProps): react_jsx_runtime.JSX.Element;
26
+ declare function FeatureTemplateTen({ dataHeading, dataFeatures, dataBanner, dataButtons }: FeatureTemplateBannerProps): react_jsx_runtime.JSX.Element;
27
+ declare function FeatureTemplateElevent({ dataHeading, dataFeatures, dataButtons, dataBanner }: FeatureTemplateBannerProps): react_jsx_runtime.JSX.Element;
28
+
29
+ export { FeatureTemplateEight, FeatureTemplateElevent, FeatureTemplateFive, FeatureTemplateFour, FeatureTemplateNine, FeatureTemplateOne, FeatureTemplateSeven, FeatureTemplateSix, FeatureTemplateTen, FeatureTemplateThree, FeatureTemplateTwo };