@hhgtech/hhg-components 1.29.527 → 1.29.529

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 (519) hide show
  1. package/build/{InputDate-4723615c.js → InputDate-23aa3aa8.js} +5 -5
  2. package/build/{LastPeriod-73630d52.js → LastPeriod-749419c1.js} +1 -1
  3. package/build/{MobileBottomNavigationIcon-cc6f18e0.js → MobileBottomNavigationIcon-55051e19.js} +3 -3
  4. package/build/{SiteWideBanner-72c71636.js → SiteWideBanner-6f5828dd.js} +11 -11
  5. package/build/{Spinner-a6e3eb27.js → Spinner-e998027f.js} +1 -1
  6. package/build/{WhatsApp-5f603292.js → WhatsApp-70ed9751.js} +1 -1
  7. package/build/adapters.js +20 -20
  8. package/build/atoms.js +51 -51
  9. package/build/babyGrowth.js +86 -86
  10. package/build/cache.js +2 -2
  11. package/build/care/components/organisms/bookingSearchBarV2/SearchResultContent.d.ts +13 -0
  12. package/build/care/components/organisms/bookingSearchBarV2/index.d.ts +7 -1
  13. package/build/care/components/organisms/bookingSearchBarV2/searchInputs/ModalSearchResult.d.ts +8 -0
  14. package/build/care/components/organisms/bookingSearchBarV2/searchInputs/index.d.ts +8 -1
  15. package/build/care/components/organisms/bookingSearchBarV2/searchLocation/CustomSelectItem.d.ts +9 -0
  16. package/build/care/components/organisms/bookingSearchBarV2/searchLocation/index.d.ts +1 -1
  17. package/build/care/components/organisms/bookingSearchBarV2/searchResult/index.d.ts +2 -2
  18. package/build/care/components/organisms/bookingSearchBarV2/searchSpecialty/CustomSelectItem.d.ts +9 -0
  19. package/build/care/components/organisms/bookingSearchBarV2/searchSpecialty/index.d.ts +1 -1
  20. package/build/care.js +24 -18
  21. package/build/careBookingSearchBar.js +14 -14
  22. package/build/careBookingSearchBarV2.js +543 -249
  23. package/build/components.js +106 -106
  24. package/build/{constants-ec3816fe.js → constants-3a21c7d8.js} +2 -2
  25. package/build/{constants-8ddf9f14.js → constants-e20852df.js} +1 -1
  26. package/build/constants.js +3 -3
  27. package/build/constantsDomainLocales.js +1 -1
  28. package/build/constantsRiskScreener.js +2 -2
  29. package/build/constantsSite.js +2 -2
  30. package/build/{core-1b4b5bb6.js → core-8316d9b0.js} +1 -1
  31. package/build/{dataTransform-f5d2e15b.js → dataTransform-d4547b46.js} +1 -1
  32. package/build/ecom.js +5 -5
  33. package/build/{editor-1f3a4880.js → editor-69c86729.js} +11 -11
  34. package/build/embeddedHeathToolCards_babyGrowth.js +25 -25
  35. package/build/embeddedHeathToolCards_babyPoop.js +22 -22
  36. package/build/embeddedHeathToolCards_babyVaccine.js +24 -24
  37. package/build/embeddedHeathToolCards_bmi_bmi.js +27 -27
  38. package/build/embeddedHeathToolCards_bmrBmr.js +27 -27
  39. package/build/embeddedHeathToolCards_dueDate_dueDate.js +24 -24
  40. package/build/embeddedHeathToolCards_ovulation_ovulation.js +24 -24
  41. package/build/embeddedHeathToolCards_pwg_pwg.js +28 -28
  42. package/build/embeddedHeathToolCards_targetHeartRate.js +29 -29
  43. package/build/esm/{InputDate-19558a4a.js → InputDate-3420bfc7.js} +5 -5
  44. package/build/esm/{LastPeriod-36173ef3.js → LastPeriod-4500bb2e.js} +1 -1
  45. package/build/esm/{MobileBottomNavigationIcon-6c0c186f.js → MobileBottomNavigationIcon-e2cda9e5.js} +3 -3
  46. package/build/esm/{SiteWideBanner-7010dc39.js → SiteWideBanner-87116d0b.js} +11 -11
  47. package/build/esm/{Spinner-432bb892.js → Spinner-3eacd1a4.js} +1 -1
  48. package/build/esm/{WhatsApp-e843edd2.js → WhatsApp-debd0829.js} +1 -1
  49. package/build/esm/adapters.js +20 -20
  50. package/build/esm/atoms.js +51 -51
  51. package/build/esm/babyGrowth.js +86 -86
  52. package/build/esm/cache.js +2 -2
  53. package/build/esm/care/components/organisms/bookingSearchBarV2/SearchResultContent.d.ts +13 -0
  54. package/build/esm/care/components/organisms/bookingSearchBarV2/index.d.ts +7 -1
  55. package/build/esm/care/components/organisms/bookingSearchBarV2/searchInputs/ModalSearchResult.d.ts +8 -0
  56. package/build/esm/care/components/organisms/bookingSearchBarV2/searchInputs/index.d.ts +8 -1
  57. package/build/esm/care/components/organisms/bookingSearchBarV2/searchLocation/CustomSelectItem.d.ts +9 -0
  58. package/build/esm/care/components/organisms/bookingSearchBarV2/searchLocation/index.d.ts +1 -1
  59. package/build/esm/care/components/organisms/bookingSearchBarV2/searchResult/index.d.ts +2 -2
  60. package/build/esm/care/components/organisms/bookingSearchBarV2/searchSpecialty/CustomSelectItem.d.ts +9 -0
  61. package/build/esm/care/components/organisms/bookingSearchBarV2/searchSpecialty/index.d.ts +1 -1
  62. package/build/esm/care.js +24 -18
  63. package/build/esm/careBookingSearchBar.js +14 -14
  64. package/build/esm/careBookingSearchBarV2.js +545 -251
  65. package/build/esm/components.js +106 -106
  66. package/build/esm/{constants-5d94c1eb.js → constants-16201577.js} +1 -1
  67. package/build/esm/{constants-02ff2b9a.js → constants-59626435.js} +2 -2
  68. package/build/esm/constants.js +3 -3
  69. package/build/esm/constantsDomainLocales.js +1 -1
  70. package/build/esm/constantsRiskScreener.js +2 -2
  71. package/build/esm/constantsSite.js +2 -2
  72. package/build/esm/{core-28fc1feb.js → core-5732fbaa.js} +1 -1
  73. package/build/esm/{dataTransform-18e7db46.js → dataTransform-7672f645.js} +1 -1
  74. package/build/esm/ecom.js +5 -5
  75. package/build/esm/{editor-f39bd267.js → editor-67f45072.js} +11 -11
  76. package/build/esm/embeddedHeathToolCards_babyGrowth.js +25 -25
  77. package/build/esm/embeddedHeathToolCards_babyPoop.js +22 -22
  78. package/build/esm/embeddedHeathToolCards_babyVaccine.js +24 -24
  79. package/build/esm/embeddedHeathToolCards_bmi_bmi.js +27 -27
  80. package/build/esm/embeddedHeathToolCards_bmrBmr.js +27 -27
  81. package/build/esm/embeddedHeathToolCards_dueDate_dueDate.js +24 -24
  82. package/build/esm/embeddedHeathToolCards_ovulation_ovulation.js +24 -24
  83. package/build/esm/embeddedHeathToolCards_pwg_pwg.js +28 -28
  84. package/build/esm/embeddedHeathToolCards_targetHeartRate.js +29 -29
  85. package/build/esm/footer.js +22 -22
  86. package/build/esm/gAssets.js +2 -2
  87. package/build/esm/{healthTools-67f81a15.js → healthTools-42e7a7b9.js} +1 -1
  88. package/build/esm/healthToolsCardWrapper.js +20 -20
  89. package/build/esm/healthToolsForm.js +35 -35
  90. package/build/esm/hooks.js +14 -14
  91. package/build/esm/i18n.js +2 -2
  92. package/build/esm/i18nV2.js +2 -2
  93. package/build/esm/{index-fb51821c.js → index-046f8a94.js} +2 -2
  94. package/build/esm/{index-6b81ef4b.js → index-04d1ff54.js} +32 -32
  95. package/build/esm/{index-3dcbd5d8.js → index-0605c7c1.js} +13 -13
  96. package/build/esm/{index-51164185.js → index-08e91215.js} +2 -2
  97. package/build/esm/{index-b26c8202.js → index-0be2132d.js} +2 -2
  98. package/build/esm/{index-41b75b06.js → index-0de117d1.js} +16 -16
  99. package/build/esm/{index-c11e3721.js → index-0e1f889f.js} +15 -15
  100. package/build/esm/{index-4de26227.js → index-116875d5.js} +32 -32
  101. package/build/esm/{index-89dfc455.js → index-16c5d8bd.js} +11 -11
  102. package/build/esm/{index-16b3f06c.js → index-18b703fe.js} +1 -1
  103. package/build/esm/{index-c2162f76.js → index-1baa4743.js} +6 -6
  104. package/build/esm/{index-11f06411.js → index-1e1be313.js} +3 -3
  105. package/build/esm/{index-625b13b0.js → index-2199aed8.js} +14 -14
  106. package/build/esm/{index-21e8e383.js → index-22e24f71.js} +18 -18
  107. package/build/esm/{index-6562a540.js → index-273f9554.js} +2 -2
  108. package/build/esm/{index-350c8057.js → index-27bcc449.js} +3 -3
  109. package/build/esm/{index-037ffb65.js → index-2b169a42.js} +7 -7
  110. package/build/esm/{index-88ad09a2.js → index-3429f618.js} +21 -21
  111. package/build/esm/{index-2757fc57.js → index-397555b2.js} +13 -13
  112. package/build/esm/{index-927ce49f.js → index-3dd8edb7.js} +17 -17
  113. package/build/esm/{index-eb266a2f.js → index-40680903.js} +9 -9
  114. package/build/esm/{index-c288d070.js → index-414d2c76.js} +25 -25
  115. package/build/esm/{index-132ec066.js → index-41fc1e34.js} +5 -5
  116. package/build/esm/{index-cf0997ce.js → index-43ad9ae9.js} +16 -16
  117. package/build/esm/{index-13cc2584.js → index-451adb11.js} +2 -2
  118. package/build/esm/{index-d51a88aa.js → index-47062fae.js} +1 -1
  119. package/build/esm/{index-83cdc404.js → index-4a9e91c4.js} +7 -7
  120. package/build/esm/{index-039f30e3.js → index-4bd0b733.js} +2 -2
  121. package/build/esm/{index-d5a0deff.js → index-4dae24b1.js} +14 -14
  122. package/build/esm/{index-6d341978.js → index-5c287948.js} +1 -1
  123. package/build/esm/{index-ed3537b8.js → index-6575cb41.js} +2 -2
  124. package/build/esm/{index-b09ae67e.js → index-688bae11.js} +22 -22
  125. package/build/esm/{index-9783f70f.js → index-69b65e96.js} +6 -6
  126. package/build/esm/{index-9eb4ea68.js → index-6fef1f19.js} +5 -5
  127. package/build/esm/{index-d3de292b.js → index-736dd019.js} +19 -19
  128. package/build/esm/{index-f25b49f4.js → index-73f941bb.js} +2 -2
  129. package/build/esm/{index-81417442.js → index-791dd7bb.js} +6 -6
  130. package/build/esm/{index-baeae593.js → index-7be2a6c5.js} +6 -6
  131. package/build/esm/{index-40506630.js → index-7e397e89.js} +1 -1
  132. package/build/esm/{index-08a9819c.js → index-7efaa78b.js} +3 -3
  133. package/build/esm/{index-00172803.js → index-7ff08ba4.js} +3 -3
  134. package/build/esm/{index-14c5bc71.js → index-82c660c9.js} +33 -33
  135. package/build/esm/{index-78e91f91.js → index-82ea6b51.js} +1 -1
  136. package/build/esm/{index-d8bffadf.js → index-8884c688.js} +3 -3
  137. package/build/esm/{index-d920a82c.js → index-8a455ff2.js} +3 -3
  138. package/build/esm/{index-0d2192e4.js → index-8c10789d.js} +15 -15
  139. package/build/esm/{index-592bba40.js → index-906251f1.js} +2 -2
  140. package/build/esm/{index-2f2b3118.js → index-9123f2b2.js} +2 -2
  141. package/build/esm/{index-17e22a49.js → index-988b6c84.js} +3 -3
  142. package/build/esm/{index-d8b71ebe.js → index-9bc8c421.js} +2 -2
  143. package/build/esm/{index-9f3cf366.js → index-a57b3df3.js} +3 -3
  144. package/build/esm/{index-baa344ea.js → index-aa78b83c.js} +1 -1
  145. package/build/esm/{index-5ce992e9.js → index-ab671c88.js} +16 -16
  146. package/build/esm/{index-33b29944.js → index-b7941c48.js} +9 -9
  147. package/build/esm/{index-3bbfc9b7.js → index-be1ca808.js} +1 -1
  148. package/build/esm/{index-9f43c268.js → index-be7ac01b.js} +2 -2
  149. package/build/esm/{index-a38113ec.js → index-bf6cee2d.js} +24 -24
  150. package/build/esm/{index-d6d9926d.js → index-c7e7d049.js} +16 -16
  151. package/build/esm/{index-a0a5c82d.js → index-c83a09c0.js} +2 -2
  152. package/build/esm/{index-e29f4da3.js → index-ca38a8a8.js} +8 -8
  153. package/build/esm/{index-b34a19f4.js → index-cd098b14.js} +4 -4
  154. package/build/esm/{index-848bd280.js → index-ce4660b7.js} +2 -2
  155. package/build/esm/{index-2b33f487.js → index-cfaad2c1.js} +2 -2
  156. package/build/esm/{index-835cb1a4.js → index-d43283bc.js} +4 -4
  157. package/build/esm/{index-71ef7de6.js → index-d6b28d0d.js} +18 -18
  158. package/build/esm/{index-ec874d7f.js → index-daf4f774.js} +2 -2
  159. package/build/esm/{index-5416cd64.js → index-e55ab051.js} +14 -14
  160. package/build/esm/{index-cac853ef.js → index-e63f53b5.js} +2 -2
  161. package/build/esm/{index-3b6525bf.js → index-e8c2e6c9.js} +3 -3
  162. package/build/esm/{index-c262545f.js → index-fa4f9eb1.js} +3 -3
  163. package/build/esm/{index-e772c903.js → index-fbefdc4d.js} +15 -15
  164. package/build/esm/index.js +126 -126
  165. package/build/esm/{labelSorting-b86fc783.js → labelSorting-b17abb6e.js} +4 -4
  166. package/build/esm/lead.js +37 -37
  167. package/build/esm/{logoIcon-8589d465.js → logoIcon-14a04af1.js} +2 -2
  168. package/build/esm/mantine.js +27 -27
  169. package/build/esm/misc.js +19 -19
  170. package/build/esm/miscGetDynamicHealthTool.js +4 -4
  171. package/build/esm/miscGetSocialList.js +8 -8
  172. package/build/esm/miscScreenSizeContext.js +1 -1
  173. package/build/esm/mobileBottomNavigation.js +5 -5
  174. package/build/esm/mobileBottomNavigationIcon.js +5 -5
  175. package/build/esm/molecules.js +79 -79
  176. package/build/esm/moleculesArticleCard.js +6 -6
  177. package/build/esm/moleculesArticleCardV2.js +17 -17
  178. package/build/esm/navigation.js +49 -49
  179. package/build/esm/navigationLogoutPopup.js +11 -11
  180. package/build/esm/navigationProfileButton.js +27 -27
  181. package/build/esm/onboardingV2.js +30 -30
  182. package/build/esm/organisms.js +62 -62
  183. package/build/esm/{paths-28205e0f.js → paths-8f866678.js} +2 -2
  184. package/build/esm/{post-85d8faaa.js → post-e76b246c.js} +2 -2
  185. package/build/esm/profileNavigation.js +20 -20
  186. package/build/esm/progressBar.js +1 -1
  187. package/build/esm/pwg.js +23 -23
  188. package/build/esm/ssoV2.js +31 -31
  189. package/build/esm/{store-46ca3b02.js → store-fc6a5924.js} +3 -3
  190. package/build/esm/subot.js +40 -40
  191. package/build/esm/surveyOrPremiumBanner.js +34 -34
  192. package/build/esm/surveyQuestionCard.js +11 -11
  193. package/build/esm/{surveyThankyouCard-fe5eb710.js → surveyThankyouCard-f74d24de.js} +5 -5
  194. package/build/esm/together.js +57 -57
  195. package/build/esm/togetherApiUtils.js +6 -6
  196. package/build/esm/togetherAtoms.js +31 -31
  197. package/build/esm/togetherComponentGlobalContext.js +6 -6
  198. package/build/esm/togetherMolecules.js +52 -52
  199. package/build/esm/togetherMoleculesCardAuthor.js +29 -29
  200. package/build/esm/togetherMoleculesPostImagePreview.js +13 -13
  201. package/build/esm/togetherMoleculesProfileDetail.js +40 -40
  202. package/build/esm/togetherOrganisms.js +51 -51
  203. package/build/esm/togetherRichTextEditor.js +20 -20
  204. package/build/esm/togetherShareBox.js +12 -12
  205. package/build/esm/{transform-9e1ae172.js → transform-297526f2.js} +27 -27
  206. package/build/esm/{translationsProvider-7112664a.js → translationsProvider-f07172aa.js} +1 -1
  207. package/build/esm/{treePopoverMenu-4534abf4.js → treePopoverMenu-1cc0d3af.js} +19 -19
  208. package/build/esm/types.js +2 -2
  209. package/build/esm/{useCartCareService-dab2f9d4.js → useCartCareService-b9ebe3f2.js} +1 -1
  210. package/build/esm/{useHealthToolCache-c6faed71.js → useHealthToolCache-86f4394b.js} +1 -1
  211. package/build/esm/{usePhoneValidator-6d70c013.js → usePhoneValidator-2ebf8f1e.js} +5 -5
  212. package/build/esm/{usePlacesAutocomplete-eb7786f7.js → usePlacesAutocomplete-4c3a32ba.js} +1 -1
  213. package/build/esm/useTogetherAuthRequiredAction.js +10 -10
  214. package/build/esm/{utils-9a6c6029.js → utils-57635f8e.js} +3 -3
  215. package/build/esm/{utils-5d0e618d.js → utils-6908ac1c.js} +2 -2
  216. package/build/esm/{utils-5e210f54.js → utils-ab3b27b1.js} +2 -2
  217. package/build/esm/{utils-a6dea16c.js → utils-e0aaeb78.js} +5 -5
  218. package/build/esm/{utils-fb8bf638.js → utils-fdf46ea7.js} +3 -3
  219. package/build/esm/vaccination.js +22 -22
  220. package/build/footer.js +22 -22
  221. package/build/gAssets.js +2 -2
  222. package/build/{healthTools-83fac0a5.js → healthTools-9fe9dfd9.js} +1 -1
  223. package/build/healthToolsCardWrapper.js +20 -20
  224. package/build/healthToolsForm.js +35 -35
  225. package/build/hooks.js +14 -14
  226. package/build/i18n.js +2 -2
  227. package/build/i18nV2.js +1 -1
  228. package/build/{index-91a769d7.js → index-0191b011.js} +32 -32
  229. package/build/{index-6043692f.js → index-09d9c4e1.js} +2 -2
  230. package/build/{index-27670cc8.js → index-0c879b91.js} +16 -16
  231. package/build/{index-88d16ec2.js → index-0f302893.js} +6 -6
  232. package/build/{index-fcb30055.js → index-134db9fe.js} +2 -2
  233. package/build/{index-b2840c48.js → index-15551580.js} +9 -9
  234. package/build/{index-2cc01292.js → index-1b1002f1.js} +16 -16
  235. package/build/{index-221ad3a7.js → index-1b906d4f.js} +1 -1
  236. package/build/{index-eb070ff1.js → index-1c7debb5.js} +14 -14
  237. package/build/{index-04d4d6d5.js → index-22716e8c.js} +8 -8
  238. package/build/{index-acb6aa58.js → index-280f6c67.js} +3 -3
  239. package/build/{index-5c45ee6c.js → index-35211b73.js} +2 -2
  240. package/build/{index-048c359c.js → index-35229d9d.js} +14 -14
  241. package/build/{index-08383fcf.js → index-3876f3ec.js} +1 -1
  242. package/build/{index-0384d19d.js → index-46a710ec.js} +1 -1
  243. package/build/{index-3d421c34.js → index-4cca0410.js} +2 -2
  244. package/build/{index-1e657b96.js → index-4e2565fc.js} +2 -2
  245. package/build/{index-c785a38f.js → index-505e45c4.js} +33 -33
  246. package/build/{index-1d9bd91f.js → index-507ed8f1.js} +3 -3
  247. package/build/{index-edfd48a3.js → index-52f6caec.js} +2 -2
  248. package/build/{index-beae4bf5.js → index-54f9b1df.js} +1 -1
  249. package/build/{index-6439d793.js → index-5583ddd8.js} +1 -1
  250. package/build/{index-ede1d939.js → index-57ab8801.js} +2 -2
  251. package/build/{index-627899a6.js → index-5cc38720.js} +18 -18
  252. package/build/{index-034d9ef4.js → index-5ddd0abf.js} +3 -3
  253. package/build/{index-b5f92ca0.js → index-64076e02.js} +6 -6
  254. package/build/{index-768ce2e2.js → index-71892a7b.js} +3 -3
  255. package/build/{index-21bd3fc2.js → index-77383f92.js} +13 -13
  256. package/build/{index-696cbd6a.js → index-785cbff4.js} +3 -3
  257. package/build/{index-640597bc.js → index-78690e6b.js} +5 -5
  258. package/build/{index-40eb2a9e.js → index-788c0611.js} +2 -2
  259. package/build/{index-9dcf2fa6.js → index-7ab2566d.js} +9 -9
  260. package/build/{index-2358141f.js → index-81d0eb08.js} +4 -4
  261. package/build/{index-4270d6cf.js → index-83dff660.js} +1 -1
  262. package/build/{index-231a399f.js → index-899ad2a2.js} +5 -5
  263. package/build/{index-67eb9b89.js → index-8a481d36.js} +15 -15
  264. package/build/{index-d664f4c8.js → index-a53f780c.js} +2 -2
  265. package/build/{index-8be9c1f5.js → index-a5e72e15.js} +24 -24
  266. package/build/{index-b5d72bcf.js → index-a5f774be.js} +14 -14
  267. package/build/{index-381e1575.js → index-a82cd35a.js} +18 -18
  268. package/build/{index-0dabd635.js → index-aada2704.js} +7 -7
  269. package/build/{index-73704e7a.js → index-ae64358d.js} +25 -25
  270. package/build/{index-2509613f.js → index-afd06067.js} +6 -6
  271. package/build/{index-680b660f.js → index-b2c81337.js} +4 -4
  272. package/build/{index-22ab16d6.js → index-b6ee1315.js} +2 -2
  273. package/build/{index-d469f7de.js → index-b9297c0a.js} +2 -2
  274. package/build/{index-fca34957.js → index-b9b15f54.js} +13 -13
  275. package/build/{index-881cfb0f.js → index-c0e68eb1.js} +2 -2
  276. package/build/{index-8d5df576.js → index-c853777a.js} +16 -16
  277. package/build/{index-c0824124.js → index-cb0aa52f.js} +21 -21
  278. package/build/{index-d13c0da0.js → index-cdfa3535.js} +19 -19
  279. package/build/{index-4b9dcf37.js → index-d1ca7674.js} +7 -7
  280. package/build/{index-78f5bf5c.js → index-d2bd333a.js} +2 -2
  281. package/build/{index-c935c8ae.js → index-d4b08a69.js} +3 -3
  282. package/build/{index-12897bdd.js → index-d4fa0597.js} +15 -15
  283. package/build/{index-cc8ff3c0.js → index-d5924135.js} +3 -3
  284. package/build/{index-06008daa.js → index-d6732df0.js} +17 -17
  285. package/build/{index-ce60142f.js → index-d8d1ca7b.js} +16 -16
  286. package/build/{index-5968ea5b.js → index-dabb369d.js} +2 -2
  287. package/build/{index-b75bbb36.js → index-de28f501.js} +2 -2
  288. package/build/{index-f8c96c21.js → index-e161545f.js} +32 -32
  289. package/build/{index-22841a69.js → index-e3a714d4.js} +3 -3
  290. package/build/{index-e584f6b5.js → index-e5a568b3.js} +3 -3
  291. package/build/{index-623aa44d.js → index-e8388cd0.js} +2 -2
  292. package/build/{index-4f5e23e0.js → index-eb0f49a0.js} +1 -1
  293. package/build/{index-e0e468cb.js → index-eb2e5fda.js} +6 -6
  294. package/build/{index-40725e8b.js → index-ec32e690.js} +3 -3
  295. package/build/{index-163d3814.js → index-eca125e1.js} +2 -2
  296. package/build/{index-d44486f8.js → index-ee7a5f96.js} +22 -22
  297. package/build/{index-ae61f98e.js → index-f1d21d7c.js} +11 -11
  298. package/build/{index-c60704f1.js → index-f61200a8.js} +15 -15
  299. package/build/index.js +126 -126
  300. package/build/{labelSorting-c9cb020f.js → labelSorting-c1a564e4.js} +4 -4
  301. package/build/lead.js +37 -37
  302. package/build/{logoIcon-8ce9a50c.js → logoIcon-ad8866f2.js} +2 -2
  303. package/build/mantine.js +25 -25
  304. package/build/misc.js +19 -19
  305. package/build/miscGetDynamicHealthTool.js +4 -4
  306. package/build/miscGetSocialList.js +8 -8
  307. package/build/miscScreenSizeContext.js +1 -1
  308. package/build/mobileBottomNavigation.js +5 -5
  309. package/build/mobileBottomNavigationIcon.js +5 -5
  310. package/build/molecules.js +79 -79
  311. package/build/moleculesArticleCard.js +6 -6
  312. package/build/moleculesArticleCardV2.js +17 -17
  313. package/build/navigation.js +49 -49
  314. package/build/navigationLogoutPopup.js +11 -11
  315. package/build/navigationProfileButton.js +27 -27
  316. package/build/onboardingV2.js +29 -29
  317. package/build/organisms.js +62 -62
  318. package/build/{paths-07bb96ba.js → paths-c45bd44a.js} +2 -2
  319. package/build/{post-e25c60f7.js → post-9d5daee8.js} +2 -2
  320. package/build/profileNavigation.js +20 -20
  321. package/build/progressBar.js +1 -1
  322. package/build/pwg.js +23 -23
  323. package/build/ssoV2.js +29 -29
  324. package/build/{store-2a85405b.js → store-86e21011.js} +3 -3
  325. package/build/subot.js +39 -39
  326. package/build/surveyOrPremiumBanner.js +34 -34
  327. package/build/surveyQuestionCard.js +11 -11
  328. package/build/{surveyThankyouCard-61ed696c.js → surveyThankyouCard-610d5b88.js} +5 -5
  329. package/build/together.js +57 -57
  330. package/build/togetherApiUtils.js +6 -6
  331. package/build/togetherAtoms.js +31 -31
  332. package/build/togetherComponentGlobalContext.js +6 -6
  333. package/build/togetherMolecules.js +52 -52
  334. package/build/togetherMoleculesCardAuthor.js +29 -29
  335. package/build/togetherMoleculesPostImagePreview.js +13 -13
  336. package/build/togetherMoleculesProfileDetail.js +40 -40
  337. package/build/togetherOrganisms.js +51 -51
  338. package/build/togetherRichTextEditor.js +20 -20
  339. package/build/togetherShareBox.js +12 -12
  340. package/build/{transform-61680d8a.js → transform-3290cdc9.js} +27 -27
  341. package/build/{translationsProvider-636d7cb5.js → translationsProvider-e38e396d.js} +1 -1
  342. package/build/{treePopoverMenu-45f06b81.js → treePopoverMenu-6bf3247e.js} +19 -19
  343. package/build/types.js +2 -2
  344. package/build/{useCartCareService-46731f77.js → useCartCareService-d0cfd97e.js} +1 -1
  345. package/build/{useHealthToolCache-b9319885.js → useHealthToolCache-1d7b3d5c.js} +1 -1
  346. package/build/{usePhoneValidator-5a391cbf.js → usePhoneValidator-58480759.js} +5 -5
  347. package/build/{usePlacesAutocomplete-4c51dc6b.js → usePlacesAutocomplete-7b28f0b4.js} +1 -1
  348. package/build/useTogetherAuthRequiredAction.js +10 -10
  349. package/build/{utils-595db140.js → utils-0b3fa7ad.js} +5 -5
  350. package/build/{utils-83aaaf9c.js → utils-496193ed.js} +3 -3
  351. package/build/{utils-bb345cce.js → utils-8330c5d1.js} +2 -2
  352. package/build/{utils-6fe19ced.js → utils-9eece90c.js} +3 -3
  353. package/build/{utils-68673897.js → utils-d20ab2ad.js} +2 -2
  354. package/build/vaccination.js +22 -22
  355. package/package.json +1 -1
  356. /package/build/{BMI_BOYS.percentile.monthly-71706d34.js → BMI_BOYS.percentile.monthly-6091271d.js} +0 -0
  357. /package/build/{BMI_BOYS.percentile.weekly-7347a0d7.js → BMI_BOYS.percentile.weekly-27cc9915.js} +0 -0
  358. /package/build/{BMI_BOYS.percentile.yearly-a91f42b3.js → BMI_BOYS.percentile.yearly-10a5e3c0.js} +0 -0
  359. /package/build/{BMI_BOYS.zscore.monthly-5a655570.js → BMI_BOYS.zscore.monthly-ea61198c.js} +0 -0
  360. /package/build/{BMI_BOYS.zscore.weekly-a9d33e3a.js → BMI_BOYS.zscore.weekly-d3739585.js} +0 -0
  361. /package/build/{BMI_BOYS.zscore.yearly-484752f7.js → BMI_BOYS.zscore.yearly-7b0cd2c0.js} +0 -0
  362. /package/build/{BMI_GIRLS.percentile.monthly-bcc5b3c5.js → BMI_GIRLS.percentile.monthly-eb6735af.js} +0 -0
  363. /package/build/{BMI_GIRLS.percentile.weekly-10944ec1.js → BMI_GIRLS.percentile.weekly-a5477a8a.js} +0 -0
  364. /package/build/{BMI_GIRLS.percentile.yearly-4cb9b07b.js → BMI_GIRLS.percentile.yearly-4e7a8798.js} +0 -0
  365. /package/build/{BMI_GIRLS.zscore.monthly-c8509ebc.js → BMI_GIRLS.zscore.monthly-517dff6e.js} +0 -0
  366. /package/build/{BMI_GIRLS.zscore.weekly-0a45a2af.js → BMI_GIRLS.zscore.weekly-ddc23d6b.js} +0 -0
  367. /package/build/{BMI_GIRLS.zscore.yearly-38fd0761.js → BMI_GIRLS.zscore.yearly-343d6b08.js} +0 -0
  368. /package/build/{ChevronDown-daab0252.js → ChevronDown-b4e1df18.js} +0 -0
  369. /package/build/{Close-6bcd5612.js → Close-eef05a78.js} +0 -0
  370. /package/build/{Google-46ae3220.js → Google-be52306b.js} +0 -0
  371. /package/build/{HEAD CIRCUM_BOYS.percentile.monthly-acd7d0c0.js → HEAD CIRCUM_BOYS.percentile.monthly-51174f35.js} +0 -0
  372. /package/build/{HEAD CIRCUM_BOYS.percentile.weekly-0624ad4a.js → HEAD CIRCUM_BOYS.percentile.weekly-3630148c.js} +0 -0
  373. /package/build/{HEAD CIRCUM_BOYS.percentile.yearly-7f5e2f03.js → HEAD CIRCUM_BOYS.percentile.yearly-732e6569.js} +0 -0
  374. /package/build/{HEAD CIRCUM_BOYS.zscore.monthly-e24a3e66.js → HEAD CIRCUM_BOYS.zscore.monthly-45229141.js} +0 -0
  375. /package/build/{HEAD CIRCUM_BOYS.zscore.weekly-f47af62d.js → HEAD CIRCUM_BOYS.zscore.weekly-4727e70f.js} +0 -0
  376. /package/build/{HEAD CIRCUM_BOYS.zscore.yearly-b9a06fde.js → HEAD CIRCUM_BOYS.zscore.yearly-41d3693e.js} +0 -0
  377. /package/build/{HEAD CIRCUM_GIRLS.percentile.monthly-2a4e90ea.js → HEAD CIRCUM_GIRLS.percentile.monthly-577f4ed0.js} +0 -0
  378. /package/build/{HEAD CIRCUM_GIRLS.percentile.weekly-55b7b3ff.js → HEAD CIRCUM_GIRLS.percentile.weekly-b999e9b0.js} +0 -0
  379. /package/build/{HEAD CIRCUM_GIRLS.percentile.yearly-3072fb36.js → HEAD CIRCUM_GIRLS.percentile.yearly-d72e0d07.js} +0 -0
  380. /package/build/{HEAD CIRCUM_GIRLS.zscore.monthly-0d75efdc.js → HEAD CIRCUM_GIRLS.zscore.monthly-74b93dcc.js} +0 -0
  381. /package/build/{HEAD CIRCUM_GIRLS.zscore.weekly-8cbb2c5b.js → HEAD CIRCUM_GIRLS.zscore.weekly-4824747d.js} +0 -0
  382. /package/build/{HEAD CIRCUM_GIRLS.zscore.yearly-8d484ee7.js → HEAD CIRCUM_GIRLS.zscore.yearly-3d27682b.js} +0 -0
  383. /package/build/{HEIGHT_BOYS.percentile.monthly-0ed745dc.js → HEIGHT_BOYS.percentile.monthly-cf725d3a.js} +0 -0
  384. /package/build/{HEIGHT_BOYS.percentile.weekly-83f4827d.js → HEIGHT_BOYS.percentile.weekly-3e534212.js} +0 -0
  385. /package/build/{HEIGHT_BOYS.percentile.yearly-5010e8d8.js → HEIGHT_BOYS.percentile.yearly-b5af53e3.js} +0 -0
  386. /package/build/{HEIGHT_BOYS.zscore.monthly-3ea70741.js → HEIGHT_BOYS.zscore.monthly-d30d9eaf.js} +0 -0
  387. /package/build/{HEIGHT_BOYS.zscore.weekly-2e3eaa3f.js → HEIGHT_BOYS.zscore.weekly-d20f484c.js} +0 -0
  388. /package/build/{HEIGHT_BOYS.zscore.yearly-2062c6ef.js → HEIGHT_BOYS.zscore.yearly-93c9733c.js} +0 -0
  389. /package/build/{HEIGHT_GIRLS.percentile.monthly-24046937.js → HEIGHT_GIRLS.percentile.monthly-70db582b.js} +0 -0
  390. /package/build/{HEIGHT_GIRLS.percentile.weekly-5d48ca6c.js → HEIGHT_GIRLS.percentile.weekly-7ed42a82.js} +0 -0
  391. /package/build/{HEIGHT_GIRLS.percentile.yearly-93eeb025.js → HEIGHT_GIRLS.percentile.yearly-1fd072b5.js} +0 -0
  392. /package/build/{HEIGHT_GIRLS.zscore.monthly-b1d98e51.js → HEIGHT_GIRLS.zscore.monthly-9a7a62bd.js} +0 -0
  393. /package/build/{HEIGHT_GIRLS.zscore.weekly-3ac2b96a.js → HEIGHT_GIRLS.zscore.weekly-45d8f6ff.js} +0 -0
  394. /package/build/{HEIGHT_GIRLS.zscore.yearly-5e0b0bb8.js → HEIGHT_GIRLS.zscore.yearly-c4dcb07c.js} +0 -0
  395. /package/build/{Locale-a078bb23.js → Locale-e037603c.js} +0 -0
  396. /package/build/{Visible-08c4be3d.js → Visible-1817e8ab.js} +0 -0
  397. /package/build/{WEIGHT_BOYS.percentile.monthly-78d2a6d0.js → WEIGHT_BOYS.percentile.monthly-d84ca033.js} +0 -0
  398. /package/build/{WEIGHT_BOYS.percentile.weekly-56168e21.js → WEIGHT_BOYS.percentile.weekly-a6485cb1.js} +0 -0
  399. /package/build/{WEIGHT_BOYS.percentile.yearly-80c8b72b.js → WEIGHT_BOYS.percentile.yearly-fac8696b.js} +0 -0
  400. /package/build/{WEIGHT_BOYS.zscore.monthly-e6e24158.js → WEIGHT_BOYS.zscore.monthly-3a019be0.js} +0 -0
  401. /package/build/{WEIGHT_BOYS.zscore.weekly-ebcacfa3.js → WEIGHT_BOYS.zscore.weekly-6e10f3ac.js} +0 -0
  402. /package/build/{WEIGHT_BOYS.zscore.yearly-cd0d70fa.js → WEIGHT_BOYS.zscore.yearly-c3bb2eb6.js} +0 -0
  403. /package/build/{WEIGHT_GIRLS.percentile.monthly-131d256b.js → WEIGHT_GIRLS.percentile.monthly-4d8ba075.js} +0 -0
  404. /package/build/{WEIGHT_GIRLS.percentile.weekly-21f14054.js → WEIGHT_GIRLS.percentile.weekly-64c08f21.js} +0 -0
  405. /package/build/{WEIGHT_GIRLS.percentile.yearly-bd1f351e.js → WEIGHT_GIRLS.percentile.yearly-1acd7fe9.js} +0 -0
  406. /package/build/{WEIGHT_GIRLS.zscore.monthly-1aa42d0e.js → WEIGHT_GIRLS.zscore.monthly-768df209.js} +0 -0
  407. /package/build/{WEIGHT_GIRLS.zscore.weekly-7c73bedc.js → WEIGHT_GIRLS.zscore.weekly-4e94e0e4.js} +0 -0
  408. /package/build/{WEIGHT_GIRLS.zscore.yearly-5f457f00.js → WEIGHT_GIRLS.zscore.yearly-84aea57f.js} +0 -0
  409. /package/build/{ageGenerate-98e62464.js → ageGenerate-bb8dad8f.js} +0 -0
  410. /package/build/{animation-c1188035.js → animation-e0f945e9.js} +0 -0
  411. /package/build/{constants-8109eafd.js → constants-78b1514b.js} +0 -0
  412. /package/build/{constants-1793f76d.js → constants-f2a6b105.js} +0 -0
  413. /package/build/{context-df75dde3.js → context-c7fe357c.js} +0 -0
  414. /package/build/{dataTransform-e60babbb.js → dataTransform-8d5fcf17.js} +0 -0
  415. /package/build/esm/{BMI_BOYS.percentile.monthly-2704f965.js → BMI_BOYS.percentile.monthly-e427aa19.js} +0 -0
  416. /package/build/esm/{BMI_BOYS.percentile.weekly-cb98a634.js → BMI_BOYS.percentile.weekly-3ee9a2b1.js} +0 -0
  417. /package/build/esm/{BMI_BOYS.percentile.yearly-cf423a0a.js → BMI_BOYS.percentile.yearly-56a16668.js} +0 -0
  418. /package/build/esm/{BMI_BOYS.zscore.monthly-685ba1c7.js → BMI_BOYS.zscore.monthly-2fc06114.js} +0 -0
  419. /package/build/esm/{BMI_BOYS.zscore.weekly-f88a217b.js → BMI_BOYS.zscore.weekly-2c502e1a.js} +0 -0
  420. /package/build/esm/{BMI_BOYS.zscore.yearly-4112d011.js → BMI_BOYS.zscore.yearly-4f317f05.js} +0 -0
  421. /package/build/esm/{BMI_GIRLS.percentile.monthly-63c6d21c.js → BMI_GIRLS.percentile.monthly-0c4618d4.js} +0 -0
  422. /package/build/esm/{BMI_GIRLS.percentile.weekly-447ff2e9.js → BMI_GIRLS.percentile.weekly-9129fe41.js} +0 -0
  423. /package/build/esm/{BMI_GIRLS.percentile.yearly-dd787daa.js → BMI_GIRLS.percentile.yearly-900dac1f.js} +0 -0
  424. /package/build/esm/{BMI_GIRLS.zscore.monthly-3a9080d3.js → BMI_GIRLS.zscore.monthly-c1d3470e.js} +0 -0
  425. /package/build/esm/{BMI_GIRLS.zscore.weekly-a6b58da1.js → BMI_GIRLS.zscore.weekly-e059c66e.js} +0 -0
  426. /package/build/esm/{BMI_GIRLS.zscore.yearly-efcd0984.js → BMI_GIRLS.zscore.yearly-831b845f.js} +0 -0
  427. /package/build/esm/{ChevronDown-13f6a5cf.js → ChevronDown-fb1a6473.js} +0 -0
  428. /package/build/esm/{Close-c1620eee.js → Close-14528d26.js} +0 -0
  429. /package/build/esm/{Google-9786875a.js → Google-83b0c254.js} +0 -0
  430. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.monthly-582c90de.js → HEAD CIRCUM_BOYS.percentile.monthly-c235e1b3.js} +0 -0
  431. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.weekly-978bac8a.js → HEAD CIRCUM_BOYS.percentile.weekly-e55f916f.js} +0 -0
  432. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.yearly-cf26e3d0.js → HEAD CIRCUM_BOYS.percentile.yearly-281dc949.js} +0 -0
  433. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.monthly-31de970e.js → HEAD CIRCUM_BOYS.zscore.monthly-08908154.js} +0 -0
  434. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.weekly-900f95f2.js → HEAD CIRCUM_BOYS.zscore.weekly-9e427235.js} +0 -0
  435. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.yearly-409f8b98.js → HEAD CIRCUM_BOYS.zscore.yearly-fa510309.js} +0 -0
  436. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.monthly-4231eb97.js → HEAD CIRCUM_GIRLS.percentile.monthly-3e6ecd43.js} +0 -0
  437. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.weekly-b02c363f.js → HEAD CIRCUM_GIRLS.percentile.weekly-7dd6d29d.js} +0 -0
  438. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.yearly-78b34ff2.js → HEAD CIRCUM_GIRLS.percentile.yearly-eb6f9c18.js} +0 -0
  439. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.monthly-0c7a31f7.js → HEAD CIRCUM_GIRLS.zscore.monthly-304e6442.js} +0 -0
  440. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.weekly-868bf312.js → HEAD CIRCUM_GIRLS.zscore.weekly-e9767e93.js} +0 -0
  441. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.yearly-e76ac89e.js → HEAD CIRCUM_GIRLS.zscore.yearly-fa0664b6.js} +0 -0
  442. /package/build/esm/{HEIGHT_BOYS.percentile.monthly-20d42076.js → HEIGHT_BOYS.percentile.monthly-eafd4583.js} +0 -0
  443. /package/build/esm/{HEIGHT_BOYS.percentile.weekly-a2798e49.js → HEIGHT_BOYS.percentile.weekly-7e4a54dc.js} +0 -0
  444. /package/build/esm/{HEIGHT_BOYS.percentile.yearly-483306f2.js → HEIGHT_BOYS.percentile.yearly-33cf9d37.js} +0 -0
  445. /package/build/esm/{HEIGHT_BOYS.zscore.monthly-42784c9d.js → HEIGHT_BOYS.zscore.monthly-5b18236e.js} +0 -0
  446. /package/build/esm/{HEIGHT_BOYS.zscore.weekly-849fe5f4.js → HEIGHT_BOYS.zscore.weekly-1e860e78.js} +0 -0
  447. /package/build/esm/{HEIGHT_BOYS.zscore.yearly-548e7e60.js → HEIGHT_BOYS.zscore.yearly-db583d8c.js} +0 -0
  448. /package/build/esm/{HEIGHT_GIRLS.percentile.monthly-c5b41a4d.js → HEIGHT_GIRLS.percentile.monthly-3d441b9c.js} +0 -0
  449. /package/build/esm/{HEIGHT_GIRLS.percentile.weekly-430ad60a.js → HEIGHT_GIRLS.percentile.weekly-99a4d6db.js} +0 -0
  450. /package/build/esm/{HEIGHT_GIRLS.percentile.yearly-ea5d2cef.js → HEIGHT_GIRLS.percentile.yearly-d9c70503.js} +0 -0
  451. /package/build/esm/{HEIGHT_GIRLS.zscore.monthly-feabe2d8.js → HEIGHT_GIRLS.zscore.monthly-3aa672a7.js} +0 -0
  452. /package/build/esm/{HEIGHT_GIRLS.zscore.weekly-6b3584e2.js → HEIGHT_GIRLS.zscore.weekly-0eb43069.js} +0 -0
  453. /package/build/esm/{HEIGHT_GIRLS.zscore.yearly-0d4773d1.js → HEIGHT_GIRLS.zscore.yearly-2141b8b2.js} +0 -0
  454. /package/build/esm/{Locale-adfd207f.js → Locale-f3ce6f4a.js} +0 -0
  455. /package/build/esm/{Visible-5b3e8bb2.js → Visible-03c5663d.js} +0 -0
  456. /package/build/esm/{WEIGHT_BOYS.percentile.monthly-79ea5ed5.js → WEIGHT_BOYS.percentile.monthly-ad14497a.js} +0 -0
  457. /package/build/esm/{WEIGHT_BOYS.percentile.weekly-df533c0b.js → WEIGHT_BOYS.percentile.weekly-9ed4f577.js} +0 -0
  458. /package/build/esm/{WEIGHT_BOYS.percentile.yearly-be9284bf.js → WEIGHT_BOYS.percentile.yearly-5ce6bf8e.js} +0 -0
  459. /package/build/esm/{WEIGHT_BOYS.zscore.monthly-33696cff.js → WEIGHT_BOYS.zscore.monthly-2d44e529.js} +0 -0
  460. /package/build/esm/{WEIGHT_BOYS.zscore.weekly-7ce33291.js → WEIGHT_BOYS.zscore.weekly-8344f718.js} +0 -0
  461. /package/build/esm/{WEIGHT_BOYS.zscore.yearly-87bf3a6e.js → WEIGHT_BOYS.zscore.yearly-7c342a5c.js} +0 -0
  462. /package/build/esm/{WEIGHT_GIRLS.percentile.monthly-02a28d8b.js → WEIGHT_GIRLS.percentile.monthly-7a4e920e.js} +0 -0
  463. /package/build/esm/{WEIGHT_GIRLS.percentile.weekly-1e556624.js → WEIGHT_GIRLS.percentile.weekly-eddbada0.js} +0 -0
  464. /package/build/esm/{WEIGHT_GIRLS.percentile.yearly-a2a7e950.js → WEIGHT_GIRLS.percentile.yearly-c2018c71.js} +0 -0
  465. /package/build/esm/{WEIGHT_GIRLS.zscore.monthly-ca966e35.js → WEIGHT_GIRLS.zscore.monthly-07077cb1.js} +0 -0
  466. /package/build/esm/{WEIGHT_GIRLS.zscore.weekly-995c55b4.js → WEIGHT_GIRLS.zscore.weekly-f766a165.js} +0 -0
  467. /package/build/esm/{WEIGHT_GIRLS.zscore.yearly-666e98e9.js → WEIGHT_GIRLS.zscore.yearly-a5f4bd57.js} +0 -0
  468. /package/build/esm/{ageGenerate-5820c481.js → ageGenerate-446d584f.js} +0 -0
  469. /package/build/esm/{animation-d8cdf774.js → animation-31934930.js} +0 -0
  470. /package/build/esm/{constants-ce5271a6.js → constants-c8a9d8cb.js} +0 -0
  471. /package/build/esm/{constants-1da5a50a.js → constants-ea552f1d.js} +0 -0
  472. /package/build/esm/{context-3ef9593e.js → context-6fd811b3.js} +0 -0
  473. /package/build/esm/{dataTransform-cbeb5762.js → dataTransform-dfbd4ef9.js} +0 -0
  474. /package/build/esm/{index-e8324372.js → index-3857d52d.js} +0 -0
  475. /package/build/esm/{index-8166c45c.js → index-4a0c644c.js} +0 -0
  476. /package/build/esm/{index-ec96ed21.js → index-5869acf8.js} +0 -0
  477. /package/build/esm/{index-56e4d976.js → index-7eb710d8.js} +0 -0
  478. /package/build/esm/{index-f488874b.js → index-bef0ef2f.js} +0 -0
  479. /package/build/esm/{index-bef69cf0.js → index-d7bc8ec4.js} +0 -0
  480. /package/build/esm/{index-be67b7ae.js → index-e7c61752.js} +0 -0
  481. /package/build/esm/{index-e6344e81.js → index-f7bcc9a8.js} +0 -0
  482. /package/build/esm/{index-a131e0d4.js → index-fc6409b1.js} +0 -0
  483. /package/build/esm/{index.styles-403f770f.js → index.styles-57582498.js} +0 -0
  484. /package/build/esm/{localizeNumberFormat-88646ced.js → localizeNumberFormat-d6a2d9ac.js} +0 -0
  485. /package/build/esm/{normalizeLink-5d0ac05d.js → normalizeLink-3a2ee5f5.js} +0 -0
  486. /package/build/esm/{number-003a0b20.js → number-698551ff.js} +0 -0
  487. /package/build/esm/{shared-f8354531.js → shared-d6ce481f.js} +0 -0
  488. /package/build/esm/{translationsContext-f5f75ec5.js → translationsContext-5536e910.js} +0 -0
  489. /package/build/esm/{tslib.es6-88ed8ad1.js → tslib.es6-cad84cc0.js} +0 -0
  490. /package/build/esm/{types-1fa82904.js → types-35ea0197.js} +0 -0
  491. /package/build/esm/{types-bb63b0f1.js → types-3f5b8509.js} +0 -0
  492. /package/build/esm/{useOutsideClick-8288aa4e.js → useOutsideClick-bbf3c9ae.js} +0 -0
  493. /package/build/esm/{useScrollbarSize-84630ccb.js → useScrollbarSize-58d67e9b.js} +0 -0
  494. /package/build/esm/{useUniqueId-781519f9.js → useUniqueId-0d9665f4.js} +0 -0
  495. /package/build/esm/{utils-308ca058.js → utils-23c578aa.js} +0 -0
  496. /package/build/esm/{utils-e7b81bdc.js → utils-2fee1cd2.js} +0 -0
  497. /package/build/{index-4dcc592d.js → index-1ab48613.js} +0 -0
  498. /package/build/{index-b262b1d4.js → index-2ae80422.js} +0 -0
  499. /package/build/{index-cf78f71e.js → index-334e7245.js} +0 -0
  500. /package/build/{index-c92c0540.js → index-4992f6a2.js} +0 -0
  501. /package/build/{index-f74dab7a.js → index-65891508.js} +0 -0
  502. /package/build/{index-858052e3.js → index-7c27f961.js} +0 -0
  503. /package/build/{index-0c2bcd44.js → index-927f36fb.js} +0 -0
  504. /package/build/{index-8f28b7cd.js → index-c0e3db0e.js} +0 -0
  505. /package/build/{index-a2e16797.js → index-e1e5960a.js} +0 -0
  506. /package/build/{index.styles-eac100df.js → index.styles-45a49aa7.js} +0 -0
  507. /package/build/{localizeNumberFormat-276f5621.js → localizeNumberFormat-87d4e8a6.js} +0 -0
  508. /package/build/{normalizeLink-d947e46b.js → normalizeLink-07a9d7be.js} +0 -0
  509. /package/build/{number-50711ee8.js → number-bbee4609.js} +0 -0
  510. /package/build/{shared-e6688092.js → shared-476b5033.js} +0 -0
  511. /package/build/{translationsContext-a3ccdf71.js → translationsContext-3fd98577.js} +0 -0
  512. /package/build/{tslib.es6-96c97478.js → tslib.es6-22cfb2d1.js} +0 -0
  513. /package/build/{types-c613708f.js → types-37591a90.js} +0 -0
  514. /package/build/{types-b89d9486.js → types-e3b056c5.js} +0 -0
  515. /package/build/{useOutsideClick-de846086.js → useOutsideClick-53be606b.js} +0 -0
  516. /package/build/{useScrollbarSize-fa69e3af.js → useScrollbarSize-e2c7cb27.js} +0 -0
  517. /package/build/{useUniqueId-f936ca4e.js → useUniqueId-a93fc94f.js} +0 -0
  518. /package/build/{utils-fe333e42.js → utils-1bdc7913.js} +0 -0
  519. /package/build/{utils-08509440.js → utils-48e32d5d.js} +0 -0
