@hhgtech/hhg-components 1.29.82 → 1.29.84

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 (422) hide show
  1. package/build/LastPeriod-1f403d10.js +29 -0
  2. package/build/Locale-9e8a2452.js +15 -0
  3. package/build/{WhatsApp-46f4f408.js → WhatsApp-959e02b9.js} +1 -1
  4. package/build/adapters.js +22 -17
  5. package/build/atoms.js +51 -45
  6. package/build/babyGrowth.js +169 -162
  7. package/build/cache.js +3 -3
  8. package/build/care.js +22 -17
  9. package/build/components.js +136 -109
  10. package/build/{constants-223c01fc.js → constants-23f15065.js} +4 -4
  11. package/build/constants-78b4275f.js +18 -0
  12. package/build/constants.js +17 -13
  13. package/build/constantsDomainLocales.js +34 -0
  14. package/build/{isProduction-20cd663d.js → constantsIsProduction.js} +2 -0
  15. package/build/constantsRiskScreener.js +21 -0
  16. package/build/constantsSite.js +134 -0
  17. package/build/{core-9d69a722.js → core-215586ea.js} +4 -4
  18. package/build/{dataTransform-e39297c1.js → dataTransform-9de4c42b.js} +1 -106
  19. package/build/dataTransform-cec9484d.js +13 -0
  20. package/build/ecom.js +10 -6
  21. package/build/embeddedHeathToolCards_babyGrowth.js +64 -0
  22. package/build/embeddedHeathToolCards_babyPoop.js +57 -0
  23. package/build/embeddedHeathToolCards_babyVaccine.js +64 -0
  24. package/build/embeddedHeathToolCards_bmi_bmi.js +70 -0
  25. package/build/embeddedHeathToolCards_bmrBmr.js +70 -0
  26. package/build/embeddedHeathToolCards_dueDate_dueDate.js +65 -0
  27. package/build/embeddedHeathToolCards_helpers.js +11 -0
  28. package/build/embeddedHeathToolCards_ovulation_ovulation.js +64 -0
  29. package/build/embeddedHeathToolCards_pwg_pwg.js +70 -0
  30. package/build/embeddedHeathToolCards_targetHeartRate.js +73 -0
  31. package/build/esm/LastPeriod-6a476391.js +23 -0
  32. package/build/esm/Locale-50ec684c.js +15 -0
  33. package/build/esm/{WhatsApp-c599b715.js → WhatsApp-5357afb0.js} +1 -1
  34. package/build/esm/adapters.js +22 -17
  35. package/build/esm/atoms.js +51 -45
  36. package/build/esm/babyGrowth.js +87 -81
  37. package/build/esm/cache.js +3 -3
  38. package/build/esm/care.js +22 -17
  39. package/build/esm/components.js +104 -77
  40. package/build/esm/constants-7154766a.js +16 -0
  41. package/build/esm/{constants-bb470362.js → constants-efabd249.js} +2 -2
  42. package/build/esm/constants.js +7 -3
  43. package/build/esm/constantsDomainLocales.js +29 -0
  44. package/build/esm/{isProduction-1937d355.js → constantsIsProduction.js} +1 -1
  45. package/build/esm/constantsRiskScreener.js +17 -0
  46. package/build/esm/constantsSite.js +129 -0
  47. package/build/esm/{core-80bfe8b7.js → core-e76c2318.js} +2 -2
  48. package/build/esm/dataTransform-1ac3c823.js +11 -0
  49. package/build/esm/{dataTransform-623716c3.js → dataTransform-8dd2163d.js} +2 -101
  50. package/build/esm/ecom.js +9 -5
  51. package/build/esm/embeddedHeathToolCards_babyGrowth.js +56 -0
  52. package/build/esm/embeddedHeathToolCards_babyPoop.js +49 -0
  53. package/build/esm/embeddedHeathToolCards_babyVaccine.js +56 -0
  54. package/build/esm/embeddedHeathToolCards_bmi_bmi.js +62 -0
  55. package/build/esm/embeddedHeathToolCards_bmrBmr.js +62 -0
  56. package/build/esm/embeddedHeathToolCards_dueDate_dueDate.js +57 -0
  57. package/build/esm/embeddedHeathToolCards_helpers.js +7 -0
  58. package/build/esm/embeddedHeathToolCards_ovulation_ovulation.js +56 -0
  59. package/build/esm/embeddedHeathToolCards_pwg_pwg.js +62 -0
  60. package/build/esm/embeddedHeathToolCards_targetHeartRate.js +65 -0
  61. package/build/esm/{fixedBottomAdBlock-60a5d48f.js → fixedBottomAdBlock-95355cb0.js} +35 -410
  62. package/build/esm/footer.js +23 -18
  63. package/build/esm/gAssets.js +4 -5
  64. package/build/esm/healthToolsCardWrapper.js +33 -0
  65. package/build/esm/healthToolsForm.js +39 -25
  66. package/build/esm/hooks.js +21 -17
  67. package/build/esm/i18n.js +2 -2
  68. package/build/esm/i18nV2.js +2 -2
  69. package/build/esm/{index-bcedec73.js → index-08e0e4a7.js} +15 -13
  70. package/build/esm/{index-0ca9b175.js → index-0a17b3c4.js} +2 -2
  71. package/build/esm/{index-02d3f05b.js → index-0bac9140.js} +23 -19
  72. package/build/esm/{index-2dc7803d.js → index-0d547073.js} +6 -5
  73. package/build/esm/{index-d6a5f5cf.js → index-1090bed4.js} +17 -260
  74. package/build/esm/index-114fe334.js +60 -0
  75. package/build/esm/{index-e0b0d6a2.js → index-1246c476.js} +7 -7
  76. package/build/esm/{index-9f99909b.js → index-19fa8adc.js} +3 -3
  77. package/build/esm/{index-7c384ae6.js → index-1baef0ed.js} +6 -5
  78. package/build/esm/{index-7a1ea734.js → index-3b3b048f.js} +3 -3
  79. package/build/esm/{index-6210f454.js → index-3dcece1c.js} +9 -168
  80. package/build/esm/index-3df7ce17.js +140 -0
  81. package/build/esm/{index-1c9b481b.js → index-455fad93.js} +2 -2
  82. package/build/esm/{index-0cd3523c.js → index-4662c50d.js} +35 -31
  83. package/build/esm/index-492f7199.js +370 -0
  84. package/build/esm/{index-acf8b60e.js → index-4dcb460d.js} +2 -2
  85. package/build/esm/{index-9471fca1.js → index-562833a7.js} +2 -2
  86. package/build/esm/{index-0ee66974.js → index-583f25e2.js} +2 -2
  87. package/build/esm/index-5caf9237.js +91 -0
  88. package/build/esm/{index-21256394.js → index-6153901b.js} +1 -1
  89. package/build/esm/index-6b58602f.js +259 -0
  90. package/build/esm/{index-046778af.js → index-6d782bf2.js} +2 -2
  91. package/build/esm/{index-8eb04f36.js → index-7d0b67e7.js} +11 -11
  92. package/build/esm/{index-10ab6596.js → index-7d620769.js} +8 -7
  93. package/build/esm/{index-07f3f47e.js → index-8035d37c.js} +2 -2
  94. package/build/esm/{index-c013ba1b.js → index-805ffb74.js} +5 -4
  95. package/build/esm/{index-9b3a8b6d.js → index-83cc8492.js} +12 -10
  96. package/build/esm/{index-5723381f.js → index-88ff7c55.js} +2 -2
  97. package/build/esm/{index-c2584051.js → index-8c14a956.js} +4 -4
  98. package/build/esm/{index-f22f6e6e.js → index-95b6e3cc.js} +9 -8
  99. package/build/esm/{index-189d7601.js → index-99a12287.js} +3 -15
  100. package/build/esm/{index-8fcf671c.js → index-a5cb4b11.js} +8 -8
  101. package/build/esm/{index-cfedca38.js → index-a98a28a2.js} +2 -2
  102. package/build/esm/{index-13d8dd4b.js → index-a99b900d.js} +7 -6
  103. package/build/esm/{index-ea63e0d2.js → index-ac4b3bc6.js} +4 -4
  104. package/build/esm/{index-0b745f46.js → index-ae4c20ce.js} +20 -18
  105. package/build/esm/{index-fa67d66e.js → index-aeb1293f.js} +21 -19
  106. package/build/esm/index-af808663.js +249 -0
  107. package/build/esm/{constants-fa475b0f.js → index-b4dc58c1.js} +6 -21
  108. package/build/esm/{index-f660abb7.js → index-b50d36ad.js} +3 -3
  109. package/build/esm/{index-c430773c.js → index-b8c2e125.js} +29 -25
  110. package/build/esm/{index-219e3a35.js → index-c1abf550.js} +11 -11
  111. package/build/esm/{index-01b5d2e9.js → index-c526c065.js} +4 -4
  112. package/build/esm/{index-1d3c6ce7.js → index-c7b7301d.js} +1 -1
  113. package/build/esm/{index-29908d2c.js → index-ca9538ec.js} +1 -1
  114. package/build/esm/{index-049e0270.js → index-d0b52e26.js} +3 -3
  115. package/build/esm/{index-cdc50618.js → index-d502b20b.js} +1 -1
  116. package/build/esm/index-d6cfeea2.js +147 -0
  117. package/build/esm/index-e91300f9.js +101 -0
  118. package/build/esm/{index-f4b938f2.js → index-eb03fb5b.js} +1 -1
  119. package/build/esm/{index-9b9c1499.js → index-f34b4053.js} +2 -2
  120. package/build/esm/{index-01405723.js → index-f417df8c.js} +13 -12
  121. package/build/esm/index-f4d8dd94.js +233 -0
  122. package/build/esm/index-fd485fb3.js +174 -0
  123. package/build/esm/index.js +118 -90
  124. package/build/esm/interfaces/constants/domainLocales.d.ts +25 -0
  125. package/build/esm/interfaces/constants/index.d.ts +1 -25
  126. package/build/esm/{labelSorting-7351409a.js → labelSorting-b2983be2.js} +4 -4
  127. package/build/esm/lead.js +26 -21
  128. package/build/esm/{logoIcon-3a581efb.js → logoIcon-608cfa3e.js} +2 -2
  129. package/build/esm/mantine.js +28 -23
  130. package/build/esm/misc.js +27 -21
  131. package/build/esm/{cookieHelper-6c3b4790.js → miscCookieHelper.js} +1 -1
  132. package/build/esm/{defaultClassWrapper-00903c00.js → miscDefaultClassWrapper.js} +1 -1
  133. package/build/esm/{getDynamicHealthTool-82855adc.js → miscGetDynamicHealthTool.js} +13 -5
  134. package/build/esm/{getSocialList-7d2cf48d.js → miscGetSocialList.js} +20 -10
  135. package/build/esm/{dataTransform-55f67eed.js → miscScreenSizeContext.js} +2 -12
  136. package/build/esm/{theme-7dadf4a1.js → miscTheme.js} +1 -1
  137. package/build/esm/molecules.js +84 -57
  138. package/build/esm/navigation.js +44 -37
  139. package/build/esm/onboardingV2.js +30 -25
  140. package/build/esm/organisms.js +48 -41
  141. package/build/esm/other-af591390.js +102 -0
  142. package/build/esm/pwg.js +25 -20
  143. package/build/esm/{routing-9e330438.js → routing-0e27d82c.js} +3 -2
  144. package/build/esm/subot.js +35 -29
  145. package/build/esm/surveyOrPremiumBanner.js +34 -28
  146. package/build/esm/surveyQuestionCard.js +11 -10
  147. package/build/esm/{surveyThankyouCard-ec204631.js → surveyThankyouCard-71a1b36a.js} +6 -6
  148. package/build/esm/together/togetherComponentGlobalContext.d.ts +1 -2
  149. package/build/esm/together.js +50 -43
  150. package/build/esm/togetherApiPaths.js +165 -0
  151. package/build/esm/togetherApiUtils.js +10 -0
  152. package/build/esm/togetherAtoms.js +34 -28
  153. package/build/esm/togetherComponentGlobalContext.js +7 -9
  154. package/build/esm/togetherMolecules.js +41 -34
  155. package/build/esm/togetherOrganisms.js +45 -38
  156. package/build/esm/{treePopoverMenu-cb214db6.js → treePopoverMenu-f68aed40.js} +18 -16
  157. package/build/esm/{types-ffcf5fb4.js → types-e0541daf.js} +14 -13
  158. package/build/esm/types.js +2 -1
  159. package/build/esm/{useCategory-553bee0b.js → useCategory-5f3d6d81.js} +6 -5
  160. package/build/esm/{useHealthToolCache-6ce1724e.js → useHealthToolCache-73e49d74.js} +2 -2
  161. package/build/esm/{useMantineLocale-453f8013.js → useMantineLocale-845c1956.js} +5 -3
  162. package/build/esm/{usePlacesAutocomplete-8925d4fb.js → usePlacesAutocomplete-e1da3570.js} +1 -1
  163. package/build/esm/useTogetherAuthRequiredAction.js +7 -9
  164. package/build/esm/{useTranslations-b970f667.js → useTranslations-32ff6c72.js} +1 -1
  165. package/build/esm/{utils-3b29eb79.js → utils-71ccce82.js} +16 -163
  166. package/build/{utils-15a9772e.js → esm/utils-94f8d19f.js} +1 -114
  167. package/build/esm/{utils-6d45bdd1.js → utils-feb0c914.js} +2 -1
  168. package/build/esm/vaccination.js +23 -18
  169. package/build/{fixedBottomAdBlock-0129a006.js → fixedBottomAdBlock-d9fa09d7.js} +155 -540
  170. package/build/footer.js +23 -18
  171. package/build/gAssets.js +4 -5
  172. package/build/healthToolsCardWrapper.js +41 -0
  173. package/build/healthToolsForm.js +45 -31
  174. package/build/hooks.js +21 -17
  175. package/build/i18n.js +1 -1
  176. package/build/i18nV2.js +1 -1
  177. package/build/{index-b66ae554.js → index-0ae8b4ca.js} +18 -17
  178. package/build/{index-4bc690c9.js → index-17d80455.js} +9 -9
  179. package/build/{index-e3bbd009.js → index-1f94d57c.js} +33 -197
  180. package/build/index-249e3f6f.js +146 -0
  181. package/build/index-2f6d4fee.js +153 -0
  182. package/build/index-31c0bdad.js +256 -0
  183. package/build/{index-3eb666e6.js → index-353ce6f8.js} +1 -1
  184. package/build/{index-6aeb5ff5.js → index-35ac1158.js} +59 -59
  185. package/build/{index-a8680a58.js → index-37001a3b.js} +6 -6
  186. package/build/{index-9e8877c0.js → index-3ae597e3.js} +2 -2
  187. package/build/{index-1f3fc2e3.js → index-3ae93a30.js} +3 -15
  188. package/build/{index-765ed75d.js → index-3f9484b9.js} +6 -6
  189. package/build/{index-1fdf2f01.js → index-4184d8d6.js} +4 -4
  190. package/build/index-487a1272.js +66 -0
  191. package/build/{index-10760994.js → index-4ac79663.js} +9 -9
  192. package/build/{index-53e14542.js → index-4b035057.js} +4 -4
  193. package/build/{index-1e1d8eb1.js → index-565f76e4.js} +26 -24
  194. package/build/{index-16ed0d98.js → index-567f7d66.js} +12 -11
  195. package/build/{index-2fd9063e.js → index-592139a8.js} +4 -4
  196. package/build/{index-7953fb8e.js → index-672f0358.js} +12 -12
  197. package/build/{index-71843eb4.js → index-6c5d8ad9.js} +5 -5
  198. package/build/index-6c91ec06.js +108 -0
  199. package/build/{index-4cdcdbbe.js → index-71618efb.js} +13 -12
  200. package/build/{index-ec34e358.js → index-743f391a.js} +14 -14
  201. package/build/{index-fd3e1d16.js → index-7565806b.js} +3 -3
  202. package/build/{index-54aeefca.js → index-7efe7581.js} +2 -2
  203. package/build/{index-f222ee45.js → index-83259c86.js} +2 -2
  204. package/build/{index-dff7ee1b.js → index-848c257f.js} +41 -39
  205. package/build/{index-7ecc69af.js → index-89785eb5.js} +19 -18
  206. package/build/index-8bc74421.js +97 -0
  207. package/build/index-8e6acb31.js +320 -0
  208. package/build/{index-a9bbb5aa.js → index-9112bf2c.js} +11 -11
  209. package/build/{index-dd074159.js → index-98680432.js} +1 -1
  210. package/build/{index-ca616373.js → index-992f2a88.js} +2 -2
  211. package/build/{index-33432b02.js → index-9a0317f3.js} +33 -33
  212. package/build/{index-405faafa.js → index-a3320ed8.js} +2 -2
  213. package/build/{index-206afefb.js → index-a75603b7.js} +6 -5
  214. package/build/{index-4b7d4b5b.js → index-b1885310.js} +9 -9
  215. package/build/{index-077bf48f.js → index-b9fb9f3a.js} +52 -50
  216. package/build/index-baf2d414.js +267 -0
  217. package/build/{index-a6a9855f.js → index-c22aa4ef.js} +11 -11
  218. package/build/index-c2578f13.js +377 -0
  219. package/build/index-c2fec0fb.js +239 -0
  220. package/build/{constants-f182fc32.js → index-d1fb44a6.js} +8 -24
  221. package/build/{index-466a2c32.js → index-d5ba18da.js} +48 -46
  222. package/build/{index-0b727664.js → index-d97f9371.js} +8 -7
  223. package/build/{index-a9bdf889.js → index-d99df528.js} +25 -24
  224. package/build/{index-64d8db08.js → index-e0d59d3e.js} +5 -5
  225. package/build/{index-130e0f35.js → index-e4bfc43c.js} +68 -64
  226. package/build/index-e8d0d01b.js +180 -0
  227. package/build/{index-d9919cd2.js → index-ebfbb401.js} +119 -115
  228. package/build/{index-2afbeb3d.js → index-f0cd2973.js} +137 -133
  229. package/build/{index-4357a324.js → index-f31f282c.js} +11 -11
  230. package/build/{index-a2664204.js → index-fdfaa206.js} +7 -7
  231. package/build/index.js +195 -167
  232. package/build/interfaces/constants/domainLocales.d.ts +25 -0
  233. package/build/interfaces/constants/index.d.ts +1 -25
  234. package/build/{labelSorting-f86081b7.js → labelSorting-bafa4da1.js} +4 -4
  235. package/build/lead.js +43 -38
  236. package/build/{logoIcon-21a16853.js → logoIcon-2eaa3600.js} +2 -2
  237. package/build/mantine.js +28 -23
  238. package/build/misc.js +39 -33
  239. package/build/{cookieHelper-86ae022e.js → miscCookieHelper.js} +2 -0
  240. package/build/{defaultClassWrapper-b7719693.js → miscDefaultClassWrapper.js} +2 -0
  241. package/build/{getDynamicHealthTool-f08b5fab.js → miscGetDynamicHealthTool.js} +14 -4
  242. package/build/{getSocialList-8cc32f7c.js → miscGetSocialList.js} +50 -38
  243. package/build/{dataTransform-ded2692d.js → miscScreenSizeContext.js} +3 -12
  244. package/build/{theme-be20929b.js → miscTheme.js} +2 -0
  245. package/build/molecules.js +106 -79
  246. package/build/navigation.js +44 -37
  247. package/build/onboardingV2.js +40 -35
  248. package/build/organisms.js +48 -41
  249. package/build/other-b4596d33.js +104 -0
  250. package/build/pwg.js +60 -55
  251. package/build/{routing-d6c9099a.js → routing-c7527743.js} +10 -9
  252. package/build/subot.js +104 -98
  253. package/build/surveyOrPremiumBanner.js +34 -28
  254. package/build/surveyQuestionCard.js +11 -10
  255. package/build/{surveyThankyouCard-5b23b8f6.js → surveyThankyouCard-cef7f501.js} +25 -25
  256. package/build/together/togetherComponentGlobalContext.d.ts +1 -2
  257. package/build/together.js +50 -43
  258. package/build/togetherApiPaths.js +173 -0
  259. package/build/togetherApiUtils.js +40 -0
  260. package/build/togetherAtoms.js +34 -28
  261. package/build/togetherComponentGlobalContext.js +7 -9
  262. package/build/togetherMolecules.js +41 -34
  263. package/build/togetherOrganisms.js +45 -38
  264. package/build/{treePopoverMenu-c0cb395f.js → treePopoverMenu-e1a2f3f8.js} +28 -26
  265. package/build/{types-8d9c5f21.js → types-b3edd885.js} +88 -87
  266. package/build/types.js +6 -5
  267. package/build/{useCategory-b695fd3a.js → useCategory-9e02b690.js} +18 -17
  268. package/build/{useHealthToolCache-048807ea.js → useHealthToolCache-35767818.js} +4 -4
  269. package/build/{useMantineLocale-0d63dfea.js → useMantineLocale-30235874.js} +26 -24
  270. package/build/{usePlacesAutocomplete-9520e525.js → usePlacesAutocomplete-2bb9e98f.js} +1 -1
  271. package/build/useTogetherAuthRequiredAction.js +8 -10
  272. package/build/{useTranslations-685f989b.js → useTranslations-ec613f5a.js} +1 -1
  273. package/build/{utils-169c6a7d.js → utils-62afd8c7.js} +26 -172
  274. package/build/{utils-1a00c0f8.js → utils-63994a00.js} +11 -10
  275. package/build/{esm/utils-d7bbdb52.js → utils-7effa670.js} +11 -101
  276. package/build/vaccination.js +72 -67
  277. package/package.json +1 -1
  278. package/build/esm/index-ac2a8f95.js +0 -1114
  279. package/build/index-00a78d81.js +0 -565
  280. package/build/index-60f6d762.js +0 -1127
  281. /package/build/{BMI_BOYS.percentile.monthly-1aa95e30.js → BMI_BOYS.percentile.monthly-6ed2e599.js} +0 -0
  282. /package/build/{BMI_BOYS.percentile.weekly-61d78e1c.js → BMI_BOYS.percentile.weekly-2674d8fd.js} +0 -0
  283. /package/build/{BMI_BOYS.percentile.yearly-f80e040e.js → BMI_BOYS.percentile.yearly-51aa456a.js} +0 -0
  284. /package/build/{BMI_BOYS.zscore.monthly-a6c7c8ff.js → BMI_BOYS.zscore.monthly-33333b5d.js} +0 -0
  285. /package/build/{BMI_BOYS.zscore.weekly-742f7028.js → BMI_BOYS.zscore.weekly-9fd4527e.js} +0 -0
  286. /package/build/{BMI_BOYS.zscore.yearly-c19cccd5.js → BMI_BOYS.zscore.yearly-9f0a2b65.js} +0 -0
  287. /package/build/{BMI_GIRLS.percentile.monthly-089d3981.js → BMI_GIRLS.percentile.monthly-ff8c7b3d.js} +0 -0
  288. /package/build/{BMI_GIRLS.percentile.weekly-0cc52cda.js → BMI_GIRLS.percentile.weekly-6cf39279.js} +0 -0
  289. /package/build/{BMI_GIRLS.percentile.yearly-10bc603f.js → BMI_GIRLS.percentile.yearly-260242f0.js} +0 -0
  290. /package/build/{BMI_GIRLS.zscore.monthly-c3fe57f3.js → BMI_GIRLS.zscore.monthly-2f687534.js} +0 -0
  291. /package/build/{BMI_GIRLS.zscore.weekly-b83a54db.js → BMI_GIRLS.zscore.weekly-777dcea3.js} +0 -0
  292. /package/build/{BMI_GIRLS.zscore.yearly-5f13cda2.js → BMI_GIRLS.zscore.yearly-c7da1557.js} +0 -0
  293. /package/build/{ChevronDown-2fd86d66.js → ChevronDown-1ef49349.js} +0 -0
  294. /package/build/{Close-711196b0.js → Close-c5cedb3c.js} +0 -0
  295. /package/build/{HEAD CIRCUM_BOYS.percentile.monthly-03b8d7fb.js → HEAD CIRCUM_BOYS.percentile.monthly-9adb51e9.js} +0 -0
  296. /package/build/{HEAD CIRCUM_BOYS.percentile.weekly-9ebd3eb6.js → HEAD CIRCUM_BOYS.percentile.weekly-2471683f.js} +0 -0
  297. /package/build/{HEAD CIRCUM_BOYS.percentile.yearly-8e97b738.js → HEAD CIRCUM_BOYS.percentile.yearly-f3319cb0.js} +0 -0
  298. /package/build/{HEAD CIRCUM_BOYS.zscore.monthly-e7892261.js → HEAD CIRCUM_BOYS.zscore.monthly-7e3fc029.js} +0 -0
  299. /package/build/{HEAD CIRCUM_BOYS.zscore.weekly-47c5af84.js → HEAD CIRCUM_BOYS.zscore.weekly-b7aa2b50.js} +0 -0
  300. /package/build/{HEAD CIRCUM_BOYS.zscore.yearly-9a1bc325.js → HEAD CIRCUM_BOYS.zscore.yearly-c61c6c1d.js} +0 -0
  301. /package/build/{HEAD CIRCUM_GIRLS.percentile.monthly-d84491d7.js → HEAD CIRCUM_GIRLS.percentile.monthly-b4cc5c65.js} +0 -0
  302. /package/build/{HEAD CIRCUM_GIRLS.percentile.weekly-a6f38c3e.js → HEAD CIRCUM_GIRLS.percentile.weekly-ad990791.js} +0 -0
  303. /package/build/{HEAD CIRCUM_GIRLS.percentile.yearly-5771d277.js → HEAD CIRCUM_GIRLS.percentile.yearly-65fcb09f.js} +0 -0
  304. /package/build/{HEAD CIRCUM_GIRLS.zscore.monthly-e3633bcc.js → HEAD CIRCUM_GIRLS.zscore.monthly-2402176a.js} +0 -0
  305. /package/build/{HEAD CIRCUM_GIRLS.zscore.weekly-23b0ab1a.js → HEAD CIRCUM_GIRLS.zscore.weekly-0e327b7e.js} +0 -0
  306. /package/build/{HEAD CIRCUM_GIRLS.zscore.yearly-20f29cf1.js → HEAD CIRCUM_GIRLS.zscore.yearly-8fbe89c7.js} +0 -0
  307. /package/build/{HEIGHT_BOYS.percentile.monthly-57cc12ee.js → HEIGHT_BOYS.percentile.monthly-85d25944.js} +0 -0
  308. /package/build/{HEIGHT_BOYS.percentile.weekly-c788506a.js → HEIGHT_BOYS.percentile.weekly-02e026c7.js} +0 -0
  309. /package/build/{HEIGHT_BOYS.percentile.yearly-ac56c1f2.js → HEIGHT_BOYS.percentile.yearly-76c02fee.js} +0 -0
  310. /package/build/{HEIGHT_BOYS.zscore.monthly-1bb78253.js → HEIGHT_BOYS.zscore.monthly-68dd676e.js} +0 -0
  311. /package/build/{HEIGHT_BOYS.zscore.weekly-22737c43.js → HEIGHT_BOYS.zscore.weekly-ad16132c.js} +0 -0
  312. /package/build/{HEIGHT_BOYS.zscore.yearly-90f6cd0a.js → HEIGHT_BOYS.zscore.yearly-f6b8dba4.js} +0 -0
  313. /package/build/{HEIGHT_GIRLS.percentile.monthly-019f80d2.js → HEIGHT_GIRLS.percentile.monthly-24a8139c.js} +0 -0
  314. /package/build/{HEIGHT_GIRLS.percentile.weekly-ceed9817.js → HEIGHT_GIRLS.percentile.weekly-1d08cc73.js} +0 -0
  315. /package/build/{HEIGHT_GIRLS.percentile.yearly-3e5192ac.js → HEIGHT_GIRLS.percentile.yearly-05197713.js} +0 -0
  316. /package/build/{HEIGHT_GIRLS.zscore.monthly-f8fca0b6.js → HEIGHT_GIRLS.zscore.monthly-4aaa565f.js} +0 -0
  317. /package/build/{HEIGHT_GIRLS.zscore.weekly-827b17e8.js → HEIGHT_GIRLS.zscore.weekly-454b8b19.js} +0 -0
  318. /package/build/{HEIGHT_GIRLS.zscore.yearly-3cdb483d.js → HEIGHT_GIRLS.zscore.yearly-5762f338.js} +0 -0
  319. /package/build/{Visible-515a4eec.js → Visible-bec3b78f.js} +0 -0
  320. /package/build/{WEIGHT_BOYS.percentile.monthly-2ecbd498.js → WEIGHT_BOYS.percentile.monthly-34729a7f.js} +0 -0
  321. /package/build/{WEIGHT_BOYS.percentile.weekly-75c9c25c.js → WEIGHT_BOYS.percentile.weekly-b82f3896.js} +0 -0
  322. /package/build/{WEIGHT_BOYS.percentile.yearly-03e7cea6.js → WEIGHT_BOYS.percentile.yearly-fe16bfbf.js} +0 -0
  323. /package/build/{WEIGHT_BOYS.zscore.monthly-2ff9fb56.js → WEIGHT_BOYS.zscore.monthly-de612999.js} +0 -0
  324. /package/build/{WEIGHT_BOYS.zscore.weekly-e9f7fe2d.js → WEIGHT_BOYS.zscore.weekly-8e520e4a.js} +0 -0
  325. /package/build/{WEIGHT_BOYS.zscore.yearly-4a96f34f.js → WEIGHT_BOYS.zscore.yearly-7f87d4e0.js} +0 -0
  326. /package/build/{WEIGHT_GIRLS.percentile.monthly-5bf09e30.js → WEIGHT_GIRLS.percentile.monthly-d9389ae2.js} +0 -0
  327. /package/build/{WEIGHT_GIRLS.percentile.weekly-f737ae23.js → WEIGHT_GIRLS.percentile.weekly-0a4e65a0.js} +0 -0
  328. /package/build/{WEIGHT_GIRLS.percentile.yearly-56ebc8eb.js → WEIGHT_GIRLS.percentile.yearly-5039690e.js} +0 -0
  329. /package/build/{WEIGHT_GIRLS.zscore.monthly-4697d3b5.js → WEIGHT_GIRLS.zscore.monthly-267424de.js} +0 -0
  330. /package/build/{WEIGHT_GIRLS.zscore.weekly-3633820e.js → WEIGHT_GIRLS.zscore.weekly-b82eb126.js} +0 -0
  331. /package/build/{WEIGHT_GIRLS.zscore.yearly-a9a04790.js → WEIGHT_GIRLS.zscore.yearly-743b24fd.js} +0 -0
  332. /package/build/{animation-85d012ee.js → animation-0a5aba6d.js} +0 -0
  333. /package/build/{cart-8877bd63.js → cart-a5619079.js} +0 -0
  334. /package/build/{constants-8743b014.js → constants-5fd6a807.js} +0 -0
  335. /package/build/{constants-a78fa8b3.js → constants-bea20f60.js} +0 -0
  336. /package/build/{doctor-2c14fed1.js → doctor-7b7ee55b.js} +0 -0
  337. /package/build/esm/{BMI_BOYS.percentile.monthly-42ff2c64.js → BMI_BOYS.percentile.monthly-bd9229f1.js} +0 -0
  338. /package/build/esm/{BMI_BOYS.percentile.weekly-b4a6c521.js → BMI_BOYS.percentile.weekly-b5555772.js} +0 -0
  339. /package/build/esm/{BMI_BOYS.percentile.yearly-d3bc1a77.js → BMI_BOYS.percentile.yearly-40c77400.js} +0 -0
  340. /package/build/esm/{BMI_BOYS.zscore.monthly-c4506dfa.js → BMI_BOYS.zscore.monthly-97b686fe.js} +0 -0
  341. /package/build/esm/{BMI_BOYS.zscore.weekly-ddf3b3f9.js → BMI_BOYS.zscore.weekly-3bfff161.js} +0 -0
  342. /package/build/esm/{BMI_BOYS.zscore.yearly-e0e3139e.js → BMI_BOYS.zscore.yearly-52ee4b24.js} +0 -0
  343. /package/build/esm/{BMI_GIRLS.percentile.monthly-96686bcc.js → BMI_GIRLS.percentile.monthly-05f18f9d.js} +0 -0
  344. /package/build/esm/{BMI_GIRLS.percentile.weekly-c3106a65.js → BMI_GIRLS.percentile.weekly-4a737e44.js} +0 -0
  345. /package/build/esm/{BMI_GIRLS.percentile.yearly-b38c1f1f.js → BMI_GIRLS.percentile.yearly-19ee728c.js} +0 -0
  346. /package/build/esm/{BMI_GIRLS.zscore.monthly-f8a7836f.js → BMI_GIRLS.zscore.monthly-45463588.js} +0 -0
  347. /package/build/esm/{BMI_GIRLS.zscore.weekly-4c1fc771.js → BMI_GIRLS.zscore.weekly-a3d0afc1.js} +0 -0
  348. /package/build/esm/{BMI_GIRLS.zscore.yearly-dce5e66a.js → BMI_GIRLS.zscore.yearly-0e0db5a8.js} +0 -0
  349. /package/build/esm/{ChevronDown-31ea3e19.js → ChevronDown-50f453d2.js} +0 -0
  350. /package/build/esm/{Close-40d598bc.js → Close-80cf7f50.js} +0 -0
  351. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.monthly-34e3fa1c.js → HEAD CIRCUM_BOYS.percentile.monthly-9bf41293.js} +0 -0
  352. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.weekly-d3f3568f.js → HEAD CIRCUM_BOYS.percentile.weekly-ca467513.js} +0 -0
  353. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.yearly-dfae3ad2.js → HEAD CIRCUM_BOYS.percentile.yearly-e4d4e872.js} +0 -0
  354. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.monthly-95840c2f.js → HEAD CIRCUM_BOYS.zscore.monthly-0ededd66.js} +0 -0
  355. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.weekly-8b198c1c.js → HEAD CIRCUM_BOYS.zscore.weekly-c1535f8c.js} +0 -0
  356. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.yearly-b7d639ad.js → HEAD CIRCUM_BOYS.zscore.yearly-5e3aa734.js} +0 -0
  357. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.monthly-47caa070.js → HEAD CIRCUM_GIRLS.percentile.monthly-42c62bef.js} +0 -0
  358. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.weekly-bae46665.js → HEAD CIRCUM_GIRLS.percentile.weekly-6c77535b.js} +0 -0
  359. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.yearly-81989cdd.js → HEAD CIRCUM_GIRLS.percentile.yearly-80a34830.js} +0 -0
  360. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.monthly-f2f7d985.js → HEAD CIRCUM_GIRLS.zscore.monthly-f2e8d1fd.js} +0 -0
  361. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.weekly-e287ddb7.js → HEAD CIRCUM_GIRLS.zscore.weekly-4f43a2f9.js} +0 -0
  362. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.yearly-8790b62a.js → HEAD CIRCUM_GIRLS.zscore.yearly-4b1cad4f.js} +0 -0
  363. /package/build/esm/{HEIGHT_BOYS.percentile.monthly-5d2b6466.js → HEIGHT_BOYS.percentile.monthly-ce0656e6.js} +0 -0
  364. /package/build/esm/{HEIGHT_BOYS.percentile.weekly-a38ad13e.js → HEIGHT_BOYS.percentile.weekly-87e1937f.js} +0 -0
  365. /package/build/esm/{HEIGHT_BOYS.percentile.yearly-e4841712.js → HEIGHT_BOYS.percentile.yearly-cb63aa0d.js} +0 -0
  366. /package/build/esm/{HEIGHT_BOYS.zscore.monthly-d8e722f8.js → HEIGHT_BOYS.zscore.monthly-4b8fad7d.js} +0 -0
  367. /package/build/esm/{HEIGHT_BOYS.zscore.weekly-a92ea3ca.js → HEIGHT_BOYS.zscore.weekly-833bc599.js} +0 -0
  368. /package/build/esm/{HEIGHT_BOYS.zscore.yearly-3af1adce.js → HEIGHT_BOYS.zscore.yearly-0b9b3217.js} +0 -0
  369. /package/build/esm/{HEIGHT_GIRLS.percentile.monthly-c5203801.js → HEIGHT_GIRLS.percentile.monthly-c0444ca0.js} +0 -0
  370. /package/build/esm/{HEIGHT_GIRLS.percentile.weekly-4c25d07f.js → HEIGHT_GIRLS.percentile.weekly-0b46d795.js} +0 -0
  371. /package/build/esm/{HEIGHT_GIRLS.percentile.yearly-f91e2e27.js → HEIGHT_GIRLS.percentile.yearly-7cecbdb5.js} +0 -0
  372. /package/build/esm/{HEIGHT_GIRLS.zscore.monthly-b2a60aca.js → HEIGHT_GIRLS.zscore.monthly-9e1aa7b8.js} +0 -0
  373. /package/build/esm/{HEIGHT_GIRLS.zscore.weekly-0a98c520.js → HEIGHT_GIRLS.zscore.weekly-5120bb53.js} +0 -0
  374. /package/build/esm/{HEIGHT_GIRLS.zscore.yearly-8070d58f.js → HEIGHT_GIRLS.zscore.yearly-ae917e06.js} +0 -0
  375. /package/build/esm/{Visible-e3e4fb6f.js → Visible-14a649ea.js} +0 -0
  376. /package/build/esm/{WEIGHT_BOYS.percentile.monthly-b262b97d.js → WEIGHT_BOYS.percentile.monthly-9cf37850.js} +0 -0
  377. /package/build/esm/{WEIGHT_BOYS.percentile.weekly-7e817f9f.js → WEIGHT_BOYS.percentile.weekly-d0ad8b3d.js} +0 -0
  378. /package/build/esm/{WEIGHT_BOYS.percentile.yearly-b7f1786a.js → WEIGHT_BOYS.percentile.yearly-f16cc022.js} +0 -0
  379. /package/build/esm/{WEIGHT_BOYS.zscore.monthly-014af835.js → WEIGHT_BOYS.zscore.monthly-8ec95d81.js} +0 -0
  380. /package/build/esm/{WEIGHT_BOYS.zscore.weekly-4577f724.js → WEIGHT_BOYS.zscore.weekly-2f2d400c.js} +0 -0
  381. /package/build/esm/{WEIGHT_BOYS.zscore.yearly-08fd3f13.js → WEIGHT_BOYS.zscore.yearly-11a2d414.js} +0 -0
  382. /package/build/esm/{WEIGHT_GIRLS.percentile.monthly-a6e1aa0d.js → WEIGHT_GIRLS.percentile.monthly-2bd9a1ad.js} +0 -0
  383. /package/build/esm/{WEIGHT_GIRLS.percentile.weekly-4c0b6f94.js → WEIGHT_GIRLS.percentile.weekly-3b4e05fe.js} +0 -0
  384. /package/build/esm/{WEIGHT_GIRLS.percentile.yearly-bf689a3a.js → WEIGHT_GIRLS.percentile.yearly-4b66fe9f.js} +0 -0
  385. /package/build/esm/{WEIGHT_GIRLS.zscore.monthly-f82fc3c8.js → WEIGHT_GIRLS.zscore.monthly-e8f771f4.js} +0 -0
  386. /package/build/esm/{WEIGHT_GIRLS.zscore.weekly-854ce987.js → WEIGHT_GIRLS.zscore.weekly-6e9fc8ba.js} +0 -0
  387. /package/build/esm/{WEIGHT_GIRLS.zscore.yearly-2a3b869a.js → WEIGHT_GIRLS.zscore.yearly-cc5dc258.js} +0 -0
  388. /package/build/esm/{animation-85d9a0ed.js → animation-9382bfae.js} +0 -0
  389. /package/build/esm/{cart-1ac23ce7.js → cart-aa8756c6.js} +0 -0
  390. /package/build/esm/{constants-a5827634.js → constants-1dda168b.js} +0 -0
  391. /package/build/esm/{constants-f6b2e49d.js → constants-1efbbe50.js} +0 -0
  392. /package/build/esm/{doctor-e0c2476d.js → doctor-10572f59.js} +0 -0
  393. /package/build/esm/{index-8684181f.js → index-48eb9b2f.js} +0 -0
  394. /package/build/esm/{index-21bca818.js → index-6022a6ab.js} +0 -0
  395. /package/build/esm/{index-ad1c7c38.js → index-88732e57.js} +0 -0
  396. /package/build/esm/{index-266a32ff.js → index-9d3d97b0.js} +0 -0
  397. /package/build/esm/{localizeNumberFormat-1f000110.js → localizeNumberFormat-48342557.js} +0 -0
  398. /package/build/esm/{normalizeLink-7a93ebb9.js → normalizeLink-3bdaa9c9.js} +0 -0
  399. /package/build/esm/{number-1d1ba14a.js → number-14e36fe8.js} +0 -0
  400. /package/build/esm/{paths-b83be1a0.js → paths-e2dcafe3.js} +0 -0
  401. /package/build/esm/{translationsContext-42a1fa63.js → translationsContext-7876e8f8.js} +0 -0
  402. /package/build/esm/{tslib.es6-06ba3978.js → tslib.es6-9430520e.js} +0 -0
  403. /package/build/esm/{types-721e7a66.js → types-fde0b904.js} +0 -0
  404. /package/build/esm/{useIsInit-f4dec279.js → useIsInit-2f5401d6.js} +0 -0
  405. /package/build/esm/{useOutsideClick-210c1134.js → useOutsideClick-9111d12b.js} +0 -0
  406. /package/build/esm/{useScrollbarSize-909ae7ec.js → useScrollbarSize-7525fa88.js} +0 -0
  407. /package/build/esm/{useUniqueId-5885911d.js → useUniqueId-8320b4d7.js} +0 -0
  408. /package/build/{index-82c85f9d.js → index-3bac4c49.js} +0 -0
  409. /package/build/{index-bc9e8eae.js → index-9176f616.js} +0 -0
  410. /package/build/{index-6fdcd09d.js → index-c61d67cf.js} +0 -0
  411. /package/build/{index-2de1eb4a.js → index-ce737a83.js} +0 -0
  412. /package/build/{localizeNumberFormat-7ff6bd3a.js → localizeNumberFormat-4948bf30.js} +0 -0
  413. /package/build/{normalizeLink-d307f624.js → normalizeLink-bc411d55.js} +0 -0
  414. /package/build/{number-dddf656c.js → number-dee2b42a.js} +0 -0
  415. /package/build/{paths-7da79c64.js → paths-353c484a.js} +0 -0
  416. /package/build/{translationsContext-00fdb62e.js → translationsContext-22b4034f.js} +0 -0
  417. /package/build/{tslib.es6-bd3f8718.js → tslib.es6-a7663f7d.js} +0 -0
  418. /package/build/{types-b25ffde0.js → types-435407da.js} +0 -0
  419. /package/build/{useIsInit-e06b96f5.js → useIsInit-f72899d0.js} +0 -0
  420. /package/build/{useOutsideClick-d95a32b6.js → useOutsideClick-34fa23d9.js} +0 -0
  421. /package/build/{useScrollbarSize-1499b1c3.js → useScrollbarSize-f077e15f.js} +0 -0
  422. /package/build/{useUniqueId-1af8848e.js → useUniqueId-b5967fd3.js} +0 -0
