@hhgtech/hhg-components 1.29.316 → 1.29.318

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 (473) hide show
  1. package/build/{LastPeriod-28012483.js → LastPeriod-eb5b7f5b.js} +1 -1
  2. package/build/{MobileBottomNavigationIcon-103c54da.js → MobileBottomNavigationIcon-ed929a7d.js} +3 -3
  3. package/build/{Spinner-cb1157d0.js → Spinner-4cc2918f.js} +1 -1
  4. package/build/{WhatsApp-fdbf2438.js → WhatsApp-b6d4323f.js} +1 -1
  5. package/build/adapters.js +19 -19
  6. package/build/atoms.js +46 -46
  7. package/build/babyGrowth.js +83 -83
  8. package/build/cache.js +2 -2
  9. package/build/care.js +17 -17
  10. package/build/careBookingSearchBar.js +14 -14
  11. package/build/careBookingSearchBarV2.js +15 -15
  12. package/build/components/molecules/index.d.ts +1 -0
  13. package/build/components/molecules/widgetChatbotAi/index.d.ts +6 -0
  14. package/build/components/molecules/widgetChatbotAi/index.styled.d.ts +25 -0
  15. package/build/components.js +133 -130
  16. package/build/{constants-9411ff92.js → constants-cb31aec2.js} +1 -1
  17. package/build/constants.js +3 -3
  18. package/build/constantsDomainLocales.js +1 -1
  19. package/build/constantsRiskScreener.js +2 -2
  20. package/build/constantsSite.js +2 -2
  21. package/build/{core-54e5ab4a.js → core-7ab2e37e.js} +1 -1
  22. package/build/{dataTransform-f8e4af51.js → dataTransform-76abaf26.js} +1 -1
  23. package/build/ecom.js +4 -4
  24. package/build/{editor-640a044e.js → editor-128221ce.js} +11 -11
  25. package/build/embeddedHeathToolCards_babyGrowth.js +23 -23
  26. package/build/embeddedHeathToolCards_babyPoop.js +19 -19
  27. package/build/embeddedHeathToolCards_babyVaccine.js +22 -22
  28. package/build/embeddedHeathToolCards_bmi_bmi.js +25 -25
  29. package/build/embeddedHeathToolCards_bmrBmr.js +25 -25
  30. package/build/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  31. package/build/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  32. package/build/embeddedHeathToolCards_pwg_pwg.js +26 -26
  33. package/build/embeddedHeathToolCards_targetHeartRate.js +27 -27
  34. package/build/esm/{LastPeriod-161f3229.js → LastPeriod-c1bfd6f3.js} +1 -1
  35. package/build/esm/{MobileBottomNavigationIcon-bd56b13a.js → MobileBottomNavigationIcon-3557ca62.js} +3 -3
  36. package/build/esm/{Spinner-77099ede.js → Spinner-1eb79715.js} +1 -1
  37. package/build/esm/{WhatsApp-a42ea7f7.js → WhatsApp-ff7a45dc.js} +1 -1
  38. package/build/esm/adapters.js +19 -19
  39. package/build/esm/atoms.js +46 -46
  40. package/build/esm/babyGrowth.js +83 -83
  41. package/build/esm/cache.js +2 -2
  42. package/build/esm/care.js +17 -17
  43. package/build/esm/careBookingSearchBar.js +14 -14
  44. package/build/esm/careBookingSearchBarV2.js +15 -15
  45. package/build/esm/components/molecules/index.d.ts +1 -0
  46. package/build/esm/components/molecules/widgetChatbotAi/index.d.ts +6 -0
  47. package/build/esm/components/molecules/widgetChatbotAi/index.styled.d.ts +25 -0
  48. package/build/esm/components.js +92 -90
  49. package/build/esm/{constants-0f7360e3.js → constants-119c2e9e.js} +1 -1
  50. package/build/esm/constants.js +3 -3
  51. package/build/esm/constantsDomainLocales.js +1 -1
  52. package/build/esm/constantsRiskScreener.js +2 -2
  53. package/build/esm/constantsSite.js +2 -2
  54. package/build/esm/{core-43ea4f81.js → core-92f6a073.js} +1 -1
  55. package/build/esm/{dataTransform-ff13d637.js → dataTransform-5838fbad.js} +1 -1
  56. package/build/esm/ecom.js +4 -4
  57. package/build/esm/{editor-5ed1435e.js → editor-47619564.js} +11 -11
  58. package/build/esm/embeddedHeathToolCards_babyGrowth.js +23 -23
  59. package/build/esm/embeddedHeathToolCards_babyPoop.js +19 -19
  60. package/build/esm/embeddedHeathToolCards_babyVaccine.js +22 -22
  61. package/build/esm/embeddedHeathToolCards_bmi_bmi.js +25 -25
  62. package/build/esm/embeddedHeathToolCards_bmrBmr.js +25 -25
  63. package/build/esm/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  64. package/build/esm/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  65. package/build/esm/embeddedHeathToolCards_pwg_pwg.js +26 -26
  66. package/build/esm/embeddedHeathToolCards_targetHeartRate.js +27 -27
  67. package/build/esm/footer.js +21 -21
  68. package/build/esm/gAssets.js +2 -2
  69. package/build/esm/healthToolsCardWrapper.js +18 -18
  70. package/build/esm/healthToolsForm.js +33 -33
  71. package/build/esm/hooks.js +13 -13
  72. package/build/esm/i18n.js +2 -2
  73. package/build/esm/i18nV2.js +2 -2
  74. package/build/esm/{index-c284fe46.js → index-05d501eb.js} +16 -16
  75. package/build/esm/{index-49326a1f.js → index-0b104eaf.js} +1 -1
  76. package/build/esm/{index-9e5ea0a9.js → index-0db9db10.js} +3 -3
  77. package/build/esm/{index-df4b6075.js → index-1177ed36.js} +3 -3
  78. package/build/esm/{index-198e05e4.js → index-17b6fb47.js} +3 -3
  79. package/build/esm/{index-a8149756.js → index-19ba9b1a.js} +1 -1
  80. package/build/esm/{index-c0d03cca.js → index-1f153660.js} +18 -18
  81. package/build/esm/{index-98480e86.js → index-28e54056.js} +3 -3
  82. package/build/esm/{index-3523c368.js → index-2c96a9f3.js} +16 -16
  83. package/build/esm/{index-db450d51.js → index-2f614912.js} +17 -17
  84. package/build/esm/{index-86b36ec2.js → index-30af8d19.js} +1 -1
  85. package/build/esm/{index-bf36df68.js → index-37ed0fbc.js} +16 -16
  86. package/build/esm/{index-a526e163.js → index-3bf56bc0.js} +16 -16
  87. package/build/esm/{index-60b1b2ae.js → index-463bd2ce.js} +2 -2
  88. package/build/esm/{index-0fb456ed.js → index-473bb517.js} +6 -6
  89. package/build/esm/{index-f69eff6c.js → index-47f4e182.js} +1 -1
  90. package/build/esm/{index-5cefe06c.js → index-494381b5.js} +17 -17
  91. package/build/esm/{index-69970766.js → index-54c2ee14.js} +2 -2
  92. package/build/esm/{index-fe677fdb.js → index-55acf473.js} +2 -2
  93. package/build/esm/{index-30b72382.js → index-57319f8c.js} +26 -26
  94. package/build/esm/{index-49249e81.js → index-5fb93eae.js} +30 -30
  95. package/build/esm/{index-f14b40a2.js → index-60916e42.js} +13 -13
  96. package/build/esm/{index-be091cbb.js → index-62ca5221.js} +7 -7
  97. package/build/esm/{index-f3e6fe75.js → index-635c01b6.js} +2 -2
  98. package/build/esm/{index-e9d043e3.js → index-66b70820.js} +5 -5
  99. package/build/esm/{index-a2b5b4b6.js → index-6ce82548.js} +3 -3
  100. package/build/esm/{index-7469c49c.js → index-70b0672f.js} +2 -2
  101. package/build/esm/{index-6f2d1d9f.js → index-72a3e0fe.js} +2 -2
  102. package/build/esm/{index-5163c2f4.js → index-7d69ca4f.js} +32 -32
  103. package/build/esm/{index-f5ae1d2c.js → index-80f65dae.js} +2 -2
  104. package/build/esm/{index-160a9243.js → index-84362781.js} +1 -1
  105. package/build/esm/{index-8e61c946.js → index-860da07e.js} +13 -13
  106. package/build/esm/{index-50c64846.js → index-8786bc02.js} +5 -5
  107. package/build/esm/{index-4cdaf83c.js → index-8dccc778.js} +2 -2
  108. package/build/esm/{index-4bd797dc.js → index-95b92e71.js} +20 -20
  109. package/build/esm/index-9f131fef.js +4035 -0
  110. package/build/esm/{index-6af7bc44.js → index-a335ec24.js} +13 -13
  111. package/build/esm/{index-4dcdd823.js → index-a37ded29.js} +2 -2
  112. package/build/esm/{index-2a639b6d.js → index-a9188d6d.js} +2 -2
  113. package/build/esm/{index-ec5e78f9.js → index-a95f66cb.js} +17 -17
  114. package/build/esm/{index-d245941f.js → index-a9da67ee.js} +6 -6
  115. package/build/esm/{index-3396f092.js → index-ab710282.js} +6 -6
  116. package/build/esm/{index-d37f1ad9.js → index-ad979bbc.js} +6 -6
  117. package/build/esm/{index-e8668b22.js → index-b1e9d0c5.js} +1 -1
  118. package/build/esm/{index-9c00de4a.js → index-b3e98ec5.js} +4 -4
  119. package/build/esm/{index-619d1b85.js → index-bee25443.js} +3 -3
  120. package/build/esm/{index-c11b8dff.js → index-bf8999ee.js} +1 -1
  121. package/build/esm/{index-1beaeca3.js → index-c366b0f5.js} +11 -11
  122. package/build/esm/{index-23c5757d.js → index-c4efc6a7.js} +10 -10
  123. package/build/esm/{index-9bfb5726.js → index-c5727170.js} +15 -15
  124. package/build/esm/{index-02c3924e.js → index-c9c30eb3.js} +7 -7
  125. package/build/esm/{index-2685a519.js → index-ca5289d0.js} +2 -2
  126. package/build/esm/{index-4436c06c.js → index-ca767624.js} +3 -3
  127. package/build/esm/{index-081f45ad.js → index-ceef1d76.js} +15 -15
  128. package/build/esm/{index-2db2c539.js → index-d74c1eba.js} +21 -21
  129. package/build/esm/{index-61f48508.js → index-de0e40cd.js} +18 -18
  130. package/build/esm/{index-ef1803bf.js → index-f35a7221.js} +24 -24
  131. package/build/esm/{index-3ac3a157.js → index-f8370fbc.js} +2 -2
  132. package/build/esm/{index-cbbb6273.js → index-f97fe744.js} +1 -1
  133. package/build/esm/{index-a8312f28.js → index-fa093689.js} +1 -1
  134. package/build/esm/{index-c60ce954.js → index-fc9536f0.js} +13 -13
  135. package/build/esm/index.js +114 -112
  136. package/build/esm/{labelSorting-c08dfa2b.js → labelSorting-72cb85b6.js} +4 -4
  137. package/build/esm/lead.js +24 -24
  138. package/build/esm/{logoIcon-186ece4b.js → logoIcon-998e428e.js} +2 -2
  139. package/build/esm/mantine.js +25 -25
  140. package/build/esm/misc.js +16 -16
  141. package/build/esm/miscGetDynamicHealthTool.js +4 -4
  142. package/build/esm/miscGetSocialList.js +8 -8
  143. package/build/esm/miscScreenSizeContext.js +1 -1
  144. package/build/esm/mobileBottomNavigation.js +5 -5
  145. package/build/esm/mobileBottomNavigationIcon.js +5 -5
  146. package/build/esm/molecules.js +71 -69
  147. package/build/esm/moleculesArticleCard.js +6 -6
  148. package/build/esm/moleculesArticleCardV2.js +16 -16
  149. package/build/esm/navigation.js +40 -40
  150. package/build/esm/navigationLogoutPopup.js +9 -9
  151. package/build/esm/navigationProfileButton.js +23 -23
  152. package/build/esm/onboardingV2.js +29 -29
  153. package/build/esm/organisms.js +44 -44
  154. package/build/esm/{post-a95cc055.js → post-a33ab665.js} +2 -2
  155. package/build/esm/profileNavigation.js +19 -19
  156. package/build/esm/progressBar.js +1 -1
  157. package/build/esm/pwg.js +22 -22
  158. package/build/esm/ssoV2.js +26 -26
  159. package/build/esm/{store-06d36cd3.js → store-6b5c5b80.js} +3 -3
  160. package/build/esm/subot.js +33 -33
  161. package/build/esm/surveyOrPremiumBanner.js +31 -31
  162. package/build/esm/surveyQuestionCard.js +10 -10
  163. package/build/esm/{surveyThankyouCard-b7af6ab1.js → surveyThankyouCard-1e5636c5.js} +5 -5
  164. package/build/esm/together.js +53 -53
  165. package/build/esm/togetherApiUtils.js +4 -4
  166. package/build/esm/togetherAtoms.js +30 -30
  167. package/build/esm/togetherComponentGlobalContext.js +4 -4
  168. package/build/esm/togetherMolecules.js +48 -48
  169. package/build/esm/togetherMoleculesCardAuthor.js +27 -27
  170. package/build/esm/togetherMoleculesPostImagePreview.js +11 -11
  171. package/build/esm/togetherMoleculesProfileDetail.js +37 -37
  172. package/build/esm/togetherOrganisms.js +47 -47
  173. package/build/esm/togetherRichTextEditor.js +17 -17
  174. package/build/esm/togetherShareBox.js +10 -10
  175. package/build/esm/{treePopoverMenu-9c9db858.js → treePopoverMenu-83101023.js} +19 -19
  176. package/build/esm/{types-d7965ea4.js → types-e406ce99.js} +2 -2
  177. package/build/esm/types.js +2 -2
  178. package/build/esm/{useCategory-fb9f9993.js → useCategory-a411b149.js} +5 -5
  179. package/build/esm/{useHealthToolCache-0d81f4db.js → useHealthToolCache-a557d921.js} +1 -1
  180. package/build/esm/{useMantineLocale-ae231834.js → useMantineLocale-f5749437.js} +6 -6
  181. package/build/esm/{usePlacesAutocomplete-f2837fad.js → usePlacesAutocomplete-b54bd959.js} +1 -1
  182. package/build/esm/{useScreenSize-231312d5.js → useScreenSize-20d68a30.js} +2 -2
  183. package/build/esm/useTogetherAuthRequiredAction.js +9 -9
  184. package/build/esm/{utils-c03aaad7.js → utils-21c869bd.js} +2 -2
  185. package/build/esm/{utils-c68a6653.js → utils-8ad1c346.js} +3 -3
  186. package/build/esm/{utils-d2e70d07.js → utils-f990ac10.js} +2 -2
  187. package/build/esm/vaccination.js +21 -21
  188. package/build/footer.js +21 -21
  189. package/build/gAssets.js +2 -2
  190. package/build/healthToolsCardWrapper.js +18 -18
  191. package/build/healthToolsForm.js +33 -33
  192. package/build/hooks.js +13 -13
  193. package/build/i18n.js +1 -1
  194. package/build/i18nV2.js +1 -1
  195. package/build/{index-194b3937.js → index-00cfad28.js} +1 -1
  196. package/build/{index-e75ce8b8.js → index-02de3d5e.js} +18 -18
  197. package/build/{index-b5a32d07.js → index-0478e991.js} +17 -17
  198. package/build/{index-ebf55320.js → index-05dd1ea8.js} +1 -1
  199. package/build/{index-002e7f77.js → index-0b21c437.js} +17 -17
  200. package/build/{index-402e4965.js → index-0e11488b.js} +3 -3
  201. package/build/{index-3f608758.js → index-119ce6e9.js} +6 -6
  202. package/build/{index-c6d5c682.js → index-16e10242.js} +16 -16
  203. package/build/{index-10b9bb86.js → index-18e9b49f.js} +6 -6
  204. package/build/{index-28b42eac.js → index-1b522f9a.js} +15 -15
  205. package/build/{index-0345f9fd.js → index-24dfb523.js} +2 -2
  206. package/build/{index-3ea06191.js → index-356a260e.js} +2 -2
  207. package/build/{index-11b2ae85.js → index-42d09d4e.js} +16 -16
  208. package/build/{index-a6cce705.js → index-47f680a6.js} +10 -10
  209. package/build/{index-cd787bea.js → index-495c5975.js} +3 -3
  210. package/build/{index-9872c17a.js → index-4b5ef117.js} +4 -4
  211. package/build/{index-17c42b37.js → index-4ca7e4c9.js} +6 -6
  212. package/build/{index-8227f4b5.js → index-4d2f797a.js} +7 -7
  213. package/build/{index-b6657e7b.js → index-52b52279.js} +13 -13
  214. package/build/{index-cf99a404.js → index-56787966.js} +13 -13
  215. package/build/{index-1a36a3e7.js → index-5cddedce.js} +2 -2
  216. package/build/{index-547bed24.js → index-625ec5b1.js} +2 -2
  217. package/build/{index-b017971b.js → index-62fad5d0.js} +15 -15
  218. package/build/{index-030a568b.js → index-67d77ba9.js} +1 -1
  219. package/build/{index-2d6e4242.js → index-681433ef.js} +11 -11
  220. package/build/{index-f64e91fe.js → index-6879d3c4.js} +1 -1
  221. package/build/{index-0d8eb373.js → index-6e703a9f.js} +13 -13
  222. package/build/{index-a6da3552.js → index-71a67efb.js} +2 -2
  223. package/build/{index-9254bb42.js → index-722ec0b3.js} +16 -16
  224. package/build/{index-1153054e.js → index-7457d221.js} +5 -5
  225. package/build/{index-b8309ebf.js → index-7aabe478.js} +2 -2
  226. package/build/{index-74cd2f94.js → index-7b881db9.js} +16 -16
  227. package/build/{index-646146c1.js → index-7fcec533.js} +2 -2
  228. package/build/{index-bef123f1.js → index-863876ea.js} +3 -3
  229. package/build/{index-dd2172ef.js → index-8ae7cc54.js} +1 -1
  230. package/build/{index-e8d3ca66.js → index-91d06b57.js} +21 -21
  231. package/build/{index-e3a692fc.js → index-98196fb9.js} +13 -13
  232. package/build/{index-84f0313f.js → index-9b0fb224.js} +2 -2
  233. package/build/{index-57a68463.js → index-9f66a0eb.js} +32 -32
  234. package/build/{index-d66e09a2.js → index-a1547798.js} +20 -20
  235. package/build/{index-6d76b00b.js → index-a2abfcf1.js} +30 -30
  236. package/build/{index-70bd382f.js → index-a5e1e0e3.js} +1 -1
  237. package/build/{index-704e8e4b.js → index-a6b5ac63.js} +2 -2
  238. package/build/{index-cf548509.js → index-a722e3d2.js} +7 -7
  239. package/build/{index-d666d2f3.js → index-a9364756.js} +3 -3
  240. package/build/{index-d3dc890f.js → index-b0418c19.js} +6 -6
  241. package/build/{index-119b5300.js → index-b06fad29.js} +2 -2
  242. package/build/{index-f3c0ac8b.js → index-b4c981d9.js} +17 -17
  243. package/build/{index-d0c11567.js → index-b4e918ab.js} +26 -26
  244. package/build/{index-3efc1a59.js → index-bc17de65.js} +18 -18
  245. package/build/{index-9e303daa.js → index-bdeb2b66.js} +5 -5
  246. package/build/{index-4c121a3e.js → index-c006fab8.js} +1 -1
  247. package/build/{index-567722e7.js → index-ce959275.js} +1 -1
  248. package/build/{index-6b35741d.js → index-dd532acc.js} +3 -3
  249. package/build/index-e2aa14a3.js +4068 -0
  250. package/build/{index-ae463375.js → index-e472be0e.js} +3 -3
  251. package/build/{index-fef5b6e1.js → index-f56caa77.js} +3 -3
  252. package/build/{index-856d1966.js → index-f6c359e7.js} +1 -1
  253. package/build/{index-c717196a.js → index-f8a548a9.js} +2 -2
  254. package/build/{index-5aeea721.js → index-f970ad34.js} +2 -2
  255. package/build/{index-fa204550.js → index-fee41b98.js} +24 -24
  256. package/build/index.js +176 -173
  257. package/build/{labelSorting-d2e79a09.js → labelSorting-176cc040.js} +4 -4
  258. package/build/lead.js +24 -24
  259. package/build/{logoIcon-65e59e87.js → logoIcon-c4102462.js} +2 -2
  260. package/build/mantine.js +22 -22
  261. package/build/misc.js +16 -16
  262. package/build/miscGetDynamicHealthTool.js +4 -4
  263. package/build/miscGetSocialList.js +8 -8
  264. package/build/miscScreenSizeContext.js +1 -1
  265. package/build/mobileBottomNavigation.js +5 -5
  266. package/build/mobileBottomNavigationIcon.js +5 -5
  267. package/build/molecules.js +105 -102
  268. package/build/moleculesArticleCard.js +6 -6
  269. package/build/moleculesArticleCardV2.js +16 -16
  270. package/build/navigation.js +40 -40
  271. package/build/navigationLogoutPopup.js +9 -9
  272. package/build/navigationProfileButton.js +23 -23
  273. package/build/onboardingV2.js +28 -28
  274. package/build/organisms.js +44 -44
  275. package/build/{post-7d0b0b4f.js → post-90ff8fb8.js} +2 -2
  276. package/build/profileNavigation.js +19 -19
  277. package/build/progressBar.js +1 -1
  278. package/build/pwg.js +22 -22
  279. package/build/ssoV2.js +25 -25
  280. package/build/{store-e6852dfb.js → store-1647f86d.js} +3 -3
  281. package/build/subot.js +32 -32
  282. package/build/surveyOrPremiumBanner.js +31 -31
  283. package/build/surveyQuestionCard.js +10 -10
  284. package/build/{surveyThankyouCard-70e7c07b.js → surveyThankyouCard-a9228471.js} +5 -5
  285. package/build/together.js +53 -53
  286. package/build/togetherApiUtils.js +4 -4
  287. package/build/togetherAtoms.js +30 -30
  288. package/build/togetherComponentGlobalContext.js +4 -4
  289. package/build/togetherMolecules.js +48 -48
  290. package/build/togetherMoleculesCardAuthor.js +27 -27
  291. package/build/togetherMoleculesPostImagePreview.js +11 -11
  292. package/build/togetherMoleculesProfileDetail.js +37 -37
  293. package/build/togetherOrganisms.js +47 -47
  294. package/build/togetherRichTextEditor.js +17 -17
  295. package/build/togetherShareBox.js +10 -10
  296. package/build/{treePopoverMenu-fe343fc3.js → treePopoverMenu-e858bd06.js} +19 -19
  297. package/build/{types-dd018df0.js → types-976e25a0.js} +2 -2
  298. package/build/types.js +2 -2
  299. package/build/{useCategory-9f44eb9a.js → useCategory-9276d8a3.js} +5 -5
  300. package/build/{useHealthToolCache-2301cb00.js → useHealthToolCache-ee483219.js} +1 -1
  301. package/build/{useMantineLocale-5f5b3daa.js → useMantineLocale-de288253.js} +6 -6
  302. package/build/{usePlacesAutocomplete-056ea0be.js → usePlacesAutocomplete-75403812.js} +1 -1
  303. package/build/{useScreenSize-f4a19b58.js → useScreenSize-6f077571.js} +2 -2
  304. package/build/useTogetherAuthRequiredAction.js +9 -9
  305. package/build/{utils-a24acca8.js → utils-73764c13.js} +2 -2
  306. package/build/{utils-d125dbb9.js → utils-7c04a142.js} +3 -3
  307. package/build/{utils-43990644.js → utils-c7769379.js} +2 -2
  308. package/build/vaccination.js +21 -21
  309. package/package.json +2 -2
  310. package/build/esm/fixedBottomAdBlock-9884e4b5.js +0 -2464
  311. package/build/fixedBottomAdBlock-a8476a3f.js +0 -2495
  312. /package/build/{BMI_BOYS.percentile.monthly-fe11d994.js → BMI_BOYS.percentile.monthly-2fbab972.js} +0 -0
  313. /package/build/{BMI_BOYS.percentile.weekly-9a751f6a.js → BMI_BOYS.percentile.weekly-5cb69d0c.js} +0 -0
  314. /package/build/{BMI_BOYS.percentile.yearly-1fcc4870.js → BMI_BOYS.percentile.yearly-58ec8caa.js} +0 -0
  315. /package/build/{BMI_BOYS.zscore.monthly-99bdedcc.js → BMI_BOYS.zscore.monthly-11932cc9.js} +0 -0
  316. /package/build/{BMI_BOYS.zscore.weekly-29acb54d.js → BMI_BOYS.zscore.weekly-2c4c885c.js} +0 -0
  317. /package/build/{BMI_BOYS.zscore.yearly-694c78b9.js → BMI_BOYS.zscore.yearly-d699a261.js} +0 -0
  318. /package/build/{BMI_GIRLS.percentile.monthly-6b4d531c.js → BMI_GIRLS.percentile.monthly-a8de51b2.js} +0 -0
  319. /package/build/{BMI_GIRLS.percentile.weekly-e4f4449f.js → BMI_GIRLS.percentile.weekly-857def81.js} +0 -0
  320. /package/build/{BMI_GIRLS.percentile.yearly-db8f3812.js → BMI_GIRLS.percentile.yearly-e1d5bbb8.js} +0 -0
  321. /package/build/{BMI_GIRLS.zscore.monthly-f96f96ec.js → BMI_GIRLS.zscore.monthly-65643107.js} +0 -0
  322. /package/build/{BMI_GIRLS.zscore.weekly-3acb5b52.js → BMI_GIRLS.zscore.weekly-1aa78b86.js} +0 -0
  323. /package/build/{BMI_GIRLS.zscore.yearly-7622f3b3.js → BMI_GIRLS.zscore.yearly-8ff381c6.js} +0 -0
  324. /package/build/{ChevronDown-87da998f.js → ChevronDown-b186e7ae.js} +0 -0
  325. /package/build/{Close-3cf656ad.js → Close-df815190.js} +0 -0
  326. /package/build/{Google-42c7d620.js → Google-3e0ae101.js} +0 -0
  327. /package/build/{HEAD CIRCUM_BOYS.percentile.monthly-d72e6e5c.js → HEAD CIRCUM_BOYS.percentile.monthly-25337403.js} +0 -0
  328. /package/build/{HEAD CIRCUM_BOYS.percentile.weekly-d16bd70a.js → HEAD CIRCUM_BOYS.percentile.weekly-283a7fd4.js} +0 -0
  329. /package/build/{HEAD CIRCUM_BOYS.percentile.yearly-6eb33da0.js → HEAD CIRCUM_BOYS.percentile.yearly-f31c6058.js} +0 -0
  330. /package/build/{HEAD CIRCUM_BOYS.zscore.monthly-0f90ee4f.js → HEAD CIRCUM_BOYS.zscore.monthly-f5fac871.js} +0 -0
  331. /package/build/{HEAD CIRCUM_BOYS.zscore.weekly-fd17ffda.js → HEAD CIRCUM_BOYS.zscore.weekly-406af111.js} +0 -0
  332. /package/build/{HEAD CIRCUM_BOYS.zscore.yearly-bae33478.js → HEAD CIRCUM_BOYS.zscore.yearly-aa59e07d.js} +0 -0
  333. /package/build/{HEAD CIRCUM_GIRLS.percentile.monthly-fc05bdec.js → HEAD CIRCUM_GIRLS.percentile.monthly-5a01e11b.js} +0 -0
  334. /package/build/{HEAD CIRCUM_GIRLS.percentile.weekly-9a58aff3.js → HEAD CIRCUM_GIRLS.percentile.weekly-545a867a.js} +0 -0
  335. /package/build/{HEAD CIRCUM_GIRLS.percentile.yearly-8c0a98c1.js → HEAD CIRCUM_GIRLS.percentile.yearly-c4d5cc78.js} +0 -0
  336. /package/build/{HEAD CIRCUM_GIRLS.zscore.monthly-cdd4c4eb.js → HEAD CIRCUM_GIRLS.zscore.monthly-4c529100.js} +0 -0
  337. /package/build/{HEAD CIRCUM_GIRLS.zscore.weekly-ae93e693.js → HEAD CIRCUM_GIRLS.zscore.weekly-232372ad.js} +0 -0
  338. /package/build/{HEAD CIRCUM_GIRLS.zscore.yearly-8f4776a9.js → HEAD CIRCUM_GIRLS.zscore.yearly-755f8a4b.js} +0 -0
  339. /package/build/{HEIGHT_BOYS.percentile.monthly-4339be56.js → HEIGHT_BOYS.percentile.monthly-f10af6a4.js} +0 -0
  340. /package/build/{HEIGHT_BOYS.percentile.weekly-c3ff6a5b.js → HEIGHT_BOYS.percentile.weekly-7e378bbc.js} +0 -0
  341. /package/build/{HEIGHT_BOYS.percentile.yearly-80c5fbd7.js → HEIGHT_BOYS.percentile.yearly-004692ce.js} +0 -0
  342. /package/build/{HEIGHT_BOYS.zscore.monthly-4db0334b.js → HEIGHT_BOYS.zscore.monthly-f84d3d9b.js} +0 -0
  343. /package/build/{HEIGHT_BOYS.zscore.weekly-f394dba3.js → HEIGHT_BOYS.zscore.weekly-7e80de34.js} +0 -0
  344. /package/build/{HEIGHT_BOYS.zscore.yearly-a0714144.js → HEIGHT_BOYS.zscore.yearly-378d2a50.js} +0 -0
  345. /package/build/{HEIGHT_GIRLS.percentile.monthly-704aec97.js → HEIGHT_GIRLS.percentile.monthly-ba475a77.js} +0 -0
  346. /package/build/{HEIGHT_GIRLS.percentile.weekly-75b4b073.js → HEIGHT_GIRLS.percentile.weekly-f07a65fb.js} +0 -0
  347. /package/build/{HEIGHT_GIRLS.percentile.yearly-9ea7f39b.js → HEIGHT_GIRLS.percentile.yearly-4a156534.js} +0 -0
  348. /package/build/{HEIGHT_GIRLS.zscore.monthly-dca7465e.js → HEIGHT_GIRLS.zscore.monthly-dd9d2b6e.js} +0 -0
  349. /package/build/{HEIGHT_GIRLS.zscore.weekly-72fb2331.js → HEIGHT_GIRLS.zscore.weekly-9a58bb69.js} +0 -0
  350. /package/build/{HEIGHT_GIRLS.zscore.yearly-a7c3e556.js → HEIGHT_GIRLS.zscore.yearly-077ba077.js} +0 -0
  351. /package/build/{Locale-3692c391.js → Locale-32ec864c.js} +0 -0
  352. /package/build/{Visible-8521c210.js → Visible-38fee470.js} +0 -0
  353. /package/build/{WEIGHT_BOYS.percentile.monthly-02afadfe.js → WEIGHT_BOYS.percentile.monthly-56f23870.js} +0 -0
  354. /package/build/{WEIGHT_BOYS.percentile.weekly-22881aa8.js → WEIGHT_BOYS.percentile.weekly-52b0ca8d.js} +0 -0
  355. /package/build/{WEIGHT_BOYS.percentile.yearly-52cbc5d2.js → WEIGHT_BOYS.percentile.yearly-e1a07e21.js} +0 -0
  356. /package/build/{WEIGHT_BOYS.zscore.monthly-f743ae44.js → WEIGHT_BOYS.zscore.monthly-75e2347b.js} +0 -0
  357. /package/build/{WEIGHT_BOYS.zscore.weekly-f736f07b.js → WEIGHT_BOYS.zscore.weekly-b9f43d95.js} +0 -0
  358. /package/build/{WEIGHT_BOYS.zscore.yearly-2a48c9a6.js → WEIGHT_BOYS.zscore.yearly-30d60d81.js} +0 -0
  359. /package/build/{WEIGHT_GIRLS.percentile.monthly-47906ca0.js → WEIGHT_GIRLS.percentile.monthly-0120540a.js} +0 -0
  360. /package/build/{WEIGHT_GIRLS.percentile.weekly-a28a0c98.js → WEIGHT_GIRLS.percentile.weekly-390e2301.js} +0 -0
  361. /package/build/{WEIGHT_GIRLS.percentile.yearly-633c99e3.js → WEIGHT_GIRLS.percentile.yearly-56b6f747.js} +0 -0
  362. /package/build/{WEIGHT_GIRLS.zscore.monthly-006f2c01.js → WEIGHT_GIRLS.zscore.monthly-82345b7d.js} +0 -0
  363. /package/build/{WEIGHT_GIRLS.zscore.weekly-ac305318.js → WEIGHT_GIRLS.zscore.weekly-8cacc97c.js} +0 -0
  364. /package/build/{WEIGHT_GIRLS.zscore.yearly-e08e406d.js → WEIGHT_GIRLS.zscore.yearly-bdd9706d.js} +0 -0
  365. /package/build/{animation-7f15eab3.js → animation-1ad3e9b9.js} +0 -0
  366. /package/build/{constants-1c12d9dc.js → constants-1991bf05.js} +0 -0
  367. /package/build/{constants-865fc956.js → constants-78c8202c.js} +0 -0
  368. /package/build/{constants-9119125f.js → constants-838514c5.js} +0 -0
  369. /package/build/{dataTransform-4cc5f3c2.js → dataTransform-317e6dc8.js} +0 -0
  370. /package/build/{doctor-ba862f80.js → doctor-99c6cc23.js} +0 -0
  371. /package/build/esm/{BMI_BOYS.percentile.monthly-c25826af.js → BMI_BOYS.percentile.monthly-7f458762.js} +0 -0
  372. /package/build/esm/{BMI_BOYS.percentile.weekly-fa6268c3.js → BMI_BOYS.percentile.weekly-22b45855.js} +0 -0
  373. /package/build/esm/{BMI_BOYS.percentile.yearly-068e1383.js → BMI_BOYS.percentile.yearly-e4dbc866.js} +0 -0
  374. /package/build/esm/{BMI_BOYS.zscore.monthly-1f56648d.js → BMI_BOYS.zscore.monthly-e48893a4.js} +0 -0
  375. /package/build/esm/{BMI_BOYS.zscore.weekly-c7e17693.js → BMI_BOYS.zscore.weekly-19da3eec.js} +0 -0
  376. /package/build/esm/{BMI_BOYS.zscore.yearly-e75e8235.js → BMI_BOYS.zscore.yearly-0874fc27.js} +0 -0
  377. /package/build/esm/{BMI_GIRLS.percentile.monthly-7a5dbbbf.js → BMI_GIRLS.percentile.monthly-c566de70.js} +0 -0
  378. /package/build/esm/{BMI_GIRLS.percentile.weekly-ca56e3fd.js → BMI_GIRLS.percentile.weekly-ac79b3a0.js} +0 -0
  379. /package/build/esm/{BMI_GIRLS.percentile.yearly-3e1056b6.js → BMI_GIRLS.percentile.yearly-fa277f7b.js} +0 -0
  380. /package/build/esm/{BMI_GIRLS.zscore.monthly-05d3f3bd.js → BMI_GIRLS.zscore.monthly-d782ea56.js} +0 -0
  381. /package/build/esm/{BMI_GIRLS.zscore.weekly-3d4130bb.js → BMI_GIRLS.zscore.weekly-db5bde15.js} +0 -0
  382. /package/build/esm/{BMI_GIRLS.zscore.yearly-96fe909e.js → BMI_GIRLS.zscore.yearly-49753a80.js} +0 -0
  383. /package/build/esm/{ChevronDown-73ee5062.js → ChevronDown-9338686e.js} +0 -0
  384. /package/build/esm/{Close-da7839f9.js → Close-56595611.js} +0 -0
  385. /package/build/esm/{Google-8c53d579.js → Google-429be631.js} +0 -0
  386. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.monthly-711d7d2d.js → HEAD CIRCUM_BOYS.percentile.monthly-38989a2e.js} +0 -0
  387. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.weekly-3d58fd33.js → HEAD CIRCUM_BOYS.percentile.weekly-8f20ccf2.js} +0 -0
  388. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.yearly-90cec9cf.js → HEAD CIRCUM_BOYS.percentile.yearly-01477763.js} +0 -0
  389. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.monthly-008a6ea3.js → HEAD CIRCUM_BOYS.zscore.monthly-c8563ec3.js} +0 -0
  390. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.weekly-237415f7.js → HEAD CIRCUM_BOYS.zscore.weekly-2bec7711.js} +0 -0
  391. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.yearly-43a8dabf.js → HEAD CIRCUM_BOYS.zscore.yearly-26671493.js} +0 -0
  392. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.monthly-d457307d.js → HEAD CIRCUM_GIRLS.percentile.monthly-860d1cf4.js} +0 -0
  393. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.weekly-f6f43558.js → HEAD CIRCUM_GIRLS.percentile.weekly-5f62aa55.js} +0 -0
  394. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.yearly-187cbca2.js → HEAD CIRCUM_GIRLS.percentile.yearly-44cf6bf9.js} +0 -0
  395. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.monthly-a6509d36.js → HEAD CIRCUM_GIRLS.zscore.monthly-9fac9f1f.js} +0 -0
  396. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.weekly-6683c57b.js → HEAD CIRCUM_GIRLS.zscore.weekly-2f957927.js} +0 -0
  397. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.yearly-b2ad613b.js → HEAD CIRCUM_GIRLS.zscore.yearly-ef3c08d0.js} +0 -0
  398. /package/build/esm/{HEIGHT_BOYS.percentile.monthly-080e6f9a.js → HEIGHT_BOYS.percentile.monthly-5375e01e.js} +0 -0
  399. /package/build/esm/{HEIGHT_BOYS.percentile.weekly-ad67cb21.js → HEIGHT_BOYS.percentile.weekly-117ef887.js} +0 -0
  400. /package/build/esm/{HEIGHT_BOYS.percentile.yearly-53b51404.js → HEIGHT_BOYS.percentile.yearly-a70a168b.js} +0 -0
  401. /package/build/esm/{HEIGHT_BOYS.zscore.monthly-8b2875fc.js → HEIGHT_BOYS.zscore.monthly-a32fb04d.js} +0 -0
  402. /package/build/esm/{HEIGHT_BOYS.zscore.weekly-17494fcf.js → HEIGHT_BOYS.zscore.weekly-169de22c.js} +0 -0
  403. /package/build/esm/{HEIGHT_BOYS.zscore.yearly-3d35289a.js → HEIGHT_BOYS.zscore.yearly-d4bd9bdc.js} +0 -0
  404. /package/build/esm/{HEIGHT_GIRLS.percentile.monthly-358d90c6.js → HEIGHT_GIRLS.percentile.monthly-e7b87518.js} +0 -0
  405. /package/build/esm/{HEIGHT_GIRLS.percentile.weekly-caa08bd3.js → HEIGHT_GIRLS.percentile.weekly-8a2073ba.js} +0 -0
  406. /package/build/esm/{HEIGHT_GIRLS.percentile.yearly-cc91f072.js → HEIGHT_GIRLS.percentile.yearly-79598ec6.js} +0 -0
  407. /package/build/esm/{HEIGHT_GIRLS.zscore.monthly-07af99da.js → HEIGHT_GIRLS.zscore.monthly-058970aa.js} +0 -0
  408. /package/build/esm/{HEIGHT_GIRLS.zscore.weekly-40348a63.js → HEIGHT_GIRLS.zscore.weekly-cc2ac411.js} +0 -0
  409. /package/build/esm/{HEIGHT_GIRLS.zscore.yearly-a5d3785a.js → HEIGHT_GIRLS.zscore.yearly-42d63937.js} +0 -0
  410. /package/build/esm/{Locale-26277c1c.js → Locale-fa2bd089.js} +0 -0
  411. /package/build/esm/{Visible-3461aa49.js → Visible-61c46319.js} +0 -0
  412. /package/build/esm/{WEIGHT_BOYS.percentile.monthly-245dc94f.js → WEIGHT_BOYS.percentile.monthly-c9561206.js} +0 -0
  413. /package/build/esm/{WEIGHT_BOYS.percentile.weekly-7dcdc947.js → WEIGHT_BOYS.percentile.weekly-287292ce.js} +0 -0
  414. /package/build/esm/{WEIGHT_BOYS.percentile.yearly-cae454b9.js → WEIGHT_BOYS.percentile.yearly-8aaa37ae.js} +0 -0
  415. /package/build/esm/{WEIGHT_BOYS.zscore.monthly-53f7a32a.js → WEIGHT_BOYS.zscore.monthly-24d35a82.js} +0 -0
  416. /package/build/esm/{WEIGHT_BOYS.zscore.weekly-0760233f.js → WEIGHT_BOYS.zscore.weekly-5ba0ad7a.js} +0 -0
  417. /package/build/esm/{WEIGHT_BOYS.zscore.yearly-80fd44aa.js → WEIGHT_BOYS.zscore.yearly-44385da8.js} +0 -0
  418. /package/build/esm/{WEIGHT_GIRLS.percentile.monthly-cb6c8f61.js → WEIGHT_GIRLS.percentile.monthly-35e8b865.js} +0 -0
  419. /package/build/esm/{WEIGHT_GIRLS.percentile.weekly-644038ce.js → WEIGHT_GIRLS.percentile.weekly-f9af7a81.js} +0 -0
  420. /package/build/esm/{WEIGHT_GIRLS.percentile.yearly-42e4cc6c.js → WEIGHT_GIRLS.percentile.yearly-ddbba90c.js} +0 -0
  421. /package/build/esm/{WEIGHT_GIRLS.zscore.monthly-8db88dc7.js → WEIGHT_GIRLS.zscore.monthly-c3d557f2.js} +0 -0
  422. /package/build/esm/{WEIGHT_GIRLS.zscore.weekly-1d948020.js → WEIGHT_GIRLS.zscore.weekly-47295162.js} +0 -0
  423. /package/build/esm/{WEIGHT_GIRLS.zscore.yearly-b8dec8ef.js → WEIGHT_GIRLS.zscore.yearly-f1ca2606.js} +0 -0
  424. /package/build/esm/{animation-97f0cd8e.js → animation-b08c9149.js} +0 -0
  425. /package/build/esm/{constants-65f5f62a.js → constants-3af34ec1.js} +0 -0
  426. /package/build/esm/{constants-e5548712.js → constants-e1bd2965.js} +0 -0
  427. /package/build/esm/{constants-a7a99553.js → constants-e59c3cda.js} +0 -0
  428. /package/build/esm/{dataTransform-768f6fb5.js → dataTransform-205ecd86.js} +0 -0
  429. /package/build/esm/{doctor-d3ab6b5a.js → doctor-70663306.js} +0 -0
  430. /package/build/esm/{index-e91ee268.js → index-08b7c8b3.js} +0 -0
  431. /package/build/esm/{index-03bc30b7.js → index-0ae638b0.js} +0 -0
  432. /package/build/esm/{index-4bb948af.js → index-128046b1.js} +0 -0
  433. /package/build/esm/{index-d8ffa35e.js → index-308dd3ee.js} +0 -0
  434. /package/build/esm/{index-5629a220.js → index-3292ef03.js} +0 -0
  435. /package/build/esm/{index-9b00e9be.js → index-40a06265.js} +0 -0
  436. /package/build/esm/{index-367974a1.js → index-779651ab.js} +0 -0
  437. /package/build/esm/{index-bad999c9.js → index-aa4a3619.js} +0 -0
  438. /package/build/esm/{index-47bb701e.js → index-e906d083.js} +0 -0
  439. /package/build/esm/{index.styles-55399ea5.js → index.styles-2eac8e1b.js} +0 -0
  440. /package/build/esm/{localizeNumberFormat-9400d459.js → localizeNumberFormat-3c6f5204.js} +0 -0
  441. /package/build/esm/{normalizeLink-d72c8a53.js → normalizeLink-725b4c4c.js} +0 -0
  442. /package/build/esm/{other-4932cd4d.js → other-dd57fa34.js} +0 -0
  443. /package/build/esm/{paths-ee706f49.js → paths-05b98f20.js} +0 -0
  444. /package/build/esm/{translationsContext-4395f3a7.js → translationsContext-8326d764.js} +0 -0
  445. /package/build/esm/{tslib.es6-7b679571.js → tslib.es6-ff12acb0.js} +0 -0
  446. /package/build/esm/{types-7846937a.js → types-cb3e7121.js} +0 -0
  447. /package/build/esm/{useIsInit-bea464d8.js → useIsInit-e3dbb57b.js} +0 -0
  448. /package/build/esm/{useOutsideClick-5e19773a.js → useOutsideClick-1fb017de.js} +0 -0
  449. /package/build/esm/{useScrollbarSize-ba6c5f02.js → useScrollbarSize-bc8c29a0.js} +0 -0
  450. /package/build/esm/{useUniqueId-99843636.js → useUniqueId-a0f2cfb4.js} +0 -0
  451. /package/build/esm/{utils-5a447836.js → utils-766963a7.js} +0 -0
  452. /package/build/{index-8341901b.js → index-3febe8b7.js} +0 -0
  453. /package/build/{index-0dca77d3.js → index-58bf7d13.js} +0 -0
  454. /package/build/{index-f24c76d2.js → index-88a9b2c7.js} +0 -0
  455. /package/build/{index-a762bd5a.js → index-9fbaabbe.js} +0 -0
  456. /package/build/{index-ed19cc3b.js → index-ab5260a6.js} +0 -0
  457. /package/build/{index-eedbe43c.js → index-ad895cec.js} +0 -0
  458. /package/build/{index-3e0d4609.js → index-ca10d8e5.js} +0 -0
  459. /package/build/{index-4280f765.js → index-cbddba4f.js} +0 -0
  460. /package/build/{index-a977d0e6.js → index-f0391ce6.js} +0 -0
  461. /package/build/{index.styles-83b26700.js → index.styles-de4dacfd.js} +0 -0
  462. /package/build/{localizeNumberFormat-3fc2d561.js → localizeNumberFormat-91cc4c15.js} +0 -0
  463. /package/build/{normalizeLink-7661c702.js → normalizeLink-800430d5.js} +0 -0
  464. /package/build/{other-b9f2f936.js → other-aa2d3862.js} +0 -0
  465. /package/build/{paths-95c9126c.js → paths-332bd4eb.js} +0 -0
  466. /package/build/{translationsContext-31df6b06.js → translationsContext-887d6e63.js} +0 -0
  467. /package/build/{tslib.es6-a8daf8ae.js → tslib.es6-0e12bd43.js} +0 -0
  468. /package/build/{types-7d533064.js → types-114d8059.js} +0 -0
  469. /package/build/{useIsInit-57f8e61f.js → useIsInit-59a78843.js} +0 -0
  470. /package/build/{useOutsideClick-74039eb7.js → useOutsideClick-a8e0f16d.js} +0 -0
  471. /package/build/{useScrollbarSize-837fb2cf.js → useScrollbarSize-6b8eaf3b.js} +0 -0
  472. /package/build/{useUniqueId-2f6855df.js → useUniqueId-13974804.js} +0 -0
  473. /package/build/{utils-d88ee6a6.js → utils-884afa6c.js} +0 -0