@@ -1,22 +1,27 @@
1
- import React__default, { useMemo, useRef, useCallback, useState, useReducer, useEffect } from 'react';
2
- import { Skeleton, Input, ScrollArea, Divider, Tabs, Flex, Button } from '@mantine/core';
3
- import { i as checkMarkIconUrl, P as PinIcon, h as getApiPath, u as useGeolocation } from './utils-5e210f54.js';
4
- import { a as useOutsideClick } from './useOutsideClick-8288aa4e.js';
5
- import { u as useTranslations } from './index-78e91f91.js';
1
+ import React__default, { useMemo, forwardRef, useRef, useImperativeHandle, useCallback, useState, useReducer, useEffect } from 'react';
2
+ import { Search } from '@hhgtech/icons/core';
3
+ import { Skeleton, clsx, Text as Text$1, Select, rem, useMantineTheme, Input, Stack, Flex, Box, Divider, Tabs } from '@mantine/core';
4
+ import { useDisclosure } from '@mantine/hooks';
5
+ import { i as checkMarkIconUrl, P as PinIcon, h as getApiPath, u as useGeolocation } from './utils-ab3b27b1.js';
6
+ import { a as useOutsideClick } from './useOutsideClick-bbf3c9ae.js';
7
+ import { u as useTranslations } from './index-82ea6b51.js';
6
8
  import debounce from 'lodash/debounce';