@@ -1,1127 +0,0 @@
1
- 'use strict';
2
-
3
- var tslib_es6 = require('./tslib.es6-bd3f8718.js');
4
- var React = require('react');
5
- var dateFns = require('date-fns');
6
- var core = require('@mantine/core');
7
- var form = require('@mantine/form');
8
- var dayjs = require('dayjs');
9
- var index$2 = require('./index-dff7ee1b.js');
10
- var index = require('./index-0b727664.js');
11
- var index$4 = require('./index-1fdf2f01.js');
12
- var index$5 = require('./index-3eb666e6.js');
13
- var theme = require('./theme-be20929b.js');
14
- var useTranslations = require('./useTranslations-685f989b.js');
15
- require('@mantine/hooks');
16
- require('./index-1f3fc2e3.js');
17
- var index$6 = require('./index-64d8db08.js');
18
- require('./utils-15a9772e.js');
19
- require('./useMantineLocale-0d63dfea.js');
20
- var index$1 = require('./index-e3bbd009.js');
21
- var constants = require('./constants-f182fc32.js');
22
- var other = require('@hhgtech/icons/other');
23
- var reactHookForm = require('react-hook-form');
24
- var useHealthToolCache = require('./useHealthToolCache-048807ea.js');
25
- var constants$1 = require('./constants-a78fa8b3.js');
26
- var index$3 = require('./index-4357a324.js');
27
- require('@mantine/dates');
28
-
29
- function _interopDefault (e) { return e && e.__esModule ? e : { 'default': e }; }
30
-
31
- var React__default = /*#__PURE__*/_interopDefault(React);
32
- var dayjs__default = /*#__PURE__*/_interopDefault(dayjs);
33
-
34
- const ConceptionDate = (_a) => {
35
- var { isMarryBaby, size = 24 } = _a, rest = tslib_es6.__rest(_a, ["isMarryBaby", "size"]);
36
- const props = Object.assign({ width: size, height: size }, rest);
37
- return isMarryBaby ? (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 33 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
38
- React__default["default"].createElement("path", { d: "M16.5 27.133c1.298 0 2.596-.149 3.868-.447a9.15 9.15 0 0 0 6.818-6.818 16.94 16.94 0 0 0 0-7.736 9.15 9.15 0 0 0-6.818-6.818 16.94 16.94 0 0 0-7.736 0 9.15 9.15 0 0 0-6.818 6.818A17 17 0 0 0 5.367 16a.867.867 0 1 1-1.734 0c0-1.43.165-2.862.494-4.264a10.88 10.88 0 0 1 8.109-8.11 18.7 18.7 0 0 1 8.528 0 10.88 10.88 0 0 1 8.11 8.11 18.7 18.7 0 0 1 0 8.528 10.88 10.88 0 0 1-8.11 8.11 18.7 18.7 0 0 1-4.264.493.867.867 0 0 1 0-1.734", fill: "#3E3F58" }),
39
- React__default["default"].createElement("path", { d: "M11.633 16a4.867 4.867 0 1 1 9.734 0 4.867 4.867 0 0 1-9.734 0m4.867-3.133a3.133 3.133 0 1 0 0 6.266 3.133 3.133 0 0 0 0-6.266", fill: "#E85388" }),
40
- React__default["default"].createElement("path", { d: "M9.834 25.333a2.667 2.667 0 1 0-2.298-1.312l-.084.084a3.25 3.25 0 0 0-.952 2.298c0 .726-.41 1.39-1.06 1.715l-1.238.619a.667.667 0 0 0 .596 1.193l1.24-.62a3.25 3.25 0 0 0 1.796-2.907c0-.508.202-.995.561-1.355l.084-.084c.397.235.86.37 1.355.37", fill: "#3E3F58" }))) : (React__default["default"].createElement("svg", Object.assign({ width: size, height: size, viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
41
- React__default["default"].createElement("circle", { cx: "9", cy: "6.75", fill: "#91CAFF", r: "6.75" }),
42
- React__default["default"].createElement("circle", { cx: "9", cy: "6.75", fill: "#2D87F3", r: "5.4" }),
43
- React__default["default"].createElement("path", { d: "M1.789 12.2a.245.245 0 0 1-.02-.489c.073-.006 1.795-.167 1.761-1.605-.013-.587.15-1.057.485-1.397.524-.53 1.273-.528 1.305-.527a.245.245 0 0 1-.002.49h-.002c-.011 0-.582.004-.955.385-.236.24-.351.59-.34 1.038.018.793-.367 1.41-1.114 1.787a3.3 3.3 0 0 1-1.118.319M.75 17.774a.245.245 0 0 1 .226-.263c.073-.006 1.786-.162 1.749-1.593-.016-.586.146-1.055.48-1.392.521-.528 1.27-.524 1.3-.523a.245.245 0 0 1-.006.49c-.015 0-.58.004-.949.38q-.352.362-.335 1.033c.02.791-.362 1.406-1.106 1.78a3.3 3.3 0 0 1-1.095.313.245.245 0 0 1-.263-.225", fill: "#D2D6DC" }),
44
- React__default["default"].createElement("path", { d: "M8.659 5.035c-.562-.561-1.956-.078-2.699.665-.407.407-.635.91-.665 1.373v.124l1.145 1.16.181.042c.464-.03.966-.258 1.373-.665.743-.743 1.226-2.137.665-2.699", fill: "#E3F2FF" }),
45
- React__default["default"].createElement("path", { d: "m5.295 7.073-.292.75a.55.55 0 0 0 .124.589l.155.155a.55.55 0 0 0 .589.124l.75-.292z", fill: "#91CAFF" }),
46
- React__default["default"].createElement("path", { d: "M8.098 11.358a.87.87 0 0 0-.233-.523c-.562-.562-1.956-.079-2.699.664-.407.408-.635.91-.665 1.373v.125l1.146 1.16.18.042c.464-.03.966-.258 1.374-.666.566-.566.98-1.51.897-2.175", fill: "#E3F2FF" }),
47
- React__default["default"].createElement("path", { d: "m4.5 12.872-.29.75a.55.55 0 0 0 .123.589l.156.155a.55.55 0 0 0 .588.124l.75-.292z", fill: "#91CAFF" })));
48
- };
49
-
50
- const IVF = (_a) => {
51
- var { isMarryBaby, size = 24 } = _a, rest = tslib_es6.__rest(_a, ["isMarryBaby", "size"]);
52
- const props = Object.assign({ width: size, height: size }, rest);
53
- return isMarryBaby ? (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 33 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
54
- React__default["default"].createElement("path", { d: "M15.804 28.278a3.16 3.16 0 0 1-3.18-3.208l.128-20.306 6.405.008-.128 20.307c-.012 1.757-1.452 3.191-3.225 3.2", fill: "#fff" }),
55
- React__default["default"].createElement("path", { d: "m12.72 10.266-.116 14.788c-.011 1.757 1.423 3.197 3.18 3.208 1.774-.008 3.214-1.442 3.225-3.2V10.267", fill: "#FFEAF1" }),
56
- React__default["default"].createElement("circle", { cx: "14.662", cy: "19.027", transform: "rotate(-49.83 14.662 19.027)", fill: "#3E3F58", r: "1.012" }),
57
- React__default["default"].createElement("circle", { cx: "16.326", cy: "13.426", r: "1.012", transform: "rotate(-49.83 16.326 13.426)", fill: "#3E3F58" }),
58
- React__default["default"].createElement("path", { d: "m14.662 19.026.087 1.022a.98.98 0 0 0 .344.667.98.98 0 0 1 .32.98l-.123.51m1.036-8.779.087 1.022a.98.98 0 0 0 .344.666.98.98 0 0 1 .32.98l-.123.511", stroke: "#3E3F58" }),
59
- React__default["default"].createElement("path", { d: "M18.833 27.597a3.94 3.94 0 0 1-3.02 1.408 4 4 0 0 1-2.795-1.148 3.98 3.98 0 0 1-1.14-2.795l.108-20.553c0-.426.344-.756.753-.738.426 0 .757.345.738.754l-.108 20.553c.002.656.248 1.256.697 1.733a2.42 2.42 0 0 0 1.727.706 2.483 2.483 0 0 0 2.47-2.462l.109-20.553c0-.426.344-.757.753-.738.426 0 .757.344.738.754l-.108 20.553a3.85 3.85 0 0 1-.922 2.526", fill: "#202135" }),
60
- React__default["default"].createElement("path", { d: "M20.753 4.975a.75.75 0 0 1-.58.262l-8.714-.027a.727.727 0 0 1-.738-.754c0-.425.344-.756.754-.737l8.713.026c.426 0 .756.344.738.754a.66.66 0 0 1-.173.476", fill: "#202135" }))) : (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
61
- React__default["default"].createElement("path", { d: "M13.064 5.794a17.8 17.8 0 0 1 3.34-4.638l4.26 2.881a17.8 17.8 0 0 0-3.272 4.507l-1.08 2.12a.65.65 0 0 0 .124.76 7.9 7.9 0 0 1 2.296 4.81c.027.265-1.141 5.997-9.376 5.573-1.587-.082-5.724-1.269-6.12-2.86a8 8 0 0 1-.233-2.161c.124-4.165 3.718-7.648 7.884-7.647h.098a.65.65 0 0 0 .59-.36z", fill: "#BCDEFF" }),
62
- React__default["default"].createElement("path", { d: "M20.75 3.234 16.696.496a.886.886 0 1 0-.992 1.469l4.056 2.738a.886.886 0 0 0 .992-1.469", fill: "#E3F2FF" }),
63
- React__default["default"].createElement("path", { d: "M18.771 17.024a7.87 7.87 0 0 1-2.7 5.944A4.2 4.2 0 0 1 13.301 24H8.473a4.2 4.2 0 0 1-2.769-1.03 7.9 7.9 0 0 1-2.468-4.023c.924.468 2.191.805 3.922.805 1.142 0 2.01-.346 2.775-.834q.323-.21.629-.446c1.973-1.516 3.524-3.668 8.17-2.238q.04.39.04.79", fill: "#2D87F3" }),
64
- React__default["default"].createElement("path", { d: "M11.858 15.5c-1.78.348-3.096-1.608-2.134-3.121a2.06 2.06 0 0 1 1.529-.944q.303-.03.588.025a.27.27 0 0 0 .268-.107c.282-.373.737-.573 1.2-.639.224-.031.374-.24.379-.44.021-.794.657-1.311 1.288-1.234.183.022.223.27.058.35l-.012.006a.9.9 0 0 0-.28.196c-.213.263-.187.407-.153.6.03.167.066.37-.04.715a1.45 1.45 0 0 1-.504.7c-.255.19-.445.23-.592.263-.088.019-.16.034-.223.076a.27.27 0 0 0-.07.379c.184.27.306.587.344.934a2.063 2.063 0 0 1-1.646 2.24", fill: "#fff" }),
65
- React__default["default"].createElement("ellipse", { cx: "10", cy: "20.5", rx: "3", ry: "2.5", fill: "#FF6F4D" })));
66
- };
67
-
68
- const LastPeriod = (_a) => {
69
- var { isMarryBaby, size = 24 } = _a, rest = tslib_es6.__rest(_a, ["isMarryBaby", "size"]);
70
- const props = Object.assign({ width: size, height: size }, rest);
71
- return isMarryBaby ? (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 33 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
72
- React__default["default"].createElement("path", { d: "M26.954 27.37H8.18a2.353 2.353 0 0 1-2.347-2.347V8.597A2.353 2.353 0 0 1 8.181 6.25l11.803 2.347 6.97-2.347A2.354 2.354 0 0 1 29.3 8.597v16.426a2.353 2.353 0 0 1-2.346 2.347", fill: "#E0E9FB" }),
73
- React__default["default"].createElement("path", { d: "M22.706 22.677H6.256c-1.337 0-2.229-1.338-1.736-2.582l1.314-3.285V8.597A2.353 2.353 0 0 1 8.181 6.25h16.426a2.353 2.353 0 0 1 2.346 2.347v8.213l-1.642 4.107a2.81 2.81 0 0 1-2.605 1.76", fill: "#FFE9F1" }),
74
- React__default["default"].createElement("path", { d: "M24.607 28.074H8.18a3.044 3.044 0 0 1-3.05-3.05c0-.4.304-.705.703-.705.4 0 .704.305.704.704 0 .915.728 1.643 1.643 1.643h16.426c.915 0 1.643-.728 1.643-1.643v-2.346c0-.4.305-.704.703-.704.4 0 .704.305.704.704v2.346c0 1.69-1.36 3.05-3.05 3.05", fill: "#202135" }),
75
- React__default["default"].createElement("path", { d: "M24.607 5.547h-.47v-.47A1.883 1.883 0 0 0 22.26 3.2a1.883 1.883 0 0 0-1.877 1.877v2.347c0 1.032.845 1.877 1.877 1.877a.69.69 0 0 0 .704-.704.69.69 0 0 0-.704-.704.47.47 0 0 1-.469-.47V5.078a.47.47 0 0 1 .47-.47.47.47 0 0 1 .469.47V6.25c0 .4.305.704.704.704h1.173c.915 0 1.643.728 1.643 1.643v6.406a8.8 8.8 0 0 1-.61 3.215l-.963 2.417a2.14 2.14 0 0 1-1.97 1.337H6.256c-.4 0-.751-.187-.962-.516a1.22 1.22 0 0 1-.118-1.103l.657-1.619c.47-1.197.728-2.464.728-3.754V8.597c0-.915.727-1.643 1.642-1.643h1.174a.69.69 0 0 0 .704-.704.69.69 0 0 0-.704-.703H8.204a3.044 3.044 0 0 0-3.05 3.05v6.406a8.8 8.8 0 0 1-.61 3.215l-.657 1.62c-.329.797-.211 1.689.258 2.416a2.59 2.59 0 0 0 2.135 1.127h16.45a3.49 3.49 0 0 0 3.261-2.206l.962-2.417c.47-1.197.728-2.464.728-3.755V8.597a3.08 3.08 0 0 0-3.074-3.05", fill: "#202135" }),
76
- React__default["default"].createElement("path", { d: "M12.874 9.301a.69.69 0 0 0 .704-.704.69.69 0 0 0-.704-.704.47.47 0 0 1-.469-.47V5.078a.47.47 0 0 1 .47-.47.47.47 0 0 1 .469.47V6.25c0 .4.305.704.704.704h4.693a.69.69 0 0 0 .704-.704.69.69 0 0 0-.704-.703h-3.99v-.47A1.883 1.883 0 0 0 12.875 3.2a1.883 1.883 0 0 0-1.877 1.877v2.347c0 1.032.845 1.877 1.877 1.877", fill: "#202135" }),
77
- React__default["default"].createElement("path", { d: "M21.087 16.81a1.16 1.16 0 0 1-1.173-1.173c0-.657.516-1.174 1.173-1.174s1.174.517 1.174 1.174-.517 1.173-1.174 1.173", fill: "#E85388" }),
78
- React__default["default"].createElement("path", { d: "M11.7 13.29a1.16 1.16 0 0 1-1.172-1.173c0-.657.516-1.173 1.173-1.173s1.173.516 1.173 1.173-.516 1.173-1.173 1.173m4.694 0a1.16 1.16 0 0 1-1.173-1.173c0-.657.516-1.173 1.173-1.173s1.173.516 1.173 1.173-.516 1.173-1.173 1.173m4.693 0a1.16 1.16 0 0 1-1.173-1.173c0-.657.516-1.173 1.173-1.173s1.174.516 1.174 1.173-.517 1.173-1.174 1.173m-9.386 3.52a1.16 1.16 0 0 1-1.173-1.173c0-.657.516-1.174 1.173-1.174s1.173.517 1.173 1.174-.516 1.173-1.173 1.173m4.693 0a1.16 1.16 0 0 1-1.173-1.173c0-.657.516-1.174 1.173-1.174s1.173.517 1.173 1.174-.516 1.173-1.173 1.173m3.778 3.403c-.657 0-1.08-.47-.962-1.056.117-.587.727-1.056 1.384-1.056s1.08.469.963 1.056c-.118.586-.728 1.056-1.385 1.056m-4.693 0c-.657 0-1.08-.47-.962-1.056.117-.587.727-1.056 1.384-1.056s1.08.469.962 1.056c-.117.586-.727 1.056-1.384 1.056m-5.655-1.056c-.118.586.305 1.056.962 1.056s1.267-.47 1.384-1.056c.118-.587-.305-1.056-.962-1.056s-1.267.469-1.384 1.056", fill: "#9898A9" }))) : (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 24 24", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
79
- React__default["default"].createElement("rect", { y: "2.235", width: "22.05", height: "17.15", rx: "2", fill: "#E3F2FF" }),
80
- React__default["default"].createElement("path", { d: "M0 4.235a2 2 0 0 1 2-2h18.05a2 2 0 0 1 2 2V5.91H0z", fill: "#2D87F3" }),
81
- React__default["default"].createElement("path", { d: "M17.135 1h-.05c-.553 0-1.001.449-1.001 1.002v1.637a1 1 0 0 0 1.001 1.001h.05c.553 0 1.002-.448 1.002-1.001V2.002c0-.553-.449-1.002-1.002-1.002M4.275 4.64h.05c.553 0 1.002-.448 1.002-1.001V2.002C5.327 1.449 4.878 1 4.325 1h-.05c-.553 0-1.002.449-1.002 1.002v1.637c0 .553.449 1.001 1.002 1.001", fill: "#284A75" }),
82
- React__default["default"].createElement("path", { d: "M4.717 9.752H3.96a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757a.627.627 0 0 0 .627-.627v-.894a.627.627 0 0 0-.627-.627m4.17 0h-.758a.627.627 0 0 0-.627.627v.894c0 .346.281.627.627.627h.758a.627.627 0 0 0 .627-.627v-.894a.627.627 0 0 0-.627-.627m4.168 0h-.757a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757a.627.627 0 0 0 .627-.627v-.894a.627.627 0 0 0-.627-.627m4.434 0h-.758a.627.627 0 0 0-.626.627v.894c0 .346.28.627.626.627h.758a.627.627 0 0 0 .627-.627v-.894a.627.627 0 0 0-.627-.627M4.675 13.635h-.757a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757c.346 0 .627-.28.627-.627v-.894a.627.627 0 0 0-.627-.627m4.169 0h-.757a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757c.346 0 .627-.28.627-.627v-.894a.627.627 0 0 0-.627-.627m4.169 0h-.757a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757c.346 0 .627-.28.627-.627v-.894a.627.627 0 0 0-.627-.627m4.434 0h-.757a.627.627 0 0 0-.627.627v.894c0 .346.28.627.627.627h.757c.346 0 .627-.28.627-.627v-.894a.627.627 0 0 0-.627-.627", fill: "#2B62CD" }),
83
- React__default["default"].createElement("path", { d: "M20.36 13.836c-.734-.081-.88 1.444-1.905 2.66-.6.713-1.388 1.914-1.49 2.978-.097 1.02.186 3.508 3.23 3.704q.52.03 1.038-.037c3.027-.562 2.92-3.343 2.63-4.326-.3-1.026-1.272-2.093-1.879-2.66-1.122-1.045-.936-2.244-1.624-2.32", fill: "#FF6F4D" }),
84
- React__default["default"].createElement("path", { d: "M22.14 17.4c.057.214-.222.393-.387.059-.14-.284-.08-.38.029-.404.114-.026.31.168.358.345", fill: "#fff" })));
85
- };
86
-
87
- var DueDateCalculatorType$1;
88
- (function (DueDateCalculatorType) {
89
- DueDateCalculatorType[DueDateCalculatorType["lastPeriod"] = 0] = "lastPeriod";
90
- DueDateCalculatorType[DueDateCalculatorType["conception"] = 1] = "conception";
91
- DueDateCalculatorType[DueDateCalculatorType["IVF"] = 2] = "IVF";
92
- })(DueDateCalculatorType$1 || (DueDateCalculatorType$1 = {}));
93
-
94
- const DueDateFormContext = React.createContext({});
95
-
96
- const ConceptionFormContext = React.createContext({});
97
-
98
- const DefaultLayout$4 = () => {
99
- const { t } = useTranslations.useTranslations();
100
- const { form } = React.useContext(ConceptionFormContext);
101
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
102
- React__default["default"].createElement(index.DatePicker, Object.assign({ label: t('dueDatePage.lastPeriod.lastPeriodLabel') }, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
103
- withinPortal: true,
104
- }, maxDate: new Date() }))));
105
- };
106
-
107
- const InlineLayout$4 = () => {
108
- const { t } = useTranslations.useTranslations();
109
- const { form } = React.useContext(ConceptionFormContext);
110
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
111
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel') },
112
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
113
- withinPortal: true,
114
- }, maxDate: new Date(), error: null }))),
115
- form.errors.lastPeriodDate && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.lastPeriodDate))));
116
- };
117
-
118
- const MbLayout$5 = () => {
119
- const { t } = useTranslations.useTranslations();
120
- const { form } = React.useContext(ConceptionFormContext);
121
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel'), rightSection: React__default["default"].createElement(other.CalendarMB, null) },
122
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
123
- withinPortal: true,
124
- }, rightSection: null, maxDate: new Date() }))));
125
- };
126
-
127
- var DueDateCalculatorType;
128
- (function (DueDateCalculatorType) {
129
- DueDateCalculatorType[DueDateCalculatorType["lastPeriod"] = 0] = "lastPeriod";
130
- DueDateCalculatorType[DueDateCalculatorType["conception"] = 1] = "conception";
131
- DueDateCalculatorType[DueDateCalculatorType["IVF"] = 2] = "IVF";
132
- })(DueDateCalculatorType || (DueDateCalculatorType = {}));
133
- const API_DATE_FORMAT = 'yyyy-MM-dd';
134
- const getDueDateLastPeriod = (lastPeriodDate, periodLength) => {
135
- const pregnancyLength = 272 + (periodLength - 21);
136
- const dueDate = new Date(lastPeriodDate);
137
- dueDate.setDate(dueDate.getDate() + pregnancyLength);
138
- return {
139
- startDate: lastPeriodDate,
140
- dueDate,
141
- otherInfo: {
142
- method: DueDateCalculatorType.lastPeriod + 1,
143
- first_day: dateFns.format(lastPeriodDate, API_DATE_FORMAT),
144
- cycle_length_days: periodLength,
145
- conception_date: null,
146
- ivf_transfer_date: null,
147
- days_transfer: null,
148
- },
149
- };
150
- };
151
- const getDueDateConception = (conceptionDate) => {
152
- const dueDate = new Date(conceptionDate);
153
- dueDate.setDate(dueDate.getDate() + 265);
154
- return {
155
- startDate: conceptionDate,
156
- dueDate,
157
- otherInfo: {
158
- method: DueDateCalculatorType.conception + 1,
159
- conception_date: dateFns.format(conceptionDate, API_DATE_FORMAT),
160
- first_day: null,
161
- cycle_length_days: null,
162
- ivf_transfer_date: null,
163
- days_transfer: null,
164
- },
165
- };
166
- };
167
- const getDueDateIVF = (IVFDate, numDayTransfer) => {
168
- const dueDate = new Date(IVFDate);
169
- dueDate.setDate(dueDate.getDate() + 265 - numDayTransfer);
170
- return {
171
- startDate: IVFDate,
172
- dueDate,
173
- otherInfo: {
174
- method: DueDateCalculatorType.IVF + 1,
175
- ivf_transfer_date: dateFns.format(IVFDate, API_DATE_FORMAT),
176
- days_transfer: numDayTransfer,
177
- conception_date: null,
178
- first_day: null,
179
- cycle_length_days: null,
180
- },
181
- };
182
- };
183
-
184
- const ConceptionForm = ({}) => {
185
- const { formLayout, onSubmit, currentUrl, submitProps } = React.useContext(DueDateFormContext);
186
- const theme = core.useMantineTheme();
187
- const { t } = useTranslations.useTranslations();
188
- const form$1 = form.useForm({
189
- initialValues: {
190
- lastPeriodDate: new Date(),
191
- },
192
- });
193
- const formProps = {
194
- onSubmit: form$1.onSubmit((values) => {
195
- const { lastPeriodDate } = values;
196
- onSubmit(getDueDateConception(lastPeriodDate), `${index$1.QUERY_HEALTH_TOOL.type}=1&sd=${dayjs__default["default"](lastPeriodDate).format(index$1.API_DATE_FORMAT)}&${index$1.QUERY_HEALTH_TOOL.additional}= `);
197
- }),
198
- };
199
- return (React__default["default"].createElement(ConceptionFormContext.Provider, { value: { form: form$1 } },
200
- React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: formLayout }, formProps),
201
- formLayout === 'inline' ? (React__default["default"].createElement(InlineLayout$4, null)) : theme.other.template === 'mb' ? (React__default["default"].createElement(MbLayout$5, null)) : (React__default["default"].createElement(DefaultLayout$4, null)),
202
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ dataEventCategory: "Health Tool", dataEventAction: "Due Date", dataEventLabel: currentUrl, className: "due-date-calculate-button", type: "submit" }, submitProps), t('dueDatePage.lastPeriod.calculate')))));
203
- };
204
-
205
- const IVFFormContext = React.createContext({});
206
-
207
- const DefaultLayout$3 = () => {
208
- const { t } = useTranslations.useTranslations();
209
- const { form, transferDateOptions } = React.useContext(IVFFormContext);
210
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
211
- React__default["default"].createElement(index.DatePicker, Object.assign({ label: t('dueDatePage.ivf.transferDate') }, form.getInputProps('IVFDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
212
- withinPortal: true,
213
- }, maxDate: new Date() })),
214
- React__default["default"].createElement(index$2.Radio.Group, Object.assign({}, form.getInputProps('dayTransfer')),
215
- React__default["default"].createElement(core.Group, null, transferDateOptions.map((i, idx) => (React__default["default"].createElement(index$2.Radio, { key: idx, value: i.value, label: i.label })))))));
216
- };
217
-
218
- const InlineLayout$3 = () => {
219
- const { t } = useTranslations.useTranslations();
220
- const { form, transferDateOptions } = React.useContext(IVFFormContext);
221
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
222
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.ivf.transferDate') },
223
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('IVFDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
224
- withinPortal: true,
225
- }, maxDate: new Date() }))),
226
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { width: 'none' },
227
- React__default["default"].createElement(index$2.Radio.Group, Object.assign({}, form.getInputProps('dayTransfer')),
228
- React__default["default"].createElement(core.Group, null, transferDateOptions.map((i, idx) => (React__default["default"].createElement(index$2.Radio, { key: idx, value: i.value, label: i.label }))))))));
229
- };
230
-
231
- const MbLayout$4 = () => {
232
- const { t } = useTranslations.useTranslations();
233
- const { form, transferDateOptions } = React.useContext(IVFFormContext);
234
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
235
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('dueDatePage.ivf.transferDate'), rightSection: React__default["default"].createElement(other.CalendarMB, null) },
236
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('IVFDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
237
- withinPortal: true,
238
- }, maxDate: new Date(), rightSection: null }))),
239
- React__default["default"].createElement(index$2.Radio.Group, Object.assign({}, form.getInputProps('dayTransfer')),
240
- React__default["default"].createElement(core.Group, null, transferDateOptions.map((i, idx) => (React__default["default"].createElement(index$2.Radio, { key: idx, value: i.value, label: i.label })))))));
241
- };
242
-
243
- const IVFForm = ({}) => {
244
- var _a;
245
- const { formLayout, onSubmit, currentUrl, submitProps } = React.useContext(DueDateFormContext);
246
- const { t } = useTranslations.useTranslations();
247
- const theme = core.useMantineTheme();
248
- const transferDateOptions = [
249
- {
250
- value: '3',
251
- label: t('dueDatePage.ivf.transferDateRadio', {
252
- number: 3,
253
- }),
254
- },
255
- {
256
- value: '5',
257
- label: t('dueDatePage.ivf.transferDateRadio', {
258
- number: 5,
259
- }),
260
- },
261
- ];
262
- const form$1 = form.useForm({
263
- initialValues: {
264
- IVFDate: new Date(),
265
- dayTransfer: (_a = transferDateOptions === null || transferDateOptions === void 0 ? void 0 : transferDateOptions[0]) === null || _a === void 0 ? void 0 : _a.value,
266
- },
267
- });
268
- const formProps = {
269
- onSubmit: form$1.onSubmit((values) => {
270
- const { IVFDate } = values;
271
- const dayTransfer = Number(values.dayTransfer);
272
- onSubmit(getDueDateIVF(IVFDate, Number(dayTransfer)), `${index$1.QUERY_HEALTH_TOOL.type}=2&${index$1.QUERY_HEALTH_TOOL.startDate}=${dayjs__default["default"](IVFDate).format(index$1.API_DATE_FORMAT)}&${index$1.QUERY_HEALTH_TOOL.additional}=${dayTransfer}`);
273
- }),
274
- };
275
- return (React__default["default"].createElement(IVFFormContext.Provider, { value: { form: form$1, transferDateOptions } },
276
- React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: formLayout }, formProps),
277
- formLayout === 'inline' ? (React__default["default"].createElement(InlineLayout$3, null)) : theme.other.template === 'mb' ? (React__default["default"].createElement(MbLayout$4, null)) : (React__default["default"].createElement(DefaultLayout$3, null)),
278
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ dataEventCategory: "Health Tool", dataEventAction: "Due Date", dataEventLabel: currentUrl, className: "due-date-calculate-button", type: "submit" }, submitProps), t('dueDatePage.lastPeriod.calculate')))));
279
- };
280
-
281
- const LastPeriodFormContext = React.createContext({});
282
-
283
- const DefaultLayout$2 = () => {
284
- const { t } = useTranslations.useTranslations();
285
- const { form } = React.useContext(LastPeriodFormContext);
286
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
287
- React__default["default"].createElement(index.DatePicker, Object.assign({ label: t('dueDatePage.lastPeriod.lastPeriodLabel') }, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
288
- withinPortal: true,
289
- }, maxDate: new Date() })),
290
- React__default["default"].createElement(index$2.Input.Wrapper, { label: t('dueDatePage.lastPeriod.periodLengthLabel') },
291
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 20, max: 40, placeholder: t('tools.inputPlaceholder', {
292
- content: '30',
293
- }) }, form.getInputProps('periodLength'))))));
294
- };
295
-
296
- const InlineLayout$2 = () => {
297
- const { t } = useTranslations.useTranslations();
298
- const { form } = React.useContext(LastPeriodFormContext);
299
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
300
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel') },
301
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
302
- withinPortal: true,
303
- }, maxDate: new Date() }))),
304
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.lastPeriod.periodLengthLabel') },
305
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 20, max: 40, placeholder: t('tools.inputPlaceholder', {
306
- content: '30',
307
- }) }, form.getInputProps('periodLength'), { error: null }))),
308
- form.errors.periodLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.periodLength))));
309
- };
310
-
311
- const MbLayout$3 = () => {
312
- const { t } = useTranslations.useTranslations();
313
- const { form } = React.useContext(LastPeriodFormContext);
314
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
315
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel'), rightSection: React__default["default"].createElement(other.CalendarMB, null) },
316
- React__default["default"].createElement(index.DatePicker, Object.assign({ rightSection: null }, form.getInputProps('lastPeriodDate'), { placeholder: 'DD/MM/YYYY', popoverProps: {
317
- withinPortal: true,
318
- }, maxDate: new Date() }))),
319
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('dueDatePage.lastPeriod.periodLengthLabel'), rightSection: t('ovulationPage.dayUnit') },
320
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 20, max: 40, placeholder: t('tools.inputPlaceholder', {
321
- content: '30',
322
- }) }, form.getInputProps('periodLength')))),
323
- form.errors.periodLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.periodLength))));
324
- };
325
-
326
- const LastPeriodForm = ({}) => {
327
- const { formLayout, onSubmit, currentUrl, submitProps } = React.useContext(DueDateFormContext);
328
- const { t } = useTranslations.useTranslations();
329
- const theme = core.useMantineTheme();
330
- const isMarryBaby = theme.other.template === 'mb';
331
- const form$1 = form.useForm({
332
- initialValues: {
333
- lastPeriodDate: new Date(),
334
- },
335
- validate: {
336
- periodLength: form.isNotEmpty(t('validation.error.requiredField')),
337
- },
338
- });
339
- const formProps = {
340
- onSubmit: form$1.onSubmit((values) => {
341
- const { periodLength, lastPeriodDate } = values;
342
- onSubmit(getDueDateLastPeriod(lastPeriodDate, periodLength), `${index$1.QUERY_HEALTH_TOOL.type}=0&${index$1.QUERY_HEALTH_TOOL.startDate}=${dayjs__default["default"](lastPeriodDate).format(index$1.API_DATE_FORMAT)}&${index$1.QUERY_HEALTH_TOOL.additional}=${periodLength}`);
343
- }),
344
- };
345
- return (React__default["default"].createElement(LastPeriodFormContext.Provider, { value: { form: form$1 } },
346
- React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: formLayout }, formProps),
347
- formLayout === 'inline' ? (React__default["default"].createElement(InlineLayout$2, null)) : isMarryBaby ? (React__default["default"].createElement(MbLayout$3, null)) : (React__default["default"].createElement(DefaultLayout$2, null)),
348
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ dataEventCategory: "Health Tool", dataEventAction: "Due Date", dataEventLabel: currentUrl, className: "due-date-calculate-button", type: "submit" }, submitProps), t('dueDatePage.lastPeriod.calculate')))));
349
- };
350
-
351
- const FormSwitcher = () => {
352
- const { calculatorType } = React.useContext(DueDateFormContext);
353
- return calculatorType === DueDateCalculatorType.lastPeriod ? (React__default["default"].createElement(LastPeriodForm, null)) : calculatorType === DueDateCalculatorType.conception ? (React__default["default"].createElement(ConceptionForm, null)) : calculatorType === DueDateCalculatorType.IVF ? (React__default["default"].createElement(IVFForm, null)) : null;
354
- };
355
-
356
- var OvulationCalculatorType$2;
357
- (function (OvulationCalculatorType) {
358
- OvulationCalculatorType[OvulationCalculatorType["trackPeriod"] = 0] = "trackPeriod";
359
- OvulationCalculatorType[OvulationCalculatorType["conceive"] = 1] = "conceive";
360
- OvulationCalculatorType[OvulationCalculatorType["avoidPregnancy"] = 2] = "avoidPregnancy";
361
- })(OvulationCalculatorType$2 || (OvulationCalculatorType$2 = {}));
362
- const DueDateForm = (_a) => {
363
- var { formLayout = 'default', submitProps, currentUrl, isMobile, onSubmit } = _a, props = tslib_es6.__rest(_a, ["formLayout", "submitProps", "currentUrl", "isMobile", "onSubmit"]);
364
- const { t } = useTranslations.useTranslations();
365
- const [calculatorType, setCalculatorType] = React.useState(DueDateCalculatorType$1.lastPeriod);
366
- const calculatingMethods = [
367
- {
368
- value: DueDateCalculatorType$1.lastPeriod,
369
- label: t('dueDatePage.lastPeriod'),
370
- icon: React__default["default"].createElement(LastPeriod, null),
371
- },
372
- {
373
- value: DueDateCalculatorType$1.conception,
374
- label: t('dueDatePage.conceptionDate'),
375
- icon: React__default["default"].createElement(ConceptionDate, null),
376
- },
377
- {
378
- value: DueDateCalculatorType$1.IVF,
379
- label: t('dueDatePage.ivf'),
380
- icon: React__default["default"].createElement(IVF, null),
381
- },
382
- ];
383
- return (React__default["default"].createElement(DueDateFormContext.Provider, { value: {
384
- calculatingMethods,
385
- submitProps,
386
- currentUrl,
387
- isMobile,
388
- formLayout,
389
- onSubmit,
390
- calculatorType,
391
- setCalculatorType,
392
- } },
393
- React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ component: "div", formLayout: "default" }, props),
394
- React__default["default"].createElement(constants.HealthToolFormWrapper.Control, null,
395
- React__default["default"].createElement(index$2.Input.Wrapper, { label: t('dueDatePage.calculationMethod') },
396
- React__default["default"].createElement(constants.HealthToolFormWrapper.ChipGroup, { isMobile: isMobile, data: calculatingMethods, defaultValue: String(DueDateCalculatorType$1.lastPeriod), onChange: (v) => setCalculatorType(Number(v)) }))),
397
- React__default["default"].createElement(FormSwitcher, null))));
398
- };
399
-
400
- const BmiFormContext = React.createContext({});
401
-
402
- const DefaultForm$2 = (props) => {
403
- var _a, _b, _c, _d;
404
- const { t, locale } = useTranslations.useTranslations();
405
- const { control, bmiGenerated, isTouched, linkTool, submitProps } = React.useContext(BmiFormContext);
406
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
407
- React__default["default"].createElement(reactHookForm.Controller, { name: "gender", control: control, rules: (_a = bmiGenerated.gender) === null || _a === void 0 ? void 0 : _a.rule, render: ({ field: { onChange }, fieldState: { error } }) => {
408
- return (React__default["default"].createElement(index$3.GenderOptionControl, { error: isTouched ? error === null || error === void 0 ? void 0 : error.message : '', onChange: onChange }));
409
- } }),
410
- React__default["default"].createElement(reactHookForm.Controller, { name: "age", control: control, rules: (_b = bmiGenerated.age) === null || _b === void 0 ? void 0 : _b.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
411
- return (React__default["default"].createElement(index$2.Input.Number, { label: React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray600 },
412
- t('bmi.ageInput'),
413
- ' ',
414
- React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray300, as: "span" }, t('bmi.ageInput.desc'))), placeholder: t('tools.inputPlaceholder', {
415
- content: '25',
416
- }), name: name, value: value, onChange: onChange, error: isTouched ? error === null || error === void 0 ? void 0 : error.message : '', min: 0 }));
417
- } }),
418
- React__default["default"].createElement(reactHookForm.Controller, { name: "height", control: control, rules: (_c = bmiGenerated.height) === null || _c === void 0 ? void 0 : _c.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
419
- return (React__default["default"].createElement(index$2.Input.Number, { label: React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray600 },
420
- t('bmi.heightInput'),
421
- ' ',
422
- React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray300, as: "span" }, t('bmi.heightInput.desc'))), placeholder: t('tools.inputPlaceholder', {
423
- content: '170',
424
- }), name: name, value: value, onChange: onChange, error: isTouched ? error === null || error === void 0 ? void 0 : error.message : '', min: 0 }));
425
- } }),
426
- React__default["default"].createElement(reactHookForm.Controller, { name: "weight", control: control, rules: (_d = bmiGenerated.weight) === null || _d === void 0 ? void 0 : _d.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
427
- return (React__default["default"].createElement(index$2.Input.Number, { label: React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray600 },
428
- t('bmi.weightInput'),
429
- ' ',
430
- React__default["default"].createElement(index$4.Text, { size: "s4", weight: "semiBold", color: theme.theme.colors.gray300, as: "span" }, t('bmi.weightInput.desc'))), placeholder: t('tools.inputPlaceholder', {
431
- content: '60',
432
- }), name: name, value: value, onChange: onChange, error: isTouched ? error === null || error === void 0 ? void 0 : error.message : '', precision: 1, min: 0 }));
433
- } }),
434
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ className: "bmi-btn bmi--btn-submit", dataEventCategory: "Health Tool", dataEventAction: "BMI", dataEventLabel: `https://${index$1.domainLocales[locale]}/${linkTool}`, type: "submit" }, submitProps), t('bmi.submit'))));
435
- };
436
-
437
- const InlineForm$2 = (props) => {
438
- var _a, _b, _c, _d;
439
- const { t, locale } = useTranslations.useTranslations();
440
- const { control, bmiGenerated, isTouched, linkTool, submitProps } = React.useContext(BmiFormContext);
441
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
442
- React__default["default"].createElement(reactHookForm.Controller, { name: "gender", control: control, rules: (_a = bmiGenerated.gender) === null || _a === void 0 ? void 0 : _a.rule, render: ({ field: { onChange }, fieldState: { error } }) => {
443
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('tools.selectGender'), width: 'none', errorMess: isTouched && (error === null || error === void 0 ? void 0 : error.message) },
444
- React__default["default"].createElement(index$3.GenderOptionControl, { type: "radio", hideLabel: true, error: isTouched ? React__default["default"].createElement(React__default["default"].Fragment, null) : '', onChange: onChange })));
445
- } }),
446
- React__default["default"].createElement(reactHookForm.Controller, { name: "age", control: control, rules: (_b = bmiGenerated.age) === null || _b === void 0 ? void 0 : _b.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
447
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('bmi.ageInput'), errorMess: isTouched && (error === null || error === void 0 ? void 0 : error.message) },
448
- React__default["default"].createElement(index$2.Input.Number, { placeholder: t('tools.inputPlaceholder', {
449
- content: '25',
450
- }), name: name, value: value, onChange: onChange, error: isTouched && (error === null || error === void 0 ? void 0 : error.message) ? React__default["default"].createElement(React__default["default"].Fragment, null) : '', min: 0, rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('tools.yearsOld')), styles: () => ({
451
- rightSection: {
452
- width: 'auto',
453
- },
454
- }) })));
455
- } }),
456
- React__default["default"].createElement(reactHookForm.Controller, { name: "height", control: control, rules: (_c = bmiGenerated.height) === null || _c === void 0 ? void 0 : _c.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
457
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
458
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('bmi.heightInput') },
459
- React__default["default"].createElement(index$2.Input.Number, { placeholder: t('tools.inputPlaceholder', {
460
- content: '170',
461
- }), name: name, value: value, onChange: onChange, min: 0, error: isTouched && (error === null || error === void 0 ? void 0 : error.message) ? React__default["default"].createElement(React__default["default"].Fragment, null) : '', rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('babyGrowth.cm')) })),
462
- isTouched && (error === null || error === void 0 ? void 0 : error.message) && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, error.message))));
463
- } }),
464
- React__default["default"].createElement(reactHookForm.Controller, { name: "weight", control: control, rules: (_d = bmiGenerated.weight) === null || _d === void 0 ? void 0 : _d.rule, render: ({ field: { name, value, onChange }, fieldState: { error }, }) => {
465
- return (React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
466
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('bmi.weightInput') },
467
- React__default["default"].createElement(index$2.Input.Number, { placeholder: t('tools.inputPlaceholder', {
468
- content: '60',
469
- }), name: name, value: value, onChange: onChange, error: isTouched && (error === null || error === void 0 ? void 0 : error.message) ? React__default["default"].createElement(React__default["default"].Fragment, null) : '', precision: 1, min: 0, rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('babyGrowth.kg')) })),
470
- isTouched && (error === null || error === void 0 ? void 0 : error.message) && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, error.message))));
471
- } }),
472
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ className: "bmi-btn bmi--btn-submit", dataEventCategory: "Health Tool", dataEventAction: "BMI", dataEventLabel: `https://${index$1.domainLocales[locale]}/${linkTool}`, type: "submit" }, submitProps), t('bmi.submit'))));
473
- };
474
-
475
- function getBmi({ weight: weightProps, height: heightProps, }) {
476
- const height = heightProps / 100;
477
- const weight = weightProps;
478
- return Math.round((weight / (height * height)) * 10) / 10;
479
- }
480
-
481
- const BmiForm = (_a) => {
482
- var { value: valueProps, onChange: onChangeProps, onSubmit: onSubmitProps, bmiGenerated, bmiUnit, formLayout = 'default', submitProps } = _a, rest = tslib_es6.__rest(_a, ["value", "onChange", "onSubmit", "bmiGenerated", "bmiUnit", "formLayout", "submitProps"]);
483
- const [isTouched, setIsTouched] = React.useState(false);
484
- const { control, handleSubmit, setValue, watch } = reactHookForm.useForm();
485
- const data = watch();
486
- const { locale } = useTranslations.useTranslations();
487
- const { getHealthToolLink } = useHealthToolCache.useHealthToolsCache(locale);
488
- const linkTool = React.useMemo(() => getHealthToolLink(constants$1.HEALTH_TOOL_TYPE.OVULATION), [getHealthToolLink]);
489
- const onValid = (data) => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
490
- const height = bmiUnit.heightConvert(data.height);
491
- const weight = bmiUnit.weightConvert(data.weight);
492
- const submitValue = {
493
- gender: data.gender,
494
- age: data.age,
495
- height,
496
- weight,
497
- bmi: getBmi({ height, weight }),
498
- };
499
- onInValid();
500
- onSubmitProps && onSubmitProps(submitValue);
501
- });
502
- const onInValid = () => {
503
- setIsTouched(true);
504
- };
505
- React.useEffect(() => {
506
- Object.keys(valueProps || {}).forEach((k) => {
507
- const key = k;
508
- setValue(key, valueProps === null || valueProps === void 0 ? void 0 : valueProps[key], {
509
- shouldTouch: false,
510
- shouldDirty: false,
511
- shouldValidate: false,
512
- });
513
- });
514
- }, [valueProps]);
515
- React.useEffect(() => {
516
- onChangeProps && onChangeProps(data);
517
- }, [data]);
518
- const commonProps = Object.assign({ onSubmit: handleSubmit(onValid, onInValid) }, rest);
519
- return (React__default["default"].createElement(BmiFormContext.Provider, { value: {
520
- control,
521
- bmiGenerated,
522
- isTouched,
523
- linkTool,
524
- submitProps,
525
- } }, formLayout === 'inline' ? (React__default["default"].createElement(InlineForm$2, Object.assign({}, commonProps))) : (React__default["default"].createElement(DefaultForm$2, Object.assign({}, commonProps)))));
526
- };
527
-
528
- var useStyles = core.createStyles((theme, { hasOnClickFn }) => {
529
- return {
530
- root: {
531
- position: 'relative',
532
- display: 'flex',
533
- flexDirection: 'column',
534
- gap: core.rem(16),
535
- },
536
- sponsorBox: {
537
- display: 'flex',
538
- gap: core.rem(12),
539
- alignItems: 'center',
540
- backgroundColor: theme.colors.neutral[0],
541
- border: `1px solid ${theme.colors.neutral[1]}`,
542
- borderRadius: core.rem(4),
543
- padding: '4px 12px',
544
- alignSelf: 'flex-start',
545
- },
546
- sponsorLogo: {
547
- maxHeight: core.rem(32),
548
- },
549
- btn: {
550
- minWidth: core.rem(180),
551
- [theme.fn.largerThan('sm')]: {
552
- alignSelf: 'flex-end',
553
- },
554
- visibility: hasOnClickFn ? 'visible' : 'hidden',
555
- },
556
- };
557
- });
558
-
559
- const BabyPoopForm = (_a) => {
560
- var { babyPoopPage, onClickFindOut, currentUrl, sponsorLogo, btnProps, styles, classNames } = _a, props = tslib_es6.__rest(_a, ["babyPoopPage", "onClickFindOut", "currentUrl", "sponsorLogo", "btnProps", "styles", "classNames"]);
561
- const { t } = useTranslations.useTranslations();
562
- const { classes } = useStyles({ hasOnClickFn: Boolean(onClickFindOut) }, { name: 'BabyPoopForm', styles, classNames });
563
- return (React__default["default"].createElement(core.Box, Object.assign({ className: classes.root }, props),
564
- sponsorLogo && (React__default["default"].createElement(core.Box, { className: classes.sponsorBox },
565
- React__default["default"].createElement(index$4.Text, { size: "p4" }, t('common.sponsoredBy')),
566
- React__default["default"].createElement("img", { loading: "lazy", src: sponsorLogo, alt: "sponsor", className: classes.sponsorLogo }))),
567
- React__default["default"].createElement(index$4.Text, { size: "p3", className: "description" }, babyPoopPage.description),
568
- React__default["default"].createElement(index$5.Button, Object.assign({ className: classes.btn, onClick: onClickFindOut, dataEventCategory: "Health Tool", dataEventAction: "Baby Stool Inquiry", dataEventLabel: currentUrl }, btnProps), t('babyPoop.findOut'))));
569
- };
570
-
571
- const ThrFormContext = React.createContext({});
572
-
573
- const DefaultForm$1 = (_a) => {
574
- var _b;
575
- var props = tslib_es6.__rest(_a, []);
576
- const { t, locale } = useTranslations.useTranslations();
577
- const { isAdult, activeValueNote, linkTool, form, submitProps } = React.useContext(ThrFormContext);
578
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
579
- React__default["default"].createElement(index$3.GenderOptionControl, Object.assign({}, form.getInputProps('gender'))),
580
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('age'), { placeholder: 'DD/MM/YYYY', popoverProps: {
581
- withinPortal: true,
582
- }, label: t('targetHeartRate.ageInput'), maxDate: new Date() })),
583
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: t('targetHeartRate.heartRateInput'), placeholder: t('tools.inputPlaceholder', {
584
- content: '60',
585
- }) }, form.getInputProps('heartRate'), { min: 40, max: 200, styles: () => ({
586
- rightSection: {
587
- width: 'auto',
588
- },
589
- }) })),
590
- isAdult && (React__default["default"].createElement(index$2.Select, Object.assign({ label: t('targetHeartRate.selectActive'), defaultValue: (_b = activeValueNote === null || activeValueNote === void 0 ? void 0 : activeValueNote[0]) === null || _b === void 0 ? void 0 : _b.value, data: activeValueNote.map((option) => ({
591
- value: option.value,
592
- label: option.label,
593
- })), styles: {
594
- item: {
595
- whiteSpace: 'nowrap',
596
- padding: '10px 12px',
597
- fontSize: '14px',
598
- },
599
- }, withinPortal: true }, form.getInputProps('activeValue')))),
600
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", dataEventCategory: "Health Tool", dataEventAction: "THR", dataEventLabel: `https://${index$1.domainLocales[locale]}/${linkTool}` }, submitProps), t('bmi.submit'))));
601
- };
602
-
603
- const InlineForm$1 = (_a) => {
604
- var _b;
605
- var props = tslib_es6.__rest(_a, []);
606
- const { t, locale } = useTranslations.useTranslations();
607
- const { isAdult, activeValueNote, linkTool, form, submitProps } = React.useContext(ThrFormContext);
608
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
609
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
610
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('tools.selectGender'), width: 'none' },
611
- React__default["default"].createElement(index$3.GenderOptionControl, Object.assign({ type: "radio", hideLabel: true, error: null }, form.getInputProps('gender')))),
612
- form.errors.gender && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.gender))),
613
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
614
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('targetHeartRate.ageInput') },
615
- React__default["default"].createElement(index.DatePicker, Object.assign({}, form.getInputProps('age'), { placeholder: 'DD/MM/YYYY', popoverProps: {
616
- withinPortal: true,
617
- }, error: null, maxDate: new Date() }))),
618
- form.errors.age && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.age))),
619
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
620
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('targetHeartRate.heartRateInput') },
621
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ placeholder: t('tools.inputPlaceholder', {
622
- content: '60',
623
- }) }, form.getInputProps('heartRate'), { error: null, min: 40, max: 200, rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, "bmp"), styles: () => ({
624
- rightSection: {
625
- width: 'auto',
626
- },
627
- }) }))),
628
- form.errors.heartRate && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.heartRate))),
629
- isAdult && (React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('targetHeartRate.selectActive') },
630
- React__default["default"].createElement(index$2.Select, Object.assign({ defaultValue: (_b = activeValueNote === null || activeValueNote === void 0 ? void 0 : activeValueNote[0]) === null || _b === void 0 ? void 0 : _b.value, data: activeValueNote.map((option) => ({
631
- value: option.value,
632
- label: option.label,
633
- })), styles: {
634
- item: {
635
- whiteSpace: 'nowrap',
636
- padding: '10px 12px',
637
- fontSize: '14px',
638
- },
639
- }, withinPortal: true }, form.getInputProps('activeValue'))))),
640
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", dataEventCategory: "Health Tool", dataEventAction: "THR", dataEventLabel: `https://${index$1.domainLocales[locale]}/${linkTool}` }, submitProps), t('bmi.submit'))));
641
- };
642
-
643
- const ThrForm = (_a) => {
644
- var { formLayout, onSubmit, onError, submitProps } = _a, rest = tslib_es6.__rest(_a, ["formLayout", "onSubmit", "onError", "submitProps"]);
645
- const { t, locale } = useTranslations.useTranslations();
646
- const minRange = React.useRef(40);
647
- const { getHealthToolLink } = useHealthToolCache.useHealthToolsCache(locale);
648
- const form$1 = form.useForm({
649
- initialValues: {
650
- heartRate: 60,
651
- activeValue: 'low_intensity',
652
- },
653
- validate: {
654
- gender: form.isNotEmpty(t('validation.error.requiredField')),
655
- age: form.isNotEmpty(t('validation.error.requiredField')),
656
- heartRate: (value) => {
657
- return Number(value) >= minRange.current && Number(value) <= 200
658
- ? null
659
- : t('tools.heartRateRangeErr', {
660
- min: minRange.current,
661
- max: 200,
662
- });
663
- },
664
- },
665
- });
666
- const linkTool = React.useMemo(() => getHealthToolLink(constants$1.HEALTH_TOOL_TYPE.THR), [getHealthToolLink]);
667
- const [isAdult, setIsAdult] = React.useState(false);
668
- const rangeHeartRateByAge = [
669
- {
670
- idAge: 0,
671
- minAge: 0,
672
- maxAge: 18,
673
- rangeMale: 40,
674
- rangeFemale: 40,
675
- },
676
- {
677
- idAge: 1,
678
- minAge: 18,
679
- maxAge: 25,
680
- rangeMale: 49,
681
- rangeFemale: 54,
682
- },
683
- {
684
- idAge: 2,
685
- minAge: 25,
686
- maxAge: 35,
687
- rangeMale: 49,
688
- rangeFemale: 54,
689
- },
690
- {
691
- idAge: 3,
692
- minAge: 35,
693
- maxAge: 45,
694
- rangeMale: 50,
695
- rangeFemale: 54,
696
- },
697
- {
698
- idAge: 4,
699
- minAge: 45,
700
- maxAge: 55,
701
- rangeMale: 50,
702
- rangeFemale: 54,
703
- },
704
- {
705
- idAge: 5,
706
- minAge: 55,
707
- maxAge: 65,
708
- rangeMale: 51,
709
- rangeFemale: 54,
710
- },
711
- {
712
- idAge: 6,
713
- minAge: 65,
714
- maxAge: 120,
715
- rangeMale: 50,
716
- rangeFemale: 54,
717
- },
718
- ];
719
- const activeValueNote = [
720
- {
721
- value: 'low_intensity',
722
- label: t('targetHeartRate.lowIntensity.title'),
723
- image: index$6.CommonGAssets.getAssetPath(`/low.svg`),
724
- imageActive: index$6.CommonGAssets.getAssetPath(`/low-active.svg`),
725
- content: t('targetHeartRate.lowIntensity.note'),
726
- },
727
- {
728
- value: 'moderate_intensity',
729
- label: t('targetHeartRate.moderateIntensity.title'),
730
- image: index$6.CommonGAssets.getAssetPath(`/moderate.svg`),
731
- imageActive: index$6.CommonGAssets.getAssetPath(`/moderate-active.svg`),
732
- content: t('targetHeartRate.moderateIntensity.note'),
733
- },
734
- {
735
- value: 'aerobic_zone',
736
- label: t('targetHeartRate.aerobicZone.title'),
737
- image: index$6.CommonGAssets.getAssetPath(`/aerobic.svg`),
738
- imageActive: index$6.CommonGAssets.getAssetPath(`/aerobic-active.svg`),
739
- content: t('targetHeartRate.aerobicZone.note'),
740
- },
741
- {
742
- value: 'vigorous_intensity',
743
- label: t('targetHeartRate.vigorousIntensity.title'),
744
- image: index$6.CommonGAssets.getAssetPath(`/vigorous.svg`),
745
- imageActive: index$6.CommonGAssets.getAssetPath(`/vigorous-active.svg`),
746
- content: t('targetHeartRate.vigorousIntensity.note'),
747
- },
748
- {
749
- value: 'maximum_intensity',
750
- label: t('targetHeartRate.maximumIntensity.title'),
751
- image: index$6.CommonGAssets.getAssetPath(`/maximum.svg`),
752
- imageActive: index$6.CommonGAssets.getAssetPath(`/maximum-active.svg`),
753
- content: t('targetHeartRate.maximumIntensity.note'),
754
- },
755
- ];
756
- React.useEffect(() => {
757
- const ageDate = form$1.getInputProps('age').value;
758
- const gender = form$1.getInputProps('gender').value;
759
- if (ageDate instanceof Date) {
760
- const age = (new Date().getTime() - ageDate.getTime()) / 1000;
761
- if (age >= 18 * 365 * 24 * 60 * 60)
762
- setIsAdult(true);
763
- else
764
- setIsAdult(false);
765
- const rangeByAge = rangeHeartRateByAge.find((item) => age >= item.minAge * 365 * 24 * 60 * 60 &&
766
- age < item.maxAge * 365 * 24 * 60 * 60) || rangeHeartRateByAge[0];
767
- minRange.current =
768
- gender === 'male' ? rangeByAge.rangeMale : rangeByAge.rangeFemale;
769
- }
770
- }, [form$1]);
771
- const commonProps = Object.assign(Object.assign({}, rest), { onSubmit: form$1.onSubmit(onSubmit, onError) });
772
- return (React__default["default"].createElement(ThrFormContext.Provider, { value: {
773
- isAdult,
774
- activeValueNote,
775
- linkTool,
776
- form: form$1,
777
- submitProps,
778
- } }, formLayout === 'inline' ? (React__default["default"].createElement(InlineForm$1, Object.assign({}, commonProps))) : (React__default["default"].createElement(DefaultForm$1, Object.assign({}, commonProps)))));
779
- };
780
-
781
- const AvoidPregnancy = (_a) => {
782
- var { isMarryBaby, size = 24 } = _a, rest = tslib_es6.__rest(_a, ["isMarryBaby", "size"]);
783
- const props = Object.assign({ width: size, height: size }, rest);
784
- return isMarryBaby ? (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 33 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
785
- React__default["default"].createElement("path", { d: "M16.5 27.133c1.298 0 2.596-.149 3.868-.447a9.15 9.15 0 0 0 6.818-6.818 16.94 16.94 0 0 0 0-7.736 9.15 9.15 0 0 0-6.818-6.818 16.94 16.94 0 0 0-7.736 0 9.15 9.15 0 0 0-6.818 6.818A17 17 0 0 0 5.367 16a.867.867 0 0 1-1.734 0c0-1.43.165-2.862.494-4.264a10.88 10.88 0 0 1 8.109-8.11 18.7 18.7 0 0 1 8.528 0 10.88 10.88 0 0 1 8.11 8.11 18.7 18.7 0 0 1 0 8.528 10.88 10.88 0 0 1-8.11 8.11 18.7 18.7 0 0 1-4.264.493.867.867 0 0 1 0-1.734", fill: "#3E3F58" }),
786
- React__default["default"].createElement("path", { d: "M12.5 16a4 4 0 1 1 8 0 4 4 0 0 1-8 0", fill: "#fff" }),
787
- React__default["default"].createElement("path", { d: "M11.633 16a4.867 4.867 0 1 1 9.734 0 4.867 4.867 0 0 1-9.734 0m4.867-3.133a3.133 3.133 0 1 0 0 6.266 3.133 3.133 0 0 0 0-6.266m-4 9.8a2.667 2.667 0 1 1-5.333 0 2.667 2.667 0 0 1 5.333 0", fill: "#3E3F58" }),
788
- React__default["default"].createElement("path", { d: "M10.305 22.195c.26.26.26.683 0 .943l-1.91 1.91c-.36.36-.562.847-.562 1.355a3.25 3.25 0 0 1-1.796 2.907l-1.239.62a.667.667 0 1 1-.596-1.193l1.238-.62a1.92 1.92 0 0 0 1.06-1.714c0-.862.342-1.688.952-2.298l1.91-1.91c.26-.26.682-.26.943 0", fill: "#3E3F58" }),
789
- React__default["default"].createElement("path", { d: "M3.874 4.788a1 1 0 0 1 1.414-1.414l23.099 23.098a1 1 0 1 1-1.415 1.415z", fill: "#E85388" }))) : (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 19 18", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
790
- React__default["default"].createElement("g", { clipPath: "url(#clip0_1530_7251)" },
791
- React__default["default"].createElement("path", { d: "M8.983 10.87a.23.23 0 0 1 .049-.16c.08-.114.156-.229.207-.36.1-.166.168-.348.233-.528.246-.668.397-1.36.508-2.062.036-.235.076-.471.09-.71.065-.511.101-1.024.095-1.541.004-.015.011-.03.011-.044a13 13 0 0 0-.089-1.62c-.023-.196-.093-.335-.298-.406-.293-.1-.48-.316-.568-.615a2.7 2.7 0 0 0-.217-.566c-.123-.222-.29-.391-.54-.47-.057-.018-.088-.016-.106.052q-.045.165-.073.336c-.005.044 0 .058.048.058q.122.005.244.017c.127.009.21.09.202.196-.011.111-.108.179-.239.166-.065-.007-.133-.009-.198-.016-.058-.008-.077.016-.067.072q.027.165.052.332c.006.043.031.053.07.053.078 0 .147-.03.218-.057.104-.042.2-.004.242.093.04.09.004.187-.093.235-.13.063-.27.113-.411.085a.23.23 0 0 0-.235.077c-.04-.084-.106-.146-.167-.211-.46-.475-.55-1.194-.235-1.82.18-.359.45-.627.828-.776A.4.4 0 0 0 8.69.595c.33-.317.734-.477 1.172-.55.641-.11 1.25-.024 1.819.3.41.233.728.566.942.983.131.253.188.535.246.814.16.762.233 1.538.293 2.313q.108 1.411.213 2.826c.055.712.13 1.422.24 2.128.066.428.175.846.26 1.27.097.479.039.941-.24 1.358a1.2 1.2 0 0 1-.517.428c-.163.05-.327.105-.491.155-.178.052-.302-.059-.268-.239a4.6 4.6 0 0 0 .077-.72 13.6 13.6 0 0 0-.133-2.225c-.03-.196-.055-.395-.087-.591-.07-.43-.151-.857-.257-1.28l-.015-.07a16 16 0 0 0-.282-1.03c-.012-.039-.025-.079-.076-.075-.038.003-.053.034-.058.07l-.146 1.105c-.05.219-.094.437-.158.652a5.5 5.5 0 0 1-.806 1.654l-.091.113c-.308.382-.654.719-1.094.95-.122.06-.177.048-.252-.063", fill: "#1B3250" }),
792
- React__default["default"].createElement("path", { d: "M12.304 9.435c.1.737.154 1.477.133 2.224a4.6 4.6 0 0 1-.077.72c-.034.182.09.293.268.239q.246-.075.491-.155c.053.226.126.448.17.675q.09.452.129.912c.025.302.043.603.032.905q-.015.483-.065.964a14 14 0 0 1-.299 1.707c-.02.086-.045.17-.065.255-.02.09-.068.12-.16.12L8.789 18H7.781c-.111 0-.117-.011-.13-.124a3 3 0 0 0-.361-1.121c-.132-.235-.297-.448-.415-.692a3.14 3.14 0 0 1-.324-1.521c.233.07.418.001.571-.184q.236-.281.477-.559c.07-.08.136-.164.244-.193.315-.087.631-.166.94-.262.665-.207 1.324-.43 1.917-.804.251-.159.475-.344.595-.63.237-.564.415-1.147.592-1.733.085-.28.184-.55.417-.742", fill: "#2D87F3" }),
793
- React__default["default"].createElement("path", { d: "M12.304 9.435c-.233.194-.33.462-.413.74-.177.585-.355 1.169-.592 1.733-.12.286-.344.471-.595.63-.593.375-1.254.597-1.916.804-.312.097-.628.177-.941.262-.11.031-.177.113-.244.193q-.24.277-.477.559c-.153.184-.34.253-.571.184a.87.87 0 0 1-.44-.54.64.64 0 0 1 .045-.503 1 1 0 0 0 .094-.31.47.47 0 0 1 .392-.405c.132-.03.269-.039.404-.053a.4.4 0 0 0 .114-.024c.115-.009.21-.069.31-.12.322-.167.646-.328.966-.497q.586-.308 1.192-.571a.78.78 0 0 0 .473-.524q.09-.305.177-.608c.047-.171.113-.337.14-.514a5.5 5.5 0 0 0 .806-1.654c.064-.215.108-.433.159-.652a.63.63 0 0 1 .342-.054c.08.013.156.036.237.054.105.423.187.85.256 1.28q.039.292.082.59m-4.19-5.947a.23.23 0 0 1 .235-.076c.142.025.282-.022.411-.086.097-.047.133-.143.093-.234-.042-.095-.138-.133-.242-.093-.071.027-.14.056-.218.056-.039 0-.062-.009-.07-.053q-.024-.165-.052-.33-.017-.082.067-.074c.066.008.133.01.198.017.131.013.228-.053.239-.166.01-.105-.073-.187-.202-.196-.082-.006-.162-.015-.244-.017-.046 0-.053-.014-.047-.058.016-.115.043-.224.072-.337.017-.067.05-.069.106-.05.25.078.417.247.54.469.1.178.16.371.217.566.087.298.273.515.568.615.206.07.275.21.298.406.066.539.091 1.08.09 1.62 0 .014-.008.029-.011.043-.272-.016-.525.075-.783.133a1.4 1.4 0 0 1-.513.031.5.5 0 0 1-.433-.36 2.3 2.3 0 0 1-.091-.46c.154-.024.309-.048.451-.124.1-.055.135-.148.09-.242a.18.18 0 0 0-.24-.084 1 1 0 0 1-.376.087 1.3 1.3 0 0 0-.326-.482c-.096-.093-.096-.215-.013-.319.06-.07.126-.134.186-.202", fill: "#FCCAAF" }),
794
- React__default["default"].createElement("path", { d: "M10.069 7.052c-.013.239-.053.473-.09.71-.11.7-.261 1.394-.507 2.062-.066.18-.135.362-.233.528a.46.46 0 0 0-.235-.4c-.328-.21-.544-.508-.599-.898a.86.86 0 0 1 .242-.742c.237-.244.504-.459.761-.683.188-.162.37-.327.555-.493.033-.031.064-.064.106-.084m.349 2.818c-.025.176-.093.341-.14.513-.057.204-.119.404-.177.608a.78.78 0 0 1-.473.524q-.607.261-1.192.571c-.32.17-.646.33-.966.497-.099.051-.195.111-.31.12.066-.15.177-.266.277-.387.273-.334.615-.596.932-.881q.306-.28.611-.565c.077.11.13.124.251.06.439-.229.787-.567 1.094-.95z", fill: "#2D87F3" }),
795
- React__default["default"].createElement("path", { d: "M8.271 4.49a1 1 0 0 0 .377-.088.183.183 0 0 1 .239.084c.047.095.01.187-.09.242-.14.076-.296.1-.45.124z", fill: "#FF6F4D" }),
796
- React__default["default"].createElement("path", { d: "M11.96 7.563c-.079-.018-.157-.041-.237-.054a.65.65 0 0 0-.342.054l.146-1.104c.005-.037.02-.068.058-.071.05-.006.063.034.076.074q.159.511.282 1.03.01.036.017.071", fill: "#2D87F3" }),
797
- React__default["default"].createElement("path", { d: "M9.834 1.004a7.996 7.996 0 1 0 0 15.992 7.996 7.996 0 0 0 0-15.992M9.465 2.26c1.606-.09 3.191.4 4.467 1.378a.282.282 0 0 1 .03.424l-9.066 9.066a.283.283 0 0 1-.424-.03A6.749 6.749 0 0 1 9.465 2.26m.369 13.49a6.72 6.72 0 0 1-4.016-1.325.284.284 0 0 1-.032-.426l9.046-9.047a.283.283 0 0 1 .427.032A6.75 6.75 0 0 1 9.834 15.75", fill: "#F44D2C" }),
798
- React__default["default"].createElement("path", { d: "M10.159 5.509c.005.517 2.997-1.054 2.997-1.054s-.133-1.55-.293-2.313c-.058-.279-.114-.56-.245-.814a2.35 2.35 0 0 0-.943-.983c-.568-.324-1.178-.41-1.818-.3-.44.073-.843.233-1.173.55a.4.4 0 0 1-.147.085c-.379.15-.648.417-.828.776-.315.626-.224 1.345.235 1.82.062.065.127.127.167.21a.23.23 0 0 1 .235-.076c.142.028.282-.022.411-.085.097-.048.133-.144.093-.235-.042-.097-.138-.135-.242-.093-.071.027-.14.057-.218.057-.039 0-.064-.01-.07-.053q-.024-.165-.052-.332c-.01-.056.009-.08.067-.072.066.007.133.009.198.016.131.013.228-.055.239-.166.009-.105-.075-.187-.202-.196h-.007q-.118-.013-.237-.017c-.047 0-.053-.014-.047-.058.016-.114.043-.225.072-.336.019-.068.05-.07.106-.051.25.078.417.247.54.47.099.178.16.37.217.565.087.299.275.515.568.615.206.071.275.21.298.406.066.539.091 1.078.09 1.62z", fill: "#1B3250" }),
799
- React__default["default"].createElement("path", { d: "M8.107 3.488a.23.23 0 0 1 .235-.076c.142.025.282-.022.411-.086.097-.047.133-.143.093-.234-.042-.095-.138-.133-.242-.093-.07.027-.14.056-.218.056-.038 0-.062-.009-.07-.053q-.024-.165-.052-.33-.017-.082.067-.074c.066.008.133.01.199.017.13.013.227-.053.238-.166.01-.105-.073-.187-.202-.196-.082-.006-.162-.015-.244-.017-.045 0-.053-.014-.047-.058.016-.115.043-.224.073-.337.016-.067.049-.069.105-.05.25.078.417.247.54.469.1.178.16.371.217.566.088.298.273.515.568.615.206.07.275.21.298.406.066.539.091 1.08.09 1.62 0 .014-.008.029-.011.043-.271-.016-.524.075-.783.133a1.4 1.4 0 0 1-.513.031.5.5 0 0 1-.433-.36 2.3 2.3 0 0 1-.091-.46c.154-.024.31-.048.451-.124.1-.055.135-.148.09-.242a.18.18 0 0 0-.24-.084 1 1 0 0 1-.376.087 1.3 1.3 0 0 0-.326-.482c-.096-.093-.096-.215-.012-.319.06-.07.125-.134.185-.202", fill: "#FCCAAF" }),
800
- React__default["default"].createElement("path", { d: "M8.265 4.49a1 1 0 0 0 .376-.088.183.183 0 0 1 .239.084c.047.095.01.187-.09.242-.14.076-.296.1-.45.124z", fill: "#FF6F4D" })),
801
- React__default["default"].createElement("defs", null,
802
- React__default["default"].createElement("clipPath", { id: "clip0_1530_7251" },
803
- React__default["default"].createElement("path", { fill: "#fff", d: "M.834 0h18v18h-18z" })))));
804
- };
805
-
806
- const TryConceive = (_a) => {
807
- var { isMarryBaby, size = 24 } = _a, rest = tslib_es6.__rest(_a, ["isMarryBaby", "size"]);
808
- const props = Object.assign({ width: size, height: size }, rest);
809
- return isMarryBaby ? (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 33 32", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
810
- React__default["default"].createElement("path", { d: "M14.018 9.155c-1.422 1.066-1.777 1.777-1.067 2.843.57.853 2.133 2.488 3.2 3.554-.712 2.133-6.753 1.422-6.753 1.422l-.711 1.421-1.067 3.199c-1.066 0-3.198.142-3.198.71 0 .712 2.843 2.844 3.554 2.844.569 0 1.658-2.132 2.132-3.199 1.54 1.777 5.474 4.905 8.885 3.199 4.265-2.132 6.398-5.331 5.687-7.819-.274-.959-.284-1.495-.132-1.813a4.62 4.62 0 0 0 3.438-2.3c.715-1.108.78-2.417.397-3.652-.41-1.663-1.15-2.955-2.637-3.252-3.423-.685-6.397 1.016-6.397 4.62a4.6 4.6 0 0 0 .971 2.834c-1.184.316-2.414-.236-6.302-4.611", fill: "#fff" }),
811
- React__default["default"].createElement("path", { d: "M29.3 10.825A5.235 5.235 0 0 0 24.077 5.6c-2.876 0-5.245 2.348-5.245 5.224 0 .36.275.634.634.634.36 0 .635-.275.635-.634 0-2.179 1.776-3.955 3.976-3.955s3.954 1.776 3.954 3.955a3.947 3.947 0 0 1-3.531 3.933.8.8 0 0 0-.381-.021c-.042.021-.085.021-.106.042a.64.64 0 0 0-.57.635c0 .254.147.465.359.57.105.487.148.995.148 1.502a7.175 7.175 0 0 1-7.17 7.17 7.22 7.22 0 0 1-5.773-2.898l-.02-.021c.507-.317 1.902-.17 2.41-.106a.637.637 0 0 0 .698-.57.637.637 0 0 0-.571-.699c-1.184-.148-3.384-.38-3.891 1.164-.064.19-.127.401-.19.592-.318.994-.74 2.347-1.27 2.58-.634.063-2.918-1.587-3.172-2.284.212-.275 1.248-.444 2.623 0 .169.063.36.042.507-.064s.275-.232.296-.423c.571-2.707.74-3.278.74-3.299v-.021c.212-.888.867-.973 2.538-.93 1.523.042 3.384.084 4.674-1.46a7.8 7.8 0 0 0 3.235.994h.043a.643.643 0 0 0 .634-.592c.021-.36-.232-.655-.57-.677-4.4-.36-6.028-4.652-6.091-4.842 0 0 0-.022-.022-.022-.274-.634-.063-1.036.19-1.163.17-.105.445-.105.614.17 1.248 2.008 2.432 3.32 3.574 4.018.021 0 .042.02.042.02.677.34 2.052.762 3.596-.295.296-.19.359-.592.169-.889-.19-.296-.592-.36-.889-.169-.951.635-1.776.487-2.305.233-.93-.571-1.988-1.777-3.108-3.574-.508-.783-1.48-1.036-2.284-.613-.762.401-1.312 1.438-.762 2.77.085.254.93 2.368 2.898 3.934a2.7 2.7 0 0 1-.614.486c-.02 0-.02 0-.042-.021-8.205-2.517-8.86-8.586-8.924-9.77a.61.61 0 0 0-.656-.614.63.63 0 0 0-.592.656c.042 1.226.655 7.084 7.74 10.172h-.508c-1.48-.042-3.34-.085-3.806 1.882-.021.106-.17.677-.613 2.707-1.587-.36-3.194-.127-3.574 1.036-.19.55.126 1.206.972 2.01.571.549 2.263 1.902 3.447 1.902.149 0 .297-.02.423-.063.952-.36 1.438-1.544 1.861-2.813a8.48 8.48 0 0 0 6.324 2.855c4.652 0 8.438-3.785 8.438-8.438 0-.507-.043-1.015-.148-1.522a5.264 5.264 0 0 0 4.23-5.16", fill: "#3E3F58" }),
812
- React__default["default"].createElement("rect", { x: "23.005", y: "8.444", width: "1.942", height: "1.422", rx: ".711", transform: "rotate(34.869 23.005 8.444)", fill: "#FB8C00" }))) : (React__default["default"].createElement("svg", Object.assign({ viewBox: "0 0 18 18", fill: "none", xmlns: "http://www.w3.org/2000/svg" }, props),
813
- React__default["default"].createElement("path", { d: "M13.996 8.62v3.221c1.054.035 1.682-.705 1.845-1.467.209-.977-.444-2.041-1.845-1.754", fill: "#FEAA96" }),
814
- React__default["default"].createElement("path", { d: "M14.055 10.67a.21.21 0 0 1-.2-.277c.166-.508.594-.69.92-.644a.21.21 0 1 1-.059.418c-.163-.023-.37.079-.461.358a.21.21 0 0 1-.2.145", fill: "#FF886C" }),
815
- React__default["default"].createElement("path", { d: "M2.16 10.374c.162.762.79 1.502 1.844 1.467V8.62c-1.4-.287-2.054.777-1.845 1.754", fill: "#FEAA96" }),
816
- React__default["default"].createElement("path", { d: "M3.98 10.67a.21.21 0 0 1-.2-.145c-.093-.28-.299-.381-.462-.358a.21.21 0 0 1-.21-.102.21.21 0 0 1 .152-.316c.326-.046.753.136.92.644a.21.21 0 0 1-.2.277", fill: "#FF886C" }),
817
- React__default["default"].createElement("path", { d: "M9 15.831c1.325 0 3.365-.561 4.534-2.292 1.057-1.563.436-4.144.462-5.169.053-2.079-1.447-4.78-4.996-4.78s-5.05 2.7-4.996 4.78c.026 1.025-.595 3.606.461 5.169 1.17 1.73 3.21 2.292 4.535 2.292", fill: "#FECCBF" }),
818
- React__default["default"].createElement("path", { d: "M6.881 10.535a.56.56 0 1 0 0-1.121.56.56 0 0 0 0 1.121", fill: "#A35961" }),
819
- React__default["default"].createElement("path", { d: "M7.114 9.777a.21.21 0 0 1-.188-.116c-.049-.097-.205-.122-.27-.129-.225-.022-.44.056-.477.104a.211.211 0 1 1-.347-.241c.149-.215.53-.306.831-.285.306.021.533.15.64.362a.21.21 0 0 1-.189.305", fill: "#8C2F39" }),
820
- React__default["default"].createElement("path", { d: "M11.119 10.535a.56.56 0 1 0 0-1.121.56.56 0 0 0 0 1.121", fill: "#A35961" }),
821
- React__default["default"].createElement("path", { d: "M9 13.329c.777 0 .994-.61 1.046-.92.031-.185-.132-.35-.34-.35H8.293c-.208 0-.371.165-.34.35.052.31.27.92 1.047.92", fill: "#D84023" }),
822
- React__default["default"].createElement("path", { d: "M10.763 7.94a.2.2 0 0 1-.107-.03.33.33 0 0 0-.18-.029.21.21 0 1 1-.07-.416.74.74 0 0 1 .464.081.211.211 0 0 1-.107.393m-3.526 0a.21.21 0 0 1-.107-.393.74.74 0 0 1 .463-.08.211.211 0 1 1-.07.415.3.3 0 0 0-.18.029.2.2 0 0 1-.106.029", fill: "#FEAA96" }),
823
- React__default["default"].createElement("path", { d: "M10.887 9.777a.21.21 0 0 1-.189-.305c.107-.212.334-.34.64-.362.3-.021.682.07.83.285a.211.211 0 0 1-.346.24c-.038-.048-.252-.125-.477-.103-.065.007-.221.032-.27.129a.21.21 0 0 1-.188.116", fill: "#8C2F39" }),
824
- React__default["default"].createElement("path", { d: "M9.284 11.02a.21.21 0 0 1-.22-.15.07.07 0 0 0-.063-.05H9a.07.07 0 0 0-.064.05.21.21 0 0 1-.22.15.22.22 0 0 1-.192-.244c.018-.221.213-.379.476-.379.264 0 .458.158.476.38a.22.22 0 0 1-.192.244", fill: "#FEAA96" }),
825
- React__default["default"].createElement("path", { d: "M9.55 12.06h-1.1l-.003.054a.552.552 0 1 0 1.102-.055m2.041-.774-.29.53a.1.1 0 0 1-.041.04l-.53.29a.1.1 0 0 0-.053.09.1.1 0 0 0 .053.09l.53.29q.026.015.04.04l.29.53a.103.103 0 0 0 .18 0l.29-.53a.1.1 0 0 1 .041-.04l.53-.29a.103.103 0 0 0 0-.18l-.53-.29a.1.1 0 0 1-.04-.04l-.29-.53a.1.1 0 0 0-.143-.039.1.1 0 0 0-.038.04", fill: "#fff" }),
826
- React__default["default"].createElement("path", { d: "M11.055 2.193c-.147-.422-.524-.698-1.01-.738a.9.9 0 0 0-.535.154c-.206.155-.37.358-.478.592a.036.036 0 0 1-.066 0 1.55 1.55 0 0 0-.475-.592.9.9 0 0 0-.537-.154c-.485.04-.862.316-1.008.739a1.03 1.03 0 0 0 .259 1.09c.479.447 1.156.518 1.543.518h.502c.387 0 1.066-.07 1.545-.517a1.03 1.03 0 0 0 .26-1.092M8.79 3.243a.13.13 0 0 1-.134.135c-.316-.012-.821-.084-1.163-.402a.61.61 0 0 1-.148-.644.66.66 0 0 1 .438-.417c.242-.078.404-.006.456.033.446.33.539.932.551 1.295m1.718-.267c-.342.319-.847.39-1.163.402a.13.13 0 0 1-.135-.135c.013-.362.105-.964.551-1.295a.47.47 0 0 1 .25-.073c.318.027.554.193.645.457a.61.61 0 0 1-.149.644", fill: "#2D87F3" }),
827
- React__default["default"].createElement("path", { d: "M8.998 3.338a.21.21 0 0 1 .122.383l-.04.028c-.16.118-.957.76-.991 1.758-.027.78.403 1.132.814 1.202.367.062.831-.096.985-.59a.415.415 0 0 0-.211-.52c-.136-.069-.32-.076-.425.064a.211.211 0 0 1-.337-.253c.215-.287.607-.363.954-.186a.836.836 0 0 1 .422 1.02 1.28 1.28 0 0 1-1.458.88c-.56-.095-1.202-.58-1.166-1.631.046-1.334 1.17-2.093 1.222-2.125a.2.2 0 0 1 .109-.03", fill: "#BA8288" })));
828
- };
829
-
830
- const OvulationFormContext = React.createContext({});
831
-
832
- const DefaultLayout$1 = (_a) => {
833
- var props = tslib_es6.__rest(_a, []);
834
- const { t } = useTranslations.useTranslations();
835
- const { currentUrl, submitProps, form, calculatingMethods, isMobile } = React.useContext(OvulationFormContext);
836
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
837
- React__default["default"].createElement(constants.HealthToolFormWrapper.Control, null,
838
- React__default["default"].createElement(constants.HealthToolFormWrapper.ChipGroup, Object.assign({ data: calculatingMethods, label: t('dueDatePage.calculationMethod'), isMobile: isMobile }, form.getInputProps('calculatorType')))),
839
- React__default["default"].createElement(index.DatePicker, Object.assign({ placeholder: "DD/MM/YYYY", popoverProps: {
840
- withinPortal: true,
841
- }, label: t('dueDatePage.lastPeriod.lastPeriodLabel'), maxDate: new Date() }, form.getInputProps('lastPeriodDate'))),
842
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: `${t('ovulationPage.cycleLength')} (${t('ovulationPage.dayUnit')})`, min: 21, max: 45, defaultValue: 1 }, form.getInputProps('cycleLength'))),
843
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: `${t('ovulationPage.periodDuration')} (${t('ovulationPage.dayUnit')})`, min: 1, max: 15, defaultValue: 1 }, form.getInputProps('periodLength'))),
844
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Ovulation", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
845
- };
846
-
847
- const InlineLayout$1 = (_a) => {
848
- var props = tslib_es6.__rest(_a, []);
849
- const { t } = useTranslations.useTranslations();
850
- const { currentUrl, submitProps, form, calculatingMethods } = React.useContext(OvulationFormContext);
851
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
852
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.calculationMethod'), direction: "column", width: '100%' },
853
- React__default["default"].createElement(constants.HealthToolFormWrapper.ChipGroup, Object.assign({ data: calculatingMethods }, form.getInputProps('calculatorType')))),
854
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel') },
855
- React__default["default"].createElement(index.DatePicker, Object.assign({ placeholder: "DD/MM/YYYY", popoverProps: {
856
- withinPortal: true,
857
- }, maxDate: new Date() }, form.getInputProps('lastPeriodDate')))),
858
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
859
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('ovulationPage.cycleLength') + ' ' + t('ovulationPage.dayUnit') },
860
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 21, max: 45, defaultValue: 1 }, form.getInputProps('cycleLength'), { error: null }))),
861
- form.errors.cycleLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.cycleLength))),
862
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
863
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('ovulationPage.periodDuration') + ' ' + t('ovulationPage.dayUnit') },
864
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 1, max: 15, defaultValue: 1 }, form.getInputProps('periodLength'), { error: null }))),
865
- form.errors.periodLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.periodLength))),
866
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Ovulation", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
867
- };
868
-
869
- const MbLayout$2 = (_a) => {
870
- var props = tslib_es6.__rest(_a, []);
871
- const { t } = useTranslations.useTranslations();
872
- const { currentUrl, submitProps, form, calculatingMethods } = React.useContext(OvulationFormContext);
873
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
874
- React__default["default"].createElement(constants.HealthToolFormWrapper.Control, null,
875
- React__default["default"].createElement(index$2.Input.Wrapper, { label: React__default["default"].createElement(index$4.Text, { size: "p4", sx: { fontWeight: 'normal' } }, t('dueDatePage.calculationMethod')) },
876
- React__default["default"].createElement(constants.HealthToolFormWrapper.ChipGroup, Object.assign({ data: calculatingMethods }, form.getInputProps('calculatorType'))))),
877
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('dueDatePage.lastPeriod.lastPeriodLabel'), rightSection: React__default["default"].createElement(other.CalendarMB, null) },
878
- React__default["default"].createElement(index.DatePicker, Object.assign({ placeholder: "DD/MM/YYYY", popoverProps: {
879
- withinPortal: true,
880
- }, maxDate: new Date(), rightSection: null }, form.getInputProps('lastPeriodDate')))),
881
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('ovulationPage.cycleLength'), rightSection: t('ovulationPage.dayUnit') },
882
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 21, max: 45, defaultValue: 1 }, form.getInputProps('cycleLength')))),
883
- form.errors.cycleLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.cycleLength)),
884
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('ovulationPage.periodDuration'), rightSection: t('ovulationPage.dayUnit') },
885
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: 1, max: 15, defaultValue: 1 }, form.getInputProps('periodLength')))),
886
- form.errors.periodLength && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.periodLength)),
887
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Ovulation", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
888
- };
889
-
890
- var OvulationCalculatorType$1;
891
- (function (OvulationCalculatorType) {
892
- OvulationCalculatorType[OvulationCalculatorType["trackPeriod"] = 0] = "trackPeriod";
893
- OvulationCalculatorType[OvulationCalculatorType["conceive"] = 1] = "conceive";
894
- OvulationCalculatorType[OvulationCalculatorType["avoidPregnancy"] = 2] = "avoidPregnancy";
895
- })(OvulationCalculatorType$1 || (OvulationCalculatorType$1 = {}));
896
- const OvulationForm = (_a) => {
897
- var { formLayout = 'default', submitProps, currentUrl, isMobile, onSubmit } = _a, props = tslib_es6.__rest(_a, ["formLayout", "submitProps", "currentUrl", "isMobile", "onSubmit"]);
898
- const theme = core.useMantineTheme();
899
- const { t } = useTranslations.useTranslations();
900
- const isMarryBaby = theme.other.template === 'mb';
901
- const form$1 = form.useForm({
902
- initialValues: {
903
- calculatorType: String(OvulationCalculatorType$1.trackPeriod),
904
- periodLength: 7,
905
- cycleLength: 28,
906
- lastPeriodDate: new Date(),
907
- },
908
- validate: {
909
- periodLength: form.isNotEmpty(t('validation.error.requiredField')),
910
- cycleLength: form.isNotEmpty(t('validation.error.requiredField')),
911
- },
912
- });
913
- const commonProps = Object.assign({ onSubmit: form$1.onSubmit(onSubmit) }, props);
914
- const calculatingMethods = [
915
- {
916
- label: t('ovulationPage.trackPeriod'),
917
- value: OvulationCalculatorType$1.trackPeriod,
918
- icon: React__default["default"].createElement(LastPeriod, null),
919
- },
920
- {
921
- label: t('ovulationPage.conceive'),
922
- value: OvulationCalculatorType$1.conceive,
923
- icon: React__default["default"].createElement(TryConceive, null),
924
- },
925
- {
926
- label: t('ovulationPage.avoidPregnancy'),
927
- value: OvulationCalculatorType$1.avoidPregnancy,
928
- icon: React__default["default"].createElement(AvoidPregnancy, null),
929
- },
930
- ];
931
- return (React__default["default"].createElement(OvulationFormContext.Provider, { value: { submitProps, currentUrl, form: form$1, isMobile, calculatingMethods } }, formLayout === 'inline' ? (React__default["default"].createElement(InlineLayout$1, Object.assign({}, commonProps))) : isMarryBaby ? (React__default["default"].createElement(MbLayout$2, Object.assign({ formLayout: formLayout }, commonProps))) : (React__default["default"].createElement(DefaultLayout$1, Object.assign({}, commonProps)))));
932
- };
933
-
934
- const BabyVaccineFormContext = React.createContext({});
935
-
936
- const DefaultLayout = (_a) => {
937
- var props = tslib_es6.__rest(_a, []);
938
- const { t } = useTranslations.useTranslations();
939
- const { currentUrl, submitProps, form } = React.useContext(BabyVaccineFormContext);
940
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
941
- React__default["default"].createElement(index$3.GenderOptionControl, Object.assign({ isBaby: true }, form.getInputProps('gender'))),
942
- React__default["default"].createElement(index.DatePicker, Object.assign({ label: t('babyGrowth.input.birthday'), placeholder: 'DD/MM/YYYY', popoverProps: {
943
- withinPortal: true,
944
- }, maxDate: new Date() }, form.getInputProps('age'))),
945
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Vaccination Tool", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
946
- };
947
-
948
- const InlineLayout = (_a) => {
949
- var props = tslib_es6.__rest(_a, []);
950
- const { t } = useTranslations.useTranslations();
951
- const { currentUrl, submitProps, form } = React.useContext(BabyVaccineFormContext);
952
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
953
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
954
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('tools.selectBabyGender'), width: 'none' },
955
- React__default["default"].createElement(index$3.GenderOptionControl, Object.assign({ isBaby: true, hideLabel: true, type: "radio" }, form.getInputProps('gender')))),
956
- form.errors.gender && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.gender))),
957
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
958
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('babyGrowth.input.birthday') },
959
- React__default["default"].createElement(index.DatePicker, Object.assign({ placeholder: 'DD/MM/YYYY', popoverProps: {
960
- withinPortal: true,
961
- }, maxDate: new Date() }, form.getInputProps('age'), { error: null }))),
962
- form.errors.age && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.gender))),
963
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Vaccination Tool", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
964
- };
965
-
966
- const MbLayout$1 = (_a) => {
967
- var props = tslib_es6.__rest(_a, []);
968
- const { t } = useTranslations.useTranslations();
969
- const { currentUrl, submitProps, form } = React.useContext(BabyVaccineFormContext);
970
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
971
- React__default["default"].createElement(constants.HealthToolFormWrapper.Control, null,
972
- React__default["default"].createElement(index$3.GenderOptionControl, Object.assign({ isBaby: true }, form.getInputProps('gender'), { error: null }))),
973
- form.errors.gender && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.gender)),
974
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
975
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('babyGrowth.input.birthday'), rightSection: React__default["default"].createElement(other.CalendarMB, null) },
976
- React__default["default"].createElement(index.DatePicker, Object.assign({ placeholder: 'DD/MM/YYYY', popoverProps: {
977
- withinPortal: true,
978
- }, maxDate: new Date(), rightSection: null }, form.getInputProps('age'), { error: null }))),
979
- form.errors.age && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.gender))),
980
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", className: "due-date-calculate-button", dataEventCategory: "Health Tool", dataEventAction: "Vaccination Tool", dataEventLabel: currentUrl }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
981
- };
982
-
983
- var OvulationCalculatorType;
984
- (function (OvulationCalculatorType) {
985
- OvulationCalculatorType[OvulationCalculatorType["trackPeriod"] = 0] = "trackPeriod";
986
- OvulationCalculatorType[OvulationCalculatorType["conceive"] = 1] = "conceive";
987
- OvulationCalculatorType[OvulationCalculatorType["avoidPregnancy"] = 2] = "avoidPregnancy";
988
- })(OvulationCalculatorType || (OvulationCalculatorType = {}));
989
- const BabyVaccineForm = (_a) => {
990
- var { formLayout = 'default', submitProps, currentUrl, onSubmit } = _a, props = tslib_es6.__rest(_a, ["formLayout", "submitProps", "currentUrl", "onSubmit"]);
991
- const { t } = useTranslations.useTranslations();
992
- const theme = core.useMantineTheme();
993
- const isMarryBaby = theme.other.template === 'mb';
994
- const form$1 = form.useForm({
995
- validate: {
996
- gender: form.isNotEmpty(t('validation.error.requiredField')),
997
- age: form.isNotEmpty(t('validation.error.requiredField')),
998
- },
999
- });
1000
- const commonProps = Object.assign({ onSubmit: form$1.onSubmit(onSubmit) }, props);
1001
- return (React__default["default"].createElement(BabyVaccineFormContext.Provider, { value: { submitProps, currentUrl, form: form$1 } }, formLayout === 'inline' ? (React__default["default"].createElement(InlineLayout, Object.assign({}, commonProps))) : isMarryBaby ? (React__default["default"].createElement(MbLayout$1, Object.assign({ formLayout: formLayout }, commonProps))) : (React__default["default"].createElement(DefaultLayout, Object.assign({}, commonProps)))));
1002
- };
1003
-
1004
- const PWGFormContext = React.createContext({});
1005
-
1006
- const DefaultForm = (_a) => {
1007
- var props = tslib_es6.__rest(_a, []);
1008
- const { t, locale } = useTranslations.useTranslations();
1009
- const { linkTool, form, submitProps } = React.useContext(PWGFormContext);
1010
- const theme = core.useMantineTheme();
1011
- const isMarryBaby = theme.other.template === 'mb';
1012
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "default" }, props),
1013
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: t('pregnancyWeightGain.weekInput'), min: constants.INPUT_RANGE.pregnantWeek.min, max: constants.INPUT_RANGE.pregnantWeek.max, placeholder: `${constants.INPUT_RANGE.pregnantWeek.min} - ${constants.INPUT_RANGE.pregnantWeek.max}` }, form.getInputProps('pregnantWeek'))),
1014
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: t('pregnancyWeightGain.weightBeforeInput'), min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max, placeholder: t('tools.inputPlaceholder', {
1015
- content: '50',
1016
- }) }, form.getInputProps('lastWeight'))),
1017
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: t('pregnancyWeightGain.heightInput'), min: constants.INPUT_RANGE.height.min, max: constants.INPUT_RANGE.height.max, placeholder: t('tools.inputPlaceholder', {
1018
- content: '160',
1019
- }) }, form.getInputProps('height'))),
1020
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ label: t('pregnancyWeightGain.weightInput'), min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max, placeholder: t('tools.inputPlaceholder', {
1021
- content: '50',
1022
- }) }, form.getInputProps('weight'))),
1023
- React__default["default"].createElement(constants.HealthToolFormWrapper.Switching, Object.assign({ label: t('pregnancyWeightGain.havingTwins') }, form.getInputProps('hasTwin'))),
1024
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", dataEventCategory: "Health Tool", dataEventAction: "Embedded Pregnancy Weight Gain", dataEventLabel: `https://${index$1.domainLocales[isMarryBaby ? 'vi-VN_MB' : locale]}/${linkTool}`, className: "due-date-calculate-button" }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
1025
- };
1026
-
1027
- const InlineForm = (_a) => {
1028
- var props = tslib_es6.__rest(_a, []);
1029
- const { t, locale } = useTranslations.useTranslations();
1030
- const { linkTool, form, submitProps } = React.useContext(PWGFormContext);
1031
- const theme = core.useMantineTheme();
1032
- const isMarryBaby = theme.other.template === 'mb';
1033
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
1034
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('pregnancyWeightGain.weekInput') },
1035
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: constants.INPUT_RANGE.pregnantWeek.min, max: constants.INPUT_RANGE.pregnantWeek.max, placeholder: `${constants.INPUT_RANGE.pregnantWeek.min} - ${constants.INPUT_RANGE.pregnantWeek.max}`, rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('pwgForm.week')) }, form.getInputProps('pregnantWeek')))),
1036
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('pregnancyWeightGain.weightBeforeInput') },
1037
- React__default["default"].createElement(index$2.Input.Number, Object.assign({}, form.getInputProps('lastWeight'), { min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max, placeholder: t('tools.inputPlaceholder', {
1038
- content: '50',
1039
- }), rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('babyGrowth.kg')) }))),
1040
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('pregnancyWeightGain.heightInput') },
1041
- React__default["default"].createElement(index$2.Input.Number, Object.assign({}, form.getInputProps('height'), { min: constants.INPUT_RANGE.height.min, max: constants.INPUT_RANGE.height.max, placeholder: t('tools.inputPlaceholder', {
1042
- content: '160',
1043
- }), rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('babyGrowth.cm')) }))),
1044
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('pregnancyWeightGain.weightInput') },
1045
- React__default["default"].createElement(index$2.Input.Number, Object.assign({}, form.getInputProps('weight'), { min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max, placeholder: t('tools.inputPlaceholder', {
1046
- content: '50',
1047
- }), rightSection: React__default["default"].createElement(constants.HealthToolFormWrapper.Unit, null, t('babyGrowth.kg')) }))),
1048
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderInlineControl, { label: t('pregnancyWeightGain.havingTwins'), width: 'none' },
1049
- React__default["default"].createElement(constants.HealthToolFormWrapper.Switching, Object.assign({}, form.getInputProps('hasTwin')))),
1050
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", dataEventCategory: "Health Tool", dataEventAction: "Embedded Pregnancy Weight Gain", dataEventLabel: `https://${index$1.domainLocales[isMarryBaby ? 'vi-VN_MB' : locale]}/${linkTool}`, className: "due-date-calculate-button" }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
1051
- };
1052
-
1053
- const MbLayout = (_a) => {
1054
- var props = tslib_es6.__rest(_a, []);
1055
- const { t, locale } = useTranslations.useTranslations();
1056
- const { linkTool, form, submitProps } = React.useContext(PWGFormContext);
1057
- const theme = core.useMantineTheme();
1058
- const isMarryBaby = theme.other.template === 'mb';
1059
- return (React__default["default"].createElement(constants.HealthToolFormWrapper, Object.assign({ formLayout: "inline" }, props),
1060
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
1061
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('pregnancyWeightGain.weekInput'), rightSection: t('pregnancy.week') },
1062
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: constants.INPUT_RANGE.pregnantWeek.min, max: constants.INPUT_RANGE.pregnantWeek.max, placeholder: `${constants.INPUT_RANGE.pregnantWeek.min} - ${constants.INPUT_RANGE.pregnantWeek.max}` }, form.getInputProps('pregnantWeek')))),
1063
- form.errors.pregnantWeek && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.pregnantWeek))),
1064
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
1065
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('pregnancyWeightGain.weightBeforeInput'), rightSection: "kg" },
1066
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max }, form.getInputProps('lastWeight'), { placeholder: t('tools.inputPlaceholder', {
1067
- content: '50',
1068
- }) }))),
1069
- form.errors.lastWeight && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.lastWeight))),
1070
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
1071
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('pregnancyWeightGain.heightInput'), rightSection: "cm" },
1072
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: constants.INPUT_RANGE.height.min, max: constants.INPUT_RANGE.height.max }, form.getInputProps('height'), { placeholder: t('tools.inputPlaceholder', {
1073
- content: '160',
1074
- }) }))),
1075
- form.errors.height && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.height))),
1076
- React__default["default"].createElement(constants.HealthToolFormWrapper.FormRow, null,
1077
- React__default["default"].createElement(constants.HealthToolFormWrapper.BorderBoxControl, { label: t('pregnancyWeightGain.weightInput'), rightSection: "kg" },
1078
- React__default["default"].createElement(index$2.Input.Number, Object.assign({ min: constants.INPUT_RANGE.weight.min, max: constants.INPUT_RANGE.weight.max }, form.getInputProps('weight'), { placeholder: t('tools.inputPlaceholder', {
1079
- content: '50',
1080
- }) }))),
1081
- form.errors.weight && (React__default["default"].createElement(constants.HealthToolFormWrapper.Error, null, form.errors.weight))),
1082
- React__default["default"].createElement(constants.HealthToolFormWrapper.Switching, Object.assign({ label: t('pregnancyWeightGain.havingTwins') }, form.getInputProps('hasTwin'))),
1083
- React__default["default"].createElement(constants.HealthToolFormWrapper.Submit, Object.assign({ type: "submit", dataEventCategory: "Health Tool", dataEventAction: "Embedded Pregnancy Weight Gain", dataEventLabel: `https://${index$1.domainLocales[isMarryBaby ? 'vi-VN_MB' : locale]}/${linkTool}`, className: "due-date-calculate-button" }, submitProps), t('dueDatePage.lastPeriod.calculate'))));
1084
- };
1085
-
1086
- const PWGForm = (_a) => {
1087
- var { formLayout = 'default', submitProps, onSubmit } = _a, rest = tslib_es6.__rest(_a, ["formLayout", "submitProps", "onSubmit"]);
1088
- const { t, locale } = useTranslations.useTranslations();
1089
- const theme = core.useMantineTheme();
1090
- const isMarryBaby = theme.other.template === 'mb';
1091
- const form$1 = form.useForm({
1092
- validate: {
1093
- pregnantWeek: form.isNotEmpty(t('validation.error.requiredField')),
1094
- height: form.isNotEmpty(t('validation.error.requiredField')),
1095
- weight: (value, values) => {
1096
- return !value
1097
- ? t('validation.error.requiredField')
1098
- : Number(value) >= Number(values.lastWeight)
1099
- ? null
1100
- : t('pregnancyWeightGain.weightInput.error');
1101
- },
1102
- lastWeight: (value, values) => {
1103
- return !value
1104
- ? t('validation.error.requiredField')
1105
- : Number(value) < Number(values.weight)
1106
- ? null
1107
- : t('pregnancyWeightGain.weightInput.error');
1108
- },
1109
- },
1110
- });
1111
- const { getHealthToolLink } = useHealthToolCache.useHealthToolsCache(locale);
1112
- const linkTool = React.useMemo(() => getHealthToolLink(constants$1.HEALTH_TOOL_TYPE.PWG), [getHealthToolLink]);
1113
- const commonProps = Object.assign({ onSubmit: form$1.onSubmit(onSubmit) }, rest);
1114
- return (React__default["default"].createElement(PWGFormContext.Provider, { value: {
1115
- linkTool,
1116
- form: form$1,
1117
- submitProps,
1118
- } }, formLayout === 'inline' ? (React__default["default"].createElement(InlineForm, Object.assign({}, commonProps))) : isMarryBaby ? (React__default["default"].createElement(MbLayout, Object.assign({ formLayout: formLayout }, commonProps))) : (React__default["default"].createElement(DefaultForm, Object.assign({}, commonProps)))));
1119
- };
1120
-
1121
- exports.BabyPoopForm = BabyPoopForm;
1122
- exports.BabyVaccineForm = BabyVaccineForm;
1123
- exports.BmiForm = BmiForm;
1124
- exports.DueDateForm = DueDateForm;
1125
- exports.OvulationForm = OvulationForm;
1126
- exports.PWGForm = PWGForm;
1127
- exports.ThrForm = ThrForm;