@@ -1,2495 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-a8daf8ae.js');
4
- var React = require('react');
5
- var index$5 = require('./index-2d6e4242.js');
6
- var core = require('@mantine/core');
7
- require('@mantine/dates');
8
- var index$7 = require('./index-b8309ebf.js');
9
- require('./index-dd2172ef.js');
10
- var index$a = require('./index-f24c76d2.js');
11
- require('./useMantineLocale-5f5b3daa.js');
12
- var index$3 = require('./index-1a36a3e7.js');
13
- require('./index-70bd382f.js');
14
- require('./index.styles-83b26700.js');
15
- require('./translationsContext-31df6b06.js');
16
- require('@mantine/hooks');
17
- var utils = require('./utils-d88ee6a6.js');
18
- require('./other-b9f2f936.js');
19
- require('./index-cd787bea.js');
20
- var index$2 = require('./index-6b35741d.js');
21
- var styled = require('@emotion/styled');
22
- var miscTheme = require('./miscTheme.js');
23
- var index$4 = require('./index-ae463375.js');
24
- var index$6 = require('./index-17c42b37.js');
25
- var throttle = require('lodash/throttle');
26
- var parse = require('html-react-parser');
27
- var constantsDomainLocales = require('./constantsDomainLocales.js');
28
- var constantsIsProduction = require('./constantsIsProduction.js');
29
- var dateFns = require('date-fns');
30
- var useOutsideClick = require('./useOutsideClick-74039eb7.js');
31
- var enUS = require('date-fns/locale/en-US');
32
- var id = require('date-fns/locale/id');
33
- var vi = require('date-fns/locale/vi');
34
- var zhTW = require('date-fns/locale/zh-TW');
35
- var index$9 = require('./index-646146c1.js');
36
- var useScreenSize = require('./useScreenSize-f4a19b58.js');
37
- var index$8 = require('./index-567722e7.js');
38
- var index$b = require('./index-4280f765.js');
39
- var miscGetSocialList = require('./miscGetSocialList.js');
40
- var index$d = require('./index-0345f9fd.js');
41
- var index$c = require('./index-d666d2f3.js');
42
- var uuid = require('uuid');
43
- var Locale = require('./Locale-3692c391.js');
44
-
45
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
46
-
47
- var React__default = /*#__PURE__*/_interopDefault(React);
48
- var styled__default = /*#__PURE__*/_interopDefault(styled);
49
- var throttle__default = /*#__PURE__*/_interopDefault(throttle);
50
- var parse__default = /*#__PURE__*/_interopDefault(parse);
51
- var enUS__default = /*#__PURE__*/_interopDefault(enUS);
52
- var id__default = /*#__PURE__*/_interopDefault(id);
53
- var vi__default = /*#__PURE__*/_interopDefault(vi);
54
- var zhTW__default = /*#__PURE__*/_interopDefault(zhTW);
55
-
56
- const StyledCategoryCard = styled__default["default"].a `
57
- display: flex;
58
- height: 125px;
59
-
60
- box-sizing: border-box;
61
- flex-direction: column;
62
- align-items: center;
63
- padding: 8px;
64
-
65
- border: 1px solid ${miscTheme.theme.colors.neutral100};
66
- background-color: white;
67
- border-radius: ${miscTheme.theme.borderRadius};
68
- box-shadow: 0px 5px 12px rgba(40, 74, 117, 0.08);
69
- cursor: pointer;
70
- text-decoration: none;
71
-
72
- & > .banner {
73
- width: 100%;
74
- height: 63px;
75
- text-align: center;
76
- }
77
-
78
- & > .content {
79
- display: -webkit-box;
80
- overflow: hidden;
81
- -webkit-box-orient: vertical;
82
- -webkit-line-clamp: 2;
83
- text-align: center;
84
- word-break: break-word;
85
- }
86
-
87
- * {
88
- pointer-events: none;
89
- }
90
- `;
91
-
92
- const CategoryCard = (_a) => {
93
- var { category, imgBanner, label, className, style, href = '', dataEventCategory, dataEventAction, dataEventLabel } = _a, rest = tslib_es6.__rest(_a, ["category", "imgBanner", "label", "className", "style", "href", "dataEventCategory", "dataEventAction", "dataEventLabel"]);
94
- const url = (category === null || category === void 0 ? void 0 : category.customizedUrl) || (category === null || category === void 0 ? void 0 : category.permalink) || href || '';
95
- return (React__default["default"].createElement(StyledCategoryCard, Object.assign({ "data-event-category": dataEventCategory, "data-event-action": dataEventAction, "data-event-label": dataEventLabel, className: className, style: style, href: url }, ((category === null || category === void 0 ? void 0 : category.customizedUrl) &&
96
- !index$2.isInternalLink(category.customizedUrl) && {
97
- target: '_blank',
98
- }), { onClick: (e) => {
99
- if (url === '') {
100
- e.preventDefault();
101
- }
102
- } }, rest),
103
- React__default["default"].createElement("div", { className: "banner" }, imgBanner),
104
- React__default["default"].createElement("div", { className: "content" },
105
- React__default["default"].createElement(index$3.Text, { className: "category_name", size: "sm", weight: "bold" }, (category === null || category === void 0 ? void 0 : category.displayName) || label || ''))));
106
- };
107
-
108
- const StyledCheckboxGroup = styled__default["default"].div `
109
- display: flex;
110
-
111
- &[data-type='vertical'] {
112
- flex-direction: column;
113
-
114
- div {
115
- margin-bottom: 20px;
116
- }
117
- }
118
-
119
- &[data-type='horizontal'] {
120
- flex-wrap: wrap;
121
-
122
- div {
123
- margin-right: 25px;
124
- }
125
-
126
- &[data-is-rectangle] {
127
- div {
128
- margin-right: 14px;
129
- }
130
- }
131
- }
132
- `;
133
-
134
- const CheckboxGroup = ({ name, values = [], onChanges, options = [], className, type = 'vertical', isDisabled, isRectangle, }) => {
135
- const onChange = (value, checked) => {
136
- const newValues = values.slice();
137
- if (checked) {
138
- newValues.push(value);
139
- }
140
- else {
141
- const removeIndex = newValues.findIndex((item) => item === value);
142
- newValues.splice(removeIndex, 1);
143
- }
144
- if (onChanges) {
145
- onChanges(newValues);
146
- }
147
- };
148
- return (React__default["default"].createElement(StyledCheckboxGroup, { className: className, "data-type": type, "data-is-rectangle": isRectangle || undefined }, options.map((option, index) => (React__default["default"].createElement(index$4.Checkbox, { label: option.label, name: name, key: `${index}-${option.value}`, checked: values.includes(option.value), value: option.value, isDisabled: isDisabled || option.disabled, onChange: !isDisabled && onChange, isRectangle: isRectangle })))));
149
- };
150
-
151
- const StyledIconText = styled__default["default"].div `
152
- display: flex;
153
- align-items: center;
154
- --font-weight-lg: ${miscTheme.theme.sizes.fwBold};
155
- --font-weight-md: ${miscTheme.theme.sizes.fwRegular};
156
- --font-weight-sm: ${miscTheme.theme.sizes.fwRegular};
157
-
158
- &[data-icon-position='left'] {
159
- & > *:first-child {
160
- margin-right: 8px;
161
- }
162
-
163
- & > *:last-child {
164
- width: calc(100% - 24px);
165
- }
166
- }
167
- &[data-icon-position='right'] {
168
- & > *:first-child {
169
- width: calc(100% - 24px);
170
- }
171
- & > *:last-child {
172
- margin-left: 8px;
173
- }
174
- }
175
-
176
- ${utils.MediaQueries.mbDown} {
177
- &[data-size='lg'] {
178
- font-size: 16px;
179
- line-height: 24px;
180
- font-weight: var(--font-weight-lg);
181
- }
182
- &[data-size='md'] {
183
- font-size: 14px;
184
- line-height: 22px;
185
- font-weight: var(--font-weight-md);
186
- }
187
- &[data-size='sm'] {
188
- font-size: 13px;
189
- line-height: 20px;
190
- font-weight: var(----font-weight-sm);
191
- }
192
- }
193
- `;
194
-
195
- const IconText = ({ size, iconPosition, className, children, icon: Icon, }) => {
196
- return (React__default["default"].createElement(StyledIconText, { className: className, "data-size": size, "data-icon-position": iconPosition },
197
- iconPosition === 'left' && Icon,
198
- children,
199
- iconPosition === 'right' && Icon));
200
- };
201
-
202
- const RadioGroup = React__default["default"].forwardRef(({ id, value, options, className, isDisabled, size: sizeProp = 'small', direction = 'vertical', onChange, dataEventCategory, dataEventAction, dataEventLabel, }, ref) => {
203
- const [check, setCheck] = React.useState(value);
204
- React.useImperativeHandle(ref, () => ({
205
- reset() {
206
- setCheck(value);
207
- },
208
- }));
209
- const handleOnChange = (v) => {
210
- setCheck(v);
211
- onChange === null || onChange === void 0 ? void 0 : onChange(v);
212
- };
213
- const size = sizeProp === 'small' ? 'md' : 'lg';
214
- const DirectionComp = direction === 'vertical' ? core.Stack : core.Group;
215
- return (React__default["default"].createElement(index$5.Radio.Group, { name: id, className: className, size: size, value: String(check), defaultValue: value, onChange: handleOnChange },
216
- React__default["default"].createElement(DirectionComp, { spacing: "xl" }, options.map((option) => (React__default["default"].createElement(index$5.Radio, { key: option.value, value: option.value, label: option.label, disabled: isDisabled, "data-event-category": dataEventCategory, "data-event-action": dataEventAction, "data-event-label": dataEventLabel }))))));
217
- });
218
-
219
- const StyledSideMenu = styled__default["default"].div `
220
- --menu-width: 240px;
221
- --menu-spacing: 28px 16px;
222
- width: var(--menu-width);
223
- height: 100vh;
224
- padding: var(--menu-spacing);
225
- background-color: ${miscTheme.theme.colors.neutral50};
226
- transition: ease-in-out 0.5s;
227
-
228
- &[data-is-collapsed] {
229
- --menu-width: 64px;
230
- --menu-spacing: 28px 8px;
231
- }
232
- `;
233
- const SideMenu = ({ isCollapsed, className, style, children }) => {
234
- return (React__default["default"].createElement(StyledSideMenu, { style: style, className: className, "data-is-collapsed": isCollapsed || undefined }, children));
235
- };
236
-
237
- const StyledSideHeader = styled__default["default"].div `
238
- display: flex;
239
- align-items: baseline;
240
- justify-content: space-between;
241
-
242
- svg {
243
- transition: 0.4s ease-in-out;
244
- }
245
- `;
246
- const StyledArrow = styled__default["default"].div `
247
- cursor: pointer;
248
- &[data-is-collapsed] {
249
- transform: rotate(180deg);
250
- }
251
- `;
252
- const SideHeader = ({ isCollapsed, defaultLogo, onBackClick, customIcon, }) => {
253
- return (React__default["default"].createElement(StyledSideHeader, null,
254
- React__default["default"].createElement(index$6.Logo, { type: isCollapsed ? 'logomark' : defaultLogo || 'hellocare', customSize: {
255
- width: isCollapsed ? '24px' : '77px',
256
- height: '24px',
257
- } }),
258
- React__default["default"].createElement(StyledArrow, { "data-is-collapsed": isCollapsed || undefined, onClick: onBackClick }, customIcon ? (customIcon) : (React__default["default"].createElement("svg", { "data-name": "Layer 1", viewBox: "0 0 20 20", width: "20px", height: "20px" },
259
- React__default["default"].createElement("path", { d: "M10 .75A9.25 9.25 0 1019.25 10 9.25 9.25 0 0010 .75z", fill: "none", stroke: "#d2d6dc", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }),
260
- React__default["default"].createElement("path", { d: "M11.44 6.53L8 10l3.48 3.47", fill: "none", stroke: "#737373", strokeLinecap: "round", strokeLinejoin: "round", strokeWidth: "1.5" }))))));
261
- };
262
-
263
- const StyledDoctorInfo = styled__default["default"].figure `
264
- display: flex;
265
-
266
- > img,
267
- svg,
268
- picture {
269
- width: 40px;
270
- height: 40px;
271
- margin-right: 1rem;
272
- border-radius: 6px;
273
- object-fit: cover;
274
- }
275
-
276
- > figcaption {
277
- p + p {
278
- margin-top: 2px;
279
- }
280
- }
281
- `;
282
- const DoctorInfo = ({ name, description, image, isDescriptionHidden, }) => {
283
- return (React__default["default"].createElement(StyledDoctorInfo, null,
284
- image,
285
- !isDescriptionHidden && (React__default["default"].createElement("figcaption", null,
286
- React__default["default"].createElement(index$3.Text, { size: "p4", weight: "bold" }, name),
287
- React__default["default"].createElement(index$3.Text, { size: "p4" }, description)))));
288
- };
289
-
290
- const StyledUserInfo = styled__default["default"].div `
291
- display: flex;
292
- align-items: center;
293
- margin-top: 24px;
294
- margin-bottom: 36px;
295
-
296
- figcaption {
297
- white-space: nowrap;
298
- }
299
-
300
- &[data-is-collapsed='true'] {
301
- img {
302
- max-width: 2rem;
303
- max-height: 2rem;
304
- }
305
- }
306
- `;
307
- const UserInfo = ({ isCollapsed, userName, role, avatar }) => {
308
- return (React__default["default"].createElement(StyledUserInfo, { "data-is-collapsed": isCollapsed || undefined },
309
- React__default["default"].createElement(DoctorInfo, { image: avatar, name: userName, description: role, isDescriptionHidden: isCollapsed })));
310
- };
311
-
312
- const StyledMenuLink = styled__default["default"].div `
313
- display: flex;
314
- align-items: center;
315
- padding: 9px 21px;
316
- margin-bottom: 4px;
317
- border-radius: 6px;
318
-
319
- &:not([data-is-link-active]) {
320
- cursor: pointer;
321
- }
322
-
323
- p {
324
- margin-left: 12px;
325
- }
326
-
327
- &[data-is-link-active] {
328
- background: ${miscTheme.theme.colors.primaryBase};
329
- }
330
-
331
- &[data-is-link-collapsed] {
332
- justify-content: center;
333
- margin-right: -14px;
334
- margin-left: -14px;
335
- }
336
- `;
337
- const MenuLink = ({ icon, isActive, children, isCollapsed, activeIcon, onLinkClick, textSize = 'base', textType = 'bold', textColorActive = '#fff', textColor = '#595959', }) => {
338
- return (React__default["default"].createElement(StyledMenuLink, { "data-is-link-active": isActive || undefined, onClick: onLinkClick, "data-is-link-collapsed": isCollapsed || undefined },
339
- !(isActive && activeIcon) ? icon : activeIcon,
340
- !isCollapsed && (React__default["default"].createElement(index$3.Text, { size: textSize, weight: textType, color: isActive ? textColorActive : textColor }, children))));
341
- };
342
-
343
- var index$1 = /*#__PURE__*/Object.freeze({
344
- __proto__: null,
345
- SideMenu: SideMenu,
346
- SideHeader: SideHeader,
347
- UserInfo: UserInfo,
348
- MenuLink: MenuLink
349
- });
350
-
351
- const StyledScrollList = styled__default["default"].div `
352
- position: relative;
353
- width: 100%;
354
- > .container {
355
- display: flex;
356
- width: 100%;
357
- -ms-overflow-style: none;
358
- overflow-x: auto;
359
- scrollbar-width: none;
360
-
361
- &::-webkit-scrollbar {
362
- display: none;
363
- }
364
-
365
- .section {
366
- display: flex;
367
- width: 100%;
368
- flex-direction: column;
369
- flex-shrink: 0;
370
- margin: auto;
371
-
372
- > .grid-layout {
373
- display: grid;
374
- width: 100%;
375
- grid-row-gap: 8px;
376
-
377
- > .item-grid {
378
- width: 100%;
379
-
380
- > * {
381
- margin: 0 auto;
382
- }
383
- }
384
- }
385
-
386
- .progress-bar {
387
- display: grid;
388
- height: 15px;
389
- margin-bottom: 10px;
390
-
391
- .items-progress {
392
- position: relative;
393
- display: flex;
394
- width: 100%;
395
- align-items: center;
396
- justify-content: center;
397
-
398
- .icon-status {
399
- position: absolute;
400
- display: flex;
401
- }
402
-
403
- .line {
404
- width: 50%;
405
- height: 2px;
406
- background-color: ${miscTheme.theme.colors.gray600};
407
- }
408
- }
409
- }
410
- }
411
- }
412
-
413
- .bullet-nav {
414
- position: absolute;
415
- z-index: ${miscTheme.theme.zIndexes.belowHeader};
416
- bottom: -30px;
417
- left: 50%;
418
- display: flex;
419
- transform: translate(-50%, -50%);
420
- }
421
-
422
- .bullet-nav__link {
423
- display: block;
424
- width: 8px;
425
- height: 8px;
426
- padding: 0;
427
- margin-right: 8px;
428
- backface-visibility: hidden;
429
- background-color: #e4e8ec;
430
- border-radius: 50%;
431
- cursor: pointer;
432
- transition: all 0.3s;
433
- &.active {
434
- &[data-scheme='hellosites'] {
435
- background-color: ${miscTheme.theme.colors.primary600};
436
- }
437
- &[data-scheme='marrybaby'] {
438
- background-color: ${miscTheme.theme.mbColors.pink};
439
- }
440
- }
441
- }
442
-
443
- .arrow-left {
444
- position: absolute;
445
- z-index: 10;
446
- top: 50%;
447
- left: -35px;
448
- transform: translateY(-50%);
449
- &[data-event-category] > * {
450
- pointer-events: none;
451
- }
452
- }
453
-
454
- .arrow-right {
455
- position: absolute;
456
- z-index: 10;
457
- top: 50%;
458
- right: -35px;
459
- transform: translateY(-50%);
460
- &[data-event-category] > * {
461
- pointer-events: none;
462
- }
463
- }
464
-
465
- .image-gallery-wrapper {
466
- display: flex;
467
- position: relative;
468
- margin-top: 16px;
469
- justify-content: center;
470
- gap: 16px;
471
- .image-block {
472
- display: block;
473
- width: 100%;
474
- border: 2px solid transparent;
475
- border-radius: 4px;
476
- }
477
- .image-block.active {
478
- border-color: ${miscTheme.theme.colors.primaryBase};
479
- }
480
- img {
481
- height: 40px;
482
- width: auto;
483
- max-width: 100%;
484
- }
485
- }
486
- `;
487
-
488
- const RenderIconStatus = ({ status }) => {
489
- if (status === 'inActive') {
490
- return (React__default["default"].createElement("svg", { width: "6", height: "6", viewBox: "0 0 6 6", fill: "none" },
491
- React__default["default"].createElement("circle", { cx: "3", cy: "3", r: "3", fill: "#ADB3BC" })));
492
- }
493
- else if (status === 'active') {
494
- return (React__default["default"].createElement("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none" },
495
- React__default["default"].createElement("circle", { cx: "6", cy: "6", r: "4", fill: "#2D87F3" }),
496
- React__default["default"].createElement("circle", { cx: "6", cy: "6", r: "5.5", stroke: "#2D87F3" })));
497
- }
498
- else if (status === 'done') {
499
- return (React__default["default"].createElement("svg", { width: "12", height: "12", viewBox: "0 0 12 12", fill: "none" },
500
- React__default["default"].createElement("path", { d: "M6 12C9.31371 12 12 9.31371 12 6C12 2.68629 9.31371 0 6 0C2.68629 0 0 2.68629 0 6C0 9.31371 2.68629 12 6 12Z", fill: "#00B16A" }),
501
- React__default["default"].createElement("path", { d: "M8.76061 4.20029L4.80061 7.80029L3.00061 6.16392", stroke: "white", strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" })));
502
- }
503
- return (React__default["default"].createElement("svg", { width: "6", height: "6", viewBox: "0 0 6 6", fill: "none" },
504
- React__default["default"].createElement("circle", { cx: "3", cy: "3", r: "3", fill: "#ADB3BC" })));
505
- };
506
- /**
507
- * @deprecated Consider to use at '@hhgtech/hhg-components/mantine'
508
- */
509
- const ScrollList = ({ row = 2, column = 3, isDotsShown = true, isImageGalleryShown = false, mode = 'infinity', type = 'separated', distanceOverlappedLeft = {
510
- amount: 0,
511
- unit: 'pixel',
512
- }, children, className, isProgressShown = false, statusChildren, isArrowShown = false, classNameLeftArrow, classNameRightArrow, dataEventCategory, dataEventAction, dataEventLabel, onChangePage, page, customPageWidth, scheme = 'hellosites', arrowType = 'Discover', }) => {
513
- const hasPageProps = typeof page === 'number';
514
- const [section, setSection] = React.useState(hasPageProps ? page : 0);
515
- //Create groups
516
- const groups = [];
517
- React__default["default"].Children.map(children, (element, idx) => {
518
- if (idx % (row * column) === 0) {
519
- groups.push([]);
520
- }
521
- groups[groups.length - 1].push(React__default["default"].cloneElement(element));
522
- });
523
- const scrollRef = React.useRef();
524
- const currentPage = React.useRef(0);
525
- const scrollToPage = (index) => {
526
- if (!scrollRef.current)
527
- return;
528
- const { clientWidth } = scrollRef.current;
529
- const pageWidth = customPageWidth || clientWidth;
530
- const distance = type === 'intertwined'
531
- ? distanceOverlappedLeft.unit === 'percentage'
532
- ? index * pageWidth +
533
- (distanceOverlappedLeft.amount / 100) * pageWidth * index
534
- : index * pageWidth +
535
- distanceOverlappedLeft.amount * pageWidth * index
536
- : index * pageWidth;
537
- scrollRef.current.scrollTo({
538
- top: 0,
539
- left: distance,
540
- behavior: 'smooth',
541
- });
542
- currentPage.current = index;
543
- setSection(index);
544
- };
545
- const handleClick = (index) => {
546
- if (!scrollRef.current)
547
- return;
548
- const { clientWidth } = scrollRef.current;
549
- const pageWidth = customPageWidth || clientWidth;
550
- const distance = type === 'intertwined'
551
- ? distanceOverlappedLeft.unit === 'percentage'
552
- ? index * pageWidth +
553
- (distanceOverlappedLeft.amount / 100) * pageWidth * index
554
- : index * pageWidth +
555
- distanceOverlappedLeft.amount * pageWidth * index
556
- : index * pageWidth;
557
- scrollRef.current.scrollTo({
558
- top: 0,
559
- left: distance,
560
- behavior: 'smooth',
561
- });
562
- currentPage.current = index;
563
- setSection(index);
564
- onChangePage && onChangePage(index);
565
- };
566
- React.useEffect(() => {
567
- if (typeof page === 'number')
568
- scrollToPage(page);
569
- }, [page]);
570
- const handleClickArrow = (type) => {
571
- if (!scrollRef.current)
572
- return;
573
- const { clientWidth } = scrollRef.current;
574
- const pageWidth = customPageWidth || clientWidth;
575
- let distance;
576
- section === 0 ? (distance = 0) : (distance = section * pageWidth);
577
- if (type === 'forward') {
578
- if (distance === pageWidth * (groups.length - 1)) {
579
- setSection(groups.length - 1);
580
- distance = pageWidth * (groups.length - 1);
581
- onChangePage && onChangePage(groups.length - 1);
582
- }
583
- else {
584
- setSection(section + 1);
585
- distance += pageWidth;
586
- onChangePage && onChangePage(section + 1);
587
- }
588
- scrollRef.current.scrollTo({
589
- top: 0,
590
- left: distance,
591
- behavior: 'smooth',
592
- });
593
- }
594
- if (type === 'back') {
595
- if (distance === 0) {
596
- setSection(0);
597
- onChangePage && onChangePage(0);
598
- distance = 0;
599
- }
600
- else {
601
- setSection(section - 1);
602
- onChangePage && onChangePage(section - 1);
603
- distance -= pageWidth;
604
- }
605
- scrollRef.current.scrollTo({
606
- top: 0,
607
- left: distance,
608
- behavior: 'smooth',
609
- });
610
- }
611
- };
612
- const handleScroll = () => {
613
- if (mode === 'infinity') {
614
- if (!scrollRef.current)
615
- return;
616
- const { clientWidth, scrollLeft } = scrollRef.current;
617
- const pageWidth = customPageWidth || clientWidth;
618
- const page = Math.floor(scrollLeft / pageWidth);
619
- setSection(page);
620
- onChangePage && onChangePage(page);
621
- }
622
- };
623
- const handleScrollThrottle = throttle__default["default"](handleScroll, 400);
624
- React.useEffect(() => {
625
- if (mode === 'snapped') {
626
- let isDown = false;
627
- let startX;
628
- let startY;
629
- let isSlidingY;
630
- let isSlidingX;
631
- let scrollLeft;
632
- let direction;
633
- const slider = scrollRef.current;
634
- const start = (pageX, pageY) => {
635
- isDown = true;
636
- isSlidingY = false;
637
- isSlidingX = false;
638
- startX = pageX - slider.offsetLeft;
639
- startY = pageY - slider.offsetTop;
640
- scrollLeft = slider.scrollLeft;
641
- };
642
- const startMouse = (e) => {
643
- start(e.pageX, e.pageY);
644
- };
645
- const startTouch = (e) => {
646
- start(e.touches[0].pageX, e.touches[0].pageY);
647
- };
648
- const end = () => {
649
- isDown = false;
650
- isSlidingY = false;
651
- isSlidingX = false;
652
- if (!scrollRef.current)
653
- return;
654
- const { clientWidth } = scrollRef.current;
655
- const pageWidth = customPageWidth || clientWidth;
656
- const page = direction === 'ltr'
657
- ? currentPage.current !== 0
658
- ? currentPage.current - 1
659
- : currentPage.current
660
- : direction === 'rtl'
661
- ? currentPage.current < groups.length - 1
662
- ? currentPage.current + 1
663
- : currentPage.current
664
- : currentPage.current;
665
- const distance = type === 'intertwined'
666
- ? distanceOverlappedLeft.unit === 'percentage'
667
- ? page * pageWidth +
668
- (distanceOverlappedLeft.amount / 100) * pageWidth * page
669
- : page * pageWidth +
670
- distanceOverlappedLeft.amount * pageWidth * page
671
- : page * pageWidth;
672
- scrollRef.current.scrollTo({
673
- top: 0,
674
- left: distance,
675
- behavior: 'smooth',
676
- });
677
- direction = 'none';
678
- if (currentPage.current !== page) {
679
- currentPage.current = page;
680
- setSection(page);
681
- onChangePage && onChangePage(page);
682
- }
683
- };
684
- const move = (pageX, pageY) => {
685
- if (!isDown)
686
- return;
687
- const x = pageX - slider.offsetLeft;
688
- const y = pageY - slider.offsetTop;
689
- const walkX = x - startX;
690
- const walkY = y - startY;
691
- if (!isSlidingY && !isSlidingX && (walkY > 20 || walkY < -20)) {
692
- isSlidingY = true;
693
- }
694
- if (!isSlidingY && (walkX > 20 || walkX < -20)) {
695
- isSlidingX = true;
696
- slider.scrollLeft = scrollLeft - walkX;
697
- if (walkX > 0) {
698
- direction = 'ltr';
699
- }
700
- if (walkX < 0) {
701
- direction = 'rtl';
702
- }
703
- if (walkX === 0) {
704
- direction = 'none';
705
- }
706
- }
707
- };
708
- const moveMouse = (e) => {
709
- if (isSlidingX) {
710
- e.preventDefault();
711
- }
712
- move(e.pageX, e.pageY);
713
- };
714
- const moveTouch = (e) => {
715
- if (isSlidingX) {
716
- e.preventDefault();
717
- }
718
- move(e.touches[0].pageX, e.touches[0].pageY);
719
- };
720
- slider === null || slider === void 0 ? void 0 : slider.addEventListener('mousedown', startMouse, {
721
- passive: true,
722
- });
723
- slider === null || slider === void 0 ? void 0 : slider.addEventListener('touchstart', startTouch, {
724
- passive: true,
725
- });
726
- window.addEventListener('mouseup', end, {
727
- passive: true,
728
- });
729
- window.addEventListener('touchend', end, {
730
- passive: true,
731
- });
732
- slider === null || slider === void 0 ? void 0 : slider.addEventListener('mousemove', moveMouse, {
733
- passive: true,
734
- });
735
- slider === null || slider === void 0 ? void 0 : slider.addEventListener('touchmove', moveTouch, {
736
- passive: true,
737
- });
738
- return () => {
739
- slider === null || slider === void 0 ? void 0 : slider.removeEventListener('mousedown', startMouse);
740
- slider === null || slider === void 0 ? void 0 : slider.removeEventListener('touchstart', startTouch);
741
- window.removeEventListener('mouseup', end);
742
- window.removeEventListener('touchend', end);
743
- slider === null || slider === void 0 ? void 0 : slider.removeEventListener('mousemove', moveMouse);
744
- slider === null || slider === void 0 ? void 0 : slider.removeEventListener('touchmove', moveTouch);
745
- };
746
- }
747
- }, []);
748
- return (React__default["default"].createElement(StyledScrollList, { className: className, "data-row": row, onScroll: handleScrollThrottle },
749
- isArrowShown && section > 0 && (React__default["default"].createElement("div", { className: `${classNameLeftArrow} arrow-left`, onClick: () => handleClickArrow('back'), "data-event-category": dataEventCategory, "data-event-action": dataEventAction, "data-event-label": dataEventLabel }, arrowType === 'Care' ? (React__default["default"].createElement("svg", { width: "42", height: "42", viewBox: "0 0 42 42", fill: "none" },
750
- React__default["default"].createElement("g", { filter: "url(#filter0_dd_12599_34420)" },
751
- React__default["default"].createElement("path", { d: "M7.00024 19C7.00024 10.1634 14.1637 3 23.0002 3V3C31.8368 3 39.0002 10.1634 39.0002 19V19C39.0002 27.8366 31.8368 35 23.0002 35V35C14.1637 35 7.00024 27.8366 7.00024 19V19Z", fill: "white" }),
752
- React__default["default"].createElement("path", { d: "M20.9293 19L24.7503 15.179C25.1643 14.765 25.1643 14.093 24.7503 13.679C24.3363 13.265 23.6643 13.265 23.2503 13.679L18.6363 18.293C18.2453 18.684 18.2453 19.317 18.6363 19.707L23.2503 24.321C23.6643 24.735 24.3363 24.735 24.7503 24.321C25.1643 23.907 25.1643 23.235 24.7503 22.821L20.9293 19Z", fill: "#595959" }),
753
- React__default["default"].createElement("path", { d: "M23.0002 34C14.716 34 8.00024 27.2843 8.00024 19H6.00024C6.00024 28.3888 13.6114 36 23.0002 36V34ZM38.0002 19C38.0002 27.2843 31.2845 34 23.0002 34V36C32.3891 36 40.0002 28.3888 40.0002 19H38.0002ZM23.0002 4C31.2845 4 38.0002 10.7157 38.0002 19H40.0002C40.0002 9.61116 32.3891 2 23.0002 2V4ZM23.0002 2C13.6114 2 6.00024 9.61116 6.00024 19H8.00024C8.00024 10.7157 14.716 4 23.0002 4V2Z", fill: "#DBDFE5" })),
754
- React__default["default"].createElement("defs", null,
755
- React__default["default"].createElement("filter", { id: "filter0_dd_12599_34420", x: "0.000244141", y: "0", width: "42", height: "42", filterUnits: "userSpaceOnUse", colorInterpolationFilters: "sRGB" },
756
- React__default["default"].createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
757
- React__default["default"].createElement("feColorMatrix", { in: "SourceAlpha", type: "matrix", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0", result: "hardAlpha" }),
758
- React__default["default"].createElement("feOffset", { dx: "-2", dy: "2" }),
759
- React__default["default"].createElement("feGaussianBlur", { stdDeviation: "2.5" }),
760
- React__default["default"].createElement("feColorMatrix", { type: "matrix", values: "0 0 0 0 0.263201 0 0 0 0 0.335725 0 0 0 0 0.393257 0 0 0 0.123689 0" }),
761
- React__default["default"].createElement("feBlend", { mode: "normal", in2: "BackgroundImageFix", result: "effect1_dropShadow_12599_34420" }),
762
- React__default["default"].createElement("feColorMatrix", { in: "SourceAlpha", type: "matrix", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0", result: "hardAlpha" }),
763
- React__default["default"].createElement("feOffset", { dx: "-1", dy: "1" }),
764
- React__default["default"].createElement("feGaussianBlur", { stdDeviation: "1" }),
765
- React__default["default"].createElement("feColorMatrix", { type: "matrix", values: "0 0 0 0 0.264489 0 0 0 0 0.275745 0 0 0 0 0.28861 0 0 0 0.01 0" }),
766
- React__default["default"].createElement("feBlend", { mode: "normal", in2: "effect1_dropShadow_12599_34420", result: "effect2_dropShadow_12599_34420" }),
767
- React__default["default"].createElement("feBlend", { mode: "normal", in: "SourceGraphic", in2: "effect2_dropShadow_12599_34420", result: "shape" }))))) : (React__default["default"].createElement("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none" },
768
- React__default["default"].createElement("path", { d: "M15.9996 28.2218C22.7497 28.2218 28.2218 22.7497 28.2218 15.9996C28.2218 9.24942 22.7497 3.77734 15.9996 3.77734C9.24942 3.77734 3.77734 9.24942 3.77734 15.9996C3.77734 22.7497 9.24942 28.2218 15.9996 28.2218Z", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }),
769
- React__default["default"].createElement("path", { d: "M15.9997 11.1109L11.1108 15.9998L15.9997 20.8887", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }),
770
- React__default["default"].createElement("path", { d: "M20.8886 15.999L11.1108 15.999", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }))))),
771
- React__default["default"].createElement("div", { ref: scrollRef, className: "container", style: {
772
- overflowX: mode === 'snapped' || isArrowShown ? 'hidden' : 'scroll',
773
- } }, groups.map((group, groupIndex) => {
774
- let baseIndex = 0;
775
- for (let i = 0; i < groupIndex; i++) {
776
- baseIndex += groups[i].length;
777
- }
778
- return (React__default["default"].createElement("div", { key: groupIndex, className: "section", style: {
779
- marginLeft: type === 'intertwined' && groupIndex !== 0
780
- ? distanceOverlappedLeft.amount +
781
- '' +
782
- (distanceOverlappedLeft.unit === 'percentage'
783
- ? '%'
784
- : 'px')
785
- : '0px',
786
- } },
787
- row === 1 && isProgressShown && (React__default["default"].createElement("div", { className: "progress-bar", style: {
788
- gridTemplateColumns: `repeat(${column}, 1fr)`,
789
- } }, group.map((item, itemIndex) => {
790
- const realIndex = baseIndex + itemIndex;
791
- const foundStatusItem = statusChildren.find((statusItem) => statusItem.index === realIndex);
792
- return (React__default["default"].createElement("div", { className: "items-progress", key: itemIndex },
793
- itemIndex === 0 && groupIndex === 0 ? (React__default["default"].createElement("div", { className: "line", style: { visibility: 'hidden' } })) : (React__default["default"].createElement("div", { className: "line" })),
794
- React__default["default"].createElement("div", { className: "icon-status" },
795
- React__default["default"].createElement(RenderIconStatus, { status: foundStatusItem === null || foundStatusItem === void 0 ? void 0 : foundStatusItem.status })),
796
- groupIndex === groups.length - 1 &&
797
- itemIndex === group.length - 1 ? (React__default["default"].createElement("div", { className: "line", style: { visibility: 'hidden' } })) : (React__default["default"].createElement("div", { className: "line" }))));
798
- }))),
799
- React__default["default"].createElement("div", { className: "grid-layout", "data-index": groupIndex, style: {
800
- gridTemplateColumns: `repeat(${column}, 1fr)`,
801
- gridTemplateRows: `repeat(${row}, 1fr)`,
802
- } }, group.map((item, itemIndex) => (React__default["default"].createElement(React__default["default"].Fragment, { key: itemIndex },
803
- React__default["default"].createElement("div", { className: "item-grid", key: itemIndex }, item)))))));
804
- })),
805
- isArrowShown && section < groups.length - 1 && (React__default["default"].createElement("div", { className: `${classNameRightArrow} arrow-right`, onClick: () => handleClickArrow('forward'), "data-event-category": dataEventCategory, "data-event-action": dataEventAction, "data-event-label": dataEventLabel },
806
- ' ',
807
- arrowType === 'Care' ? (React__default["default"].createElement("svg", { width: "42", height: "42", viewBox: "0 0 42 42", fill: "none" },
808
- React__default["default"].createElement("g", { filter: "url(#filter0_dd_12597_34423)" },
809
- React__default["default"].createElement("path", { d: "M7.00024 19C7.00024 10.1634 14.1637 3 23.0002 3C31.8368 3 39.0002 10.1634 39.0002 19C39.0002 27.8366 31.8368 35 23.0002 35C14.1637 35 7.00024 27.8366 7.00024 19Z", fill: "white" }),
810
- React__default["default"].createElement("path", { d: "M24.0712 19L20.2502 15.179C19.8362 14.765 19.8362 14.093 20.2502 13.679C20.6642 13.265 21.3362 13.265 21.7502 13.679L26.3642 18.293C26.7552 18.684 26.7552 19.317 26.3642 19.707L21.7502 24.321C21.3362 24.735 20.6642 24.735 20.2502 24.321C19.8362 23.907 19.8362 23.235 20.2502 22.821L24.0712 19Z", fill: "#595959" }),
811
- React__default["default"].createElement("path", { d: "M23.0002 34C14.716 34 8.00024 27.2843 8.00024 19H6.00024C6.00024 28.3888 13.6114 36 23.0002 36V34ZM38.0002 19C38.0002 27.2843 31.2845 34 23.0002 34V36C32.3891 36 40.0002 28.3888 40.0002 19H38.0002ZM23.0002 4C31.2845 4 38.0002 10.7157 38.0002 19H40.0002C40.0002 9.61116 32.3891 2 23.0002 2V4ZM23.0002 2C13.6114 2 6.00024 9.61116 6.00024 19H8.00024C8.00024 10.7157 14.716 4 23.0002 4V2Z", fill: "#DBDFE5" })),
812
- React__default["default"].createElement("defs", null,
813
- React__default["default"].createElement("filter", { id: "filter0_dd_12597_34423", x: "0.000244141", y: "0", width: "42", height: "42", filterUnits: "userSpaceOnUse", colorInterpolationFilters: "sRGB" },
814
- React__default["default"].createElement("feFlood", { floodOpacity: "0", result: "BackgroundImageFix" }),
815
- React__default["default"].createElement("feColorMatrix", { in: "SourceAlpha", type: "matrix", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0", result: "hardAlpha" }),
816
- React__default["default"].createElement("feOffset", { dx: "-2", dy: "2" }),
817
- React__default["default"].createElement("feGaussianBlur", { stdDeviation: "2.5" }),
818
- React__default["default"].createElement("feColorMatrix", { type: "matrix", values: "0 0 0 0 0.263201 0 0 0 0 0.335725 0 0 0 0 0.393257 0 0 0 0.123689 0" }),
819
- React__default["default"].createElement("feBlend", { mode: "normal", in2: "BackgroundImageFix", result: "effect1_dropShadow_12597_34423" }),
820
- React__default["default"].createElement("feColorMatrix", { in: "SourceAlpha", type: "matrix", values: "0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0", result: "hardAlpha" }),
821
- React__default["default"].createElement("feOffset", { dx: "-1", dy: "1" }),
822
- React__default["default"].createElement("feGaussianBlur", { stdDeviation: "1" }),
823
- React__default["default"].createElement("feColorMatrix", { type: "matrix", values: "0 0 0 0 0.264489 0 0 0 0 0.275745 0 0 0 0 0.28861 0 0 0 0.01 0" }),
824
- React__default["default"].createElement("feBlend", { mode: "normal", in2: "effect1_dropShadow_12597_34423", result: "effect2_dropShadow_12597_34423" }),
825
- React__default["default"].createElement("feBlend", { mode: "normal", in: "SourceGraphic", in2: "effect2_dropShadow_12597_34423", result: "shape" }))))) : (React__default["default"].createElement("svg", { width: "32", height: "32", viewBox: "0 0 32 32", fill: "none" },
826
- React__default["default"].createElement("path", { d: "M15.9996 28.2218C22.7497 28.2218 28.2218 22.7497 28.2218 15.9996C28.2218 9.24942 22.7497 3.77734 15.9996 3.77734C9.24942 3.77734 3.77734 9.24942 3.77734 15.9996C3.77734 22.7497 9.24942 28.2218 15.9996 28.2218Z", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }),
827
- React__default["default"].createElement("path", { d: "M15.9998 20.8891L20.8887 16.0002L15.9998 11.1113", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }),
828
- React__default["default"].createElement("path", { d: "M11.1109 16L20.8887 16", stroke: scheme === 'hellosites' ? '#2D87F3' : '#e85388', strokeWidth: "2", strokeLinecap: "round", strokeLinejoin: "round" }))))),
829
- isDotsShown && (React__default["default"].createElement("ul", { className: "bullet-nav" }, groups.map((group, index) => (React__default["default"].createElement("li", { key: index, className: "bullet-nav__item " },
830
- React__default["default"].createElement("p", { onClick: () => handleClick(index), className: `bullet-nav__link scroll ${section == index ? 'active' : null}`, "data-scheme": scheme })))))),
831
- isImageGalleryShown && (React__default["default"].createElement("div", { className: "image-gallery-wrapper", "data-test": groups.length }, groups.slice(0, 3).map((item, itemIndex) => (React__default["default"].createElement("div", { className: `image-block ${section == itemIndex ? 'active' : null}`, key: itemIndex, onClick: () => handleClick(itemIndex), "data-scheme": scheme }, item)))))));
832
- };
833
-
834
- const StyledStatisticContainer = styled__default["default"].div `
835
- border-radius: ${miscTheme.theme.borderRadius};
836
- ${(props) => props['data-is-in-card'] &&
837
- `
838
- padding: 12px;
839
- background-color: ${props['data-card-color']};`}
840
- `;
841
- const StyledDot = styled__default["default"].div `
842
- width: 13px;
843
- height: 13px;
844
- margin-right: 10px;
845
- background-color: ${(props) => props['data-color']};
846
- border-radius: 50%;
847
- `;
848
- const StyledDescriptionWrapper = styled__default["default"].div `
849
- display: flex;
850
- align-items: center;
851
- color: ${miscTheme.theme.colors.gray800};
852
- font-size: ${miscTheme.theme.sizes.fsParagraph4};
853
- font-weight: ${miscTheme.theme.sizes.fwRegular};
854
- `;
855
- const StyledStatisticNumberWrapper = styled__default["default"].div `
856
- display: flex;
857
- align-items: center;
858
- margin-top: 4px;
859
- color: ${miscTheme.theme.colors.gray800};
860
- font-size: ${miscTheme.theme.sizes.fsHeading2};
861
- font-weight: ${miscTheme.theme.sizes.fwSemiBold};
862
-
863
- & > svg {
864
- width: 24px;
865
- height: 24px;
866
- margin-right: 12px;
867
- }
868
-
869
- &[data-size='small'] {
870
- margin-left: 23px;
871
- font-size: ${miscTheme.theme.sizes.fsParagraph4};
872
- font-weight: ${miscTheme.theme.sizes.fwBold};
873
- }
874
- `;
875
-
876
- const StatisticCard = ({ type, description, value, withIcon, isInACard, cardColor, className, }) => {
877
- return (React__default["default"].createElement(StyledStatisticContainer, { className: className, "data-size": type, "data-is-in-card": type === 'big' && isInACard, "data-card-color": cardColor },
878
- React__default["default"].createElement(StyledDescriptionWrapper, null,
879
- type === 'small' && React__default["default"].createElement(StyledDot, { "data-color": cardColor }),
880
- description),
881
- React__default["default"].createElement(StyledStatisticNumberWrapper, { "data-size": type },
882
- type !== 'small' && withIcon,
883
- value)));
884
- };
885
-
886
- const StyledTable = styled__default["default"].table `
887
- width: 100%;
888
- position: relative;
889
- `;
890
- const Table = ({ children, className, style, horizontalPadding, verticalPadding, }) => {
891
- return (React__default["default"].createElement(StyledTable, { className: className, style: Object.assign({ '--horizontal-spacing': horizontalPadding || '19px', '--vertical-spacing': verticalPadding || '26px' }, style) }, children));
892
- };
893
-
894
- const StyledTableCell = styled__default["default"].td `
895
- padding: var(--vertical-spacing) var(--horizontal-spacing);
896
- vertical-align: middle;
897
-
898
- &[data-text-align='left'] {
899
- text-align: left;
900
- }
901
- &[data-text-align='right'] {
902
- text-align: right;
903
- }
904
- &[data-text-align='center'] {
905
- text-align: center;
906
- }
907
- `;
908
- const Cell = ({ children, className, style, textAlign, isTableHead, }) => {
909
- return (React__default["default"].createElement(StyledTableCell, { className: className, style: style, "data-text-align": textAlign ? textAlign : 'left', as: isTableHead ? 'th' : 'td' }, children));
910
- };
911
-
912
- const StyledTableRow = styled__default["default"].tr `
913
- border-bottom: 1px solid ${miscTheme.theme.colors.gray100};
914
-
915
- &[data-is-active='true'] {
916
- background-color: ${miscTheme.theme.colors.gray200};
917
- }
918
- `;
919
- const Row = ({ children, className, style, isActive, onRowClicked, rowId, }) => {
920
- return (React__default["default"].createElement(StyledTableRow, { className: className, "data-is-active": isActive, style: style, onClick: () => {
921
- onRowClicked && onRowClicked(rowId);
922
- } }, children));
923
- };
924
-
925
- const StyledTableHead = styled__default["default"].thead `
926
- th {
927
- padding: var(--vertical-spacing) var(--horizontal-spacing);
928
- text-align: left;
929
-
930
- color: ${miscTheme.theme.colors.gray500};
931
- font-weight: ${miscTheme.theme.sizes.fwBold};
932
- }
933
- &[data-is-sticky] {
934
- th {
935
- position: sticky;
936
- top: 0;
937
- background: white;
938
- border-bottom: 2px solid ${miscTheme.theme.colors.gray200};
939
- }
940
- }
941
- `;
942
- const Head = ({ isSticky, children, className, style }) => {
943
- return (React__default["default"].createElement(StyledTableHead, { className: className, "data-is-sticky": isSticky || undefined, style: style },
944
- React__default["default"].createElement(Row, null, children)));
945
- };
946
-
947
- const StyledTableBody = styled__default["default"].tbody `
948
- position: relative;
949
- &[data-is-striped] {
950
- > tr:nth-child(odd) {
951
- background-color: ${miscTheme.theme.colors.neutral50};
952
- }
953
- }
954
- &[data-is-hoverable] {
955
- > tr:hover {
956
- background-color: ${miscTheme.theme.colors.neutral100};
957
- }
958
- }
959
- `;
960
- const Body = ({ children, className, style, isHoverable, isStriped, }) => {
961
- return (React__default["default"].createElement(StyledTableBody, { className: className, style: style, "data-is-striped": isStriped || undefined, "data-is-hoverable": isHoverable || undefined }, children));
962
- };
963
-
964
- var index = /*#__PURE__*/Object.freeze({
965
- __proto__: null,
966
- Table: Table,
967
- Cell: Cell,
968
- Head: Head,
969
- Row: Row,
970
- Body: Body
971
- });
972
-
973
- var useStyles = core.createStyles((theme) => {
974
- const itemLabelRef = core.getStylesRef('itemLabel');
975
- return {
976
- root: {
977
- display: 'inline-flex',
978
- maxWidth: '100%',
979
- borderBottom: `1px solid ${theme.colors.neutral[1]}`,
980
- '-webkit-overflow-scrolling': 'touch',
981
- overflowX: 'auto',
982
- overflowY: 'hidden',
983
- '-ms-overflow-style': 'none' /* for Internet Explorer, Edge */,
984
- 'scrollbar-width': 'none' /* for Firefox */,
985
- '&::-webkit-scrollbar': {
986
- display: 'none',
987
- },
988
- columnGap: theme.spacing.lg,
989
- },
990
- item: {
991
- display: 'flex',
992
- alignItems: 'center',
993
- paddingBottom: '4px',
994
- '&:hover': {
995
- cursor: 'pointer',
996
- },
997
- '&.active': {
998
- color: theme.fn.primaryColor(),
999
- borderBottom: `3px solid ${theme.fn.primaryColor()}`,
1000
- bottom: '-1px',
1001
- position: 'relative',
1002
- [`& .${itemLabelRef}`]: {},
1003
- },
1004
- },
1005
- itemInner: {
1006
- display: 'flex',
1007
- alignItems: 'center',
1008
- },
1009
- label: {
1010
- ref: itemLabelRef,
1011
- },
1012
- icon: {
1013
- marginRight: theme.spacing.xs,
1014
- },
1015
- };
1016
- });
1017
-
1018
- /**
1019
- * @deprecated Consider to use mantine
1020
- */
1021
- const Tabs = ({ style, initialTab, tabContent, onChange, className, dataEventCategory, dataEventAction, dataEventLabel, id, styles, }) => {
1022
- const { classes, cx, theme } = useStyles(undefined, { name: 'Tabs', styles });
1023
- const [activeTab, setActiveTab] = React.useState(initialTab || 0);
1024
- React.useEffect(() => {
1025
- setActiveTab(initialTab);
1026
- }, [initialTab]);
1027
- return (React__default["default"].createElement("ul", { style: style, className: cx(classes.root, className), role: "tablist", id: id }, tabContent.map((tab, i) => (React__default["default"].createElement("li", { className: `${classes.item} ${activeTab === i ? 'active' : ''} ${tab.className}`, "aria-selected": activeTab === i, role: "tab", onClick: () => {
1028
- setActiveTab(i);
1029
- onChange && onChange(i);
1030
- }, onKeyDown: (e) => {
1031
- if (e.key === 'Enter') {
1032
- setActiveTab(i);
1033
- onChange && onChange(i);
1034
- }
1035
- }, key: i, "data-event-category": tab.dataEventCategory || dataEventCategory, "data-event-action": tab.dataEventAction || dataEventAction, "data-event-label": tab.dataEventLabel || dataEventLabel, tabIndex: 0, "data-testid": tab.dataTestid },
1036
- React__default["default"].createElement("div", { className: classes.itemInner },
1037
- tab.icon && React__default["default"].createElement("div", { className: classes.icon }, tab.icon),
1038
- React__default["default"].createElement(index$3.Text, { className: classes.label, size: tab.textSize || 'sm', weight: tab.textType || 'bold', color: activeTab === i
1039
- ? theme.fn.primaryColor()
1040
- : tab.textColor || theme.colors.gray[4], dataEventCategory: tab.dataEventCategory, dataEventAction: tab.dataEventAction, dataEventLabel: tab.dataEventLabel }, tab.name)))))));
1041
- };
1042
-
1043
- const TRANSITION_TIMING = 200;
1044
- const StyledFloatButtonGroup = styled__default["default"].div ``;
1045
- const StyledFloatButtonGroupBackgroundPanel = styled__default["default"].div `
1046
- width: 100vw;
1047
- height: 100vh;
1048
- position: fixed;
1049
- bottom: 0;
1050
- right: 0;
1051
- background-color: ${miscTheme.theme.colors.white};
1052
- opacity: 0.83;
1053
- transition: display ${TRANSITION_TIMING}ms linear;
1054
-
1055
- [data-floatmenu-open='true'] & {
1056
- animation: showBackgroundPanel ${TRANSITION_TIMING}ms linear 0s normal
1057
- forwards;
1058
- }
1059
-
1060
- [data-floatmenu-open='false'] & {
1061
- animation: hideBackgroundPanel ${TRANSITION_TIMING}ms linear 0s normal
1062
- forwards;
1063
- }
1064
-
1065
- @keyframes showBackgroundPanel {
1066
- 0% {
1067
- opacity: 0;
1068
- width: 100vw;
1069
- height: 100vh;
1070
- }
1071
- 100% {
1072
- opacity: 0.83;
1073
- }
1074
- }
1075
-
1076
- @keyframes hideBackgroundPanel {
1077
- 0% {
1078
- width: 100vw;
1079
- height: 100vh;
1080
- }
1081
- 99% {
1082
- width: 100vw;
1083
- height: 100vh;
1084
- }
1085
- 100% {
1086
- opacity: 0;
1087
- width: 0;
1088
- height: 0;
1089
- }
1090
- }
1091
- `;
1092
- const StyledFloatButtonGroupContent = styled__default["default"].div `
1093
- position: fixed;
1094
- right: 16px;
1095
- bottom: 40px;
1096
- `;
1097
- const StyledFloatButtonGroupItemsWrapper = styled__default["default"].div `
1098
- display: flex;
1099
- flex-direction: column;
1100
- gap: 16px;
1101
- transition: all ${TRANSITION_TIMING}ms ease-in-out;
1102
- position: fixed;
1103
- bottom: 112px;
1104
- right: 16px;
1105
-
1106
- // scale
1107
- [data-animation-type='scale'] & {
1108
- transform-origin: 100% 100%;
1109
- }
1110
-
1111
- [data-animation-type='scale'][data-floatmenu-open='true'] & {
1112
- transform: scale(1);
1113
- }
1114
-
1115
- [data-animation-type='scale'][data-floatmenu-open='false'] & {
1116
- transform: scale(0);
1117
- bottom: 46px;
1118
- right: 36px;
1119
- }
1120
- `;
1121
- const StyledFloatButtonGroupToggleIcon = styled__default["default"].div `
1122
- border-radius: 50%;
1123
- width: 56px;
1124
- height: 56px;
1125
- position: relative;
1126
- cursor: pointer;
1127
- margin-left: auto;
1128
- transition: all 0.1s linear;
1129
- -webkit-tap-highlight-color: transparent;
1130
- [data-site-type='hb'] & {
1131
- background-color: ${miscTheme.theme.colors.primaryBase};
1132
- &:hover {
1133
- background-color: ${miscTheme.theme.colors.primaryHover};
1134
- }
1135
- }
1136
- [data-site-type='mb'] & {
1137
- background-color: #2d87f3;
1138
- &:hover {
1139
- background-color: #2c74df;
1140
- }
1141
- }
1142
-
1143
- &:before {
1144
- content: '';
1145
- width: 2px;
1146
- height: 20px;
1147
- background-color: ${miscTheme.theme.colors.white};
1148
- border-radius: 2px;
1149
- position: absolute;
1150
- top: 50%;
1151
- left: 50%;
1152
- transform: translate(-50%, -50%);
1153
- }
1154
-
1155
- &:after {
1156
- content: '';
1157
- width: 20px;
1158
- height: 2px;
1159
- background-color: ${miscTheme.theme.colors.white};
1160
- border-radius: 2px;
1161
- position: absolute;
1162
- top: 50%;
1163
- left: 50%;
1164
- transform: translate(-50%, -50%);
1165
- }
1166
-
1167
- [data-floatmenu-open='true'] &:before,
1168
- [data-floatmenu-open='true'] &:after {
1169
- animation: toX ${TRANSITION_TIMING}ms linear 0s normal forwards;
1170
- }
1171
-
1172
- [data-floatmenu-open='false'] &:before,
1173
- [data-floatmenu-open='false'] &:after {
1174
- animation: toPlus ${TRANSITION_TIMING}ms linear 0s normal forwards;
1175
- }
1176
-
1177
- @keyframes toX {
1178
- 0% {
1179
- transform: translate(-50%, -50%) rotateZ(0deg);
1180
- }
1181
- 49% {
1182
- transform: translate(-50%, -50%) rotateZ(0deg);
1183
- }
1184
- 50% {
1185
- width: 2px;
1186
- height: 2px;
1187
- transform: translate(-50%, -50%) rotateZ(45deg);
1188
- }
1189
- 100% {
1190
- transform: translate(-50%, -50%) rotateZ(45deg);
1191
- }
1192
- }
1193
-
1194
- @keyframes toPlus {
1195
- 0% {
1196
- transform: translate(-50%, -50%) rotateZ(45deg);
1197
- }
1198
- 49% {
1199
- transform: translate(-50%, -50%) rotateZ(45deg);
1200
- }
1201
- 50% {
1202
- width: 2px;
1203
- height: 2px;
1204
- transform: translate(-50%, -50%) rotateZ(0deg);
1205
- }
1206
- 100% {
1207
- transform: translate(-50%, -50%) rotateZ(0deg);
1208
- }
1209
- }
1210
- `;
1211
- const StyledFloatButtonGroupButton = styled__default["default"].div `
1212
- display: flex;
1213
- gap: 8px;
1214
- align-items: center;
1215
- justify-content: flex-end;
1216
-
1217
- width: fit-content;
1218
- margin-left: auto;
1219
-
1220
- [data-floatmenu-open='true'] {
1221
- cursor: pointer;
1222
- }
1223
- [data-floatmenu-open='false'] {
1224
- pointer-events: none;
1225
- }
1226
-
1227
- [data-animation-type='zoom'] &,
1228
- [data-animation-type='slide'] & {
1229
- position: absolute;
1230
- right: 0;
1231
- width: max-content;
1232
- }
1233
- // slide
1234
- [data-animation-type='slide'] & {
1235
- transition: all ${TRANSITION_TIMING}ms ease-in;
1236
- }
1237
-
1238
- [data-animation-type='slide'][data-floatmenu-open='true'] & {
1239
- animation: showItem ${TRANSITION_TIMING}ms;
1240
- }
1241
- [data-animation-type='slide'][data-floatmenu-open='false'] & {
1242
- bottom: -64px !important;
1243
- animation: hideItemOnZoom ${TRANSITION_TIMING + 50}ms normal forwards;
1244
- }
1245
-
1246
- // zoom
1247
- [data-animation-type='zoom'][data-floatmenu-open='false'] & {
1248
- animation: hideItemOnZoom ${TRANSITION_TIMING + 50}ms normal forwards;
1249
- }
1250
-
1251
- @keyframes showItem {
1252
- 0% {
1253
- opacity: 0;
1254
- }
1255
-
1256
- 100% {
1257
- opacity: 1;
1258
- }
1259
- }
1260
-
1261
- @keyframes hideItemOnZoom {
1262
- 0% {
1263
- transform: translateX(0);
1264
- opacity: 1;
1265
- }
1266
-
1267
- 99% {
1268
- transform: translateX(0);
1269
- opacity: 0.5;
1270
- }
1271
-
1272
- 100% {
1273
- transform: translateX(calc(100% + 16px));
1274
- opacity: 0;
1275
- }
1276
- }
1277
- `;
1278
- const StyledFloatButtonGroupButtonLabel = styled__default["default"].div `
1279
- font-size: 14px;
1280
-
1281
- // zoom
1282
- [data-animation-type='zoom'] & {
1283
- transition: transform ${TRANSITION_TIMING}ms ease-in-out;
1284
- transform-origin: 100% 0;
1285
- }
1286
-
1287
- [data-animation-type='zoom'][data-floatmenu-open='true'] & {
1288
- transform: scale(1);
1289
- }
1290
-
1291
- [data-animation-type='zoom'][data-floatmenu-open='false'] & {
1292
- transform: scale(0);
1293
- }
1294
-
1295
- // slide
1296
- [data-animation-type='slide'] & {
1297
- transition: opacity ${TRANSITION_TIMING}ms;
1298
- }
1299
- [data-animation-type='slide'][data-floatmenu-open='true'] & {
1300
- opacity: 1;
1301
- }
1302
- [data-animation-type='slide'][data-floatmenu-open='false'] & {
1303
- opacity: 0;
1304
- }
1305
- `;
1306
- const StyledFloatButtonGroupButtonIcon = styled__default["default"].div `
1307
- border-radius: 50%;
1308
- box-shadow: 0px 16px 24px rgba(0, 0, 0, 0.06), 0px 2px 8px rgba(0, 0, 0, 0.04),
1309
- 0px 0px 1px rgba(0, 0, 0, 0.04);
1310
- width: 48px;
1311
- height: 48px;
1312
- display: flex;
1313
- align-items: center;
1314
- justify-content: center;
1315
- background-color: ${miscTheme.theme.colors.white};
1316
-
1317
- // zoom
1318
- [data-animation-type='zoom'] & {
1319
- transition: transform ${TRANSITION_TIMING}ms ease-in-out;
1320
- }
1321
-
1322
- [data-animation-type='zoom'][data-floatmenu-open='true'] & {
1323
- transform: scale(1);
1324
- }
1325
-
1326
- [data-animation-type='zoom'][data-floatmenu-open='false'] & {
1327
- transform: scale(0);
1328
- }
1329
-
1330
- > img {
1331
- width: 24px;
1332
- height: 24px;
1333
- object-fit: contain;
1334
- }
1335
- `;
1336
-
1337
- const FloatButtonGroup = ({ items, className, style, backgroundPanelStyle, isOpen: isOpenProp, onOpen, onClose, disableBackdropClick, siteType = 'hb', animationType = 'zoom', zIndex = 300, }) => {
1338
- const [isOpen, setIsOpen] = React.useState(!!isOpenProp);
1339
- React.useEffect(() => {
1340
- setIsOpen(!!isOpenProp);
1341
- }, [isOpenProp]);
1342
- const handleOpen = () => {
1343
- setIsOpen(true);
1344
- if (onOpen) {
1345
- onOpen();
1346
- }
1347
- };
1348
- const handleClose = () => {
1349
- setIsOpen(false);
1350
- if (onClose) {
1351
- onClose();
1352
- }
1353
- };
1354
- return (React__default["default"].createElement(StyledFloatButtonGroup, { style: style, className: className, "data-floatmenu-open": isOpen, "data-site-type": siteType, "data-animation-type": animationType },
1355
- React__default["default"].createElement(StyledFloatButtonGroupBackgroundPanel, { className: "float-button-group__panel", style: Object.assign({ zIndex }, backgroundPanelStyle), onClick: !disableBackdropClick ? handleClose : undefined }),
1356
- React__default["default"].createElement(StyledFloatButtonGroupContent, { className: "float-button-group___content", style: { zIndex } },
1357
- React__default["default"].createElement(StyledFloatButtonGroupItemsWrapper, null, items.map((item, index) => {
1358
- return (React__default["default"].createElement(StyledFloatButtonGroupButton, { className: `float-item-button-${index}`, style: Object.assign(Object.assign({}, (animationType === 'zoom' && {
1359
- bottom: (items.length - 1 - index) * (48 + 16),
1360
- transitionDelay: `${(TRANSITION_TIMING / items.length) *
1361
- (isOpen ? items.length - 1 - index : index)}ms`,
1362
- })), (animationType === 'slide' && {
1363
- bottom: (items.length - 1 - index) * (48 + 16),
1364
- transitionDelay: `${(TRANSITION_TIMING / items.length) *
1365
- (!isOpen ? items.length - 1 - index : index)}ms`,
1366
- })), key: index, onClick: () => {
1367
- item.onClick();
1368
- if (!item.keepMenuOnClick) {
1369
- setIsOpen(false);
1370
- }
1371
- } },
1372
- React__default["default"].createElement(StyledFloatButtonGroupButtonLabel, { style: Object.assign({}, (animationType === 'zoom' && {
1373
- transitionDelay: `${(TRANSITION_TIMING / items.length) *
1374
- (isOpen ? items.length - 1 - index : index)}ms`,
1375
- })) }, item.label),
1376
- React__default["default"].createElement(StyledFloatButtonGroupButtonIcon, { className: "float-item-button__icon-wrapper", style: Object.assign({}, ((animationType === 'zoom' ||
1377
- animationType === 'slide') && {
1378
- transitionDelay: `${(TRANSITION_TIMING / items.length) *
1379
- (isOpen ? items.length - 1 - index : index)}ms`,
1380
- })) }, item.icon)));
1381
- })),
1382
- React__default["default"].createElement(StyledFloatButtonGroupToggleIcon, { onClick: isOpen ? handleClose : handleOpen }))));
1383
- };
1384
-
1385
- const StyledAcceptCardContainer = styled__default["default"].div `
1386
- padding: 16px;
1387
- width: 375px;
1388
- word-wrap: break-word;
1389
- word-break: break-word;
1390
- ${utils.MediaQueries.mbDown} {
1391
- width: 100%;
1392
- }
1393
- &[data-theme='helloSites'] {
1394
- background: ${miscTheme.theme.colors.secondaryBase};
1395
- box-shadow: 0px 8px 40px rgba(0, 0, 0, 0.1);
1396
- }
1397
- &[data-theme='marryBaby'] {
1398
- border: none;
1399
- background: ${miscTheme.theme.mbColors.pink};
1400
- border-radius: 12px 12px 0 0;
1401
- }
1402
- &[data-is-open='false'] {
1403
- display: none;
1404
- }
1405
- &[data-default-position='true'] {
1406
- position: fixed;
1407
- z-index: 1000;
1408
- bottom: 0;
1409
- right: 0;
1410
- ${utils.MediaQueries.mbDown} {
1411
- left: 0;
1412
- right: unset;
1413
- }
1414
- }
1415
- `;
1416
- const StyledTitleSection = styled__default["default"].p `
1417
- position: relative;
1418
- padding-left: 24px;
1419
- color: ${miscTheme.theme.colors.white};
1420
- font-size: 14px;
1421
- font-weight: 600;
1422
- line-height: 22px;
1423
- &[data-has-content='true'] {
1424
- ::before {
1425
- position: absolute;
1426
- top: 0;
1427
- bottom: 0;
1428
- left: 0;
1429
- width: 16px;
1430
- height: 16px;
1431
- margin: auto 0;
1432
- content: url("data:image/svg+xml,%3csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.00001 1.33331C4.32001 1.33331 1.33334 4.31998 1.33334 7.99998C1.33334 11.68 4.32001 14.6666 8.00001 14.6666C11.68 14.6666 14.6667 11.68 14.6667 7.99998C14.6667 4.31998 11.68 1.33331 8.00001 1.33331ZM8.00001 11.3333C7.63334 11.3333 7.33334 11.0333 7.33334 10.6666V7.99998C7.33334 7.63331 7.63334 7.33331 8.00001 7.33331C8.36668 7.33331 8.66668 7.63331 8.66668 7.99998V10.6666C8.66668 11.0333 8.36668 11.3333 8.00001 11.3333ZM7.33334 5.99998H8.66668V4.66665H7.33334V5.99998Z' fill='white'/%3e%3c/svg%3e");
1433
- }
1434
- }
1435
- `;
1436
- const StyledDescription = styled__default["default"].p `
1437
- margin-top: 2px;
1438
- color: ${miscTheme.theme.colors.white};
1439
- font-size: 12px;
1440
- font-weight: 400;
1441
- line-height: 18px;
1442
- a {
1443
- color: ${miscTheme.theme.colors.white};
1444
- text-decoration: none;
1445
- text-decoration-line: underline;
1446
- }
1447
- `;
1448
- const StyledButtonGroup = styled__default["default"].div `
1449
- display: flex;
1450
- align-items: center;
1451
- margin-top: 8px;
1452
- gap: 16px;
1453
- `;
1454
- const StyledAcceptButton = styled__default["default"].div `
1455
- padding: 7px 28px;
1456
- background: ${miscTheme.theme.colors.white};
1457
- border-radius: ${miscTheme.theme.borderRadius};
1458
- color: ${miscTheme.theme.colors.secondaryBase};
1459
- cursor: pointer;
1460
- font-size: 12px;
1461
- font-weight: 600;
1462
- line-height: 18px;
1463
- `;
1464
- const StyledPoliciesButton = styled__default["default"].a `
1465
- color: ${miscTheme.theme.colors.white};
1466
- font-size: 12px;
1467
- font-weight: 600;
1468
- line-height: 22px;
1469
- text-decoration: none;
1470
- text-decoration-line: underline;
1471
- `;
1472
-
1473
- const CookieAcceptConfirm = ({ className, policiesUrl, onAcceptClick, translations = {
1474
- acceptButton: 'Accept',
1475
- policiesButton: 'Our Policies',
1476
- }, title = '', description = '', theme = 'helloSites', isOpen = true, useDefaultPosition = true, trackingAttributes, }) => {
1477
- return (React__default["default"].createElement(StyledAcceptCardContainer, { className: className, "data-theme": theme, "data-is-open": isOpen, "data-default-position": useDefaultPosition },
1478
- React__default["default"].createElement(StyledTitleSection, { "data-has-content": !!title }, title),
1479
- React__default["default"].createElement(StyledDescription, { dangerouslySetInnerHTML: {
1480
- __html: description,
1481
- } }),
1482
- React__default["default"].createElement(StyledButtonGroup, null,
1483
- React__default["default"].createElement(StyledAcceptButton, { role: "button", tabIndex: 0, onClick: onAcceptClick, "data-event-category": trackingAttributes === null || trackingAttributes === void 0 ? void 0 : trackingAttributes.dataEventCategory, "data-event-action": trackingAttributes === null || trackingAttributes === void 0 ? void 0 : trackingAttributes.dataEventAction, "data-event-label": trackingAttributes === null || trackingAttributes === void 0 ? void 0 : trackingAttributes.dataEventLabel }, translations.acceptButton),
1484
- React__default["default"].createElement(StyledPoliciesButton, { href: policiesUrl }, translations.policiesButton))));
1485
- };
1486
-
1487
- const SeoHead = ({ SEOData = {}, locale = 'vi-VN', routerPathname: pathname, routerQuery: query, nextHead: Head, siteType, seoCustom, userId, forcedCanonicalUrl, }) => {
1488
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
1489
- const { totalPages, currentPage, SEOTitle = '', SEODescription = '', SEOImage, seoType, SEOImageWidth, SEOImageHeight, customMetaData = [], isIndexable = true, hasNoCanonical = false, } = SEOData;
1490
- const robotIndex = isIndexable && constantsIsProduction.isProduction
1491
- ? 'index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1'
1492
- : 'noindex';
1493
- // const { locale = 'vi-VN', pathname, query } = router
1494
- const { NEXT_PUBLIC_BASE_API_URL } = process.env;
1495
- let newPath = SEOData.canonicalUrl || pathname;
1496
- Object.keys(query).forEach((key) => {
1497
- const queryItem = query[key];
1498
- if (queryItem && Array.isArray(queryItem)) {
1499
- newPath = newPath.replace(`[...${key}]`, queryItem.join('/'));
1500
- }
1501
- });
1502
- const sL = locale || 'en-PH'; // standardized locale
1503
- const siteUrl = siteType === 'helloSites' ? constantsDomainLocales.domainLocales[sL] : 'www.marrybaby.vn';
1504
- const hasSlash = newPath.endsWith('/') ? '' : '/';
1505
- // TODO: remove or replace html-react-parser
1506
- const metaData = React.useMemo(() => {
1507
- var _a, _b, _c, _d, _e, _f, _g;
1508
- let resMetaData = '';
1509
- if (SEOData.apiMetaData && typeof SEOData.apiMetaData === 'string') {
1510
- const paginatedTitle = (_a = SEOData.apiMetaData) === null || _a === void 0 ? void 0 : _a.match(/<title.*?>(.*)<\/title>/);
1511
- const paginatedNumber = ` - Page ${currentPage} of ${totalPages}`;
1512
- const fD = currentPage && currentPage !== 1 && paginatedTitle
1513
- ? SEOData.apiMetaData
1514
- .replace(paginatedTitle[0], paginatedTitle[0].includes('-')
1515
- ? paginatedTitle[0].replace('-', paginatedNumber + ' - ')
1516
- : `<title>${paginatedTitle[1].concat(paginatedNumber)}</title>`)
1517
- .replace(`<link rel="canonical" href="https://${siteUrl}${newPath}${hasSlash}" />`, `<link rel="canonical" href="https://${siteUrl}${newPath}${hasSlash}?page=${currentPage}" />`)
1518
- : SEOData.apiMetaData;
1519
- resMetaData = parse__default["default"](fD, { trim: true });
1520
- if (!resMetaData.find((data) => {
1521
- var _a, _b;
1522
- return ((_a = data.props) === null || _a === void 0 ? void 0 : _a.property) === 'og:image' ||
1523
- ((_b = data.props) === null || _b === void 0 ? void 0 : _b.property) === 'og:image:secure_url';
1524
- })) {
1525
- const DefaultOgImage = `https://${siteUrl}/images/${locale}.png`;
1526
- resMetaData = [
1527
- ...resMetaData,
1528
- React__default["default"].createElement("meta", { key: 'og:image', property: "og:image", content: ((_b = SEOData.openGraph) === null || _b === void 0 ? void 0 : _b.image) || SEOImage || DefaultOgImage || '' }),
1529
- React__default["default"].createElement("meta", { key: 'og:image:secure_url', property: "og:image:secure_url", content: ((_c = SEOData.openGraph) === null || _c === void 0 ? void 0 : _c.image) || SEOImage || DefaultOgImage }),
1530
- React__default["default"].createElement("meta", { key: 'og:image:width', property: "og:image:width", content: (((_d = SEOData.openGraph) === null || _d === void 0 ? void 0 : _d.imageWidth) &&
1531
- String((_e = SEOData.openGraph) === null || _e === void 0 ? void 0 : _e.imageWidth)) ||
1532
- (SEOImageWidth && String(SEOImageWidth)) ||
1533
- '1200' }),
1534
- React__default["default"].createElement("meta", { key: 'og:image:height', property: "og:image:height", content: (((_f = SEOData.openGraph) === null || _f === void 0 ? void 0 : _f.imageHeight) &&
1535
- String((_g = SEOData.openGraph) === null || _g === void 0 ? void 0 : _g.imageHeight)) ||
1536
- (SEOImageHeight && String(SEOImageHeight)) ||
1537
- '630' }),
1538
- ];
1539
- }
1540
- }
1541
- return resMetaData;
1542
- }, [
1543
- SEOData.apiMetaData,
1544
- SEOData.openGraph,
1545
- SEOImage,
1546
- SEOImageHeight,
1547
- SEOImageWidth,
1548
- currentPage,
1549
- newPath,
1550
- totalPages,
1551
- locale,
1552
- siteUrl,
1553
- ]);
1554
- const defaultImage = `https://${siteUrl}/images/${locale}.png`;
1555
- const fontUrl = siteType === 'marryBaby'
1556
- ? 'https://fonts.googleapis.com/css2?family=Inter:wght@400..800&display=swap'
1557
- : locale === 'km-KH'
1558
- ? 'https://fonts.googleapis.com/css2?family=Battambang:wght@400;700&display=swap'
1559
- : locale === 'th-TH'
1560
- ? 'https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wdth,wght@62.5..100,100..900&display=swap'
1561
- : 'https://fonts.googleapis.com/css2?family=Inter:wght@400..800&display=swap';
1562
- return (React__default["default"].createElement(Head, null,
1563
- React__default["default"].createElement("link", { rel: "preconnect", href: "https://fonts.gstatic.com" }),
1564
- React__default["default"].createElement("link", { rel: "preload", href: fontUrl, as: "style" }),
1565
- React__default["default"].createElement("link", { rel: "stylesheet", href: fontUrl }),
1566
- React__default["default"].createElement("link", { rel: "preconnect", href: NEXT_PUBLIC_BASE_API_URL }),
1567
- React__default["default"].createElement("meta", { charSet: "UTF-8" }),
1568
- React__default["default"].createElement("meta", { name: "viewport", content: "width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no, viewport-fit=cover" }),
1569
- React__default["default"].createElement("meta", { name: "google", content: "notranslate" }),
1570
- React__default["default"].createElement("meta", { name: "robots", content: robotIndex }),
1571
- React__default["default"].createElement("meta", { property: "fb:app_id", content: "653713035016537" }),
1572
- customMetaData.map((customMeta, index) => {
1573
- return React__default["default"].createElement("meta", Object.assign({ key: index }, customMeta));
1574
- }),
1575
- React__default["default"].createElement("meta", { name: "theme-color", content: siteType === 'helloSites' ? '#2c87f3' : '#e85388' }),
1576
- React__default["default"].createElement("meta", { name: "page_type", content: "Home" }),
1577
- React__default["default"].createElement("meta", { name: "page_platform", content: "WEB" }),
1578
- React__default["default"].createElement("meta", { name: "page_language", content: sL }),
1579
- React__default["default"].createElement("meta", { name: "ahrefs-site-verification", content: "46e7521a2b89a1013149c4685bbe02a1d36a4732fef98655142b829bc87cba4d" }),
1580
- !metaData && (React__default["default"].createElement(React__default["default"].Fragment, null,
1581
- siteType === 'helloSites' ? (React__default["default"].createElement("title", null, seoCustom
1582
- ? SEOTitle
1583
- : SEOTitle + ' - ' + ((_a = index$7.LOCALE_SPECS[locale]) === null || _a === void 0 ? void 0 : _a.SITE_NAME))) : (React__default["default"].createElement("title", null, SEOTitle)),
1584
- !hasNoCanonical && (React__default["default"].createElement("link", { rel: "canonical", href: `https://${siteUrl}${newPath}` })),
1585
- React__default["default"].createElement("meta", { name: "description", content: SEODescription || ((_b = SEOData.openGraph) === null || _b === void 0 ? void 0 : _b.description) }),
1586
- SEOData.schemaData && (React__default["default"].createElement("script", { type: "application/ld+json", className: "yoast-schema-graph", dangerouslySetInnerHTML: { __html: SEOData.schemaData } })),
1587
- React__default["default"].createElement("meta", { property: "og:locale", content: locale }),
1588
- React__default["default"].createElement("meta", { property: "og:type", content: seoType || 'website' }),
1589
- React__default["default"].createElement("meta", { property: "og:title", content: ((_c = SEOData.openGraph) === null || _c === void 0 ? void 0 : _c.title) || SEOTitle }),
1590
- React__default["default"].createElement("meta", { property: "og:description", content: ((_d = SEOData.openGraph) === null || _d === void 0 ? void 0 : _d.description) || SEODescription }),
1591
- React__default["default"].createElement("meta", { property: "og:url", content: `https://${siteUrl}${newPath}` }),
1592
- React__default["default"].createElement("meta", { property: "og:site_name", content: `https://${siteUrl}` }),
1593
- React__default["default"].createElement("meta", { property: "og:image", content: ((_e = SEOData.openGraph) === null || _e === void 0 ? void 0 : _e.image) || SEOImage || defaultImage || '' }),
1594
- React__default["default"].createElement("meta", { property: "og:image:secure_url", content: ((_f = SEOData.openGraph) === null || _f === void 0 ? void 0 : _f.image) || SEOImage || defaultImage }),
1595
- React__default["default"].createElement("meta", { property: "og:image:width", content: (((_g = SEOData.openGraph) === null || _g === void 0 ? void 0 : _g.imageWidth) &&
1596
- String((_h = SEOData.openGraph) === null || _h === void 0 ? void 0 : _h.imageWidth)) ||
1597
- (SEOImageWidth && String(SEOImageWidth)) ||
1598
- '1200' }),
1599
- React__default["default"].createElement("meta", { property: "og:image:height", content: (((_j = SEOData.openGraph) === null || _j === void 0 ? void 0 : _j.imageHeight) &&
1600
- String((_k = SEOData.openGraph) === null || _k === void 0 ? void 0 : _k.imageHeight)) ||
1601
- (SEOImageHeight && String(SEOImageHeight)) ||
1602
- '630' }),
1603
- React__default["default"].createElement("meta", { name: "twitter:card", content: "summary_large_image" }),
1604
- React__default["default"].createElement("meta", { name: "twitter:title", content: ((_l = SEOData.twitter) === null || _l === void 0 ? void 0 : _l.title) || SEOTitle }),
1605
- React__default["default"].createElement("meta", { name: "twitter:description", content: SEODescription }),
1606
- React__default["default"].createElement("meta", { name: "twitter:image", content: ((_m = SEOData.twitter) === null || _m === void 0 ? void 0 : _m.image) || SEOImage }))),
1607
- (siteType === 'helloSites'
1608
- ? index$7.FAVICONS[sL] || []
1609
- : index$7.FAVICONS.marryBaby).map((item, index) => {
1610
- if (item.type === 'link') {
1611
- return (React__default["default"].createElement("link", { key: `favicon-${index}`, rel: item.rel, href: item.href, sizes: item.sizes }));
1612
- }
1613
- if (item.type === 'meta') {
1614
- return React__default["default"].createElement("meta", { key: index, name: item.name, content: item.content });
1615
- }
1616
- return null;
1617
- }),
1618
- Array.isArray(metaData) && !!forcedCanonicalUrl
1619
- ? metaData.filter((d) => d.props.name !== 'canonical' && d.props.rel !== 'canonical')
1620
- : metaData,
1621
- forcedCanonicalUrl && React__default["default"].createElement("link", { rel: "canonical", href: forcedCanonicalUrl }),
1622
- !SEOData.hasNoAmp && locale !== 'vi-VN' && (React__default["default"].createElement("link", { rel: "amphtml", href: `https://${siteUrl}${newPath}${hasSlash}?amp=1` })),
1623
- userId && typeof window !== 'undefined' ? (React__default["default"].createElement("script", { dangerouslySetInnerHTML: {
1624
- __html: `window.dataLayer = window.dataLayer || []; window.dataLayer.push({'userID': '${userId}'});`,
1625
- } })) : null));
1626
- };
1627
-
1628
- const StyledCalendarWrapper$1 = styled__default["default"].div `
1629
- flex: 1;
1630
- `;
1631
- const StyledCalendarCellsWrapper = styled__default["default"].div `
1632
- padding: 0 10px;
1633
- `;
1634
- const StyledCalendarHead = styled__default["default"].div `
1635
- display: flex;
1636
- height: 80px;
1637
- align-items: center;
1638
- .calendar-month {
1639
- font-size: 16px;
1640
- flex: 1;
1641
- text-align: center;
1642
- strong {
1643
- margin-left: 5px;
1644
- }
1645
- }
1646
- ${utils.MediaQueries.mbDown} {
1647
- height: 70px;
1648
- }
1649
- `;
1650
- const StyledCalendarGrid = styled__default["default"].div `
1651
- display: grid;
1652
- grid-template-columns: repeat(7, 1fr);
1653
- row-gap: 2px;
1654
- `;
1655
- const StyledCalendarDaysOfWeek = styled__default["default"](StyledCalendarGrid) `
1656
- margin-bottom: 8px;
1657
- `;
1658
- styled__default["default"].div `
1659
- height: 40px;
1660
- width: 40px;
1661
- display: flex;
1662
- align-items: center;
1663
- justify-content: center;
1664
- `;
1665
- const StyledCalendarDayLabel = styled__default["default"].div `
1666
- font-size: 14px;
1667
- display: flex;
1668
- justify-content: center;
1669
- align-items: center;
1670
- color: 1px solid ${miscTheme.theme.colors.gray800};
1671
- font-weight: 300;
1672
- `;
1673
- const StyledCalendarMonthSeparator = styled__default["default"].div `
1674
- width: 18px;
1675
- position: relative;
1676
- &::before {
1677
- content: '';
1678
- position: absolute;
1679
- inset: 16px 0 0 0;
1680
- width: 1px;
1681
- left: 50%;
1682
- right: 50%;
1683
- background: ${miscTheme.theme.colors.neutral100};
1684
- }
1685
- `;
1686
- const StyledCalendarDaysWrapper = styled__default["default"].div `
1687
- margin: 0 auto;
1688
- `;
1689
- const StyledCalendarMonthWrapper = styled__default["default"].div `
1690
- position: relative;
1691
- `;
1692
- const StyledCalendarDateGrid = StyledCalendarGrid;
1693
- const StyledCalendarDayNumberWrapper = styled__default["default"].div `
1694
- position: relative;
1695
- display: flex;
1696
- justify-content: center;
1697
- align-items: center;
1698
- height: 34px;
1699
- ${utils.MediaQueries.mbUp} {
1700
- height: 38px;
1701
- }
1702
- &[data-is-disabled='true'] {
1703
- opacity: 0.3;
1704
- }
1705
- &[data-in-range='true']:not([data-is-from='true'][data-is-to='true']) {
1706
- background-color: ${miscTheme.theme.colors.gray100};
1707
- }
1708
- &:before {
1709
- position: absolute;
1710
- top: 0;
1711
- bottom: 0;
1712
- right: 0;
1713
- background-color: ${miscTheme.theme.colors.gray100};
1714
- }
1715
- &[data-is-from='true'][data-in-range='true'][data-is-to='false'] {
1716
- background-color: transparent;
1717
- &:before {
1718
- content: '';
1719
- left: 50%;
1720
- right: 0;
1721
- }
1722
- }
1723
-
1724
- &[data-is-to='true'][data-in-range='true'][data-is-from='false'],
1725
- &:hover[data-in-range='true']:is([data-has-range='false'] &) {
1726
- background-color: transparent;
1727
- &:before {
1728
- content: '';
1729
- left: 0;
1730
- right: 50%;
1731
- }
1732
- }
1733
- `;
1734
- const StyledCalendarDayNumber = styled__default["default"].div `
1735
- position: relative;
1736
- font-weight: 600;
1737
- ${utils.MediaQueries.mbDown} {
1738
- width: 32px;
1739
- height: 32px;
1740
- }
1741
- ${utils.MediaQueries.mbUp} {
1742
- width: 36px;
1743
- height: 36px;
1744
- }
1745
- display: flex;
1746
- justify-content: center;
1747
- align-items: center;
1748
- cursor: pointer;
1749
- [data-is-disabled='true'] & {
1750
- cursor: not-allowed;
1751
- }
1752
- line-height: 1;
1753
- color: 1px solid ${miscTheme.theme.colors.gray800};
1754
- [data-is-selected='true'] &,
1755
- [data-is-today='true'] &,
1756
- [data-is-selected='false']:hover & {
1757
- border-radius: 32px;
1758
- }
1759
- [data-is-selected='true'] & {
1760
- background-color: ${miscTheme.theme.colors.primaryBase};
1761
- color: white;
1762
- }
1763
- [data-is-selected='false']:hover & {
1764
- background-color: ${miscTheme.theme.colors.primary50};
1765
- }
1766
- [data-is-today='true'][data-is-selected='false'] & {
1767
- background-color: transparent;
1768
- border-radius: 32px;
1769
- border: 1px solid ${miscTheme.theme.colors.primaryBase};
1770
- }
1771
- `;
1772
-
1773
- function handleClickDay(d, range) {
1774
- if (!range.from && !range.to) {
1775
- return Object.assign(Object.assign({}, range), { from: d });
1776
- }
1777
- if (range.from && range.to) {
1778
- return { from: d, to: null };
1779
- }
1780
- if (range.from) {
1781
- if (dateFns.isBefore(d, range.from)) {
1782
- return Object.assign(Object.assign({}, range), { from: d });
1783
- }
1784
- else {
1785
- return Object.assign(Object.assign({}, range), { to: d });
1786
- }
1787
- }
1788
- return range;
1789
- }
1790
-
1791
- const dateLocaleByLocale = {
1792
- 'en-PH': enUS__default["default"],
1793
- 'vi-VN': vi__default["default"],
1794
- 'zh-TW': zhTW__default["default"],
1795
- 'id-ID': id__default["default"],
1796
- };
1797
- function DateRangePickerCalendar(props) {
1798
- const { value = { from: null, to: null } } = props;
1799
- const [hoverDay, setHoverDay] = React.useState(null);
1800
- const { isMobile } = useScreenSize.useScreenSize();
1801
- const [range, setRange] = React.useState(() => value);
1802
- const [date, setDate] = React.useState(() => { var _a; return dateFns.startOfMonth((_a = value.from) !== null && _a !== void 0 ? _a : new Date()); });
1803
- const nextMonth = React.useMemo(() => dateFns.addMonths(date, 1), [date]);
1804
- function goToPreviousMonth() {
1805
- setDate((d) => dateFns.subMonths(d, 1));
1806
- }
1807
- function goToNextMonth() {
1808
- setDate((d) => dateFns.addMonths(d, 1));
1809
- }
1810
- const monthProps = Object.assign(Object.assign({}, props), { goToNextMonth,
1811
- goToPreviousMonth,
1812
- range,
1813
- setRange,
1814
- hoverDay,
1815
- setHoverDay });
1816
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
1817
- React__default["default"].createElement(DateRangePickerCalendarMonth, Object.assign({}, monthProps, { date: date })),
1818
- !isMobile && React__default["default"].createElement(StyledCalendarMonthSeparator, null),
1819
- !isMobile && (React__default["default"].createElement(DateRangePickerCalendarMonth, Object.assign({}, monthProps, { date: nextMonth })))));
1820
- }
1821
- function DateRangePickerCalendarMonth({ date,
1822
- // value,
1823
- range, setRange, onChange, goToPreviousMonth, goToNextMonth, minDate, maxDate, close = () => undefined, autoClose = false, hoverDay, setHoverDay, }) {
1824
- const { locale } = index$8.useTranslations();
1825
- const dateLocale = React.useMemo(() => { var _a; return (_a = dateLocaleByLocale[locale]) !== null && _a !== void 0 ? _a : dateLocaleByLocale['en-PH']; }, [locale]);
1826
- const monthLabel = React.useMemo(() => dateFns.format(date, 'MMMM', { locale: dateLocale }), [date, dateLocale]);
1827
- const weekDays = React.useMemo(() => {
1828
- if (!dateLocale) {
1829
- return [];
1830
- }
1831
- return [1, 2, 3, 4, 5, 6, 0].map((i) => dateLocale.localize.day(i, { width: 'narrow' }));
1832
- }, [dateLocale]);
1833
- React.useEffect(() => {
1834
- if (range.from && range.to) {
1835
- onChange(range);
1836
- }
1837
- }, [range]);
1838
- function renderWeekDays() {
1839
- return (React__default["default"].createElement(StyledCalendarDaysOfWeek, null, weekDays.map((d, i) => (React__default["default"].createElement(StyledCalendarDayLabel, { key: `${d}-${i}` }, d)))));
1840
- }
1841
- function renderMonth() {
1842
- const year = date.getFullYear();
1843
- const monthIndex = date.getMonth();
1844
- const daysInMonth = dateFns.getDaysInMonth(date);
1845
- const days = [];
1846
- for (let i = 1; i <= daysInMonth; i++) {
1847
- days.push(new Date(year, monthIndex, i));
1848
- }
1849
- const weekDayIndex = days[0] ? days[0].getDay() : 0;
1850
- if (weekDayIndex !== 1) {
1851
- const idx = weekDayIndex === 0 ? 6 : weekDayIndex - 1;
1852
- for (let i = 0; i < idx; i++) {
1853
- days.unshift(null);
1854
- }
1855
- }
1856
- return (React__default["default"].createElement(StyledCalendarMonthWrapper, { key: `month-${monthIndex}`, "data-month-index": monthIndex, "data-has-range": Boolean(range.from && range.to) },
1857
- React__default["default"].createElement(StyledCalendarDaysWrapper, null,
1858
- React__default["default"].createElement(StyledCalendarDateGrid, null, days.map(renderDay)))));
1859
- }
1860
- function renderDay(d, index) {
1861
- if (d === null) {
1862
- return (React__default["default"].createElement(StyledCalendarDayNumberWrapper, { key: `idx-${index}`, "data-empty": "true" }));
1863
- }
1864
- const day = d.getDate();
1865
- const isDateToday = dateFns.isToday(d);
1866
- const isFrom = range.from ? dateFns.isSameDay(range.from, d) : false;
1867
- const isTo = range.to ? dateFns.isSameDay(range.to, d) : false;
1868
- const isSelected = isFrom || isTo;
1869
- const hasHoveredDay = hoverDay !== null;
1870
- let inRange = false;
1871
- if (hasHoveredDay &&
1872
- range.from &&
1873
- dateFns.isBefore(range.from, hoverDay) &&
1874
- !range.to) {
1875
- inRange = dateFns.isWithinInterval(d, { start: range.from, end: hoverDay });
1876
- }
1877
- else if (range.from && range.to) {
1878
- inRange = dateFns.isWithinInterval(d, { start: range.from, end: range.to });
1879
- }
1880
- let isDisabled = false;
1881
- if (minDate && maxDate) {
1882
- isDisabled = !dateFns.isWithinInterval(d, { start: minDate, end: maxDate });
1883
- }
1884
- else if (minDate) {
1885
- isDisabled = dateFns.isBefore(d, minDate);
1886
- }
1887
- else if (maxDate) {
1888
- isDisabled = dateFns.isAfter(d, maxDate);
1889
- }
1890
- return (React__default["default"].createElement(StyledCalendarDayNumberWrapper, { key: day, "data-is-today": isDateToday, "data-is-past": !isDateToday && dateFns.isPast(d), "data-is-selected": isSelected, "data-is-disabled": isDisabled, "data-in-range": inRange, "data-is-from": isFrom, "data-is-to": isTo, onMouseEnter: () => {
1891
- setHoverDay(d);
1892
- }, onMouseLeave: () => setHoverDay(null), onClick: () => {
1893
- if (isDisabled) {
1894
- return;
1895
- }
1896
- setRange((r) => {
1897
- if (autoClose && range.from && !range.to) {
1898
- close();
1899
- }
1900
- return handleClickDay(d, r);
1901
- });
1902
- } },
1903
- React__default["default"].createElement(StyledCalendarDayNumber, { onClick: () => undefined },
1904
- React__default["default"].createElement("p", null, day))));
1905
- }
1906
- return (React__default["default"].createElement(StyledCalendarWrapper$1, { className: "calendar-wrapper" },
1907
- React__default["default"].createElement(StyledCalendarHead, null,
1908
- React__default["default"].createElement(index$9.Button, { onClick: goToPreviousMonth, size: "md", color: "ghost", icon: React__default["default"].createElement("img", { src: index$a.CommonGAssets.getAssetPath('calendarArrowLeft.svg'), loading: "lazy" }) }),
1909
- React__default["default"].createElement("div", { className: "calendar-month" },
1910
- monthLabel,
1911
- React__default["default"].createElement("strong", null, dateFns.format(date, 'yyyy'))),
1912
- React__default["default"].createElement(index$9.Button, { onClick: goToNextMonth, size: "md", color: "ghost", icon: React__default["default"].createElement("img", { src: index$a.CommonGAssets.getAssetPath('calendarArrowRight.svg'), loading: "lazy" }) })),
1913
- React__default["default"].createElement(StyledCalendarCellsWrapper, null,
1914
- React__default["default"].createElement("div", null, renderWeekDays()),
1915
- React__default["default"].createElement("div", null, renderMonth()))));
1916
- }
1917
-
1918
- const StyledWrapper = styled__default["default"].div `
1919
- display: block;
1920
- position: relative;
1921
- width: 270px;
1922
- input {
1923
- pointer-events: none;
1924
- caret-color: transparent;
1925
- }
1926
- ${utils.MediaQueries.mbDown} {
1927
- width: 100%;
1928
- }
1929
- `;
1930
- const StyledCalendarWrapper = styled__default["default"].div `
1931
- display: flex;
1932
- position: absolute;
1933
- top: 46px;
1934
- left: 0;
1935
- width: 684px;
1936
- border: 1px solid ${miscTheme.theme.colors.gray200};
1937
- filter: drop-shadow(0px 10px 16px rgba(0, 0, 0, 0.04))
1938
- drop-shadow(0px 2px 8px rgba(0, 0, 0, 0.04))
1939
- drop-shadow(0px 0px 1px rgba(0, 0, 0, 0.04));
1940
- border-radius: ${miscTheme.theme.borderRadius};
1941
- background-color: white;
1942
- z-index: 100;
1943
- padding-bottom: 16px;
1944
- align-items: stretch;
1945
- user-select: none;
1946
- ${utils.MediaQueries.mbDown} {
1947
- width: 100%;
1948
- }
1949
- `;
1950
-
1951
- /**
1952
- * @deprecated Consider to use at '@hhgtech/hhg-components/mantine'
1953
- */
1954
- function DateRangePicker({ inputSize = 'md', name = 'date-range-picker', value, minDate, maxDate, onChange, className, autoClose = false, }) {
1955
- if (!value) {
1956
- value = { from: null, to: null };
1957
- }
1958
- const [opened, setOpened] = React.useState(false);
1959
- function close() {
1960
- setOpened(false);
1961
- }
1962
- const ref = React.useRef(null);
1963
- useOutsideClick.useOutsideClick(ref, () => {
1964
- close();
1965
- });
1966
- function handleChange(nextValue) {
1967
- if (onChange) {
1968
- onChange(nextValue);
1969
- }
1970
- }
1971
- function formatDate(d) {
1972
- return dateFns.format(d, 'dd/MM/yyyy');
1973
- }
1974
- const fieldValue = React.useMemo(() => {
1975
- if (value.from && value.to) {
1976
- if (dateFns.isSameDay(value.from, value.to)) {
1977
- return formatDate(value.from);
1978
- }
1979
- return `${formatDate(value.from)} - ${formatDate(value.to)}`;
1980
- }
1981
- return '';
1982
- }, [value.from, value.to]);
1983
- function renderCalendar() {
1984
- return (React__default["default"].createElement(DateRangePickerCalendar, { value: value, onChange: handleChange, minDate: minDate, maxDate: maxDate, close: close, autoClose: autoClose }));
1985
- }
1986
- return (React__default["default"].createElement(StyledWrapper, { className: [className, opened && 'focused'].filter(Boolean).join(' '), ref: ref },
1987
- React__default["default"].createElement("label", { htmlFor: name },
1988
- React__default["default"].createElement(index$4.PureInput, { size: inputSize, value: fieldValue, name: name, actionIcon: React__default["default"].createElement("img", { src: index$a.CommonGAssets.getAssetPath('calendar.svg'), loading: "lazy" }), onFocus: () => setOpened(true) })),
1989
- opened ? (React__default["default"].createElement(StyledCalendarWrapper, { onMouseDown: (e) => {
1990
- e.stopPropagation();
1991
- } }, renderCalendar())) : null));
1992
- }
1993
-
1994
- var styles = {"breadcrumb":"WUqzfRb","separator":"MnVGtSY","textLink":"NclbhXQ"};
1995
-
1996
- const BreadcrumbItem = ({ LinkComponent, page, isLast, onChangePage, }) => {
1997
- const { label, value, isDropdown, dropdownItems, dataEventCategory, dataEventAction, dataEventLabel, } = page;
1998
- if (isDropdown) {
1999
- return (React__default["default"].createElement(index$b.Dropdown, { options: dropdownItems, placeholder: "...", id: "", placeholderIcon: null, onChange: onChangePage, className: "collapsed-breadcrumb" }));
2000
- }
2001
- return (React__default["default"].createElement("div", { className: styles.textLink, title: typeof label !== 'string' ? value : label, "data-last": isLast }, LinkComponent && (React__default["default"].createElement(LinkComponent, { "data-event-category": dataEventCategory, "data-event-action": dataEventAction, "data-event-label": dataEventLabel, href: value || '#' }, label))));
2002
- };
2003
- /**
2004
- * @deprecated
2005
- */
2006
- const Breadcrumbs = ({ className, pages, size, LinkComponent = 'a', onChangePage, separator, }) => {
2007
- const mappedList = React.useMemo(() => pages
2008
- .map((item, index) => {
2009
- if (pages.length > 4) {
2010
- if (index > 1 && index < pages.length - 2)
2011
- return null;
2012
- if (index === 1) {
2013
- return Object.assign(Object.assign({}, item), { isDropdown: index === 1, dropdownItems: pages.slice(1, pages.length - 2) });
2014
- }
2015
- return item;
2016
- }
2017
- return item;
2018
- })
2019
- .filter(Boolean), [pages]);
2020
- return (React__default["default"].createElement("div", { "data-size": size, className: `${styles.breadcrumb} ${className || ''}` }, mappedList.map((page, index) => {
2021
- const isLast = index + 1 === mappedList.length;
2022
- return (React__default["default"].createElement(React.Fragment, { key: index },
2023
- React__default["default"].createElement(BreadcrumbItem, { LinkComponent: LinkComponent, page: page, isLast: isLast, onChangePage: onChangePage }),
2024
- !isLast &&
2025
- (page.separator || separator || (React__default["default"].createElement("div", { className: styles.separator, "data-size": size })))));
2026
- })));
2027
- };
2028
-
2029
- const StyledShareContainer = styled__default["default"].div `
2030
- display: flex;
2031
- gap: 20px;
2032
- width: 100%;
2033
- align-items: center;
2034
- justify-content: center;
2035
- .icon-group {
2036
- display: flex;
2037
- align-items: center;
2038
- gap: 10px;
2039
- a,
2040
- svg {
2041
- width: 32px;
2042
- height: 32px;
2043
- }
2044
- .share {
2045
- width: 32px;
2046
- height: 32px;
2047
- padding: 8px;
2048
-
2049
- &:hover {
2050
- background-color: ${miscTheme.theme.colors.neutral50};
2051
- }
2052
-
2053
- svg {
2054
- margin: 0;
2055
- width: 16px;
2056
- height: 16px;
2057
- }
2058
- }
2059
- }
2060
- `;
2061
-
2062
- const AttachIcon = () => {
2063
- return (React__default["default"].createElement("svg", { width: "17", height: "16", viewBox: "0 0 17 16", fill: "none" },
2064
- React__default["default"].createElement("path", { d: "M6.86364 10.6666H5.22727C4.86912 10.6666 4.51448 10.5977 4.18359 10.4637C3.8527 10.3296 3.55205 10.1332 3.2988 9.8856C2.78734 9.3855 2.5 8.70722 2.5 7.99998C2.5 7.29274 2.78734 6.61446 3.2988 6.11436C3.81026 5.61426 4.50396 5.33331 5.22727 5.33331H6.86364M9.78374 5.33331H11.7727C12.1309 5.33331 12.4855 5.40229 12.8164 5.5363C13.1473 5.67031 13.4479 5.86674 13.7012 6.11436C13.9545 6.36198 14.1553 6.65596 14.2924 6.97949C14.4295 7.30303 14.5 7.64979 14.5 7.99998C14.5 8.35017 14.4295 8.69693 14.2924 9.02047C14.1553 9.344 13.9545 9.63798 13.7012 9.8856C13.4479 10.1332 13.1473 10.3296 12.8164 10.4637C12.4855 10.5977 12.1309 10.6666 11.7727 10.6666H9.78374", stroke: "#595959", strokeLinecap: "round", strokeLinejoin: "round" }),
2065
- React__default["default"].createElement("path", { d: "M6.5 8H10.5", stroke: "#595959", strokeLinecap: "round", strokeLinejoin: "round" })));
2066
- };
2067
- const ShareContainer = ({ url, onCopied, locale, siteType, }) => {
2068
- const { t } = index$8.useTranslations();
2069
- const socialList = miscGetSocialList.getSocialList({ shareUrl: url || '', locale }).filter((s) => !s.allowedLocales || s.allowedLocales.includes(locale));
2070
- const copyToClipboard = () => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
2071
- var _a;
2072
- yield ((_a = navigator === null || navigator === void 0 ? void 0 : navigator.clipboard) === null || _a === void 0 ? void 0 : _a.writeText(url));
2073
- onCopied === null || onCopied === void 0 ? void 0 : onCopied();
2074
- });
2075
- const currentUrl = React.useMemo(() => {
2076
- if (typeof window !== 'undefined') {
2077
- return window.location.href;
2078
- }
2079
- else
2080
- return '';
2081
- }, []);
2082
- return (React__default["default"].createElement(StyledShareContainer, null,
2083
- React__default["default"].createElement(index$3.Text, { size: "p3", color: miscTheme.theme.colors.gray800 }, t('shareContainer.title')),
2084
- React__default["default"].createElement("div", { className: "icon-group" },
2085
- socialList.map((social, index) => (React__default["default"].createElement("a", { key: index, href: social.href, target: "_blank", rel: "noreferrer", "data-event-category": "Health Tool", "data-event-action": `Social Share - ${social.name}`, "data-event-label": currentUrl }, social.icon))),
2086
- React__default["default"].createElement(index$9.Button, { theme: siteType, size: "sm", type: "button", color: "tertiary", className: "share", style: {}, icon: React__default["default"].createElement(AttachIcon, null), onClick: copyToClipboard, "data-event-category": "Health Tool", "data-event-action": "Copy Link", "data-event-label": currentUrl }))));
2087
- };
2088
-
2089
- const StyledShareDrawer = styled__default["default"](index$c.Drawer) `
2090
- padding-bottom: 24px;
2091
- .share-container {
2092
- display: flex;
2093
- flex-direction: column;
2094
- gap: 24px;
2095
- }
2096
- .icon-group {
2097
- margin-top: 12px;
2098
- display: flex;
2099
- gap: 16px;
2100
- img {
2101
- border-radius: 8px;
2102
- }
2103
- }
2104
- .input-group {
2105
- margin-top: 8px;
2106
- display: flex;
2107
- gap: 8px;
2108
- button {
2109
- padding: 10px;
2110
- &:hover {
2111
- background-color: ${miscTheme.theme.colors.neutral50};
2112
- }
2113
- }
2114
- svg {
2115
- margin: 0;
2116
- }
2117
- a,
2118
- svg:not(.copy) {
2119
- width: 32px;
2120
- height: 32px;
2121
- }
2122
- }
2123
- `;
2124
-
2125
- const CopyIcon = () => {
2126
- return (React__default["default"].createElement("svg", { width: "20", height: "20", viewBox: "0 0 20 20", fill: "none", className: "copy" },
2127
- React__default["default"].createElement("path", { d: "M4 2.5C3.17125 2.5 2.5 3.17125 2.5 4V13.75C2.5 14.164 2.836 14.5 3.25 14.5C3.664 14.5 4 14.164 4 13.75V4H13.75C14.164 4 14.5 3.664 14.5 3.25C14.5 2.836 14.164 2.5 13.75 2.5H4ZM7 5.5C6.17125 5.5 5.5 6.17125 5.5 7V16C5.5 16.8287 6.17125 17.5 7 17.5H16C16.8287 17.5 17.5 16.8287 17.5 16V7C17.5 6.17125 16.8287 5.5 16 5.5H7ZM7 7H16V16H7V7Z", fill: "#595959" })));
2128
- };
2129
- const ShareDrawer = (_a) => {
2130
- var { open, title, onClose, onCopied, onShared, url, locale } = _a, rest = tslib_es6.__rest(_a, ["open", "title", "onClose", "onCopied", "onShared", "url", "locale"]);
2131
- const { t } = index$8.useTranslations();
2132
- const copyToClipboard = React.useCallback(() => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
2133
- var _b;
2134
- yield ((_b = navigator === null || navigator === void 0 ? void 0 : navigator.clipboard) === null || _b === void 0 ? void 0 : _b.writeText(url));
2135
- onCopied === null || onCopied === void 0 ? void 0 : onCopied();
2136
- }), [url, onCopied]);
2137
- const socialList = miscGetSocialList.getSocialList({ shareUrl: url || '', locale }).filter((platform) => !platform.allowedLocales || platform.allowedLocales.includes(locale));
2138
- React.useEffect(() => {
2139
- if (open && navigator.share) {
2140
- navigator
2141
- .share({
2142
- title: title !== null && title !== void 0 ? title : 'Read This Post',
2143
- url,
2144
- })
2145
- .then(() => {
2146
- onShared === null || onShared === void 0 ? void 0 : onShared();
2147
- })
2148
- .catch(() => {
2149
- onClose === null || onClose === void 0 ? void 0 : onClose();
2150
- });
2151
- }
2152
- }, [url, title, onShared, open]);
2153
- if (typeof navigator !== 'undefined' && navigator.share) {
2154
- return null;
2155
- }
2156
- else {
2157
- return (React__default["default"].createElement(StyledShareDrawer, Object.assign({ title: t('share.title'), onClose: onClose, open: open, placement: "bottom" }, rest),
2158
- React__default["default"].createElement("div", { className: "share-container" },
2159
- React__default["default"].createElement("div", { className: "icon-container" },
2160
- React__default["default"].createElement(index$3.Text, { weight: "semiBold", size: "s3", color: miscTheme.theme.colors.gray600 }, t('share.title')),
2161
- React__default["default"].createElement("div", { className: "icon-group" }, socialList.map((social, index) => (React__default["default"].createElement("a", { key: index, href: social.href, target: "_blank", rel: "noreferrer" }, social.icon))))),
2162
- React__default["default"].createElement("div", { className: "link-container" },
2163
- React__default["default"].createElement(index$3.Text, { weight: "semiBold", size: "s3", color: miscTheme.theme.colors.gray600 }, t('share.copyLink')),
2164
- React__default["default"].createElement("div", { className: "input-group" },
2165
- React__default["default"].createElement(index$d.Input, { name: "link", size: "md", value: url, isDisabled: true }),
2166
- React__default["default"].createElement(index$9.Button, { size: "md", type: "button", color: "tertiary", icon: React__default["default"].createElement(CopyIcon, null), onClick: copyToClipboard }))))));
2167
- }
2168
- };
2169
-
2170
- const StyledFixedAdBlock = styled__default["default"].div `
2171
- position: fixed;
2172
- z-index: 48;
2173
- bottom: 0;
2174
- left: 50%;
2175
- width: fit-content;
2176
- max-width: 100%;
2177
- background: none;
2178
- transform: translateX(-50%);
2179
- .close-sticky-button {
2180
- position: absolute;
2181
- display: flex;
2182
- width: 16px;
2183
- height: 16px;
2184
- align-items: center;
2185
- justify-content: center;
2186
- background: #bfbfbf;
2187
- border-radius: 50%;
2188
- color: white;
2189
-
2190
- cursor: pointer;
2191
- font-size: 12px;
2192
- line-height: 12px;
2193
- transform: translate(50%, -50%);
2194
- top: 0;
2195
- right: 0;
2196
- }
2197
- opacity: 0;
2198
- pointer-events: none;
2199
- &[data-visible='true'] {
2200
- opacity: 1;
2201
- pointer-events: auto;
2202
- }
2203
- `;
2204
- const StyledAdContainer = styled__default["default"].div `
2205
- display: flex;
2206
- justify-content: center;
2207
- align-items: center;
2208
- flex-direction: column;
2209
- max-width: 100%;
2210
- width: fit-content;
2211
- height: fit-content;
2212
- margin-inline: auto;
2213
- /* margin: 1rem auto; */
2214
- &[data-no-wrapper='false'] {
2215
- border: 1px solid ${miscTheme.theme.colors.neutral50};
2216
- background: ${miscTheme.theme.colors.neutral50};
2217
- }
2218
- &[data-no-wrapper='true'] {
2219
- line-height: 0;
2220
- }
2221
- &[data-header-bottom='true'] {
2222
- flex-direction: column-reverse;
2223
- background: none;
2224
- border: none;
2225
- }
2226
- `;
2227
- /* background: ${theme.colors.neutral50}; */
2228
- const StyledAdHeader = styled__default["default"].div `
2229
- width: 100%;
2230
- padding: 0 5px 1.5px;
2231
- display: flex;
2232
- align-items: center;
2233
- justify-content: center;
2234
- gap: 5px;
2235
- text-transform: capitalize;
2236
- img {
2237
- height: 12px;
2238
- width: 12px;
2239
- max-width: 12px;
2240
- max-height: 12px;
2241
- }
2242
- &[data-header-bottom='true'] {
2243
- background: ${miscTheme.theme.colors.neutral50};
2244
- }
2245
- span {
2246
- font-size: 10px;
2247
- line-height: 12px;
2248
- color: ${miscTheme.theme.colors.gray400};
2249
- font-weight: 400;
2250
- }
2251
- `;
2252
- const StyledCloseBtn = styled__default["default"].div `
2253
- background-color: white;
2254
- background-image: url(${index$a.CommonGAssets.getAssetPath('close-blue.svg')});
2255
- background-repeat: no-repeat;
2256
- background-size: 10px;
2257
- background-position: center;
2258
- width: 12px;
2259
- height: 12px;
2260
- position: absolute;
2261
- top: 1px;
2262
- right: 1px;
2263
- cursor: pointer;
2264
- `;
2265
-
2266
- const SlotsById = {};
2267
- const displayAd = ({ contentId, adUnitPath, size, divId, pos, sizeMapping, hideIfHasSubot, customTargetings, onSuccess, }) => {
2268
- if (!divId || !document.getElementById(divId))
2269
- return console.error('divId is required');
2270
- destroyAdSlot(divId);
2271
- window.googletag = window.googletag || { cmd: [] };
2272
- const { googletag } = window;
2273
- googletag.cmd.push(function () {
2274
- const $content_id_container = document.querySelector('meta[name="content_id"]');
2275
- const $content_id = typeof contentId === 'string' ? contentId : $content_id_container === null || $content_id_container === void 0 ? void 0 : $content_id_container.content;
2276
- const newSlot = googletag.defineSlot(adUnitPath, size, divId);
2277
- if (newSlot) {
2278
- try {
2279
- if (customTargetings) {
2280
- Object.keys(customTargetings).forEach((k) => {
2281
- if (k)
2282
- newSlot === null || newSlot === void 0 ? void 0 : newSlot.setTargeting(k, customTargetings[k]);
2283
- });
2284
- }
2285
- }
2286
- catch (e) {
2287
- console.error(e);
2288
- }
2289
- SlotsById[divId] = newSlot;
2290
- newSlot.setTargeting('Pos', pos);
2291
- newSlot.addService(googletag.pubads());
2292
- if ($content_id)
2293
- newSlot.setTargeting('Content_ID', $content_id);
2294
- if (sizeMapping)
2295
- newSlot.defineSizeMapping(sizeMapping);
2296
- if (hideIfHasSubot && document.getElementById('subot--container')) {
2297
- newSlot.setTargeting('chatbot', true);
2298
- }
2299
- googletag.display(divId);
2300
- onSuccess === null || onSuccess === void 0 ? void 0 : onSuccess();
2301
- }
2302
- });
2303
- };
2304
- const destroyAdSlot = (divId) => {
2305
- if (SlotsById[divId]) {
2306
- window.googletag = window.googletag || { cmd: [] };
2307
- const { googletag } = window;
2308
- googletag.cmd.push(function () {
2309
- googletag.destroySlots([SlotsById[divId]]);
2310
- delete SlotsById[divId];
2311
- });
2312
- }
2313
- };
2314
- const DEFAULT_30S_AD_POS = [
2315
- 'TopBanner',
2316
- 'MidBanner1',
2317
- 'MidBanner2',
2318
- 'EndBanner',
2319
- 'Sticky',
2320
- ];
2321
- const ForwaredAdBlock = React.forwardRef(function InfinityAdBlock({ className, adUnitPath, size, divId, pos, sizeMapping, contentId, isHidden, hideIfHasSubot, isSticky, refreshInterval, // seconds
2322
- customTargetings, style, adDefaultSize, noWrapper, showCloseBtn, onCloseAd, headerBottom, wrapperProps, locale, isMarryBaby, }, ref) {
2323
- const defaultRefreshInterval = refreshInterval ||
2324
- (locale === Locale.LOCALE.Vietnam
2325
- ? pos.some((p) => DEFAULT_30S_AD_POS.includes(p))
2326
- ? 30
2327
- : undefined
2328
- : undefined);
2329
- const { t } = index$8.useTranslations();
2330
- const containerRef = React.useRef(null);
2331
- const adRefreshIntervalRef = React.useRef(null);
2332
- const refreshIntervalRef = React.useRef(defaultRefreshInterval);
2333
- refreshIntervalRef.current = defaultRefreshInterval;
2334
- const [localCloseAd, setLocalCloseAd] = React.useState(false);
2335
- const adSlotChanged = () => {
2336
- if (refreshIntervalRef.current) {
2337
- if (adRefreshIntervalRef.current !== null) {
2338
- clearInterval(adRefreshIntervalRef.current);
2339
- }
2340
- adRefreshIntervalRef.current = window.setInterval(() => {
2341
- window.googletag = window.googletag || { cmd: [] };
2342
- const { googletag } = window;
2343
- googletag.cmd.push(function () {
2344
- if (SlotsById[divId]) {
2345
- googletag.pubads().refresh([SlotsById[divId]]);
2346
- }
2347
- });
2348
- }, refreshIntervalRef.current * 1000);
2349
- }
2350
- };
2351
- React.useEffect(() => {
2352
- return () => {
2353
- destroyAdSlot(divId);
2354
- if (adRefreshIntervalRef.current)
2355
- clearInterval(adRefreshIntervalRef.current);
2356
- };
2357
- }, []);
2358
- React.useEffect(() => {
2359
- adSlotChanged();
2360
- }, [defaultRefreshInterval]);
2361
- React.useEffect(() => {
2362
- if (!isHidden) {
2363
- displayAd({
2364
- contentId,
2365
- adUnitPath,
2366
- size,
2367
- divId,
2368
- pos,
2369
- sizeMapping,
2370
- hideIfHasSubot,
2371
- customTargetings,
2372
- onSuccess: adSlotChanged,
2373
- });
2374
- }
2375
- }, [isHidden]);
2376
- if (localCloseAd)
2377
- return null;
2378
- const AdContent = (React__default["default"].createElement("div", { style: {
2379
- position: 'relative',
2380
- width: 'fit-content',
2381
- height: 'fit-content',
2382
- overflow: 'hidden',
2383
- maxWidth: '100%',
2384
- display: 'flex',
2385
- alignItems: 'center',
2386
- justifyContent: 'center',
2387
- } },
2388
- React__default["default"].createElement("div", { ref: ref, id: divId }),
2389
- showCloseBtn && (React__default["default"].createElement(StyledCloseBtn, { onClick: () => {
2390
- onCloseAd === null || onCloseAd === void 0 ? void 0 : onCloseAd();
2391
- setLocalCloseAd(true);
2392
- } }))));
2393
- if (isSticky)
2394
- return AdContent;
2395
- const minWidth = adDefaultSize
2396
- ? adDefaultSize[0]
2397
- : size
2398
- ? Array.isArray(size[0])
2399
- ? size[0][0]
2400
- : size[0]
2401
- : undefined;
2402
- const minHeight = adDefaultSize
2403
- ? adDefaultSize[1]
2404
- : size
2405
- ? Array.isArray(size[0])
2406
- ? size[0][1]
2407
- : size[1]
2408
- : undefined;
2409
- return (React__default["default"].createElement(core.Box, Object.assign({}, wrapperProps, { className: className }),
2410
- React__default["default"].createElement(StyledAdContainer, { ref: containerRef, className: className, style: style, "data-no-wrapper": !!noWrapper, "data-header-bottom": !!headerBottom }, noWrapper ? (AdContent) : (React__default["default"].createElement(React__default["default"].Fragment, null,
2411
- React__default["default"].createElement(StyledAdHeader, { "data-header-bottom": !!headerBottom },
2412
- React__default["default"].createElement("img", { src: isMarryBaby
2413
- ? index$a.CommonGAssets.getAssetPath('adsIcon-mb.svg')
2414
- : index$a.CommonGAssets.getAssetPath('adsIcon.svg'), alt: "", loading: "lazy" }),
2415
- React__default["default"].createElement("span", null, t('adBanner.title'))),
2416
- React__default["default"].createElement("div", { style: {
2417
- minWidth: minWidth || '100%',
2418
- minHeight: minHeight || '100%',
2419
- position: 'relative',
2420
- } }, AdContent))))));
2421
- });
2422
- const AdBlock = React.memo(ForwaredAdBlock, (prevProps, nextProps) => {
2423
- return (prevProps.adUnitPath === nextProps.adUnitPath &&
2424
- prevProps.divId === nextProps.divId &&
2425
- prevProps.className === nextProps.className);
2426
- });
2427
-
2428
- const FixedBottomAdBlock = ({ className, adUnitPath, divId, isMobile, contentId, customTargetings, locale, isMarryBaby, }) => {
2429
- const [hideAd, setHideAd] = React.useState(true);
2430
- const [userHideAd, setUserHideAd] = React.useState(false);
2431
- const [hidden, setHidden] = React.useState(true);
2432
- const adRef = React.useRef(null);
2433
- const mountRandRef = React.useRef(uuid.v4());
2434
- const fixedAdRef = React.useRef(null);
2435
- const timeoutRef = React.useRef();
2436
- const closeBtnTimeoutRef = React.useRef();
2437
- React.useEffect(() => {
2438
- const checkAdShowing = () => {
2439
- if (closeBtnTimeoutRef.current)
2440
- clearTimeout(closeBtnTimeoutRef.current);
2441
- closeBtnTimeoutRef.current = setTimeout(() => {
2442
- var _a;
2443
- if (document.getElementById('subot--container')) {
2444
- setHideAd(true);
2445
- }
2446
- else {
2447
- setHideAd(false);
2448
- if (!((_a = adRef.current) === null || _a === void 0 ? void 0 : _a.clientHeight)) {
2449
- setHidden(true);
2450
- }
2451
- else {
2452
- setHidden(false);
2453
- }
2454
- }
2455
- checkAdShowing();
2456
- }, 4000);
2457
- };
2458
- checkAdShowing();
2459
- return () => {
2460
- timeoutRef.current && clearTimeout(timeoutRef.current);
2461
- closeBtnTimeoutRef.current && clearTimeout(closeBtnTimeoutRef.current);
2462
- };
2463
- }, []);
2464
- if (hideAd || userHideAd)
2465
- return null;
2466
- return (React__default["default"].createElement(StyledFixedAdBlock, { key: isMobile ? 'mobile' : 'desktop', ref: fixedAdRef, className: className, "data-visible": !hidden }, adUnitPath && (React__default["default"].createElement(AdBlock, { wrapperProps: { m: 0 }, ref: adRef, adUnitPath: adUnitPath, size: isMobile
2467
- ? [
2468
- [320, 50],
2469
- [320, 100],
2470
- ]
2471
- : [728, 90], divId: (divId || 'div-gpt-ad-sticky') +
2472
- (isMobile ? '-mobile' : '') +
2473
- contentId +
2474
- String(mountRandRef.current), pos: ['Sticky'], contentId: contentId, hideIfHasSubot: isMobile, customTargetings: customTargetings, adDefaultSize: isMobile ? [320, 50] : [728, 90], showCloseBtn: true, onCloseAd: () => setUserHideAd(true), refreshInterval: 60, locale: locale, isMarryBaby: isMarryBaby }))));
2475
- };
2476
-
2477
- exports.AdBlock = AdBlock;
2478
- exports.Breadcrumbs = Breadcrumbs;
2479
- exports.CategoryCard = CategoryCard;
2480
- exports.CheckboxGroup = CheckboxGroup;
2481
- exports.CookieAcceptConfirm = CookieAcceptConfirm;
2482
- exports.DateRangePicker = DateRangePicker;
2483
- exports.DoctorInfo = DoctorInfo;
2484
- exports.FixedBottomAdBlock = FixedBottomAdBlock;
2485
- exports.FloatButtonGroup = FloatButtonGroup;
2486
- exports.IconText = IconText;
2487
- exports.RadioGroup = RadioGroup;
2488
- exports.ScrollList = ScrollList;
2489
- exports.SeoHead = SeoHead;
2490
- exports.ShareContainer = ShareContainer;
2491
- exports.ShareDrawer = ShareDrawer;
2492
- exports.StatisticCard = StatisticCard;
2493
- exports.Tabs = Tabs;
2494
- exports.index = index$1;
2495
- exports.index$1 = index;