7
- import { a as ID_OPTION_CURRENT_LOCATION, M as MAPPING_CLIENT_WITH_SLUG, L as LOCALIZED_SLUGS, I as ID_OPTION_ALL_LOCATION, S as SLUG_VACIN_ID, C as CLIENT_KEY } from './constants-1da5a50a.js';
9
+ import { a as ID_OPTION_CURRENT_LOCATION, L as LOCALIZED_SLUGS, I as ID_OPTION_ALL_LOCATION, S as SLUG_VACIN_ID, C as CLIENT_KEY, M as MAPPING_CLIENT_WITH_SLUG } from './constants-ea552f1d.js';
8
10
  import styled from '@emotion/styled';
9
11
  import { theme } from './miscTheme.js';
10
- import { M as MediaQueries } from './utils-308ca058.js';
11
- import { C as Container } from './index-a131e0d4.js';
12
- import { Search } from '@hhgtech/icons/core';
13
- import { T as Text } from './index-6562a540.js';
14
- import { C as ChevronDown } from './ChevronDown-13f6a5cf.js';
15
- import { P as PATHS } from './paths-28205e0f.js';
16
- import './index-2b33f487.js';
12
+ import { M as MediaQueries } from './utils-23c578aa.js';
13
+ import { C as Container } from './index-fc6409b1.js';
14
+ import { T as Text } from './index-273f9554.js';
15
+ import { C as ChevronDown } from './ChevronDown-fb1a6473.js';
16
+ import { _ as __rest } from './tslib.es6-cad84cc0.js';
17
+ import { ArrowLeft } from '@hhgtech/icons/arrow';
18
+ import { M as Modal } from './index-9123f2b2.js';
19
+ import { P as PATHS } from './paths-8f866678.js';
20
+ import { B as Button } from './index-8884c688.js';
21
+ import './index-cfaad2c1.js';
17
22
  import 'date-fns/locale';
18
- import './index-6d341978.js';
19
- import './Locale-adfd207f.js';
23
+ import './index-5c287948.js';
24
+ import './Locale-f3ce6f4a.js';
20
25
  import './constantsSite.js';
21
26
  import './constantsDomainLocales.js';
22
27
  import './constantsRiskScreener.js';
@@ -24,9 +29,10 @@ import './constantsIsProduction.js';
24
29
  import './miscCookieHelper.js';
25
30
  import 'react-loading-skeleton';
26
31
  import 'string-format';
27
- import './translationsContext-f5f75ec5.js';
28
- import './tslib.es6-88ed8ad1.js';
29
- import './index-56e4d976.js';
32
+ import './translationsContext-5536e910.js';
33
+ import './index-7eb710d8.js';
34
+ import './index.styles-57582498.js';
35
+ import './shared-d6ce481f.js';
30
36
 
31
37
  const StyledSearchBarWrapper = styled.div ``;
32
38
  const StyleWrapperContainer = styled.div `
@@ -215,9 +221,9 @@ function reducer(state, action) {
215
221
  case ActionTypes.ClearInputSearch:
216
222
  return Object.assign(Object.assign({}, state), { focused: 'search', searchKeywords: '' });
217
223
  case ActionTypes.SelectLocation:
218
- return Object.assign(Object.assign({}, state), { focused: 'none', selectedLocation: action.payload, searchLocationKeywords: action.payload.name });
224
+ return Object.assign(Object.assign({}, state), { focused: 'none', selectedLocation: action.payload, searchLocationKeywords: action.payload.name, searchResults: {} });
219
225
  case ActionTypes.SelectSpecialty:
220
- return Object.assign(Object.assign({}, state), { focused: 'none', selectedSpecialty: action.payload });
226
+ return Object.assign(Object.assign({}, state), { focused: 'none', selectedSpecialty: action.payload, searchResults: {} });
221
227
  case ActionTypes.SelectSearchResult:
222
228
  return Object.assign(Object.assign({}, state), { searchKeywords: action.payload.name, isMobileModalOpened: false, focused: 'none', navigateTo: action.payload.url });
223
229
  case ActionTypes.FetchCitiesStart:
@@ -295,7 +301,7 @@ const StyleSearchInputsWrapper = styled.div `
295
301
  gap: 12px;
296
302
  }
297
303
  `;
298
- const StyleResultWrapper$2 = styled.div `
304
+ const StyleResultWrapper = styled.div `
299
305
  position: absolute;
300
306
  top: calc(100% + 2px);
301
307
  width: 100%;
@@ -311,7 +317,7 @@ const StyleResultWrapper$2 = styled.div `
311
317
  `;
312
318
 
313
319
  const StyledSearchResultWrapper = styled.div ``;
314
- const StyleResultHeader = styled.div `
320
+ styled.div `
315
321
  display: flex;
316
322
  justify-content: space-between;
317
323
  align-item: center;
@@ -343,9 +349,12 @@ const StyleResultItem = styled.div `
343
349
  align-items: center;
344
350
  cursor: pointer;
345
351
 
346
- &:hover {
347
- background-color: ${theme.colors.blue50};
352
+ ${MediaQueries.mbUp} {
353
+ &:hover {
354
+ background-color: ${theme.colors.blue50};
355
+ }
348
356
  }
357
+
349
358
  .image-item {
350
359
  flex: 0 0 48px;
351
360
  width: 48px;
@@ -412,8 +421,12 @@ styled.div `
412
421
  }
413
422
  `;
414
423
 
415
- const SearchResult = ({ state, type, results, location, isLoading, typeInformation, clientSlug = '', dispatch, }) => {
416
- const { locale, t } = useTranslations();
424
+ const SearchResult = ({ state, type, results,
425
+ // location,
426
+ isLoading, typeInformation,
427
+ // clientSlug = '',
428
+ dispatch, }) => {
429
+ const { t } = useTranslations();
417
430
  const { selectedLocation } = state;
418
431
  const typeSlug = useMemo(() => typeInformation[type].slug, [typeInformation, type]);
419
432
  const handleOnClick = (item) => {
@@ -434,40 +447,37 @@ const SearchResult = ({ state, type, results, location, isLoading, typeInformati
434
447
  });
435
448
  }
436
449
  };
437
- const handleSeeAll = () => {
438
- let url = `/${selectedLocation.slug}/${typeSlug}`;
439
- const slugClientUrl = MAPPING_CLIENT_WITH_SLUG[locale][clientSlug];
440
- if (slugClientUrl) {
441
- url += `/${slugClientUrl}`;
442
- }
443
- if ((type === 'doctor' || type === 'hospital') &&
444
- state.selectedSpecialty.id > 0) {
445
- url += `?specialtyId=${state.selectedSpecialty.id}`;
446
- }
447
- if (url) {
448
- dispatch({ type: ActionTypes.NavigateTo, payload: url });
449
- }
450
- };
450
+ // const handleSeeAll = () => {
451
+ // let url = `/${selectedLocation.slug}/${typeSlug}`
452
+ // const slugClientUrl = MAPPING_CLIENT_WITH_SLUG[locale][clientSlug]
453
+ // if (slugClientUrl) {
454
+ // url += `/${slugClientUrl}`
455
+ // }
456
+ // if (
457
+ // (type === 'doctor' || type === 'hospital') &&
458
+ // state.selectedSpecialty.id > 0
459
+ // ) {
460
+ // url += `?specialtyId=${state.selectedSpecialty.id}`
461
+ // }
462
+ // if (url) {
463
+ // dispatch({ type: ActionTypes.NavigateTo, payload: url })
464
+ // }
465
+ // }
466
+ if (results === null)
467
+ return null;
451
468
  return (React__default.createElement(StyledSearchResultWrapper, null,
452
- React__default.createElement(StyleResultHeader, null,
453
- React__default.createElement("div", { className: "title" }, t('booking.searchResult.description', {
454
- search_type: typeInformation[type].name,
455
- search_location: location,
456
- })),
457
- results.length > 0 && (React__default.createElement("div", { className: "btn-see-all", onClick: handleSeeAll }, t('home.seeAll')))),
458
- React__default.createElement(StyleResultBody, null,
459
- isLoading &&
460
- Array(3)
461
- .fill(undefined)
462
- .map((_, i) => (React__default.createElement(StyleResultItem, { key: type + 'loading' + i, className: i === 2 ? 'last-item' : '' },
463
- React__default.createElement("div", { className: "image-item" },
464
- React__default.createElement(Skeleton, { height: 48, circle: true, mb: "xl", animate: true })),
465
- React__default.createElement("div", { className: "infor" },
466
- React__default.createElement("div", { className: "title" },
467
- React__default.createElement(Skeleton, { height: 8, mt: 10, radius: "xl", animate: true })),
468
- React__default.createElement("div", { className: "description" },
469
- React__default.createElement("div", { className: "sub-description" },
470
- React__default.createElement(Skeleton, { height: 8, mt: 10, radius: "xl", width: "80%", animate: true }))))))),
469
+ React__default.createElement(StyleResultBody, { className: "search-results__body" },
470
+ isLoading && (React__default.createElement("div", { className: "skeleton-result" }, Array(3)
471
+ .fill(undefined)
472
+ .map((_, i) => (React__default.createElement(StyleResultItem, { key: type + 'loading' + i, className: i === 2 ? 'last-item' : '' },
473
+ React__default.createElement("div", { className: "image-item" },
474
+ React__default.createElement(Skeleton, { height: 48, circle: true, mb: "xl", animate: true })),
475
+ React__default.createElement("div", { className: "infor" },
476
+ React__default.createElement("div", { className: "title" },
477
+ React__default.createElement(Skeleton, { height: 8, mt: 10, radius: "xl", animate: true })),
478
+ React__default.createElement("div", { className: "description" },
479
+ React__default.createElement("div", { className: "sub-description" },
480
+ React__default.createElement(Skeleton, { height: 8, mt: 10, radius: "xl", width: "80%", animate: true }))))))))),
471
481
  !isLoading && results && results.length > 0 && (React__default.createElement(React__default.Fragment, null, results.map((item, index) => {
472
482
  var _a, _b;
473
483
  const isLastItem = (results.length > 4 && index === 3) ||
@@ -485,7 +495,7 @@ const SearchResult = ({ state, type, results, location, isLoading, typeInformati
485
495
  if (index >= 4) {
486
496
  return React__default.createElement(React__default.Fragment, null);
487
497
  }
488
- return (React__default.createElement(StyleResultItem, { key: item.id, className: isLastItem ? 'last-item' : '', onClick: () => handleOnClick(item) },
498
+ return (React__default.createElement(StyleResultItem, { key: item.id, className: clsx(isLastItem ? 'last-item' : '', 'result-item'), onClick: () => handleOnClick(item) },
489
499
  React__default.createElement("div", { className: "image-item" },
490
500
  React__default.createElement("img", { src: item.logo || item.avatar, alt: item.name })),
491
501
  React__default.createElement("div", { className: "infor" },
@@ -494,7 +504,14 @@ const SearchResult = ({ state, type, results, location, isLoading, typeInformati
494
504
  typeInformation[type].icon,
495
505
  React__default.createElement("div", { className: "sub-description" }, subDescription)))));
496
506
  }))),
497
- !isLoading && (results === null || results === void 0 ? void 0 : results.length) === 0 && (React__default.createElement(Text, { size: "sm", color: theme.colors.gray400 }, t('booking.searchBar.noResults'))))));
507
+ !isLoading && (results === null || results === void 0 ? void 0 : results.length) === 0 && (React__default.createElement(Text, { size: "sm", color: theme.colors.gray400, className: "noresult-block" }, t('booking.searchBar.noResults'))))));
508
+ };
509
+
510
+ const SearchResultContent = ({ state, type, isLoading, clientSlug, typeInformation, dispatch, }) => {
511
+ var _a;
512
+ if (state.focused !== 'search')
513
+ return null;
514
+ return (React__default.createElement(SearchResult, { type: type, state: state, results: ((_a = state.searchResults) === null || _a === void 0 ? void 0 : _a[type]) || null, location: state.selectedLocation.name, dispatch: dispatch, isLoading: isLoading, typeInformation: typeInformation, clientSlug: clientSlug }));
498
515
  };
499
516
 
500
517
  const StyleSearchSpecialtyWrapper = styled.div `
@@ -507,7 +524,7 @@ const StyleSearchSpecialtyWrapper = styled.div `
507
524
  gap: 12px;
508
525
  }
509
526
  `;
510
- const StyleResultWrapper$1 = styled.div `
527
+ styled.div `
511
528
  position: absolute;
512
529
  top: calc(100% + 2px);
513
530
  width: calc(100% + 100px);
@@ -598,88 +615,181 @@ const HospitalIcon = () => (React__default.createElement("svg", { width: "16", h
598
615
  const SpecialtyIcon = () => (React__default.createElement("svg", { width: "16", height: "16", viewBox: "0 0 16 16" },
599
616
  React__default.createElement("path", { d: "M3.833.5a3.333 3.333 0 1 0 0 6.667 3.333 3.333 0 0 0 0-6.667M10.5.5c-.92 0-1.667.746-1.667 1.667V5.5c0 .92.746 1.667 1.667 1.667h3.333c.921 0 1.667-.746 1.667-1.667V2.167C15.5 1.246 14.754.5 13.833.5zM3.833 8.833a3.333 3.333 0 1 0 0 6.667 3.333 3.333 0 0 0 0-6.667m8.334 0a3.333 3.333 0 1 0 0 6.667 3.333 3.333 0 0 0 0-6.667", fill: "#9AA2AC" })));
600
617
 
601
- const SearchSpecialty = ({ state, isMobile, debouncedFetchSearchResults, selectedLocation, onSpecialtyClick, dispatch, }) => {
602
- var _a;
618
+ const CustomSelectItem$1 = forwardRef((_a, ref) => {
619
+ var { label, value, specialty } = _a, others = __rest(_a, ["label", "value", "specialty"]);
620
+ return (React__default.createElement("div", Object.assign({ ref: ref }, others),
621
+ React__default.createElement(StyledSpecialtyItem, { key: value,
622
+ // onClick={(evt) => {
623
+ // evt.nativeEvent.stopImmediatePropagation()
624
+ // if (onSpecialtyClick) {
625
+ // onSpecialtyClick({
626
+ // ...specialty,
627
+ // total_doctor: 0,
628
+ // })
629
+ // }
630
+ // }}
631
+ role: "button", tabIndex: 0, "aria-label": `Select ${label} as location` },
632
+ React__default.createElement("div", { className: "image-item" }, specialty.thumbnail ? (React__default.createElement("img", { src: specialty.thumbnail, alt: label })) : (React__default.createElement(SpecialtyIcon, null))),
633
+ React__default.createElement(Text$1, { size: "md" }, label))));
634
+ });
635
+
636
+ const SearchSpecialty = ({ state,
637
+ // debouncedFetchSearchResults,
638
+ onSpecialtyClick, dispatch, }) => {
603
639
  const { t, locale } = useTranslations();
604
640
  const inputSpecialtyWrapperRef = useRef(null);
605
641
  const slugs = useMemo(() => LOCALIZED_SLUGS[locale], [locale]);
606
- const styleSpecialties = useMemo(() => {
607
- return {
608
- wrapper: {
609
- '&:after': {
610
- content: '""',
611
- width: '1px',
612
- height: '20px',
613
- backgroundColor: '#E4E8EC',
614
- position: 'absolute',
615
- right: 0,
616
- top: '13px',
617
- },
618
- },
619
- input: {
620
- border: isMobile ? 'border: 1px solid #d9d9d9' : 'none',
621
- height: isMobile ? '40px' : '46px !important',
622
- paddingRight: '30px',
623
- '&:focus': {
624
- boxShadow: isMobile ? 'box-shadow: 0px 0px 0px 2px #91caff' : 'none',
625
- },
626
- },
627
- rightSection: {
628
- width: '30px',
629
- svg: {
630
- fontSize: '20px',
631
- },
632
- },
633
- };
634
- }, [isMobile]);
635
- const handleSearchSpecialtyInputChange = useCallback(function handleSearchSpecialtyInputChange(value) {
636
- // dispatch({ type: ActionTypes.ChangeInputLocation, payload: value })
637
- // if (value.trim().length > SEARCH_KEYWORD_MIN_LENGTH[state.locale]) {
638
- // debouncedFetchSearchResults(value.trim())
639
- // } else {
640
- // debouncedFetchSearchResults.cancel()
641
- // dispatch({ type: ActionTypes.DisplayInitialCities })
642
- // }
643
- console.log(value);
644
- }, [debouncedFetchSearchResults, dispatch]);
642
+ // const styleSpecialties = useMemo(() => {
643
+ // return {
644
+ // wrapper: {
645
+ // '&:after': {
646
+ // content: '""',
647
+ // width: '1px',
648
+ // height: '20px',
649
+ // backgroundColor: '#E4E8EC',
650
+ // position: 'absolute',
651
+ // right: 0,
652
+ // top: '13px',
653
+ // },
654
+ // },
655
+ // input: {
656
+ // border: isMobile ? 'border: 1px solid #d9d9d9' : 'none',
657
+ // height: isMobile ? '40px' : '46px !important',
658
+ // paddingRight: '30px',
659
+ // '&:focus': {
660
+ // boxShadow: isMobile ? 'box-shadow: 0px 0px 0px 2px #91caff' : 'none',
661
+ // },
662
+ // },
663
+ // rightSection: {
664
+ // width: '30px',
665
+ // svg: {
666
+ // fontSize: '20px',
667
+ // },
668
+ // },
669
+ // } as any
670
+ // }, [isMobile])
671
+ // const handleSearchSpecialtyInputChange = useCallback(
672
+ // function handleSearchSpecialtyInputChange(value: string) {
673
+ // // dispatch({ type: ActionTypes.ChangeInputLocation, payload: value })
674
+ // // if (value.trim().length > SEARCH_KEYWORD_MIN_LENGTH[state.locale]) {
675
+ // // debouncedFetchSearchResults(value.trim())
676
+ // // } else {
677
+ // // debouncedFetchSearchResults.cancel()
678
+ // // dispatch({ type: ActionTypes.DisplayInitialCities })
679
+ // // }
680
+ // console.log(value)
681
+ // },
682
+ // [debouncedFetchSearchResults, dispatch],
683
+ // )
645
684
  useOutsideClick(inputSpecialtyWrapperRef, () => {
646
685
  dispatch({ type: ActionTypes.ClickOutsideInputSpecialty });
647
686
  });
687
+ const specialtyData = [
688
+ {
689
+ name: t('booking.searchBar.allSpecialties'),
690
+ id: -1,
691
+ thumbnail: '',
692
+ total_doctor: 0,
693
+ slug: slugs.SPECIALTIES,
694
+ },
695
+ ...state.allSpecialties,
696
+ ];
697
+ const selectValue = state.selectedSpecialty && typeof state.selectedSpecialty.id === 'number'
698
+ ? String(state.selectedSpecialty.id)
699
+ : null;
648
700
  return (React__default.createElement(StyleSearchSpecialtyWrapper, { ref: inputSpecialtyWrapperRef },
649
- React__default.createElement(Input.Wrapper, null,
650
- React__default.createElement(Input, { size: isMobile ? 'md' : 'lg', placeholder: t('booking.searchPopup.specialties'), value: ((_a = state === null || state === void 0 ? void 0 : state.selectedSpecialty) === null || _a === void 0 ? void 0 : _a.name) || '', rightSection: React__default.createElement(ChevronDown, null), styles: styleSpecialties, onFocus: () => dispatch({ type: ActionTypes.FocusInputSpecialty }), onChange: (event) => {
651
- handleSearchSpecialtyInputChange(event.target.value);
652
- } })),
653
- state.focused === 'specialty' && (React__default.createElement(StyleResultWrapper$1, null,
654
- React__default.createElement(StyledSpecialtyItem, { key: "all-location", role: "button", tabIndex: 0, onClick: () => {
655
- if (onSpecialtyClick) {
656
- onSpecialtyClick({
657
- name: t('booking.searchBar.allSpecialties'),
658
- id: -1,
659
- thumbnail: '',
660
- total_doctor: 0,
661
- slug: slugs.SPECIALTIES,
662
- });
663
- }
664
- } },
665
- React__default.createElement("div", { className: "image-item" },
666
- React__default.createElement(SpecialtyIcon, null)),
667
- React__default.createElement(Text, { size: "md" }, t('booking.searchBar.allSpecialties'))),
668
- state.allSpecialties.map((specialty) => (React__default.createElement(StyledSpecialtyItem, { key: specialty.id, onClick: (evt) => {
669
- evt.nativeEvent.stopImmediatePropagation();
670
- if (onSpecialtyClick) {
671
- onSpecialtyClick(Object.assign(Object.assign({}, specialty), { total_doctor: 0 }));
672
- }
673
- }, role: "button", tabIndex: 0, "aria-label": `Select ${specialty.name} as location`, isSelected: (selectedLocation === null || selectedLocation === void 0 ? void 0 : selectedLocation.id) === specialty.id },
674
- React__default.createElement("div", { className: "image-item" },
675
- React__default.createElement("img", { src: specialty.thumbnail, alt: specialty.name })),
676
- React__default.createElement(Text, { size: "md" }, specialty.name))))))));
701
+ React__default.createElement(Select, { value: selectValue, placeholder: t('booking.searchPopup.specialties'), searchable: true, nothingFound: t('common.noResult'), maxDropdownHeight: 340, dropdownPosition: "bottom", data: specialtyData.map((specialty) => ({
702
+ value: String(specialty.id),
703
+ label: specialty.name,
704
+ specialty,
705
+ })), rightSection: React__default.createElement(ChevronDown, { style: { width: 20, height: 20 } }), styles: (theme) => ({
706
+ dropdown: {
707
+ left: '0 !important',
708
+ border: 0,
709
+ marginTop: -7,
710
+ borderRadius: 0,
711
+ '& [data-mantine-scrollbar]': {
712
+ '&[data-orientation="vertical"]': {
713
+ width: '6px',
714
+ },
715
+ },
716
+ [theme.fn.largerThan('sm')]: {
717
+ minWidth: 264,
718
+ width: `264px !important`,
719
+ },
720
+ },
721
+ item: {
722
+ padding: 0,
723
+ '&[data-selected]': {
724
+ '&, &:hover': {
725
+ backgroundColor: 'transparent',
726
+ color: 'inherit',
727
+ },
728
+ },
729
+ '&[data-hovered]': {
730
+ backgroundColor: 'transparent',
731
+ },
732
+ },
733
+ input: {
734
+ '&:not(.mantine-Textarea-input)': {
735
+ height: 40,
736
+ fontSize: rem(14),
737
+ paddingLeft: 14,
738
+ paddingRight: 14,
739
+ [theme.fn.largerThan('sm')]: {
740
+ height: 46,
741
+ fontSize: rem(16),
742
+ paddingLeft: 16,
743
+ paddingRight: 16,
744
+ borderColor: 'transparent',
745
+ },
746
+ '&:focus, &:focus-within': {
747
+ outline: 'none',
748
+ boxShadow: 'none',
749
+ },
750
+ },
751
+ },
752
+ itemsWrapper: {
753
+ padding: 0,
754
+ },
755
+ wrapper: {
756
+ [theme.fn.largerThan('sm')]: {
757
+ position: 'relative',
758
+ '&:after': {
759
+ content: '""',
760
+ width: '1px',
761
+ height: '20px',
762
+ backgroundColor: '#E4E8EC',
763
+ position: 'absolute',
764
+ right: 0,
765
+ top: '13px',
766
+ },
767
+ },
768
+ },
769
+ }), itemComponent: CustomSelectItem$1, filter: (value, item) => item.label.toLowerCase().includes(value.toLowerCase().trim()), onChange: (value) => {
770
+ if (value == null)
771
+ return;
772
+ const specialty = specialtyData.find((i) => String(i.id) === value);
773
+ if (!specialty)
774
+ return;
775
+ onSpecialtyClick(Object.assign(Object.assign(Object.assign({}, specialty), { thumbnail: specialty.thumbnail || '' }), (Number(value) !== -1 && {
776
+ total_doctor: 0,
777
+ })));
778
+ } })));
677
779
  };
678
780
 
679
- const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typeInformation, debouncedFetchSearchResults, trackingAttributes, hideSpecialtySelection = false, clientSlug = '', focusSearchInput, onSearch, onEnterSearch, dispatch, }) => {
680
- var _a;
781
+ const SearchInputs = forwardRef(({ state, type, isMobile, isLoading, initalSearchValue, typeInformation, debouncedFetchSearchResults, trackingAttributes, hideSpecialtySelection = false, clientSlug = '', onSearch, onFocusInput, onEnterSearch, dispatch, onlyShowSearchBox, onChangeSpecialty, }, ref) => {
681
782
  const { t } = useTranslations();
783
+ const theme = useMantineTheme();
682
784
  const inputSearchWrapperRef = useRef(null);
785
+ const internalInputRef = useRef(null);
786
+ useImperativeHandle(ref, () => ({
787
+ focus: () => {
788
+ var _a;
789
+ (_a = internalInputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
790
+ },
791
+ }));
792
+ const hasSearchIcon = !onlyShowSearchBox;
683
793
  const gaAttributes = useMemo(() => {
684
794
  if (trackingAttributes) {
685
795
  return {
@@ -693,20 +803,16 @@ const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typ
693
803
  }
694
804
  }, [trackingAttributes]);
695
805
  const placeholderSearch = useMemo(() => {
696
- if (type === 'doctor') {
806
+ if (type === 'doctor')
697
807
  return t('booking.searchBar.placeholder.doctor');
698
- }
699
- if (type === 'service') {
808
+ if (type === 'service')
700
809
  return t('booking.searchBar.placeholder.service');
701
- }
702
- if (type === 'hospital') {
810
+ if (type === 'hospital')
703
811
  return t('booking.searchBar.placeholder.hospital');
704
- }
705
- if (type === 'specialty') {
812
+ if (type === 'specialty')
706
813
  return t('booking.searchBar.placeholder.specialty');
707
- }
708
814
  return '';
709
- }, [type]);
815
+ }, [type, t]);
710
816
  const styleInputWrapper = useMemo(() => {
711
817
  return {
712
818
  root: {
@@ -716,7 +822,11 @@ const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typ
716
822
  display: 'none',
717
823
  },
718
824
  input: {
719
- paddingLeft: '48px',
825
+ paddingLeft: hasSearchIcon ? 48 : 16,
826
+ [theme.fn.smallerThan('sm')]: {
827
+ height: 40,
828
+ fontSize: rem(14),
829
+ },
720
830
  },
721
831
  '.mantine-Input-icon': {
722
832
  left: '0',
@@ -724,22 +834,22 @@ const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typ
724
834
  },
725
835
  },
726
836
  };
727
- }, []);
837
+ }, [hasSearchIcon, theme]);
728
838
  const styleInput = useMemo(() => {
729
839
  return {
730
840
  icon: {
731
- left: '165px',
841
+ left: '205px',
732
842
  },
733
843
  input: {
734
844
  color: '#262626',
735
845
  '&[data-with-icon="true"]': {
736
- paddingLeft: '205px',
846
+ paddingLeft: '245px',
737
847
  paddingRight: '16px',
738
848
  },
739
849
  },
740
850
  rightSection: {
741
851
  left: 0,
742
- width: '165px',
852
+ width: '205px',
743
853
  padding: '1px',
744
854
  },
745
855
  };
@@ -752,7 +862,7 @@ const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typ
752
862
  };
753
863
  }, []);
754
864
  useOutsideClick(inputSearchWrapperRef, () => {
755
- dispatch({ type: ActionTypes.ClickOutsideInputSearch });
865
+ !isMobile && dispatch({ type: ActionTypes.ClickOutsideInputSearch });
756
866
  });
757
867
  const handleSearchInputChange = useCallback(function handleSearchInputChange(value) {
758
868
  dispatch({ type: ActionTypes.ChangeInputSearch, payload: value });
@@ -764,40 +874,84 @@ const SearchInputs = ({ state, type, isMobile, isLoading, initalSearchValue, typ
764
874
  value.trim().length === 0) {
765
875
  debouncedFetchSearchResults(value.trim(), state, type, clientSlug);
766
876
  }
767
- else {
768
- debouncedFetchSearchResults.cancel();
769
- dispatch({ type: ActionTypes.DisplayInitialSearchResults });
770
- }
771
- }, [dispatch, state, type]);
877
+ }, [
878
+ dispatch,
879
+ state,
880
+ type,
881
+ initalSearchValue,
882
+ debouncedFetchSearchResults,
883
+ clientSlug,
884
+ onSearch,
885
+ ]);
772
886
  const handleSpecialtyClick = useCallback(function handleSpecialtyClick(specialty) {
887
+ var _a;
773
888
  dispatch({ type: ActionTypes.SelectSpecialty, payload: specialty });
774
- focusSearchInput();
775
- }, [dispatch]);
889
+ onChangeSpecialty === null || onChangeSpecialty === void 0 ? void 0 : onChangeSpecialty(specialty);
890
+ !isMobile && ((_a = internalInputRef.current) === null || _a === void 0 ? void 0 : _a.focus());
891
+ }, [dispatch, onChangeSpecialty]);
776
892
  const inputOnKeyDown = useCallback((e) => {
777
- if (e.keyCode === 13) {
893
+ if (e.key === 'Enter') {
778
894
  e.stopPropagation();
779
895
  e.preventDefault();
780
896
  onEnterSearch && onEnterSearch();
781
897
  }
782
898
  }, [onEnterSearch]);
783
899
  return (React__default.createElement(StyleSearchInputsWrapper, { ref: inputSearchWrapperRef }, type === 'specialty' ? (React__default.createElement(Input.Wrapper, { styles: styleInputWrapper },
784
- React__default.createElement(Input, { icon: React__default.createElement(Search, null), size: isMobile ? 'md' : 'lg', placeholder: placeholderSearch, styles: styleInputSpecialties, value: state.searchKeywords, onFocus: () => dispatch({ type: ActionTypes.FocusInputSearchSpecialty }), onChange: (event) => {
900
+ React__default.createElement(Input, { ref: internalInputRef, icon: hasSearchIcon && React__default.createElement(Search, null), size: isMobile ? 'md' : 'lg', placeholder: placeholderSearch, styles: styleInputSpecialties, value: state.searchKeywords, onFocus: () => dispatch({ type: ActionTypes.FocusInputSearchSpecialty }), onChange: (event) => {
785
901
  handleSearchInputChange(event.target.value);
786
902
  }, onKeyDown: inputOnKeyDown }))) : (React__default.createElement(React__default.Fragment, null,
787
903
  type === 'service' ? (React__default.createElement(Input.Wrapper, { styles: styleInputWrapper },
788
- React__default.createElement(Input, { icon: React__default.createElement(Search, null), size: isMobile ? 'md' : 'lg', name: "search-results", placeholder: placeholderSearch, onFocus: () => dispatch({ type: ActionTypes.FocusInputSearch }), value: state.searchKeywords, onChange: (event) => {
904
+ React__default.createElement(Input, { ref: internalInputRef, icon: hasSearchIcon && React__default.createElement(Search, null), size: isMobile ? 'md' : 'lg', name: "search-results", placeholder: placeholderSearch, onFocus: () => {
905
+ dispatch({ type: ActionTypes.FocusInputSearch });
906
+ onFocusInput === null || onFocusInput === void 0 ? void 0 : onFocusInput();
907
+ }, value: state.searchKeywords, onChange: (event) => {
789
908
  handleSearchInputChange(event.target.value);
790
909
  }, onKeyDown: inputOnKeyDown }))) : (React__default.createElement(React__default.Fragment, null, isMobile && !hideSpecialtySelection ? (React__default.createElement(React__default.Fragment, null,
791
- React__default.createElement(SearchSpecialty, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchSearchResults: debouncedFetchSearchResults, onSpecialtyClick: handleSpecialtyClick }),
910
+ !onlyShowSearchBox && (React__default.createElement(SearchSpecialty, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchSearchResults: debouncedFetchSearchResults, onSpecialtyClick: handleSpecialtyClick })),
792
911
  React__default.createElement(Input.Wrapper, { styles: styleInputWrapper },
793
- React__default.createElement(Input, { icon: React__default.createElement(Search, null), size: "md", placeholder: placeholderSearch, value: state.searchKeywords, name: "search-results", onFocus: () => dispatch({ type: ActionTypes.FocusInputSearch }), onChange: (event) => {
912
+ React__default.createElement(Input, { ref: internalInputRef, icon: hasSearchIcon && React__default.createElement(Search, null), size: "md", placeholder: placeholderSearch, value: state.searchKeywords, name: "search-results", onFocus: () => {
913
+ dispatch({ type: ActionTypes.FocusInputSearch });
914
+ onFocusInput === null || onFocusInput === void 0 ? void 0 : onFocusInput();
915
+ }, onChange: (event) => {
794
916
  handleSearchInputChange(event.target.value);
795
917
  }, onKeyDown: inputOnKeyDown })))) : (React__default.createElement(Input.Wrapper, { styles: styleInputWrapper, className: hideSpecialtySelection ? 'hide-specialty-selection' : '' },
796
- React__default.createElement(Input, Object.assign({ icon: React__default.createElement(Search, null), size: "lg", placeholder: placeholderSearch, styles: styleInput, name: "search-results", autoComplete: "off", value: state.searchKeywords, onChange: (event) => {
918
+ React__default.createElement(Input, Object.assign({ ref: internalInputRef, icon: hasSearchIcon && React__default.createElement(Search, null), size: "lg", placeholder: placeholderSearch, styles: styleInput, name: "search-results", autoComplete: "off", value: state.searchKeywords, onChange: (event) => {
797
919
  handleSearchInputChange(event.target.value);
798
- }, onFocus: () => dispatch({ type: ActionTypes.FocusInputSearch }), onKeyDown: inputOnKeyDown }, gaAttributes, { rightSection: hideSpecialtySelection ? (React__default.createElement(React__default.Fragment, null)) : (React__default.createElement(SearchSpecialty, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchSearchResults: debouncedFetchSearchResults, onSpecialtyClick: handleSpecialtyClick })) })))))),
799
- state.focused === 'search' && (React__default.createElement(StyleResultWrapper$2, null,
800
- React__default.createElement(SearchResult, { type: type, state: state, results: ((_a = state.searchResults) === null || _a === void 0 ? void 0 : _a[type]) || [], location: state.selectedLocation.name, dispatch: dispatch, isLoading: isLoading, typeInformation: typeInformation, clientSlug: clientSlug })))))));
920
+ }, onFocus: () => {
921
+ dispatch({ type: ActionTypes.FocusInputSearch });
922
+ onFocusInput === null || onFocusInput === void 0 ? void 0 : onFocusInput();
923
+ }, onKeyDown: inputOnKeyDown }, gaAttributes, { rightSection: hideSpecialtySelection ? (React__default.createElement(React__default.Fragment, null)) : (!onlyShowSearchBox && (React__default.createElement(SearchSpecialty, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchSearchResults: debouncedFetchSearchResults, onSpecialtyClick: handleSpecialtyClick }))) })))))),
924
+ !isMobile && (React__default.createElement(StyleResultWrapper, null,
925
+ React__default.createElement(SearchResultContent, { type: type, state: state, dispatch: dispatch, isLoading: isLoading, typeInformation: typeInformation, clientSlug: clientSlug })))))));
926
+ });
927
+ SearchInputs.displayName = 'SearchInputs';
928
+
929
+ const ModalSearchResult = (_a) => {
930
+ var { searchInputEle, closeModal, children } = _a, props = __rest(_a, ["searchInputEle", "closeModal", "children"]);
931
+ const theme = useMantineTheme();
932
+ return (React__default.createElement(Modal, Object.assign({}, props, { zIndex: 310, fullScreen: true, styles: {
933
+ content: {
934
+ borderRadius: 0,
935
+ height: '100%',
936
+ '.search-results__body': { padding: 0 },
937
+ '.result-item': {
938
+ paddingLeft: 16,
939
+ paddingRight: 16,
940
+ },
941
+ '.noresult-block': {
942
+ padding: 16,
943
+ },
944
+ '.skeleton-result': {
945
+ padding: 16,
946
+ },
947
+ },
948
+ header: { display: 'none' },
949
+ } }),
950
+ React__default.createElement(Stack, { spacing: 16, sx: { paddingTop: 16 } },
951
+ React__default.createElement(Flex, { align: 'center', gap: 12 },
952
+ React__default.createElement(ArrowLeft, { size: 28, onClick: closeModal, color: theme.fn.primaryColor() }),
953
+ React__default.createElement(Box, { sx: { width: '100%' } }, searchInputEle)),
954
+ children)));
801
955
  };
802
956
 
803
957
  const StyleSearchLocationWrapper = styled.div `
@@ -810,7 +964,7 @@ const StyleSearchLocationWrapper = styled.div `
810
964
  gap: 12px;
811
965
  }
812
966
  `;
813
- const StyleResultWrapper = styled.div `
967
+ styled.div `
814
968
  position: absolute;
815
969
  top: calc(100% + 2px);
816
970
  width: 100%;
@@ -833,17 +987,6 @@ const StyledLocationItem = styled.div `
833
987
  gap: 14px;
834
988
  overflow: hidden;
835
989
 
836
- ${({ isSelected }) => isSelected &&
837
- `
838
- &::after {
839
- content: ${checkMarkIconUrl};
840
- top: 50%;
841
- right: 18px;
842
- position: absolute;
843
- transform: translateY(-50%);
844
- }
845
- `}
846
-
847
990
  & + li::before {
848
991
  content: '';
849
992
  position: absolute;
@@ -878,9 +1021,29 @@ const StyledPinIcon = styled(PinIcon) `
878
1021
  flex: 0 0 12px;
879
1022
  `;
880
1023
 
881
- const SearchLocation = ({ state, isMobile, debouncedFetchCitiesByKeyword, selectedLocation, trackingAttributes, onLocationClick, dispatch, }) => {
1024
+ const CustomSelectItem = forwardRef((_a, ref) => {
1025
+ var { label, value } = _a, others = __rest(_a, ["label", "value"]);
1026
+ return (React__default.createElement("div", Object.assign({ ref: ref }, others),
1027
+ React__default.createElement(StyledLocationItem, { key: value, role: "button", tabIndex: 0, "aria-label": `Select ${label} as location`, className: "location-item" },
1028
+ React__default.createElement(StyledPinIcon, { color: theme.colors.neutral400 }),
1029
+ React__default.createElement(Text$1, { size: "md" }, label))));
1030
+ });
1031
+
1032
+ const SearchLocation = ({ state, debouncedFetchCitiesByKeyword, selectedLocation, trackingAttributes, onLocationClick, dispatch, }) => {
1033
+ var _a;
882
1034
  const { t, locale } = useTranslations();
883
1035
  const inputLocationWrapperRef = useRef(null);
1036
+ const citiesData = useMemo(() => {
1037
+ var _a;
1038
+ return [
1039
+ {
1040
+ name: t('booking.searchBar.allLocations'),
1041
+ id: ID_OPTION_ALL_LOCATION,
1042
+ slug: (_a = LOCALIZED_SLUGS[locale]) === null || _a === void 0 ? void 0 : _a.ALL,
1043
+ },
1044
+ ...state.cities,
1045
+ ];
1046
+ }, [state.cities, t, locale]);
884
1047
  const gaAttributes = useMemo(() => {
885
1048
  if (trackingAttributes) {
886
1049
  return {
@@ -889,9 +1052,7 @@ const SearchLocation = ({ state, isMobile, debouncedFetchCitiesByKeyword, select
889
1052
  'data-event-label': trackingAttributes.dataEventLabel,
890
1053
  };
891
1054
  }
892
- else {
893
- return {};
894
- }
1055
+ return {};
895
1056
  }, [trackingAttributes]);
896
1057
  const handleSearchLocationInputChange = useCallback(function handleSearchLocationInputChange(value) {
897
1058
  dispatch({ type: ActionTypes.ChangeInputLocation, payload: value });
@@ -902,37 +1063,90 @@ const SearchLocation = ({ state, isMobile, debouncedFetchCitiesByKeyword, select
902
1063
  debouncedFetchCitiesByKeyword.cancel();
903
1064
  dispatch({ type: ActionTypes.DisplayInitialCities });
904
1065
  }
905
- }, [debouncedFetchCitiesByKeyword, dispatch]);
1066
+ }, [debouncedFetchCitiesByKeyword, dispatch, state.locale]);
906
1067
  useOutsideClick(inputLocationWrapperRef, () => {
907
1068
  dispatch({ type: ActionTypes.ClickOutsideInputLocation });
908
1069
  });
1070
+ const stateValue = (_a = selectedLocation === null || selectedLocation === void 0 ? void 0 : selectedLocation.id) !== null && _a !== void 0 ? _a : null;
1071
+ const defaultValue = stateValue === null ? undefined : String(stateValue);
909
1072
  return (React__default.createElement(StyleSearchLocationWrapper, { ref: inputLocationWrapperRef },
910
- React__default.createElement(Input.Wrapper, null,
911
- React__default.createElement(Input, Object.assign({ size: isMobile ? 'md' : 'lg', placeholder: "Search location", value: state.searchLocationKeywords, onFocus: () => dispatch({ type: ActionTypes.FocusInputLocation }), onChange: (event) => {
912
- handleSearchLocationInputChange(event.target.value);
913
- } }, gaAttributes))),
914
- state.focused === 'location' && (React__default.createElement(StyleResultWrapper, null,
915
- React__default.createElement(ScrollArea, { scrollbarSize: 6, styles: { viewport: { maxHeight: 400 } } },
916
- React__default.createElement(StyledLocationItem, { key: "all-location", role: "button", tabIndex: 0, onClick: () => {
917
- var _a;
918
- if (onLocationClick) {
919
- onLocationClick({
920
- name: t('booking.searchBar.allLocations'),
921
- id: ID_OPTION_ALL_LOCATION,
922
- slug: (_a = LOCALIZED_SLUGS[locale]) === null || _a === void 0 ? void 0 : _a.ALL,
923
- });
924
- }
925
- } },
926
- React__default.createElement(StyledPinIcon, { color: theme.colors.neutral400 }),
927
- React__default.createElement(Text, { size: "md" }, t('booking.searchBar.allLocations'))),
928
- state.cities.map((city) => (React__default.createElement(StyledLocationItem, { key: city.id, onClick: (evt) => {
929
- evt.nativeEvent.stopImmediatePropagation();
930
- if (onLocationClick) {
931
- onLocationClick(city);
932
- }
933
- }, role: "button", tabIndex: 0, "aria-label": `Select ${city.name} as location`, isSelected: (selectedLocation === null || selectedLocation === void 0 ? void 0 : selectedLocation.id) === city.id },
934
- React__default.createElement(StyledPinIcon, { color: theme.colors.neutral400 }),
935
- React__default.createElement(Text, { size: "md" }, city.name)))))))));
1073
+ React__default.createElement(Select, Object.assign({ key: defaultValue !== null && defaultValue !== void 0 ? defaultValue : 'no-selected-location', defaultValue: defaultValue, placeholder: t('booking.searchBar.allLocations'), searchable: true, onSearchChange: (value) => {
1074
+ handleSearchLocationInputChange(value);
1075
+ }, onFocus: () => {
1076
+ dispatch({ type: ActionTypes.DisplayInitialCities });
1077
+ }, onDropdownClose: () => {
1078
+ debouncedFetchCitiesByKeyword.cancel();
1079
+ dispatch({ type: ActionTypes.DisplayInitialCities });
1080
+ }, nothingFound: t('common.noResult'), maxDropdownHeight: 340, dropdownPosition: "bottom", data: citiesData.map((city) => ({
1081
+ value: String(city.id),
1082
+ label: city.name,
1083
+ city,
1084
+ })), rightSection: React__default.createElement(React__default.Fragment, null) }, gaAttributes, { styles: (theme) => ({
1085
+ item: {
1086
+ padding: 0,
1087
+ '&[data-selected]': {
1088
+ '&, &:hover': {
1089
+ backgroundColor: 'transparent',
1090
+ color: 'inherit',
1091
+ },
1092
+ '.location-item': {
1093
+ '&::after': {
1094
+ content: checkMarkIconUrl,
1095
+ top: '50%',
1096
+ right: 19,
1097
+ position: 'absolute',
1098
+ transform: 'translateY(-50%)',
1099
+ },
1100
+ },
1101
+ },
1102
+ '&[data-hovered]': {
1103
+ backgroundColor: 'transparent',
1104
+ },
1105
+ },
1106
+ input: {
1107
+ '&:not(.mantine-Textarea-input)': {
1108
+ height: 48,
1109
+ fontSize: rem(16),
1110
+ paddingLeft: 16,
1111
+ paddingRight: 16,
1112
+ [theme.fn.smallerThan('sm')]: {
1113
+ height: 40,
1114
+ fontSize: rem(14),
1115
+ paddingLeft: 14,
1116
+ paddingRight: 14,
1117
+ },
1118
+ },
1119
+ },
1120
+ itemsWrapper: {
1121
+ padding: 0,
1122
+ },
1123
+ dropdown: {
1124
+ left: '0 !important',
1125
+ border: 0,
1126
+ marginTop: -7,
1127
+ borderRadius: 0,
1128
+ '& ::-webkit-scrollbar': {
1129
+ width: '6px',
1130
+ height: '6px',
1131
+ },
1132
+ },
1133
+ }), itemComponent: CustomSelectItem,
1134
+ // 3. Logic quan trọng nhất: Luôn trả về true để bỏ qua bộ lọc mặc định của Mantine
1135
+ // Vì chúng ta fetch data từ API hoặc dùng toàn bộ list ban đầu
1136
+ filter: () => true, onChange: (value) => {
1137
+ if (value == null)
1138
+ return;
1139
+ const city = citiesData.find((i) => String(i.id) === value);
1140
+ if (!city)
1141
+ return;
1142
+ onLocationClick(city);
1143
+ debouncedFetchCitiesByKeyword.cancel();
1144
+ dispatch({ type: ActionTypes.DisplayInitialCities });
1145
+ setTimeout(() => {
1146
+ var _a, _b;
1147
+ (_b = (_a = inputLocationWrapperRef.current) === null || _a === void 0 ? void 0 : _a.querySelector('input')) === null || _b === void 0 ? void 0 : _b.blur();
1148
+ }, 0);
1149
+ } }))));
936
1150
  };
937
1151
 
938
1152
  const StyleSpecialtiesWrapper = styled.div `
@@ -1308,16 +1522,20 @@ function useSearchBarApi({ dispatch, careApiDomain, locale = 'vi-VN', client = '
1308
1522
  moreParams.noPaging = 1;
1309
1523
  }
1310
1524
  const requests = [
1311
- fetchCitiesApi(PATHS.GET_CITY_BY_IP, Object.assign(Object.assign(Object.assign({}, params), moreParams), { client: CLIENT_KEY.MSD === client ? '' : client })),
1525
+ fetchCitiesApi(PATHS.GET_CITY_BY_IP, Object.assign(Object.assign(Object.assign({}, params), moreParams), { hospitalActive: 1, client: CLIENT_KEY.MSD === client ? '' : client })),
1312
1526
  ];
1313
1527
  if (locale === 'zh-TW') {
1314
1528
  requests.push(fetchCitiesApi(PATHS.GET_CITIES_LIST, {
1315
1529
  noPaging: 1,
1530
+ hospitalActive: 1,
1316
1531
  client: CLIENT_KEY.MSD === client ? '' : client,
1317
1532
  }));
1318
1533
  }
1319
1534
  else {
1320
- requests.push(fetchCitiesApi(PATHS.GET_CITIES_LIST));
1535
+ requests.push(fetchCitiesApi(PATHS.GET_CITIES_LIST, {
1536
+ noPaging: 1,
1537
+ hospitalActive: 1,
1538
+ }));
1321
1539
  }
1322
1540
  return Promise.all(requests)
1323
1541
  .then(([data1, data2]) => {
@@ -1497,11 +1715,14 @@ gaTrackingSearchBar, gaTrackingLocationSearch, autoCompleteDisabled = false, inp
1497
1715
  // isOptionAllLocation = false,
1498
1716
  // hideResults = [],
1499
1717
  // isNavResultItem = true,
1500
- routerPush, onGeoLocationPermissionChange,
1718
+ triggerSearchWhenChangeFilter, routerPush, onGeoLocationPermissionChange,
1501
1719
  // onSearch,
1502
1720
  onChangeLocation, }) => {
1721
+ var _a;
1503
1722
  const { locale, t } = useTranslations();
1504
1723
  const wrapperRef = useRef(null);
1724
+ const searchInputDesktopRef = useRef(null);
1725
+ const searchInputMobileRef = useRef(null);
1505
1726
  const inputSearchSpecialtyWrapperRef = useRef(null);
1506
1727
  const [currentTab, setCurrentTab] = useState(initTypeSearch);
1507
1728
  const { geoLocationPermission: geoLocationPermissionFromHook, geoLocationCoordinates: geoLocationCoordinatesFromHook, } = useGeolocation();
@@ -1516,7 +1737,9 @@ onChangeLocation, }) => {
1516
1737
  const { navigateTo, focusedSpecialty,
1517
1738
  // isLoadingCities,
1518
1739
  // cities,
1519
- searchKeywords, geoLocationPermission, selectedLocation, selectedSpecialty, initialSelectedCity,
1740
+ searchKeywords, geoLocationPermission, selectedLocation,
1741
+ // selectedSpecialty,
1742
+ initialSelectedCity,
1520
1743
  // defaultCity,
1521
1744
  searchResults, isLoadingSearchResults,
1522
1745
  // isMobileModalOpened,
@@ -1530,6 +1753,7 @@ onChangeLocation, }) => {
1530
1753
  client: clientSlug,
1531
1754
  });
1532
1755
  const slugs = useMemo(() => LOCALIZED_SLUGS[locale], [locale]);
1756
+ const [opened, { close, open }] = useDisclosure(false);
1533
1757
  const typeInformation = useMemo(() => {
1534
1758
  return Object.assign({ doctor: {
1535
1759
  name: t('booking.searchPopup.doctors'),
@@ -1553,34 +1777,31 @@ onChangeLocation, }) => {
1553
1777
  }, [currentTab]);
1554
1778
  const debouncedFetchCitiesByKeyword = useMemo(() => debounce(fetchCitiesByKeyword, 400), [fetchCitiesByKeyword]);
1555
1779
  const debouncedFetchSearchResults = useMemo(() => debounce(fetchSearchResults, 400), [fetchSearchResults]);
1556
- const handleLocationClick = useCallback(function handleLocationClick(city) {
1557
- dispatch({ type: ActionTypes.SelectLocation, payload: city });
1558
- focusSearchInput();
1559
- if (onChangeLocation) {
1560
- onChangeLocation(city);
1561
- }
1562
- }, [t, dispatch]);
1563
- function focusSearchInput() {
1780
+ // function focusSearchInput() {
1781
+ // if (wrapperRef.current) {
1782
+ // wrapperRef.current
1783
+ // .querySelector<HTMLInputElement>('input[name="search-results"]')
1784
+ // ?.focus()
1785
+ // }
1786
+ // }
1787
+ const onClickSearchByKeyword = useCallback(function onClickSearchByKeyword({ locationSlug, specialtyId, } = {}) {
1564
1788
  var _a;
1565
- if (wrapperRef.current) {
1566
- (_a = wrapperRef.current
1567
- .querySelector('input[name="search-results"]')) === null || _a === void 0 ? void 0 : _a.focus();
1568
- }
1569
- }
1570
- function onClickSearchByKeyword() {
1789
+ close();
1571
1790
  let url = '';
1572
1791
  const { slug: typeSlug } = typeInformation[currentTab];
1573
1792
  let moreParams = '';
1574
1793
  const slugClientUrl = MAPPING_CLIENT_WITH_SLUG[locale][clientSlug];
1794
+ const selectedSpecialtyId = specialtyId || ((_a = state.selectedSpecialty) === null || _a === void 0 ? void 0 : _a.id) || -1;
1795
+ const selectedLocationSlug = locationSlug || (selectedLocation === null || selectedLocation === void 0 ? void 0 : selectedLocation.slug) || '';
1575
1796
  if ((currentTab === 'doctor' || currentTab === 'hospital') &&
1576
- state.selectedSpecialty.id > 0) {
1577
- moreParams = `&specialtyId=${state.selectedSpecialty.id}`;
1797
+ selectedSpecialtyId > 0) {
1798
+ moreParams = `&specialtyId=${selectedSpecialtyId}`;
1578
1799
  }
1579
1800
  if (currentTab === 'specialty') {
1580
1801
  url = `/${typeSlug}`;
1581
1802
  }
1582
1803
  else {
1583
- url = `/${selectedLocation.slug}/${typeSlug}`;
1804
+ url = `/${selectedLocationSlug}/${typeSlug}`;
1584
1805
  }
1585
1806
  if (slugClientUrl) {
1586
1807
  url += `/${slugClientUrl}`;
@@ -1589,9 +1810,34 @@ onChangeLocation, }) => {
1589
1810
  if (url) {
1590
1811
  dispatch({ type: ActionTypes.NavigateTo, payload: url });
1591
1812
  }
1592
- }
1813
+ }, [
1814
+ clientSlug,
1815
+ close,
1816
+ currentTab,
1817
+ dispatch,
1818
+ locale,
1819
+ searchKeywords,
1820
+ selectedLocation === null || selectedLocation === void 0 ? void 0 : selectedLocation.slug,
1821
+ (_a = state.selectedSpecialty) === null || _a === void 0 ? void 0 : _a.id,
1822
+ typeInformation,
1823
+ ]);
1824
+ const handleLocationClick = useCallback(function handleLocationClick(city) {
1825
+ triggerSearchWhenChangeFilter &&
1826
+ onClickSearchByKeyword({ locationSlug: city.slug });
1827
+ dispatch({ type: ActionTypes.SelectLocation, payload: city });
1828
+ if (onChangeLocation) {
1829
+ onChangeLocation(city);
1830
+ }
1831
+ }, [
1832
+ dispatch,
1833
+ isMobile,
1834
+ onChangeLocation,
1835
+ onClickSearchByKeyword,
1836
+ triggerSearchWhenChangeFilter,
1837
+ ]);
1593
1838
  useOutsideClick(inputSearchSpecialtyWrapperRef, () => {
1594
- dispatch({ type: ActionTypes.ClickOutsideInputSearchSpecialty });
1839
+ !isMobile &&
1840
+ dispatch({ type: ActionTypes.ClickOutsideInputSearchSpecialty });
1595
1841
  });
1596
1842
  useEffect(() => {
1597
1843
  var _a;
@@ -1614,6 +1860,7 @@ onChangeLocation, }) => {
1614
1860
  fetchCitiesByLocation({ coordinates: state.geoLocationCoordinates });
1615
1861
  }, [geoLocationPermission]);
1616
1862
  useEffect(() => {
1863
+ var _a;
1617
1864
  const defaultSpecialty = initSpecialty
1618
1865
  ? initSpecialty
1619
1866
  : {
@@ -1623,13 +1870,23 @@ onChangeLocation, }) => {
1623
1870
  total_doctor: 0,
1624
1871
  slug: slugs.SPECIALTIES,
1625
1872
  };
1626
- if (!state.selectedSpecialty) {
1873
+ if (initSpecialty) {
1874
+ if (((_a = state.selectedSpecialty) === null || _a === void 0 ? void 0 : _a.id) !== initSpecialty.id) {
1875
+ dispatch({
1876
+ type: ActionTypes.SelectSpecialty,
1877
+ payload: initSpecialty,
1878
+ });
1879
+ }
1880
+ return;
1881
+ }
1882
+ if (!state.selectedSpecialty ||
1883
+ state.selectedSpecialty.id !== defaultSpecialty.id) {
1627
1884
  dispatch({
1628
1885
  type: ActionTypes.SelectSpecialty,
1629
1886
  payload: defaultSpecialty,
1630
1887
  });
1631
1888
  }
1632
- }, [initSpecialty, state.selectedSpecialty]);
1889
+ }, [initSpecialty, slugs.SPECIALTIES, t]);
1633
1890
  useEffect(() => {
1634
1891
  fetchAllSpecialties();
1635
1892
  }, []);
@@ -1648,25 +1905,62 @@ onChangeLocation, }) => {
1648
1905
  }, [navigateTo]);
1649
1906
  useEffect(() => {
1650
1907
  fetchSearchResults(state.searchKeywords, state, currentTab, clientSlug, true);
1651
- }, [selectedLocation, selectedSpecialty, currentTab]);
1652
- return (React__default.createElement(StyledSearchBarWrapper, { ref: wrapperRef },
1653
- React__default.createElement(TabSearch, { currentTab: currentTab, setCurrentTab: setCurrentTab, isMobile: isMobile, hideTabBookingSearch: hideTabBookingSearch, hideSpecialtyTab: hideSpecialtyTab }),
1654
- React__default.createElement(StyleWrapperContainer, { className: "booking-search-container" },
1655
- React__default.createElement(StyleSearchInputContainer, null,
1656
- React__default.createElement(StyleSearchContent, { className: "booking-search-content" },
1657
- React__default.createElement("div", { ref: inputSearchSpecialtyWrapperRef },
1658
- React__default.createElement(Flex, { gap: "12px", justify: "space-between", align: "center", direction: isMobile ? 'column' : 'row', className: "flex-search-input" },
1659
- currentTab !== 'specialty' && (React__default.createElement(SearchLocation, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchCitiesByKeyword: debouncedFetchCitiesByKeyword, selectedLocation: selectedLocation, onLocationClick: handleLocationClick, trackingAttributes: gaTrackingLocationSearch })),
1660
- React__default.createElement(SearchInputs, { type: currentTab, isMobile: isMobile, state: state, dispatch: dispatch, debouncedFetchSearchResults: debouncedFetchSearchResults, initalSearchValue: initialSearchValue, focusSearchInput: focusSearchInput, onEnterSearch: onClickSearchByKeyword, typeInformation: typeInformation, trackingAttributes: gaTrackingSearchBar, isLoading: isLoadingSearchResults, hideSpecialtySelection: hideSpecialtySelection || hideSpecialtyTab, clientSlug: clientSlug }),
1661
- React__default.createElement(Button, { size: isMobile ? 'md' : 'lg', color: "#2D87F3", fullWidth: isMobile, variant: "filled", onClick: onClickSearchByKeyword, styles: {
1662
- root: {
1663
- height: isMobile ? '40px' : '48px',
1664
- },
1665
- } }, t('booking.searchBar.searchButton'))),
1666
- !hidePopularSearchKeys &&
1667
- currentTab !== 'specialty' &&
1668
- state.popularKeys.length > 0 && (React__default.createElement(SearchTag, { type: currentTab, state: state, typeInformation: typeInformation, dispatch: dispatch })),
1669
- currentTab === 'specialty' && focusedSpecialty === 'search' && (React__default.createElement(SearchResultSpecialties, { state: state, isMobile: isMobile, dispatch: dispatch, specialties: (searchResults === null || searchResults === void 0 ? void 0 : searchResults.specialty) || [], isLoading: isLoadingSearchResults }))))))));
1908
+ }, [currentTab]);
1909
+ useEffect(() => {
1910
+ if (opened && isMobile) {
1911
+ const timer = setTimeout(() => {
1912
+ var _a;
1913
+ (_a = searchInputMobileRef.current) === null || _a === void 0 ? void 0 : _a.focus();
1914
+ }, 150);
1915
+ return () => clearTimeout(timer);
1916
+ }
1917
+ }, [opened, isMobile]);
1918
+ const searchInputsProps = {
1919
+ type: currentTab,
1920
+ isMobile: isMobile,
1921
+ state: state,
1922
+ dispatch: dispatch,
1923
+ debouncedFetchSearchResults: debouncedFetchSearchResults,
1924
+ initalSearchValue: initialSearchValue,
1925
+ // focusSearchInput: focusSearchInput,
1926
+ onEnterSearch: onClickSearchByKeyword,
1927
+ typeInformation: typeInformation,
1928
+ trackingAttributes: gaTrackingSearchBar,
1929
+ isLoading: isLoadingSearchResults,
1930
+ hideSpecialtySelection: hideSpecialtySelection || hideSpecialtyTab,
1931
+ clientSlug: clientSlug,
1932
+ triggerSearchWhenChangeFilter,
1933
+ onChangeSpecialty: (specialty) => triggerSearchWhenChangeFilter &&
1934
+ onClickSearchByKeyword({ specialtyId: specialty.id }),
1935
+ };
1936
+ return (React__default.createElement(React__default.Fragment, null,
1937
+ React__default.createElement(StyledSearchBarWrapper, { ref: wrapperRef },
1938
+ React__default.createElement(TabSearch, { currentTab: currentTab, setCurrentTab: setCurrentTab, isMobile: isMobile, hideTabBookingSearch: hideTabBookingSearch, hideSpecialtyTab: hideSpecialtyTab }),
1939
+ React__default.createElement(StyleWrapperContainer, { className: "booking-search-container" },
1940
+ React__default.createElement(StyleSearchInputContainer, null,
1941
+ React__default.createElement(StyleSearchContent, { className: "booking-search-content" },
1942
+ React__default.createElement("div", { ref: inputSearchSpecialtyWrapperRef },
1943
+ React__default.createElement(Flex, { gap: "12px", justify: "space-between", align: "center", direction: isMobile ? 'column' : 'row', className: "flex-search-input" },
1944
+ currentTab !== 'specialty' && (React__default.createElement(SearchLocation, { state: state, isMobile: isMobile, dispatch: dispatch, debouncedFetchCitiesByKeyword: debouncedFetchCitiesByKeyword, selectedLocation: selectedLocation, onLocationClick: handleLocationClick, trackingAttributes: gaTrackingLocationSearch })),
1945
+ React__default.createElement(SearchInputs, Object.assign({}, searchInputsProps, { ref: searchInputDesktopRef, onFocusInput: () => isMobile && open() })),
1946
+ React__default.createElement(Button, { size: isMobile ? 'md' : 'lg', fullWidth: isMobile, variant: "primary", onClick: () => onClickSearchByKeyword(), styles: {
1947
+ root: {
1948
+ height: isMobile ? '40px' : '48px',
1949
+ },
1950
+ } }, t('booking.searchBar.searchButton'))),
1951
+ !hidePopularSearchKeys &&
1952
+ currentTab !== 'specialty' &&
1953
+ state.popularKeys.length > 0 && (React__default.createElement(SearchTag, { type: currentTab, state: state, typeInformation: typeInformation, dispatch: dispatch })),
1954
+ currentTab === 'specialty' &&
1955
+ focusedSpecialty === 'search' && (React__default.createElement(SearchResultSpecialties, { state: state, isMobile: isMobile, dispatch: dispatch, specialties: (searchResults === null || searchResults === void 0 ? void 0 : searchResults.specialty) || [], isLoading: isLoadingSearchResults }))))))),
1956
+ isMobile && (React__default.createElement(ModalSearchResult, { keepMounted: true, opened: opened, onClose: close, closeModal: close, searchInputEle: React__default.createElement(Flex, { align: 'center', gap: 8 },
1957
+ React__default.createElement(SearchInputs, Object.assign({}, searchInputsProps, { onlyShowSearchBox: true, ref: searchInputMobileRef })),
1958
+ React__default.createElement(Button, { variant: "primary", leftIcon: React__default.createElement(Search, { size: 20, color: '#fff' }), onClick: () => onClickSearchByKeyword() })) },
1959
+ React__default.createElement(Box, { sx: {
1960
+ marginLeft: -16,
1961
+ marginRight: -16,
1962
+ } },
1963
+ React__default.createElement(SearchResultContent, { type: currentTab, state: state, dispatch: dispatch, isLoading: isLoadingSearchResults, typeInformation: typeInformation, clientSlug: clientSlug }))))));
1670
1964
  };
1671
1965
 
1672
1966
  export { BookingSearchBarV2 };