@hhgtech/hhg-components 1.29.406 → 1.29.407-beta-2

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 (497) hide show
  1. package/build/{InputDate-1fb694a1.js → InputDate-25cf65d0.js} +3 -3
  2. package/build/{LastPeriod-7c6ea28e.js → LastPeriod-6b0b6e25.js} +1 -1
  3. package/build/{MobileBottomNavigationIcon-34838fc9.js → MobileBottomNavigationIcon-9ae128e6.js} +3 -3
  4. package/build/{Spinner-a2aa80eb.js → Spinner-edd61382.js} +1 -1
  5. package/build/{WhatsApp-b6da3116.js → WhatsApp-ac98a996.js} +1 -1
  6. package/build/adapters.js +19 -19
  7. package/build/atoms.js +48 -48
  8. package/build/babyGrowth.js +83 -83
  9. package/build/cache.js +2 -2
  10. package/build/care.js +17 -17
  11. package/build/careBookingSearchBar.js +14 -14
  12. package/build/careBookingSearchBarV2.js +15 -15
  13. package/build/components/molecules/impressionTrackingWrapper/index.d.ts +9 -0
  14. package/build/components.js +97 -97
  15. package/build/{constants-f06272bc.js → constants-11099a17.js} +1 -1
  16. package/build/constants.js +3 -3
  17. package/build/constantsDomainLocales.js +1 -1
  18. package/build/constantsRiskScreener.js +2 -2
  19. package/build/constantsSite.js +2 -2
  20. package/build/{core-c5275fcf.js → core-bfa02993.js} +1 -1
  21. package/build/{dataTransform-797323d1.js → dataTransform-d61b0cfa.js} +1 -1
  22. package/build/ecom.js +4 -4
  23. package/build/{editor-01b497b9.js → editor-d82512eb.js} +11 -11
  24. package/build/embeddedHeathToolCards_babyGrowth.js +23 -23
  25. package/build/embeddedHeathToolCards_babyPoop.js +19 -19
  26. package/build/embeddedHeathToolCards_babyVaccine.js +22 -22
  27. package/build/embeddedHeathToolCards_bmi_bmi.js +25 -25
  28. package/build/embeddedHeathToolCards_bmrBmr.js +25 -25
  29. package/build/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  30. package/build/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  31. package/build/embeddedHeathToolCards_pwg_pwg.js +26 -26
  32. package/build/embeddedHeathToolCards_targetHeartRate.js +27 -27
  33. package/build/esm/{InputDate-3b4c9453.js → InputDate-884a30eb.js} +3 -3
  34. package/build/esm/{LastPeriod-da7b38f8.js → LastPeriod-7d22a89e.js} +1 -1
  35. package/build/esm/{MobileBottomNavigationIcon-d51e07e5.js → MobileBottomNavigationIcon-623ec6f1.js} +3 -3
  36. package/build/esm/{Spinner-5f576920.js → Spinner-d53eb47c.js} +1 -1
  37. package/build/esm/{WhatsApp-3506a0f5.js → WhatsApp-339ae07a.js} +1 -1
  38. package/build/esm/adapters.js +19 -19
  39. package/build/esm/atoms.js +48 -48
  40. package/build/esm/babyGrowth.js +83 -83
  41. package/build/esm/cache.js +2 -2
  42. package/build/esm/care.js +17 -17
  43. package/build/esm/careBookingSearchBar.js +14 -14
  44. package/build/esm/careBookingSearchBarV2.js +15 -15
  45. package/build/esm/components/molecules/impressionTrackingWrapper/index.d.ts +9 -0
  46. package/build/esm/components.js +97 -97
  47. package/build/esm/{constants-8a0fa237.js → constants-d13fab58.js} +1 -1
  48. package/build/esm/constants.js +3 -3
  49. package/build/esm/constantsDomainLocales.js +1 -1
  50. package/build/esm/constantsRiskScreener.js +2 -2
  51. package/build/esm/constantsSite.js +2 -2
  52. package/build/esm/{core-176ed0f5.js → core-fbdd92ec.js} +1 -1
  53. package/build/esm/{dataTransform-8be73d0a.js → dataTransform-6f29cc58.js} +1 -1
  54. package/build/esm/ecom.js +4 -4
  55. package/build/esm/{editor-2243541f.js → editor-3002cf4c.js} +11 -11
  56. package/build/esm/embeddedHeathToolCards_babyGrowth.js +23 -23
  57. package/build/esm/embeddedHeathToolCards_babyPoop.js +19 -19
  58. package/build/esm/embeddedHeathToolCards_babyVaccine.js +22 -22
  59. package/build/esm/embeddedHeathToolCards_bmi_bmi.js +25 -25
  60. package/build/esm/embeddedHeathToolCards_bmrBmr.js +25 -25
  61. package/build/esm/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  62. package/build/esm/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  63. package/build/esm/embeddedHeathToolCards_pwg_pwg.js +26 -26
  64. package/build/esm/embeddedHeathToolCards_targetHeartRate.js +27 -27
  65. package/build/esm/footer.js +21 -21
  66. package/build/esm/gAssets.js +2 -2
  67. package/build/esm/{healthTools-02b963ba.js → healthTools-7fc1b2d1.js} +1 -1
  68. package/build/esm/healthToolsCardWrapper.js +18 -18
  69. package/build/esm/healthToolsForm.js +33 -33
  70. package/build/esm/hooks.js +13 -13
  71. package/build/esm/i18n-values/id-ID.js +1 -1
  72. package/build/esm/i18n-values/ms-MY.js +1 -1
  73. package/build/esm/i18n.js +2 -2
  74. package/build/esm/i18nV2.js +2 -2
  75. package/build/esm/{index-174970d9.js → index-036f3d00.js} +1 -1
  76. package/build/esm/{index-723c3203.js → index-05280423.js} +7 -7
  77. package/build/esm/{index-b797cc43.js → index-07316832.js} +16 -16
  78. package/build/esm/{index-a31cfb02.js → index-0790f7d2.js} +13 -13
  79. package/build/esm/{index-d3411682.js → index-08a3dd34.js} +16 -16
  80. package/build/esm/{index-7f71d4e8.js → index-0c2a7709.js} +6 -6
  81. package/build/esm/{index-b7898112.js → index-11294e28.js} +30 -30
  82. package/build/esm/{index-5ebd1d0f.js → index-139ebe3f.js} +2 -2
  83. package/build/esm/{index-10db4cc2.js → index-14fb2b3c.js} +16 -16
  84. package/build/esm/{index-b06aabae.js → index-1ac89439.js} +16 -16
  85. package/build/esm/{index-d567c370.js → index-1ced43c4.js} +17 -17
  86. package/build/esm/{index-071f5708.js → index-28ef7ff0.js} +2 -2
  87. package/build/esm/{index-e46789b6.js → index-2a6ba90c.js} +18 -18
  88. package/build/esm/{index-ac20f08a.js → index-2a728ee1.js} +4 -4
  89. package/build/esm/{index-b41ed641.js → index-2af29f0e.js} +3 -3
  90. package/build/esm/{index-7c2a2eee.js → index-30d16c50.js} +2 -2
  91. package/build/esm/{index-508a1d04.js → index-3f24f4fe.js} +3 -3
  92. package/build/esm/{index-530501db.js → index-3f8a3a02.js} +2 -2
  93. package/build/esm/{index-2864c9d0.js → index-412c07d4.js} +4 -4
  94. package/build/esm/{index-623cd2e2.js → index-43c4e10d.js} +2 -2
  95. package/build/esm/{index-11087b3c.js → index-48415e87.js} +13 -13
  96. package/build/esm/{index-20b12515.js → index-4c4ce8cd.js} +6 -6
  97. package/build/esm/{index-9e644028.js → index-54179b13.js} +17 -17
  98. package/build/esm/{index-86d3e7bf.js → index-58734934.js} +1 -1
  99. package/build/esm/{index-1fde2437.js → index-5fb324fe.js} +3 -3
  100. package/build/esm/{index-7b3306c8.js → index-6832616b.js} +17 -17
  101. package/build/esm/{index-1af264a4.js → index-69383eba.js} +6 -6
  102. package/build/esm/{index-0f90c5a5.js → index-69d9df53.js} +22 -22
  103. package/build/esm/{index-0777adf2.js → index-6bb12709.js} +5 -5
  104. package/build/esm/{index-7b4ba23e.js → index-6c266118.js} +25 -25
  105. package/build/esm/{index-ff44a25f.js → index-804005a3.js} +18 -18
  106. package/build/esm/{index-8b48b398.js → index-865b7ca1.js} +21 -21
  107. package/build/esm/{index-32f69dc3.js → index-880674f8.js} +1 -1
  108. package/build/esm/{index-92ea69ad.js → index-8a353ff2.js} +11 -11
  109. package/build/esm/{index-8df813c8.js → index-8c42251a.js} +5 -5
  110. package/build/esm/{index-1d59d866.js → index-8cc11322.js} +1 -1
  111. package/build/esm/{index-a8e6f6d0.js → index-90b9102d.js} +2 -2
  112. package/build/esm/{index-db188c66.js → index-91bd09e2.js} +10 -10
  113. package/build/esm/{index-5a244dc4.js → index-94248636.js} +11 -11
  114. package/build/esm/{index-2db660c3.js → index-944a4df1.js} +2 -2
  115. package/build/esm/{index-d82818aa.js → index-99644f85.js} +2 -2
  116. package/build/esm/{index-718eb885.js → index-9a64e49c.js} +31 -31
  117. package/build/esm/{index-34d3e999.js → index-9c2382d3.js} +13 -13
  118. package/build/esm/{index-14b4e7a4.js → index-a386377d.js} +1 -1
  119. package/build/esm/{index-4b3d27fd.js → index-ac119ad9.js} +2 -2
  120. package/build/esm/{index-39835389.js → index-afdf9b2b.js} +2 -2
  121. package/build/esm/{index-5eb1dcb5.js → index-b39ee999.js} +6 -6
  122. package/build/esm/{index-3aa54756.js → index-b648f88c.js} +3 -3
  123. package/build/esm/{index-ba8a3063.js → index-b7f92612.js} +3 -3
  124. package/build/esm/{index-551b7a7c.js → index-b8d7ef9e.js} +3 -3
  125. package/build/esm/{index-800ce298.js → index-bc9d349f.js} +13 -13
  126. package/build/esm/{index-a82157e7.js → index-c108c6d2.js} +2 -2
  127. package/build/esm/{index-906f8fe6.js → index-c8e0f8e4.js} +7 -7
  128. package/build/esm/{index-b2d6bbca.js → index-d11b568c.js} +1 -1
  129. package/build/esm/{index-0e422a96.js → index-d67ec678.js} +1 -1
  130. package/build/esm/{index-277b063b.js → index-d77488d8.js} +1 -1
  131. package/build/esm/{index-b4f61d89.js → index-db2cb4fb.js} +2 -2
  132. package/build/esm/{index-2e302c4e.js → index-e0a644ec.js} +17 -17
  133. package/build/esm/{index-cef2ca3c.js → index-e3b6bcf9.js} +2 -2
  134. package/build/esm/{index-27159181.js → index-e5ce5e00.js} +32 -32
  135. package/build/esm/{index-a1b7740f.js → index-f57a7d16.js} +15 -15
  136. package/build/esm/{index-d10851aa.js → index-f74c8482.js} +6 -6
  137. package/build/esm/{index-9ac9d9c8.js → index-fe4803f6.js} +1 -1
  138. package/build/esm/{index-caff8004.js → index-fefd118d.js} +24 -24
  139. package/build/esm/{index-fc7273b6.js → index-ff0dbf55.js} +2 -2
  140. package/build/esm/index.js +118 -118
  141. package/build/esm/{labelSorting-5fc6f05a.js → labelSorting-07e739d1.js} +4 -4
  142. package/build/esm/lead/LeadGenSubscriptionBox/LeadGenContext.d.ts +15 -9
  143. package/build/esm/lead/layouts/inline.d.ts +5 -3
  144. package/build/esm/lead/layouts/lightbox/index.d.ts +2 -1
  145. package/build/esm/lead/services/index.d.ts +14 -0
  146. package/build/esm/lead/utils/formatFormData.d.ts +1 -0
  147. package/build/esm/lead.js +370 -218
  148. package/build/esm/{logoIcon-b5715544.js → logoIcon-9f768d1c.js} +2 -2
  149. package/build/esm/mantine.js +25 -25
  150. package/build/esm/misc.js +17 -17
  151. package/build/esm/miscGetDynamicHealthTool.js +4 -4
  152. package/build/esm/miscGetSocialList.js +8 -8
  153. package/build/esm/miscScreenSizeContext.js +1 -1
  154. package/build/esm/mobileBottomNavigation.js +5 -5
  155. package/build/esm/mobileBottomNavigationIcon.js +5 -5
  156. package/build/esm/molecules.js +74 -74
  157. package/build/esm/moleculesArticleCard.js +6 -6
  158. package/build/esm/moleculesArticleCardV2.js +16 -16
  159. package/build/esm/navigation.js +46 -46
  160. package/build/esm/navigationLogoutPopup.js +9 -9
  161. package/build/esm/navigationProfileButton.js +26 -26
  162. package/build/esm/onboardingV2.js +29 -29
  163. package/build/esm/organisms.js +50 -50
  164. package/build/esm/{post-c808569f.js → post-a49354df.js} +2 -2
  165. package/build/esm/profileNavigation.js +19 -19
  166. package/build/esm/progressBar.js +1 -1
  167. package/build/esm/pwg.js +22 -22
  168. package/build/esm/ssoV2/api/featureFlag.d.ts +2 -1
  169. package/build/esm/ssoV2.js +52 -40
  170. package/build/esm/{store-42c528f7.js → store-363e96a6.js} +3 -3
  171. package/build/esm/subot.js +36 -36
  172. package/build/esm/surveyOrPremiumBanner.js +33 -33
  173. package/build/esm/surveyQuestionCard.js +10 -10
  174. package/build/esm/{surveyThankyouCard-e950ee7e.js → surveyThankyouCard-36f58672.js} +5 -5
  175. package/build/esm/together.js +56 -56
  176. package/build/esm/togetherApiUtils.js +4 -4
  177. package/build/esm/togetherAtoms.js +30 -30
  178. package/build/esm/togetherComponentGlobalContext.js +4 -4
  179. package/build/esm/togetherMolecules.js +51 -51
  180. package/build/esm/togetherMoleculesCardAuthor.js +28 -28
  181. package/build/esm/togetherMoleculesPostImagePreview.js +11 -11
  182. package/build/esm/togetherMoleculesProfileDetail.js +39 -39
  183. package/build/esm/togetherOrganisms.js +50 -50
  184. package/build/esm/togetherRichTextEditor.js +17 -17
  185. package/build/esm/togetherShareBox.js +10 -10
  186. package/build/esm/{translationsProvider-0785fcb4.js → translationsProvider-3ec04b76.js} +1 -1
  187. package/build/esm/{treePopoverMenu-dc4ed426.js → treePopoverMenu-c71861a4.js} +19 -19
  188. package/build/esm/{types-c67d78d4.js → types-b00afa05.js} +2 -2
  189. package/build/esm/types.js +2 -2
  190. package/build/esm/{useCategory-273a950d.js → useCategory-1ef28aba.js} +5 -5
  191. package/build/esm/{useHealthToolCache-38fa7093.js → useHealthToolCache-9361dc64.js} +1 -1
  192. package/build/esm/{useMantineLocale-6f656d28.js → useMantineLocale-730c8a73.js} +6 -6
  193. package/build/esm/{usePlacesAutocomplete-1ece1b52.js → usePlacesAutocomplete-fc0589c3.js} +1 -1
  194. package/build/esm/{useScreenSize-48cfd1bc.js → useScreenSize-b82e414c.js} +2 -2
  195. package/build/esm/useTogetherAuthRequiredAction.js +10 -10
  196. package/build/esm/{utils-c921c188.js → utils-048fca6f.js} +5 -5
  197. package/build/esm/{utils-ba5b6d1d.js → utils-49030cc0.js} +3 -3
  198. package/build/esm/{utils-0f0e3a73.js → utils-8179d599.js} +2 -2
  199. package/build/esm/{utils-d652bb24.js → utils-939511b6.js} +2 -2
  200. package/build/esm/vaccination.js +21 -21
  201. package/build/footer.js +21 -21
  202. package/build/gAssets.js +2 -2
  203. package/build/{healthTools-e0481de3.js → healthTools-1b2a6f09.js} +1 -1
  204. package/build/healthToolsCardWrapper.js +18 -18
  205. package/build/healthToolsForm.js +33 -33
  206. package/build/hooks.js +13 -13
  207. package/build/i18n-values/id-ID.js +1 -1
  208. package/build/i18n-values/ms-MY.js +1 -1
  209. package/build/i18n.js +2 -2
  210. package/build/i18nV2.js +1 -1
  211. package/build/{index-b0016f00.js → index-00e45013.js} +4 -4
  212. package/build/{index-adffc56b.js → index-0418b783.js} +11 -11
  213. package/build/{index-e8bce397.js → index-0c781ebb.js} +1 -1
  214. package/build/{index-e870af88.js → index-0d776bf3.js} +5 -5
  215. package/build/{index-9155e1c5.js → index-0fbc4fe4.js} +24 -24
  216. package/build/{index-793593a5.js → index-1157d07c.js} +2 -2
  217. package/build/{index-4b0d549e.js → index-13d41eb0.js} +2 -2
  218. package/build/{index-8c36e8d2.js → index-13d49b37.js} +17 -17
  219. package/build/{index-e7901523.js → index-210347c7.js} +5 -5
  220. package/build/{index-c51a7d55.js → index-21adbd80.js} +1 -1
  221. package/build/{index-9cd176b6.js → index-25b5a601.js} +13 -13
  222. package/build/{index-b35f6874.js → index-264d6a0e.js} +17 -17
  223. package/build/{index-ac634c58.js → index-2a6794d8.js} +6 -6
  224. package/build/{index-c2841e4d.js → index-2e87e916.js} +3 -3
  225. package/build/{index-b12997ee.js → index-30ab140f.js} +1 -1
  226. package/build/{index-c6b759aa.js → index-3356d456.js} +30 -30
  227. package/build/{index-d6a3baa7.js → index-33f4e324.js} +3 -3
  228. package/build/{index-f82703e7.js → index-3aac7cb6.js} +2 -2
  229. package/build/{index-17626f65.js → index-3d0abb02.js} +1 -1
  230. package/build/{index-a25c07c8.js → index-4261bb0d.js} +2 -2
  231. package/build/{index-55919fca.js → index-50c386f9.js} +16 -16
  232. package/build/{index-55649a03.js → index-547afddd.js} +2 -2
  233. package/build/{index-8f5fc0cc.js → index-56becedc.js} +7 -7
  234. package/build/{index-7ba201ae.js → index-5851deb7.js} +6 -6
  235. package/build/{index-eb2febbf.js → index-5da8ca66.js} +17 -17
  236. package/build/{index-ec3e1292.js → index-6012453f.js} +6 -6
  237. package/build/{index-6958b244.js → index-62a58501.js} +16 -16
  238. package/build/{index-5ebf229f.js → index-66782023.js} +31 -31
  239. package/build/{index-ccf6bc00.js → index-6766da9b.js} +6 -6
  240. package/build/{index-8fde9846.js → index-7bf82acf.js} +3 -3
  241. package/build/{index-679a2e98.js → index-7ce9d7e9.js} +2 -2
  242. package/build/{index-f90bea5e.js → index-8484a323.js} +22 -22
  243. package/build/{index-f4131cbb.js → index-8d7dfa08.js} +6 -6
  244. package/build/{index-b4fbb00f.js → index-8e26493c.js} +1 -1
  245. package/build/{index-f54da377.js → index-9035e05e.js} +10 -10
  246. package/build/{index-1bbd327d.js → index-9344fdb1.js} +2 -2
  247. package/build/{index-cdbe94db.js → index-937c6190.js} +1 -1
  248. package/build/{index-0605ea8f.js → index-958e3fbc.js} +1 -1
  249. package/build/{index-cce68115.js → index-960ba602.js} +2 -2
  250. package/build/{index-75c0855f.js → index-9796ee7b.js} +16 -16
  251. package/build/{index-08f2ffee.js → index-98fd7223.js} +18 -18
  252. package/build/{index-f0532f09.js → index-9c14260c.js} +1 -1
  253. package/build/{index-fcb6100a.js → index-9cb37cdc.js} +13 -13
  254. package/build/{index-6548f1ab.js → index-9eb18b73.js} +4 -4
  255. package/build/{index-4d82ff67.js → index-a1bd10b4.js} +3 -3
  256. package/build/{index-8c906ecd.js → index-a3754c0f.js} +18 -18
  257. package/build/{index-c3023a5f.js → index-a3d52108.js} +16 -16
  258. package/build/{index-c5382192.js → index-a400412d.js} +2 -2
  259. package/build/{index-ac19405c.js → index-ab1cc233.js} +13 -13
  260. package/build/{index-14cf9607.js → index-b22a45db.js} +21 -21
  261. package/build/{index-b5fd93b0.js → index-b4dc7385.js} +32 -32
  262. package/build/{index-5f23560d.js → index-b8877c6d.js} +2 -2
  263. package/build/{index-7d03b1cc.js → index-b90c4e03.js} +2 -2
  264. package/build/{index-18d6bf15.js → index-c3112171.js} +11 -11
  265. package/build/{index-9d9144aa.js → index-c6aafde1.js} +2 -2
  266. package/build/{index-747f5f86.js → index-cec69250.js} +13 -13
  267. package/build/{index-d75d922c.js → index-d2803790.js} +2 -2
  268. package/build/{index-24e3a655.js → index-d2885174.js} +7 -7
  269. package/build/{index-583fa029.js → index-d932ff2f.js} +2 -2
  270. package/build/{index-a18249e5.js → index-d9ca6ff5.js} +3 -3
  271. package/build/{index-bbf8c014.js → index-e84907aa.js} +1 -1
  272. package/build/{index-d52c72da.js → index-f2152805.js} +15 -15
  273. package/build/{index-745a1475.js → index-f78494c4.js} +3 -3
  274. package/build/{index-07f3d4dc.js → index-fa80737f.js} +17 -17
  275. package/build/{index-44849e36.js → index-fecf1359.js} +25 -25
  276. package/build/index.js +118 -118
  277. package/build/{labelSorting-2f83c4ea.js → labelSorting-fd6dd4dc.js} +4 -4
  278. package/build/lead/LeadGenSubscriptionBox/LeadGenContext.d.ts +15 -9
  279. package/build/lead/layouts/inline.d.ts +5 -3
  280. package/build/lead/layouts/lightbox/index.d.ts +2 -1
  281. package/build/lead/services/index.d.ts +14 -0
  282. package/build/lead/utils/formatFormData.d.ts +1 -0
  283. package/build/lead.js +369 -217
  284. package/build/{logoIcon-27d14ab7.js → logoIcon-dfeb5ff5.js} +2 -2
  285. package/build/mantine.js +22 -22
  286. package/build/misc.js +17 -17
  287. package/build/miscGetDynamicHealthTool.js +4 -4
  288. package/build/miscGetSocialList.js +8 -8
  289. package/build/miscScreenSizeContext.js +1 -1
  290. package/build/mobileBottomNavigation.js +5 -5
  291. package/build/mobileBottomNavigationIcon.js +5 -5
  292. package/build/molecules.js +74 -74
  293. package/build/moleculesArticleCard.js +6 -6
  294. package/build/moleculesArticleCardV2.js +16 -16
  295. package/build/navigation.js +46 -46
  296. package/build/navigationLogoutPopup.js +9 -9
  297. package/build/navigationProfileButton.js +26 -26
  298. package/build/onboardingV2.js +28 -28
  299. package/build/organisms.js +50 -50
  300. package/build/{post-8c03ba04.js → post-6fe1e891.js} +2 -2
  301. package/build/profileNavigation.js +19 -19
  302. package/build/progressBar.js +1 -1
  303. package/build/pwg.js +22 -22
  304. package/build/ssoV2/api/featureFlag.d.ts +2 -1
  305. package/build/ssoV2.js +50 -38
  306. package/build/{store-daff0960.js → store-e61a71de.js} +3 -3
  307. package/build/subot.js +35 -35
  308. package/build/surveyOrPremiumBanner.js +33 -33
  309. package/build/surveyQuestionCard.js +10 -10
  310. package/build/{surveyThankyouCard-ae887b3c.js → surveyThankyouCard-d9521b7a.js} +5 -5
  311. package/build/together.js +56 -56
  312. package/build/togetherApiUtils.js +4 -4
  313. package/build/togetherAtoms.js +30 -30
  314. package/build/togetherComponentGlobalContext.js +4 -4
  315. package/build/togetherMolecules.js +51 -51
  316. package/build/togetherMoleculesCardAuthor.js +28 -28
  317. package/build/togetherMoleculesPostImagePreview.js +11 -11
  318. package/build/togetherMoleculesProfileDetail.js +39 -39
  319. package/build/togetherOrganisms.js +50 -50
  320. package/build/togetherRichTextEditor.js +17 -17
  321. package/build/togetherShareBox.js +10 -10
  322. package/build/{translationsProvider-26ea8c26.js → translationsProvider-85a121ac.js} +1 -1
  323. package/build/{treePopoverMenu-408f841a.js → treePopoverMenu-478bbc5f.js} +19 -19
  324. package/build/{types-b8dfc575.js → types-39070ca0.js} +2 -2
  325. package/build/types.js +2 -2
  326. package/build/{useCategory-01ff8cec.js → useCategory-32ce9519.js} +5 -5
  327. package/build/{useHealthToolCache-14a8c866.js → useHealthToolCache-e88aff91.js} +1 -1
  328. package/build/{useMantineLocale-73ad4b92.js → useMantineLocale-31c506b0.js} +6 -6
  329. package/build/{usePlacesAutocomplete-f3af8e47.js → usePlacesAutocomplete-d90e7f2d.js} +1 -1
  330. package/build/{useScreenSize-48a58621.js → useScreenSize-ab8a61ac.js} +2 -2
  331. package/build/useTogetherAuthRequiredAction.js +10 -10
  332. package/build/{utils-fa1b78cb.js → utils-31c75602.js} +3 -3
  333. package/build/{utils-e24e2403.js → utils-6808e437.js} +2 -2
  334. package/build/{utils-3169c46a.js → utils-bf605377.js} +2 -2
  335. package/build/{utils-22c22258.js → utils-dfc99d1d.js} +5 -5
  336. package/build/vaccination.js +21 -21
  337. package/package.json +1 -1
  338. /package/build/{BMI_BOYS.percentile.monthly-f5d35644.js → BMI_BOYS.percentile.monthly-ef05c54d.js} +0 -0
  339. /package/build/{BMI_BOYS.percentile.weekly-d09ef477.js → BMI_BOYS.percentile.weekly-4cdb2239.js} +0 -0
  340. /package/build/{BMI_BOYS.percentile.yearly-f7e5de53.js → BMI_BOYS.percentile.yearly-b7be1b5a.js} +0 -0
  341. /package/build/{BMI_BOYS.zscore.monthly-b69a476e.js → BMI_BOYS.zscore.monthly-afba7ba3.js} +0 -0
  342. /package/build/{BMI_BOYS.zscore.weekly-0450476d.js → BMI_BOYS.zscore.weekly-41771492.js} +0 -0
  343. /package/build/{BMI_BOYS.zscore.yearly-801956d1.js → BMI_BOYS.zscore.yearly-028107a7.js} +0 -0
  344. /package/build/{BMI_GIRLS.percentile.monthly-3e79f479.js → BMI_GIRLS.percentile.monthly-5115e912.js} +0 -0
  345. /package/build/{BMI_GIRLS.percentile.weekly-27303348.js → BMI_GIRLS.percentile.weekly-c2c0d5eb.js} +0 -0
  346. /package/build/{BMI_GIRLS.percentile.yearly-20fd5aa2.js → BMI_GIRLS.percentile.yearly-feb4476c.js} +0 -0
  347. /package/build/{BMI_GIRLS.zscore.monthly-cfac2195.js → BMI_GIRLS.zscore.monthly-1d136aa2.js} +0 -0
  348. /package/build/{BMI_GIRLS.zscore.weekly-bb9a399e.js → BMI_GIRLS.zscore.weekly-11abb7ae.js} +0 -0
  349. /package/build/{BMI_GIRLS.zscore.yearly-e5d8581f.js → BMI_GIRLS.zscore.yearly-3d4d8ede.js} +0 -0
  350. /package/build/{ChevronDown-ba68f6bf.js → ChevronDown-a3f9319c.js} +0 -0
  351. /package/build/{Close-630b43b9.js → Close-da29a21c.js} +0 -0
  352. /package/build/{Google-4b0315d9.js → Google-ce54f50e.js} +0 -0
  353. /package/build/{HEAD CIRCUM_BOYS.percentile.monthly-7bda0461.js → HEAD CIRCUM_BOYS.percentile.monthly-5a0f1cad.js} +0 -0
  354. /package/build/{HEAD CIRCUM_BOYS.percentile.weekly-d844a6aa.js → HEAD CIRCUM_BOYS.percentile.weekly-66e20f01.js} +0 -0
  355. /package/build/{HEAD CIRCUM_BOYS.percentile.yearly-5606e3aa.js → HEAD CIRCUM_BOYS.percentile.yearly-e1d00dc3.js} +0 -0
  356. /package/build/{HEAD CIRCUM_BOYS.zscore.monthly-eaf10e03.js → HEAD CIRCUM_BOYS.zscore.monthly-be26e5e8.js} +0 -0
  357. /package/build/{HEAD CIRCUM_BOYS.zscore.weekly-c8e9f0e1.js → HEAD CIRCUM_BOYS.zscore.weekly-ad60fba9.js} +0 -0
  358. /package/build/{HEAD CIRCUM_BOYS.zscore.yearly-4bf1ce97.js → HEAD CIRCUM_BOYS.zscore.yearly-4abafb2c.js} +0 -0
  359. /package/build/{HEAD CIRCUM_GIRLS.percentile.monthly-fec68dab.js → HEAD CIRCUM_GIRLS.percentile.monthly-423194a2.js} +0 -0
  360. /package/build/{HEAD CIRCUM_GIRLS.percentile.weekly-5035bcba.js → HEAD CIRCUM_GIRLS.percentile.weekly-9e6db969.js} +0 -0
  361. /package/build/{HEAD CIRCUM_GIRLS.percentile.yearly-42e96f7e.js → HEAD CIRCUM_GIRLS.percentile.yearly-14a5c011.js} +0 -0
  362. /package/build/{HEAD CIRCUM_GIRLS.zscore.monthly-f70669b1.js → HEAD CIRCUM_GIRLS.zscore.monthly-e3af15a1.js} +0 -0
  363. /package/build/{HEAD CIRCUM_GIRLS.zscore.weekly-f8342d25.js → HEAD CIRCUM_GIRLS.zscore.weekly-f746dd0a.js} +0 -0
  364. /package/build/{HEAD CIRCUM_GIRLS.zscore.yearly-2f08d781.js → HEAD CIRCUM_GIRLS.zscore.yearly-b503903a.js} +0 -0
  365. /package/build/{HEIGHT_BOYS.percentile.monthly-976a1e34.js → HEIGHT_BOYS.percentile.monthly-b7e4b6bf.js} +0 -0
  366. /package/build/{HEIGHT_BOYS.percentile.weekly-2ed75dca.js → HEIGHT_BOYS.percentile.weekly-da509b31.js} +0 -0
  367. /package/build/{HEIGHT_BOYS.percentile.yearly-7882cae1.js → HEIGHT_BOYS.percentile.yearly-fe066a6a.js} +0 -0
  368. /package/build/{HEIGHT_BOYS.zscore.monthly-e7602d7e.js → HEIGHT_BOYS.zscore.monthly-6ee80d6a.js} +0 -0
  369. /package/build/{HEIGHT_BOYS.zscore.weekly-fa5db7f9.js → HEIGHT_BOYS.zscore.weekly-17f97f17.js} +0 -0
  370. /package/build/{HEIGHT_BOYS.zscore.yearly-48ea6d19.js → HEIGHT_BOYS.zscore.yearly-d783b79a.js} +0 -0
  371. /package/build/{HEIGHT_GIRLS.percentile.monthly-8ec74cfb.js → HEIGHT_GIRLS.percentile.monthly-c9a84692.js} +0 -0
  372. /package/build/{HEIGHT_GIRLS.percentile.weekly-01108585.js → HEIGHT_GIRLS.percentile.weekly-806fcdd7.js} +0 -0
  373. /package/build/{HEIGHT_GIRLS.percentile.yearly-bf885f9a.js → HEIGHT_GIRLS.percentile.yearly-8d1c91e6.js} +0 -0
  374. /package/build/{HEIGHT_GIRLS.zscore.monthly-800f8d45.js → HEIGHT_GIRLS.zscore.monthly-977c553f.js} +0 -0
  375. /package/build/{HEIGHT_GIRLS.zscore.weekly-1c19f40e.js → HEIGHT_GIRLS.zscore.weekly-7cafcbe4.js} +0 -0
  376. /package/build/{HEIGHT_GIRLS.zscore.yearly-8da5e072.js → HEIGHT_GIRLS.zscore.yearly-04ab0195.js} +0 -0
  377. /package/build/{Locale-74978eb4.js → Locale-6e6aabd6.js} +0 -0
  378. /package/build/{Visible-712a5270.js → Visible-ba990704.js} +0 -0
  379. /package/build/{WEIGHT_BOYS.percentile.monthly-663017dc.js → WEIGHT_BOYS.percentile.monthly-db3899d3.js} +0 -0
  380. /package/build/{WEIGHT_BOYS.percentile.weekly-91d765e7.js → WEIGHT_BOYS.percentile.weekly-7a9bf25a.js} +0 -0
  381. /package/build/{WEIGHT_BOYS.percentile.yearly-2c4aed81.js → WEIGHT_BOYS.percentile.yearly-02b65659.js} +0 -0
  382. /package/build/{WEIGHT_BOYS.zscore.monthly-937a82d7.js → WEIGHT_BOYS.zscore.monthly-fb7a290c.js} +0 -0
  383. /package/build/{WEIGHT_BOYS.zscore.weekly-d6400f44.js → WEIGHT_BOYS.zscore.weekly-dbf25584.js} +0 -0
  384. /package/build/{WEIGHT_BOYS.zscore.yearly-0794f912.js → WEIGHT_BOYS.zscore.yearly-ef1e5822.js} +0 -0
  385. /package/build/{WEIGHT_GIRLS.percentile.monthly-2e63c5fc.js → WEIGHT_GIRLS.percentile.monthly-3d60d0e2.js} +0 -0
  386. /package/build/{WEIGHT_GIRLS.percentile.weekly-88d1b94e.js → WEIGHT_GIRLS.percentile.weekly-c013a21e.js} +0 -0
  387. /package/build/{WEIGHT_GIRLS.percentile.yearly-d5a3a899.js → WEIGHT_GIRLS.percentile.yearly-1924eee4.js} +0 -0
  388. /package/build/{WEIGHT_GIRLS.zscore.monthly-ad25e1bb.js → WEIGHT_GIRLS.zscore.monthly-94d9cd72.js} +0 -0
  389. /package/build/{WEIGHT_GIRLS.zscore.weekly-73022787.js → WEIGHT_GIRLS.zscore.weekly-86f8261e.js} +0 -0
  390. /package/build/{WEIGHT_GIRLS.zscore.yearly-91032798.js → WEIGHT_GIRLS.zscore.yearly-5be19723.js} +0 -0
  391. /package/build/{animation-1e953124.js → animation-6add51a8.js} +0 -0
  392. /package/build/{constants-b946c55e.js → constants-06b4f39e.js} +0 -0
  393. /package/build/{constants-aac0f9a5.js → constants-265b447a.js} +0 -0
  394. /package/build/{constants-b84181b5.js → constants-3a4d2a58.js} +0 -0
  395. /package/build/{dataTransform-d82b7045.js → dataTransform-23616a28.js} +0 -0
  396. /package/build/esm/{BMI_BOYS.percentile.monthly-61085804.js → BMI_BOYS.percentile.monthly-e8d5dd22.js} +0 -0
  397. /package/build/esm/{BMI_BOYS.percentile.weekly-853990c1.js → BMI_BOYS.percentile.weekly-834b66ec.js} +0 -0
  398. /package/build/esm/{BMI_BOYS.percentile.yearly-4620d726.js → BMI_BOYS.percentile.yearly-d7a66067.js} +0 -0
  399. /package/build/esm/{BMI_BOYS.zscore.monthly-05fb8b76.js → BMI_BOYS.zscore.monthly-faa2ec70.js} +0 -0
  400. /package/build/esm/{BMI_BOYS.zscore.weekly-8799321e.js → BMI_BOYS.zscore.weekly-a1bfc992.js} +0 -0
  401. /package/build/esm/{BMI_BOYS.zscore.yearly-8fb9b200.js → BMI_BOYS.zscore.yearly-85901f86.js} +0 -0
  402. /package/build/esm/{BMI_GIRLS.percentile.monthly-be59e70e.js → BMI_GIRLS.percentile.monthly-272445a8.js} +0 -0
  403. /package/build/esm/{BMI_GIRLS.percentile.weekly-f218d3a7.js → BMI_GIRLS.percentile.weekly-9207a006.js} +0 -0
  404. /package/build/esm/{BMI_GIRLS.percentile.yearly-c2556b07.js → BMI_GIRLS.percentile.yearly-81abe66e.js} +0 -0
  405. /package/build/esm/{BMI_GIRLS.zscore.monthly-da114123.js → BMI_GIRLS.zscore.monthly-5d0ffe30.js} +0 -0
  406. /package/build/esm/{BMI_GIRLS.zscore.weekly-233b27d6.js → BMI_GIRLS.zscore.weekly-b3e33823.js} +0 -0
  407. /package/build/esm/{BMI_GIRLS.zscore.yearly-7f767d9f.js → BMI_GIRLS.zscore.yearly-796970f9.js} +0 -0
  408. /package/build/esm/{ChevronDown-f3ec9ac6.js → ChevronDown-aa17f34e.js} +0 -0
  409. /package/build/esm/{Close-5b2aeef4.js → Close-c4f4cf2f.js} +0 -0
  410. /package/build/esm/{Google-26145047.js → Google-b3296862.js} +0 -0
  411. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.monthly-be6de289.js → HEAD CIRCUM_BOYS.percentile.monthly-e18b7a58.js} +0 -0
  412. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.weekly-cb3595d6.js → HEAD CIRCUM_BOYS.percentile.weekly-6257a163.js} +0 -0
  413. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.yearly-271db11d.js → HEAD CIRCUM_BOYS.percentile.yearly-f18d09d2.js} +0 -0
  414. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.monthly-36f170c0.js → HEAD CIRCUM_BOYS.zscore.monthly-dfc46c76.js} +0 -0
  415. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.weekly-05d9686c.js → HEAD CIRCUM_BOYS.zscore.weekly-058687c5.js} +0 -0
  416. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.yearly-d668f732.js → HEAD CIRCUM_BOYS.zscore.yearly-9cd77c0a.js} +0 -0
  417. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.monthly-e650eb46.js → HEAD CIRCUM_GIRLS.percentile.monthly-aac1f2eb.js} +0 -0
  418. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.weekly-4cc1c029.js → HEAD CIRCUM_GIRLS.percentile.weekly-75086802.js} +0 -0
  419. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.yearly-05ceab8f.js → HEAD CIRCUM_GIRLS.percentile.yearly-e1f96e0d.js} +0 -0
  420. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.monthly-bb480f21.js → HEAD CIRCUM_GIRLS.zscore.monthly-8118e300.js} +0 -0
  421. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.weekly-a3c1eed3.js → HEAD CIRCUM_GIRLS.zscore.weekly-83f61bbb.js} +0 -0
  422. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.yearly-24ca0022.js → HEAD CIRCUM_GIRLS.zscore.yearly-47a8e82f.js} +0 -0
  423. /package/build/esm/{HEIGHT_BOYS.percentile.monthly-4d0135d2.js → HEIGHT_BOYS.percentile.monthly-f19f6662.js} +0 -0
  424. /package/build/esm/{HEIGHT_BOYS.percentile.weekly-c1007dce.js → HEIGHT_BOYS.percentile.weekly-cae20fee.js} +0 -0
  425. /package/build/esm/{HEIGHT_BOYS.percentile.yearly-f5ceb369.js → HEIGHT_BOYS.percentile.yearly-ea8af089.js} +0 -0
  426. /package/build/esm/{HEIGHT_BOYS.zscore.monthly-ab830d9c.js → HEIGHT_BOYS.zscore.monthly-18698e4b.js} +0 -0
  427. /package/build/esm/{HEIGHT_BOYS.zscore.weekly-14d78ca6.js → HEIGHT_BOYS.zscore.weekly-ef1a2e02.js} +0 -0
  428. /package/build/esm/{HEIGHT_BOYS.zscore.yearly-823e5fa9.js → HEIGHT_BOYS.zscore.yearly-b6c22f9d.js} +0 -0
  429. /package/build/esm/{HEIGHT_GIRLS.percentile.monthly-ecbad43c.js → HEIGHT_GIRLS.percentile.monthly-a7dde3b1.js} +0 -0
  430. /package/build/esm/{HEIGHT_GIRLS.percentile.weekly-8b3e9b9c.js → HEIGHT_GIRLS.percentile.weekly-cbe15744.js} +0 -0
  431. /package/build/esm/{HEIGHT_GIRLS.percentile.yearly-45a8a544.js → HEIGHT_GIRLS.percentile.yearly-62826a7b.js} +0 -0
  432. /package/build/esm/{HEIGHT_GIRLS.zscore.monthly-9d1b744c.js → HEIGHT_GIRLS.zscore.monthly-96bd4cc9.js} +0 -0
  433. /package/build/esm/{HEIGHT_GIRLS.zscore.weekly-1639371f.js → HEIGHT_GIRLS.zscore.weekly-7f72ca9a.js} +0 -0
  434. /package/build/esm/{HEIGHT_GIRLS.zscore.yearly-fffcfe7a.js → HEIGHT_GIRLS.zscore.yearly-77dea334.js} +0 -0
  435. /package/build/esm/{Locale-3d4c841b.js → Locale-e33e5c57.js} +0 -0
  436. /package/build/esm/{Visible-9f369a4b.js → Visible-359b4cc6.js} +0 -0
  437. /package/build/esm/{WEIGHT_BOYS.percentile.monthly-89c61778.js → WEIGHT_BOYS.percentile.monthly-b9bb1804.js} +0 -0
  438. /package/build/esm/{WEIGHT_BOYS.percentile.weekly-5108a082.js → WEIGHT_BOYS.percentile.weekly-0c9ce57d.js} +0 -0
  439. /package/build/esm/{WEIGHT_BOYS.percentile.yearly-2764c572.js → WEIGHT_BOYS.percentile.yearly-24f63c14.js} +0 -0
  440. /package/build/esm/{WEIGHT_BOYS.zscore.monthly-103ce77a.js → WEIGHT_BOYS.zscore.monthly-6ca0dacf.js} +0 -0
  441. /package/build/esm/{WEIGHT_BOYS.zscore.weekly-6d11c499.js → WEIGHT_BOYS.zscore.weekly-216d9421.js} +0 -0
  442. /package/build/esm/{WEIGHT_BOYS.zscore.yearly-c514433d.js → WEIGHT_BOYS.zscore.yearly-93d2bde5.js} +0 -0
  443. /package/build/esm/{WEIGHT_GIRLS.percentile.monthly-54453150.js → WEIGHT_GIRLS.percentile.monthly-ba72ea96.js} +0 -0
  444. /package/build/esm/{WEIGHT_GIRLS.percentile.weekly-22024a25.js → WEIGHT_GIRLS.percentile.weekly-52de3f3c.js} +0 -0
  445. /package/build/esm/{WEIGHT_GIRLS.percentile.yearly-9a9ded29.js → WEIGHT_GIRLS.percentile.yearly-4096b0b7.js} +0 -0
  446. /package/build/esm/{WEIGHT_GIRLS.zscore.monthly-00447d43.js → WEIGHT_GIRLS.zscore.monthly-254923c0.js} +0 -0
  447. /package/build/esm/{WEIGHT_GIRLS.zscore.weekly-73650cf1.js → WEIGHT_GIRLS.zscore.weekly-b8876196.js} +0 -0
  448. /package/build/esm/{WEIGHT_GIRLS.zscore.yearly-eb770530.js → WEIGHT_GIRLS.zscore.yearly-08ee9837.js} +0 -0
  449. /package/build/esm/{animation-f211761b.js → animation-77bc3285.js} +0 -0
  450. /package/build/esm/{constants-45dc55e9.js → constants-b733dd57.js} +0 -0
  451. /package/build/esm/{constants-e7243bc4.js → constants-c7d2b6ae.js} +0 -0
  452. /package/build/esm/{constants-c647ea9f.js → constants-d784a13b.js} +0 -0
  453. /package/build/esm/{dataTransform-c560012d.js → dataTransform-09371dbc.js} +0 -0
  454. /package/build/esm/{index-e8b63997.js → index-07d99df9.js} +0 -0
  455. /package/build/esm/{index-e7f08812.js → index-2d386ba8.js} +0 -0
  456. /package/build/esm/{index-91f2cfd2.js → index-35aaddfc.js} +0 -0
  457. /package/build/esm/{index-8260f136.js → index-42ba4ab6.js} +0 -0
  458. /package/build/esm/{index-f076afa3.js → index-7a26f5db.js} +0 -0
  459. /package/build/esm/{index-bc5fd573.js → index-aa88b199.js} +0 -0
  460. /package/build/esm/{index-cdb7391f.js → index-bef5d5be.js} +0 -0
  461. /package/build/esm/{index-aaca91dd.js → index-d737a01f.js} +0 -0
  462. /package/build/esm/{index.styles-487c4776.js → index.styles-fe2663e9.js} +0 -0
  463. /package/build/esm/{localizeNumberFormat-8f2b44c2.js → localizeNumberFormat-0fb603f6.js} +0 -0
  464. /package/build/esm/{normalizeLink-d82e683b.js → normalizeLink-a6b0962b.js} +0 -0
  465. /package/build/esm/{number-f2d43edb.js → number-f7d0fa6a.js} +0 -0
  466. /package/build/esm/{other-5aa57b9c.js → other-bf8496b8.js} +0 -0
  467. /package/build/esm/{paths-5ac08283.js → paths-d61ce0a0.js} +0 -0
  468. /package/build/esm/{translationsContext-c575a4a1.js → translationsContext-004915f2.js} +0 -0
  469. /package/build/esm/{tslib.es6-fd45caee.js → tslib.es6-3a5afd52.js} +0 -0
  470. /package/build/esm/{types-f85ce519.js → types-a75c6c23.js} +0 -0
  471. /package/build/esm/{useIsInit-1a9c850f.js → useIsInit-c3df944f.js} +0 -0
  472. /package/build/esm/{useOutsideClick-f30ef16e.js → useOutsideClick-569f4818.js} +0 -0
  473. /package/build/esm/{useScrollbarSize-46bb915e.js → useScrollbarSize-57814755.js} +0 -0
  474. /package/build/esm/{useUniqueId-1b56b562.js → useUniqueId-2a14c546.js} +0 -0
  475. /package/build/esm/{utils-2fc80087.js → utils-2dbd7a3a.js} +0 -0
  476. /package/build/{index-0b414e68.js → index-01d883c4.js} +0 -0
  477. /package/build/{index-f3ed20ef.js → index-1b89f3a8.js} +0 -0
  478. /package/build/{index-7aa88c84.js → index-384c12ea.js} +0 -0
  479. /package/build/{index-8eb072aa.js → index-3b1bdfd2.js} +0 -0
  480. /package/build/{index-68048bfe.js → index-4311b40b.js} +0 -0
  481. /package/build/{index-bd4f2ade.js → index-4599320e.js} +0 -0
  482. /package/build/{index-8913f7e4.js → index-6e32ec77.js} +0 -0
  483. /package/build/{index-e34fc9e5.js → index-85ff7835.js} +0 -0
  484. /package/build/{index.styles-5d10f3a2.js → index.styles-b7f230c7.js} +0 -0
  485. /package/build/{localizeNumberFormat-1298ecf4.js → localizeNumberFormat-6d589ee0.js} +0 -0
  486. /package/build/{normalizeLink-af167230.js → normalizeLink-196eff9b.js} +0 -0
  487. /package/build/{number-d1a4bc34.js → number-1e845fdb.js} +0 -0
  488. /package/build/{other-272f3575.js → other-5662c73b.js} +0 -0
  489. /package/build/{paths-b9a2cd50.js → paths-d145d402.js} +0 -0
  490. /package/build/{translationsContext-7bce8baa.js → translationsContext-204a693b.js} +0 -0
  491. /package/build/{tslib.es6-4e9cd996.js → tslib.es6-ce340795.js} +0 -0
  492. /package/build/{types-91e97d0f.js → types-b619b057.js} +0 -0
  493. /package/build/{useIsInit-00eb0386.js → useIsInit-8e92e935.js} +0 -0
  494. /package/build/{useOutsideClick-090d88a0.js → useOutsideClick-b2e06374.js} +0 -0
  495. /package/build/{useScrollbarSize-93bc8446.js → useScrollbarSize-9d3bf196.js} +0 -0
  496. /package/build/{useUniqueId-4fa71ab2.js → useUniqueId-2a430bf7.js} +0 -0
  497. /package/build/{utils-82e41a76.js → utils-5519e02d.js} +0 -0
package/build/esm/lead.js CHANGED
@@ -1,53 +1,53 @@
1
- import { _ as __rest, a as __awaiter } from './tslib.es6-fd45caee.js';
1
+ import { _ as __rest, a as __awaiter } from './tslib.es6-3a5afd52.js';
2
2
  import React__default, { createContext, useMemo, useEffect, useRef, useState, useContext, useCallback, forwardRef, useImperativeHandle, memo, useLayoutEffect } from 'react';
3
3
  import { createStyles, Box, Button as Button$1, Input as Input$1, Autocomplete, clsx, Checkbox as Checkbox$1, Radio as Radio$1, Select as Select$1, TextInput, NumberInput as NumberInput$1, Portal, Transition, Overlay } from '@mantine/core';
4
4
  import debounce from 'lodash/debounce';
5
5
  import { createFormContext, useForm } from '@mantine/form';
6
6
  import dayjs from 'dayjs';
7
- import { B as BEARER_TOKEN_COOKIE } from './index-2864c9d0.js';
7
+ import { B as BEARER_TOKEN_COOKIE } from './index-412c07d4.js';
8
8
  import { getCookie, setCookie } from './miscCookieHelper.js';
9
- import { u as useTranslations } from './index-32f69dc3.js';
10
- import { T as TranslationsContext } from './translationsContext-c575a4a1.js';
11
- import { M as MediaQueries, b as getWrapperDomWithSelector, a as getPopupWrapperDom } from './utils-2fc80087.js';
12
- import { T as Text } from './index-b4f61d89.js';
13
- import { S as Select, d as Checkbox, I as Input, R as Radio, P as Phone, N as NumberInput, O as OTP } from './index-92ea69ad.js';
14
- import { D as DatePicker } from './index-5eb1dcb5.js';
15
- import { B as Button } from './index-86d3e7bf.js';
16
- import './index.styles-487c4776.js';
17
- import { useClickOutside } from '@mantine/hooks';
18
- import './useMantineLocale-6f656d28.js';
19
- import { C as COMMON_DATE_TRANSLATE_KEY } from './index-1d59d866.js';
20
- import './index-aaca91dd.js';
21
- import { Z as ZINDEX_SSO, I as ISO_FORMAT } from './index-d82818aa.js';
22
- import './other-5aa57b9c.js';
23
- import './index-551b7a7c.js';
24
- import { M as MAPPED_LOCALE } from './utils-0f0e3a73.js';
9
+ import { u as useTranslations } from './index-880674f8.js';
10
+ import { T as TranslationsContext } from './translationsContext-004915f2.js';
11
+ import { M as MediaQueries, b as getWrapperDomWithSelector, a as getPopupWrapperDom } from './utils-2dbd7a3a.js';
12
+ import { T as Text } from './index-db2cb4fb.js';
13
+ import { S as Select, d as Checkbox, I as Input, R as Radio, P as Phone, N as NumberInput, O as OTP } from './index-8a353ff2.js';
14
+ import { D as DatePicker } from './index-b39ee999.js';
15
+ import { B as Button } from './index-58734934.js';
16
+ import './index.styles-fe2663e9.js';
17
+ import { useIntersection, useClickOutside } from '@mantine/hooks';
18
+ import './useMantineLocale-730c8a73.js';
19
+ import { C as COMMON_DATE_TRANSLATE_KEY } from './index-8cc11322.js';
20
+ import './index-d737a01f.js';
21
+ import { L as LOCALE_SPECS, Z as ZINDEX_SSO, I as ISO_FORMAT } from './index-99644f85.js';
22
+ import './other-bf8496b8.js';
23
+ import './index-b8d7ef9e.js';
24
+ import { M as MAPPED_LOCALE } from './utils-8179d599.js';
25
25
  import { DateInput } from '@mantine/dates';
26
- import { u as usePlacesAutocomplete, G as GOOGLE_API_KEY } from './usePlacesAutocomplete-1ece1b52.js';
27
- import { H as Heading$1 } from './index-5ebd1d0f.js';
28
- import { t as translationsMap$1 } from './translationsProvider-0785fcb4.js';
29
- import { L as LOCALE } from './Locale-3d4c841b.js';
26
+ import { u as usePlacesAutocomplete, G as GOOGLE_API_KEY } from './usePlacesAutocomplete-fc0589c3.js';
27
+ import { H as Heading$1 } from './index-139ebe3f.js';
28
+ import { t as translationsMap$1 } from './translationsProvider-3ec04b76.js';
29
+ import { L as LOCALE } from './Locale-e33e5c57.js';
30
30
  import { v1 } from 'uuid';
31
+ import { domainLocales } from './constantsDomainLocales.js';
31
32
  import { parsePhoneNumber } from 'react-phone-number-input';
32
33
  import styled from '@emotion/styled';
33
34
  import { theme } from './miscTheme.js';
34
35
  import { css } from '@emotion/react';
35
- import { T as TogetherComponentGlobalContext } from './utils-ba5b6d1d.js';
36
- import { i as isVideo } from './index-cdb7391f.js';
37
- import { u as useScreenSize } from './useScreenSize-48cfd1bc.js';
36
+ import { T as TogetherComponentGlobalContext } from './utils-49030cc0.js';
37
+ import { i as isVideo } from './index-bef5d5be.js';
38
+ import { u as useScreenSize } from './useScreenSize-b82e414c.js';
38
39
  import { motion } from 'framer-motion';
39
40
  import { createPortal } from 'react-dom';
40
- import { B as Button$2 } from './index-a8e6f6d0.js';
41
- import { I as InputDate } from './InputDate-3b4c9453.js';
42
- import { D as DrawerComponent } from './index-7c2a2eee.js';
43
- import { C as Close } from './Close-5b2aeef4.js';
41
+ import { B as Button$2 } from './index-90b9102d.js';
42
+ import { I as InputDate } from './InputDate-884a30eb.js';
43
+ import { D as DrawerComponent } from './index-30d16c50.js';
44
+ import { C as Close } from './Close-c4f4cf2f.js';
44
45
  import './constantsIsProduction.js';
45
- import './normalizeLink-d82e683b.js';
46
- import './constantsDomainLocales.js';
46
+ import './normalizeLink-a6b0962b.js';
47
47
  import '@hhgtech/icons/other';
48
48
  import '@mantine/carousel';
49
49
  import 'classnames';
50
- import './useUniqueId-1b56b562.js';
50
+ import './useUniqueId-2a14c546.js';
51
51
  import './constantsSite.js';
52
52
  import '@hhgtech/icons/core';
53
53
  import '@mantine/notifications';
@@ -65,11 +65,11 @@ import './i18n-values/vi-VN.js';
65
65
  import './i18n-values/vi-VN_MB.js';
66
66
  import './i18n-values/zh-SG.js';
67
67
  import './i18n-values/zh-TW.js';
68
- import './index-8260f136.js';
68
+ import './index-42ba4ab6.js';
69
69
  import 'slugify';
70
70
  import 'string-format';
71
71
  import './togetherApiPaths.js';
72
- import './constants-45dc55e9.js';
72
+ import './constants-b733dd57.js';
73
73
  import 'vaul';
74
74
 
75
75
  const LeadGenComponentContext = createContext({});
@@ -159,11 +159,6 @@ const LEAD_TIMEZONE_DATA = {
159
159
  9: 'Asia/Manila', // Philippines / Filipinos Site
160
160
  };
161
161
 
162
- const LEADGEN_ACTIONS = {
163
- SHOW: 'SHOW',
164
- SCROLL: 'SCROLL',
165
- TIME: 'TIME',
166
- };
167
162
  var LEADGEN_LAYOUT;
168
163
  (function (LEADGEN_LAYOUT) {
169
164
  LEADGEN_LAYOUT["LightBoxA"] = "LightBoxA";
@@ -562,6 +557,13 @@ const campaignPostImpression = ({ code, action, title_article, ga_client_id, coo
562
557
  },
563
558
  });
564
559
  };
560
+ const trackingSubscription = (data) => {
561
+ return leadApi.call({
562
+ url: `api/collection/tracking-subscription`,
563
+ method: METHOD.POST,
564
+ data,
565
+ });
566
+ };
565
567
  const Service = {
566
568
  campaignGetById,
567
569
  getCampaignByCode,
@@ -569,6 +571,7 @@ const Service = {
569
571
  postSubscriptionBoxLead,
570
572
  postUserInfoFromLeadGen,
571
573
  campaignPostImpression,
574
+ trackingSubscription,
572
575
  validateEmailOrPhoneOnSubot,
573
576
  validateEmailOrPhoneOnLeadGen,
574
577
  validatePhoneNumberOnLeadGen,
@@ -992,15 +995,15 @@ const Fields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmit, style
992
995
  case 'TextBlock':
993
996
  return (React__default.createElement(Input, Object.assign({ key: index, withAsterisk: required, spellCheck: false, type: "text", placeholder: placeholder, className: cx('leadgen-control', classes.control),
994
997
  // onChangeRaw={(e) => inputOnChange('text', e)}
995
- label: placeholder, "data-control": "text", "data-lead-control": name, name: value }, form.getInputProps(value))));
998
+ label: placeholder, "data-control": "text", "data-lead-control": name, "data-is-required": required, name: value }, form.getInputProps(value))));
996
999
  case 'NumberBlock':
997
1000
  return (React__default.createElement(NumberInput, Object.assign({ key: index, withAsterisk: required, spellCheck: false, type: "number", placeholder: placeholder, className: cx('leadgen-control', classes.control),
998
1001
  // onChange={(e) => inputOnChange('number', e)}
999
- label: placeholder, "data-control": "number", "data-lead-control": name, name: value }, form.getInputProps(value))));
1002
+ label: placeholder, "data-control": "number", "data-lead-control": name, "data-is-required": required, name: value }, form.getInputProps(value))));
1000
1003
  case 'EmailBlock':
1001
1004
  return (React__default.createElement(Input, Object.assign({ key: index, withAsterisk: required, spellCheck: false,
1002
1005
  // type="email"
1003
- placeholder: placeholder, className: cx('leadgen-control', classes.control), label: placeholder, "data-control": "email", "data-lead-control": name, name: value }, form.getInputProps(value))));
1006
+ placeholder: placeholder, className: cx('leadgen-control', classes.control), label: placeholder, "data-control": "email", "data-lead-control": name, "data-is-required": required, name: value }, form.getInputProps(value))));
1004
1007
  case 'PhoneOtpBlock':
1005
1008
  case 'WhatsappOtpBlock':
1006
1009
  case 'ZaloOtpBlock':
@@ -1015,14 +1018,14 @@ const Fields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmit, style
1015
1018
  form.setFieldValue(value, v);
1016
1019
  },
1017
1020
  // onBlur={(e) => inputOnBlur('tel', e)}
1018
- id: id, defaultCountry: (locale ? MAPPED_LOCALE[locale] || 'VN' : 'VN'), "data-control": "tel", "data-lead-control": name })));
1021
+ id: id, defaultCountry: (locale ? MAPPED_LOCALE[locale] || 'VN' : 'VN'), "data-control": "tel", "data-lead-control": name, "data-is-required": required })));
1019
1022
  }
1020
1023
  case 'LocationBlock': {
1021
1024
  return (React__default.createElement(LocationBlock, { key: index, name: value, placeholder: placeholder, locale: locale, required: required }));
1022
1025
  }
1023
1026
  case 'DateBlock':
1024
1027
  return (React__default.createElement(React__default.Fragment, null,
1025
- React__default.createElement(DatePicker, Object.assign({ withAsterisk: required, key: index, type: "default", name: value, placeholder: placeholder, className: cx('leadgen-control', classes.control), label: placeholder, "data-control": "date", "data-lead-control": name, popoverProps: popoverProps }, form.getInputProps(value))),
1028
+ React__default.createElement(DatePicker, Object.assign({ withAsterisk: required, key: index, type: "default", name: value, placeholder: placeholder, className: cx('leadgen-control', classes.control), label: placeholder, "data-control": "date", "data-lead-control": name, "data-is-required": required, popoverProps: popoverProps }, form.getInputProps(value))),
1026
1029
  React__default.createElement("input", { type: "hidden", name: value, "data-control": "date" })));
1027
1030
  case 'LinkButtonBlock':
1028
1031
  return (React__default.createElement("div", { key: index },
@@ -1040,14 +1043,14 @@ const Fields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmit, style
1040
1043
  display: 'flex',
1041
1044
  flexDirection: 'column',
1042
1045
  gap: 8,
1043
- } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Checkbox, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "checkbox", "data-lead-control": name }))))));
1046
+ } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Checkbox, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "checkbox", "data-lead-control": name, "data-is-required": required }))))));
1044
1047
  case 'RadioBlock':
1045
1048
  return (React__default.createElement(React__default.Fragment, null,
1046
1049
  isSendMailChimp && (React__default.createElement(Input, { type: "hidden", name: value + '-mailchimp', value: isSendMailChimp })),
1047
- React__default.createElement(Radio.Group, Object.assign({ withAsterisk: required, className: cx('leadgen-control', classes.control), key: index, label: placeholder, size: "md" }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Radio, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "radio", "data-lead-control": name }))))));
1050
+ React__default.createElement(Radio.Group, Object.assign({ withAsterisk: required, className: cx('leadgen-control', classes.control), key: index, label: placeholder, size: "md" }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Radio, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "radio", "data-lead-control": name, "data-is-required": required }))))));
1048
1051
  case 'DropdownBlock':
1049
1052
  return (React__default.createElement(React__default.Fragment, null,
1050
- React__default.createElement("div", { style: { display: 'none' }, "data-extra": true, "data-name": value, "data-control": 'dropdown', "data-lead-control": name }),
1053
+ React__default.createElement("div", { style: { display: 'none' }, "data-extra": true, "data-name": value, "data-control": 'dropdown', "data-lead-control": name, "data-is-required": required }),
1051
1054
  React__default.createElement(Select, Object.assign({ key: index, className: cx('leadgen-control', classes.control), label: placeholder, withAsterisk: required, name: value, data: listQuestion.map((l) => ({
1052
1055
  value: l.value,
1053
1056
  label: l.placeholder,
@@ -1055,7 +1058,7 @@ const Fields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmit, style
1055
1058
  case 'TncBlock':
1056
1059
  const tncInputProps = form.getInputProps('TNC-' + b.id);
1057
1060
  return (React__default.createElement(React__default.Fragment, null,
1058
- React__default.createElement(Checkbox, Object.assign({ name: 'TNC-' + b.id, key: b.id, label: React__default.createElement("p", { className: "lead-modal__tnc-link", dangerouslySetInnerHTML: { __html: data.valueHTML } }), className: "tnc-block", "data-control": "checkbox", "data-lead-control": name }, tncInputProps, { error: tncInputProps.error ? tncInputProps.error : undefined }))));
1061
+ React__default.createElement(Checkbox, Object.assign({ name: 'TNC-' + b.id, key: b.id, label: React__default.createElement("p", { className: "lead-modal__tnc-link", dangerouslySetInnerHTML: { __html: data.valueHTML } }), className: "tnc-block", "data-control": "checkbox", "data-lead-control": name, "data-is-required": required }, tncInputProps, { error: tncInputProps.error ? tncInputProps.error : undefined }))));
1059
1062
  }
1060
1063
  return null;
1061
1064
  })));
@@ -1983,27 +1986,30 @@ const LeadGenContext = createContext({
1983
1986
  LeadLog('** LeadGen SubmitSubscriptionBox : ', value);
1984
1987
  return Promise.reject(value);
1985
1988
  },
1986
- impression(value) {
1989
+ impression(type) {
1987
1990
  /** Init for FAKING function */
1988
- LeadLog('** LeadGen Impression : ', value);
1989
- return Promise.reject(value);
1991
+ LeadLog('** LeadGen Impression : ', type);
1992
+ return Promise.reject();
1990
1993
  },
1991
1994
  /** For Subscription Box */
1992
1995
  subscriptionIcon: '',
1993
1996
  subscriptionTitle: '',
1997
+ subscriptionPhoneType: '',
1994
1998
  });
1995
1999
  const LeadGenContextProvider = (props) => {
1996
- const { campaign_code: campaignCodeProps, apiSsoUrl, apiLeadUrl, apiSubotUrl, locale: localeProps, forceCampaign: forceCampaignProps, extraValues, articleId = 1, categoryId = 1, siteDomain: site_domain, children } = props, restProps = __rest(props, ["campaign_code", "apiSsoUrl", "apiLeadUrl", "apiSubotUrl", "locale", "forceCampaign", "extraValues", "articleId", "categoryId", "siteDomain", "children"]);
2000
+ const { campaign_code: campaignCodeProps, apiSsoUrl, apiLeadUrl, apiSubotUrl, locale: localeProps, forceCampaign: forceCampaignProps, extraValues, articleId = 1, categoryId = 1, siteDomain: site_domain, children, userInfo } = props, restProps = __rest(props, ["campaign_code", "apiSsoUrl", "apiLeadUrl", "apiSubotUrl", "locale", "forceCampaign", "extraValues", "articleId", "categoryId", "siteDomain", "children", "userInfo"]);
2001
+ const { t } = useTranslations();
1997
2002
  const [forceCampaign, setForceCampaign] = useState(forceCampaignProps);
1998
2003
  const [subscriptionInfo, setSubscriptionInfo] = useState({
1999
2004
  subscriptionIcon: '',
2000
2005
  subscriptionTitle: '',
2001
2006
  subscriptionType: 'TypeA',
2007
+ subscriptionPhoneType: '',
2002
2008
  });
2003
2009
  const locale = useMemo(() => {
2004
2010
  return localeProps || LOCALE['PhilippinesEnglish'];
2005
2011
  }, [localeProps]);
2006
- const { url, campaign_id, campaign_code, cookie_id, ga_client_id, category_id, article_id, article_title, } = useMemo(() => ({
2012
+ const { url, campaign_id, cookie_id, ga_client_id, category_id, article_id, article_title, category_name, } = useMemo(() => ({
2007
2013
  url: location.href.toLowerCase() || '',
2008
2014
  cookie_id: getCookie('hhg-id') || null,
2009
2015
  ga_client_id: getCookie('_ga'),
@@ -2012,27 +2018,33 @@ const LeadGenContextProvider = (props) => {
2012
2018
  category_id: categoryId,
2013
2019
  article_id: articleId,
2014
2020
  article_title: (extraValues === null || extraValues === void 0 ? void 0 : extraValues.article_title) || document.title || '',
2021
+ category_name: (extraValues === null || extraValues === void 0 ? void 0 : extraValues.category_name) || '',
2015
2022
  }), [
2016
2023
  campaignCodeProps,
2017
2024
  articleId,
2018
2025
  categoryId,
2019
2026
  forceCampaign === null || forceCampaign === void 0 ? void 0 : forceCampaign.id,
2020
2027
  extraValues === null || extraValues === void 0 ? void 0 : extraValues.article_title,
2028
+ extraValues === null || extraValues === void 0 ? void 0 : extraValues.category_name,
2021
2029
  ]);
2022
- const fetchCampaign = useCallback((campaign_code) => {
2023
- Service.getCampaignByCode(campaign_code).then((res) => {
2024
- const { _data } = res || {};
2025
- const { campaigns } = _data || {};
2026
- LeadLog('** LeadGen Campaign : ', campaigns);
2027
- setForceCampaign(formatCampaignDetail(campaigns));
2028
- });
2029
- }, [campaignCodeProps]);
2030
+ // const fetchCampaign = useCallback(
2031
+ // (campaign_code: string) => {
2032
+ // Service.getCampaignByCode(campaign_code).then((res) => {
2033
+ // const { _data } = res || {}
2034
+ // const { campaigns } = _data || {}
2035
+ // LeadLog('** LeadGen Campaign : ', campaigns)
2036
+ // setForceCampaign(formatCampaignDetail(campaigns))
2037
+ // })
2038
+ // },
2039
+ // [campaignCodeProps],
2040
+ // )
2030
2041
  // TODO : Update form for LeadGen
2031
2042
  const submit = useCallback((data) => {
2032
2043
  return Service.postSubscriptionBoxLead({ data });
2033
2044
  }, []);
2034
2045
  const submitSubscriptionBox = useCallback((value) => {
2035
- const data = Object.assign(Object.assign(Object.assign(Object.assign({}, value), { campaign_id,
2046
+ const data = Object.assign(Object.assign(Object.assign(Object.assign({}, value), {
2047
+ // campaign_id,
2036
2048
  site_domain, url: (value === null || value === void 0 ? void 0 : value.url) || url, cookie_id, ga_client_id: (value === null || value === void 0 ? void 0 : value.ga_client_id) || ga_client_id }), extraValues), { article_id,
2037
2049
  category_id,
2038
2050
  article_title });
@@ -2048,33 +2060,36 @@ const LeadGenContextProvider = (props) => {
2048
2060
  cookie_id,
2049
2061
  ga_client_id,
2050
2062
  ]);
2051
- const impression = useCallback((value) => {
2063
+ const impression = useCallback((type) => {
2064
+ const gaCookie = getCookie('_ga') || null;
2052
2065
  const impression = {
2053
- url: (value === null || value === void 0 ? void 0 : value.url) || url,
2054
- action: (value === null || value === void 0 ? void 0 : value.action) || LEADGEN_ACTIONS.SCROLL,
2055
- code: (value === null || value === void 0 ? void 0 : value.code) || campaign_code,
2056
- title_article: (value === null || value === void 0 ? void 0 : value.title_article) || article_title,
2057
- cookie_id: (value === null || value === void 0 ? void 0 : value.cookie_id) || cookie_id,
2058
- ga_client_id: (value === null || value === void 0 ? void 0 : value.ga_client_id) || ga_client_id,
2059
- referrer: value === null || value === void 0 ? void 0 : value.referrer,
2060
- extra: Object.assign(Object.assign(Object.assign({}, value === null || value === void 0 ? void 0 : value.extra), { cookie_id,
2061
- article_id, subscription_title: subscriptionInfo.subscriptionTitle, subscription_type: subscriptionInfo.subscriptionType }), extraValues),
2066
+ subscription_title: subscriptionInfo.subscriptionTitle,
2067
+ name: (userInfo === null || userInfo === void 0 ? void 0 : userInfo.name) || '',
2068
+ area_code: (userInfo === null || userInfo === void 0 ? void 0 : userInfo.area_code) || '',
2069
+ phone_number: (userInfo === null || userInfo === void 0 ? void 0 : userInfo.phone) || '',
2070
+ site_domain: domainLocales[locale],
2071
+ url: location.href.toLowerCase(),
2072
+ cookie_id: getCookie('hhg-id'),
2073
+ ga_client_id: gaCookie,
2074
+ article_title,
2075
+ article_id,
2076
+ category_id,
2077
+ category_name,
2078
+ type,
2062
2079
  };
2063
- if (!impression.extra.subscription_title) {
2064
- delete impression.extra.subscription_title;
2065
- }
2066
- return Service.campaignPostImpression(impression);
2080
+ return Service.trackingSubscription(impression);
2067
2081
  }, [
2068
- extraValues,
2069
2082
  campaign_id,
2070
2083
  url,
2071
- campaign_code,
2072
2084
  article_title,
2073
2085
  cookie_id,
2074
2086
  ga_client_id,
2087
+ categoryId,
2075
2088
  article_id,
2076
2089
  subscriptionInfo.subscriptionTitle,
2077
- subscriptionInfo.subscriptionType,
2090
+ userInfo === null || userInfo === void 0 ? void 0 : userInfo.name,
2091
+ userInfo === null || userInfo === void 0 ? void 0 : userInfo.area_code,
2092
+ userInfo === null || userInfo === void 0 ? void 0 : userInfo.phone,
2078
2093
  ]);
2079
2094
  useEffect(() => {
2080
2095
  if (forceCampaignProps) {
@@ -2089,21 +2104,138 @@ const LeadGenContextProvider = (props) => {
2089
2104
  slug: location === null || location === void 0 ? void 0 : location.pathname,
2090
2105
  }).then((res) => {
2091
2106
  const { _data } = res || {};
2092
- const { item, campaign_code } = _data || {};
2107
+ const { item, campaign_code, btn_type = 'zalo' } = _data || {};
2093
2108
  const { icon, content } = item || {};
2094
2109
  LeadLog('** LeadGen SubscriptionBox campaign_code : ', campaign_code);
2095
2110
  LeadLog('** LeadGen SubscriptionBox subscription_icon : ', icon);
2096
2111
  LeadLog('** LeadGen SubscriptionBox subscription_title : ', content);
2097
- setSubscriptionInfo((prev) => (Object.assign(Object.assign({}, prev), { subscriptionIcon: icon, subscriptionTitle: content })));
2098
- if (campaign_code) {
2099
- fetchCampaign(campaign_code);
2100
- }
2112
+ setSubscriptionInfo((prev) => (Object.assign(Object.assign({}, prev), { subscriptionIcon: icon, subscriptionTitle: content, subscriptionPhoneType: btn_type })));
2113
+ setForceCampaign(formatCampaignDetail({
2114
+ id: 6993,
2115
+ name: '',
2116
+ code: '49qvztwzzlfvmk6',
2117
+ site: {
2118
+ id: LOCALE_SPECS[locale].SITE_ID || 1,
2119
+ name: domainLocales[locale],
2120
+ },
2121
+ thank_you_image: 'https://cdn-lead.hellohealthgroup.com/2025/05/1747009374_68213f5e5fa5a9.58533462.png',
2122
+ extra_fields: {
2123
+ actionBlocks: `{"submitBlock":{"data":{"value":"${t('subscriptionBox.ctaBtn')}"}},"linkButtonBlock":{"data":{"value":"Join now","url":"","newtab":true}}}`,
2124
+ currentLayout: 'LightBoxB',
2125
+ imageBlocks: '{"imageMobile":{"data":{"url":"","newtab":true}},"imageDesktop":{"data":{"url":"","newtab":true}},"imageBackground":{"data":{}},"imageOverlayMobile":{"data":{}},"imageOverlayDesktop":{"data":{}},"imageThankYou":{"data":{}}}',
2126
+ listBlockAdded: `[{"name":"TextBlock","id":"c9be7202-05af-4d62-94bb-0001f8ad50de","data":{"placeholder":"${t('subscriptionBox.name')}","value":"name","required":true, "requiredMessage": "${t('subscriptionBox.nameRequire')}"}},{"name":"PhoneBlock","id":1744087889773,"data":{"value":"phone","required":true,"requiredMessage": "${t('subscriptionBox.phoneRequire')}","placeholder":"${t('subscriptionBox.phone')}"}}]`,
2127
+ listBlockThankyou: `[{"name":"TitleBlock","id":"c74d5525-b7ae-4714-b5f1-552f50160ac1","data":{"value":"${t('subscriptionBox.thankyouTitle')}","align":"center"}},{"name":"SubtitleBlock","id":"f9a6ac63-b532-41d4-9c2e-3f3e71124e05","data":{"value":"${t('subscriptionBox.thankyou')}","align":"center"}}]`,
2128
+ textBlocks: '{"titleBlock":{"data":{"value":"VN - Campaign SUBSCRIPTION BOX "}},"subtitleBlock":{"data":{"value":"Sample description"}}}',
2129
+ },
2130
+ total_lead: 0,
2131
+ total_submit: 0,
2132
+ total_click: 0,
2133
+ started_at: null,
2134
+ ended_at: null,
2135
+ created_at: '2025-04-08 04:54:32',
2136
+ updated_at: '2025-05-12 00:22:54',
2137
+ site_logo: 'https://hhg-common.hellobacsi.com/common/logo/hellobacsi.png',
2138
+ custom_logo: null,
2139
+ status: 1,
2140
+ formatted_status: 1,
2141
+ creator: 'admin@hellohealthgroup.com',
2142
+ total_impression: 4237940,
2143
+ conversion_rate: 0,
2144
+ total_visitor: 0,
2145
+ total_habit_exit: 0,
2146
+ total_intentional_exit: 0,
2147
+ trigger_type: 'on_landing',
2148
+ targets: [
2149
+ {
2150
+ is_import: 0,
2151
+ option: 'start_with',
2152
+ sub_target: [],
2153
+ target: 'https://hellobacsi.com/sample',
2154
+ type: 1,
2155
+ },
2156
+ ],
2157
+ forms: [
2158
+ {
2159
+ control: 'TextBlock',
2160
+ default: null,
2161
+ name: 'TextBlock',
2162
+ options: [],
2163
+ required: 1,
2164
+ },
2165
+ {
2166
+ control: 'PhoneBlock',
2167
+ default: null,
2168
+ name: 'PhoneBlock',
2169
+ options: [],
2170
+ required: 1,
2171
+ requiredMessage: t('subscriptionBox.phoneRequire'),
2172
+ },
2173
+ ],
2174
+ rules: [
2175
+ {
2176
+ rule: 'campaign_popup_exit',
2177
+ value: '7',
2178
+ },
2179
+ {
2180
+ rule: 'site_popup_exit',
2181
+ value: '7',
2182
+ },
2183
+ {
2184
+ rule: 'show_again_after_submit',
2185
+ value: '0',
2186
+ },
2187
+ {
2188
+ rule: 'show_again_after_exit',
2189
+ value: '0',
2190
+ },
2191
+ {
2192
+ rule: 'appearance_time',
2193
+ value: {
2194
+ endTime: null,
2195
+ startTime: null,
2196
+ },
2197
+ },
2198
+ {
2199
+ rule: 'exclude_sponsored',
2200
+ value: '1',
2201
+ },
2202
+ {
2203
+ rule: 'exclude_sponsored_list',
2204
+ value: [],
2205
+ },
2206
+ {
2207
+ rule: 'days_to_show_again',
2208
+ value: '7',
2209
+ },
2210
+ {
2211
+ rule: 'time',
2212
+ value: '3',
2213
+ },
2214
+ ],
2215
+ is_scheduled: true,
2216
+ last_step: null,
2217
+ kpis: {
2218
+ lead: 500,
2219
+ },
2220
+ forever: 1,
2221
+ is_target_import: 0,
2222
+ is_expired: 0,
2223
+ score: 6,
2224
+ price: 2.5,
2225
+ type: 0,
2226
+ is_testing_running: 0,
2227
+ campaign_group_id: 0,
2228
+ bot_id: [],
2229
+ }));
2230
+ // if (campaign_code) {
2231
+ // fetchCampaign(campaign_code)
2232
+ // }
2101
2233
  });
2102
2234
  return;
2103
2235
  }
2104
- if (campaignCodeProps) {
2105
- fetchCampaign(campaignCodeProps);
2106
- }
2236
+ // if (campaignCodeProps) {
2237
+ // fetchCampaign(campaignCodeProps)
2238
+ // }
2107
2239
  }, [forceCampaignProps, campaignCodeProps, categoryId]);
2108
2240
  useEffect(() => {
2109
2241
  leadStore.apiSsoUrl = apiSsoUrl;
@@ -2113,7 +2245,7 @@ const LeadGenContextProvider = (props) => {
2113
2245
  if (!forceCampaign || !(forceCampaign === null || forceCampaign === void 0 ? void 0 : forceCampaign.id)) {
2114
2246
  return null;
2115
2247
  }
2116
- return (React__default.createElement(LeadGenContext.Provider, { value: Object.assign(Object.assign(Object.assign({}, restProps), subscriptionInfo), { campaign_code: campaignCodeProps, apiSsoUrl,
2248
+ return (React__default.createElement(LeadGenContext.Provider, { value: Object.assign(Object.assign(Object.assign({}, restProps), subscriptionInfo), { userInfo, campaign_code: campaignCodeProps, apiSsoUrl,
2117
2249
  apiLeadUrl,
2118
2250
  apiSubotUrl, locale: localeProps, extraValues,
2119
2251
  articleId,
@@ -2128,6 +2260,39 @@ const useLeadGenContext = () => {
2128
2260
  return Object.assign(Object.assign({}, context), { apiSsoUrl: context.apiSsoUrl || leadStore.apiSsoUrl, apiLeadUrl: context.apiLeadUrl || leadStore.apiLeadUrl, apiSubotUrl: context.apiSubotUrl || leadStore.apiSubotUrl });
2129
2261
  };
2130
2262
 
2263
+ const ImpressionTrackingWrapper = ({ children, stayDuration = 3, onImpression, dependency = '', }) => {
2264
+ const { ref, entry } = useIntersection({
2265
+ threshold: 1,
2266
+ });
2267
+ const [tracked, setTracked] = useState(false);
2268
+ useEffect(() => {
2269
+ let timer = null;
2270
+ let count = 1;
2271
+ if ((entry === null || entry === void 0 ? void 0 : entry.isIntersecting) && !tracked) {
2272
+ timer = setInterval(() => {
2273
+ console.log('Impression count: ', count);
2274
+ if (count >= stayDuration) {
2275
+ setTracked(true);
2276
+ }
2277
+ else {
2278
+ count += 1;
2279
+ }
2280
+ }, 1000);
2281
+ }
2282
+ return () => clearInterval(timer);
2283
+ }, [entry === null || entry === void 0 ? void 0 : entry.isIntersecting, tracked]);
2284
+ useEffect(() => {
2285
+ if (tracked) {
2286
+ onImpression();
2287
+ console.log('Impression call API');
2288
+ }
2289
+ }, [tracked]);
2290
+ useEffect(() => {
2291
+ setTracked(false);
2292
+ }, [dependency]);
2293
+ return (React__default.createElement(Box, { "data-impression": true, ref: ref }, children));
2294
+ };
2295
+
2131
2296
  // eslint-disable-next-line @typescript-eslint/no-var-requires
2132
2297
  const customParseFormat = require('dayjs/plugin/customParseFormat');
2133
2298
  dayjs.extend(customParseFormat);
@@ -2164,7 +2329,7 @@ const useLeadFormConfig = ({ listBlockAdded = [], validatingPhoneRef, validating
2164
2329
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
2165
2330
  block) => {
2166
2331
  return (value) => {
2167
- var _a;
2332
+ var _a, _b;
2168
2333
  const isBLockRequired = (_a = block === null || block === void 0 ? void 0 : block.data) === null || _a === void 0 ? void 0 : _a.required;
2169
2334
  if (!formRef.current.isTouched(name))
2170
2335
  return;
@@ -2172,7 +2337,7 @@ const useLeadFormConfig = ({ listBlockAdded = [], validatingPhoneRef, validating
2172
2337
  typeof value === 'undefined' ||
2173
2338
  (Array.isArray(value) && value.length === 0)) {
2174
2339
  return isBLockRequired
2175
- ? t('validator.required')
2340
+ ? ((_b = block === null || block === void 0 ? void 0 : block.data) === null || _b === void 0 ? void 0 : _b.requiredMessage) || t('validator.required')
2176
2341
  : cb === null || cb === void 0 ? void 0 : cb(value);
2177
2342
  }
2178
2343
  return cb === null || cb === void 0 ? void 0 : cb(value);
@@ -2421,12 +2586,25 @@ const StyledLeadGenSubscriptionBox = styled.div `
2421
2586
  border: 1px solid ${theme.colors.neutral100};
2422
2587
  background: linear-gradient(
2423
2588
  180.71deg,
2424
- #7bc2ff -18.54%,
2425
- #e3f2ff 17.12%,
2426
- #ffffff 99.25%
2589
+ rgba(44, 183, 66, 0.8) -18.54%,
2590
+ rgba(44, 183, 66, 0.1) 17.12%,
2591
+ rgba(44, 183, 66, 0) 99.25%
2427
2592
  );
2428
2593
  border-radius: 12px;
2429
2594
  margin-inline: auto;
2595
+ &[data-phone-type='zalo'] {
2596
+ background: linear-gradient(
2597
+ 180.71deg,
2598
+ #7bc2ff -18.54%,
2599
+ #e3f2ff 17.12%,
2600
+ #ffffff 99.25%
2601
+ );
2602
+ }
2603
+ &[data-phone-type]:not([data-phone-type='zalo']) {
2604
+ .leadgen-btn {
2605
+ background-color: #2cb742 !important;
2606
+ }
2607
+ }
2430
2608
  .leadgen-form_inputs {
2431
2609
  .leadgen-form_input {
2432
2610
  width: 100%;
@@ -3102,10 +3280,9 @@ const LeadGenSubscriptionBoxWithoutMemo = ({ locale, userInfo, forceCampaign, ca
3102
3280
  const { image, extra_fields, id: campaign_id, bot_id: campaign_subot_id = [], ThankYouBlock, } = forceCampaign || {};
3103
3281
  const { textBlocks, listBlockAdded, actionBlocks } = extra_fields || {};
3104
3282
  const { submitBlock } = actionBlocks || {};
3105
- const { apiLeadUrl, subscriptionIcon, subscriptionTitle, submitSubscriptionBox, impression, onFinish, } = useLeadGenContext();
3283
+ const { apiLeadUrl, subscriptionIcon, subscriptionTitle, subscriptionPhoneType, submitSubscriptionBox, onFinish, impression, } = useLeadGenContext();
3106
3284
  const { t } = useTranslations();
3107
3285
  const { action: { pushNotifications }, } = useContext(TogetherComponentGlobalContext);
3108
- const refContainer = useRef(null);
3109
3286
  const [loading, setLoading] = useState(false);
3110
3287
  const [showThankyou, setShowThankyou] = useState(false);
3111
3288
  const validatingEmailRef = useRef(false);
@@ -3125,17 +3302,6 @@ const LeadGenSubscriptionBoxWithoutMemo = ({ locale, userInfo, forceCampaign, ca
3125
3302
  t('leadgen.message.title.default');
3126
3303
  }, [subscriptionTitle, (_b = (_a = textBlocks === null || textBlocks === void 0 ? void 0 : textBlocks.titleBlock) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.value]);
3127
3304
  const { image: thankyouImage, title: thankyouTitle, description: thankyouDescription, button: thankyouButton, } = ThankYouBlock || {};
3128
- const intersectionObserverCallback = useCallback((entries) => {
3129
- entries.forEach((entry) => {
3130
- const { isIntersecting, target } = entry;
3131
- if (!showThankyou &&
3132
- isIntersecting &&
3133
- target === refContainer.current) {
3134
- impression();
3135
- }
3136
- });
3137
- }, [impression, showThankyou]);
3138
- const IObserver = new IntersectionObserver(intersectionObserverCallback);
3139
3305
  const middlewareOnSubmit = useCallback((values) => __awaiter(void 0, void 0, void 0, function* () {
3140
3306
  const newValues = {
3141
3307
  subscription_title,
@@ -3172,7 +3338,11 @@ const LeadGenSubscriptionBoxWithoutMemo = ({ locale, userInfo, forceCampaign, ca
3172
3338
  setLoading(true);
3173
3339
  try {
3174
3340
  const reqValues = Object.assign(Object.assign({}, newValues), ssoValues);
3175
- const { _data } = (yield submitSubscriptionBox(reqValues)) || {};
3341
+ const [res] = yield Promise.all([
3342
+ submitSubscriptionBox(reqValues),
3343
+ impression('submit_form'),
3344
+ ]);
3345
+ const { _data } = res || {};
3176
3346
  const { model } = _data || {};
3177
3347
  if (model && (model === null || model === void 0 ? void 0 : model.id)) {
3178
3348
  setShowThankyou(true);
@@ -3216,16 +3386,8 @@ const LeadGenSubscriptionBoxWithoutMemo = ({ locale, userInfo, forceCampaign, ca
3216
3386
  userInfo === null || userInfo === void 0 ? void 0 : userInfo.uid,
3217
3387
  userInfo === null || userInfo === void 0 ? void 0 : userInfo.phone,
3218
3388
  ]);
3219
- useEffect(() => {
3220
- if (refContainer.current) {
3221
- IObserver.observe(refContainer.current);
3222
- }
3223
- return () => {
3224
- IObserver.disconnect();
3225
- };
3226
- }, [categoryId]);
3227
- return (React__default.createElement("div", { ref: refContainer },
3228
- React__default.createElement(StyledLeadGenSubscriptionBox, { "data-type": "subscription_box_A" },
3389
+ return (React__default.createElement(ImpressionTrackingWrapper, { dependency: categoryId, onImpression: () => impression('impression') },
3390
+ React__default.createElement(StyledLeadGenSubscriptionBox, { "data-phone-type": subscriptionPhoneType, "data-type": "subscription_box_A" },
3229
3391
  showThankyou && (React__default.createElement(LeadGenThankYou, { image: Object.assign(Object.assign({}, thankyouImage), { src: thankyouImage.src || `${apiLeadUrl}admin/img/thanksyou.png` }), title: thankyouTitle, description: thankyouDescription, button: thankyouButton })),
3230
3392
  !showThankyou && (React__default.createElement(LeadGenSubscriptionBoxA, { loading: loading, image: subscriptionIcon || image, title: subscription_title, submitText: (_c = submitBlock === null || submitBlock === void 0 ? void 0 : submitBlock.data) === null || _c === void 0 ? void 0 : _c.value, blocks: listBlockAdded, locale: locale, form: form, rules: validateObj, onFinish: middlewareOnSubmit })))));
3231
3393
  };
@@ -3240,8 +3402,12 @@ const Container = () => {
3240
3402
  return (React__default.createElement(LeadGenSubscriptionBox$1, { locale: locale, siteId: siteId, siteDomain: siteDomain, userInfo: userInfo, forceCampaign: forceCampaign, campaign_code: campaign_code }));
3241
3403
  };
3242
3404
  Container.displayName = 'LeadGenSubscriptionBox';
3405
+ const ALLOW_LOCALE = [LOCALE.Vietnam, LOCALE.Malaysia, LOCALE.Indonesia];
3243
3406
  const LeadGenSubscriptionBoxContainer = (props) => {
3244
- const { apiUrl, apiSubotUrl } = props;
3407
+ const { apiUrl, apiSubotUrl, locale } = props;
3408
+ if (!ALLOW_LOCALE.includes(locale)) {
3409
+ return null;
3410
+ }
3245
3411
  return (React__default.createElement(LeadGenContextProvider, Object.assign({}, props, { apiLeadUrl: apiUrl, apiSubotUrl: apiSubotUrl }),
3246
3412
  React__default.createElement(Container, null)));
3247
3413
  };
@@ -3368,6 +3534,35 @@ const FloatingLayout = ({ popupId, url, title, urlText, titleAlign, subtitle, su
3368
3534
  React__default.createElement(CloseButton, { onClose: onClose, containerClassName: "close-button-top-right" }))))));
3369
3535
  };
3370
3536
 
3537
+ const useViewportDimensions = () => {
3538
+ const dimensionsRef = useRef({ width: 0, height: 0 });
3539
+ const [dimensions, setDimensions] = useState(() => ({
3540
+ width: window.screen.availWidth,
3541
+ height: window.screen.availHeight,
3542
+ }));
3543
+ useEffect(() => {
3544
+ var _a;
3545
+ function visualViewport(e) {
3546
+ if (dimensionsRef.current.width === e.target.width &&
3547
+ dimensionsRef.current.height === e.target.height) {
3548
+ return;
3549
+ }
3550
+ const newDimensions = {
3551
+ width: e.target.width,
3552
+ height: e.target.height,
3553
+ };
3554
+ dimensionsRef.current = newDimensions;
3555
+ setDimensions(newDimensions);
3556
+ }
3557
+ (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.addEventListener('resize', visualViewport);
3558
+ return () => {
3559
+ var _a;
3560
+ (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.removeEventListener('resize', visualViewport);
3561
+ };
3562
+ }, []);
3563
+ return useMemo(() => (Object.assign({}, dimensions)), [dimensions.height, dimensions.width]);
3564
+ };
3565
+
3371
3566
  function isMac() {
3372
3567
  return testPlatform(/^Mac/);
3373
3568
  }
@@ -3643,35 +3838,6 @@ function isInput(target) {
3643
3838
  (target instanceof HTMLElement && target.isContentEditable));
3644
3839
  }
3645
3840
 
3646
- const useViewportDimensions = () => {
3647
- const dimensionsRef = useRef({ width: 0, height: 0 });
3648
- const [dimensions, setDimensions] = useState(() => ({
3649
- width: window.screen.availWidth,
3650
- height: window.screen.availHeight,
3651
- }));
3652
- useEffect(() => {
3653
- var _a;
3654
- function visualViewport(e) {
3655
- if (dimensionsRef.current.width === e.target.width &&
3656
- dimensionsRef.current.height === e.target.height) {
3657
- return;
3658
- }
3659
- const newDimensions = {
3660
- width: e.target.width,
3661
- height: e.target.height,
3662
- };
3663
- dimensionsRef.current = newDimensions;
3664
- setDimensions(newDimensions);
3665
- }
3666
- (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.addEventListener('resize', visualViewport);
3667
- return () => {
3668
- var _a;
3669
- (_a = window.visualViewport) === null || _a === void 0 ? void 0 : _a.removeEventListener('resize', visualViewport);
3670
- };
3671
- }, []);
3672
- return useMemo(() => (Object.assign({}, dimensions)), [dimensions.height, dimensions.width]);
3673
- };
3674
-
3675
3841
  const StyledLeadGenLightBoxBFooter = styled.div `
3676
3842
  padding-top: calc(var(--spacing-y, 20px) * 8 / 20);
3677
3843
  padding-inline: var(--spacing-x, 20px);
@@ -3872,7 +4038,8 @@ const ThankyouPopup = ({ title, titleAlign, subtitle, subtitleAlign, link, linkN
3872
4038
  React__default.createElement(Button, { className: `lead-modal__btn ${LEAD_CLASS}`, color: primaryColor }, linkText)))))));
3873
4039
  };
3874
4040
 
3875
- const InlineLayout = ({ content, inlinePosition, }) => {
4041
+ const InlineLayout = ({ action, content, inlinePosition, campaignCode, }) => {
4042
+ const { apiUrl } = useContext(LeadGenContext$1);
3876
4043
  const target = useMemo(() => {
3877
4044
  if (!inlinePosition)
3878
4045
  return null;
@@ -3979,7 +4146,22 @@ const InlineLayout = ({ content, inlinePosition, }) => {
3979
4146
  }, [inlinePosition]);
3980
4147
  if (!inlinePosition || !target)
3981
4148
  return null;
3982
- return createPortal(content, target);
4149
+ return createPortal(React__default.createElement(ImpressionTrackingWrapper, { onImpression: () => __awaiter(void 0, void 0, void 0, function* () {
4150
+ const gaCookie = getCookie('_ga') || null;
4151
+ fetch(`${apiUrl}api/campaign/${campaignCode}/impression`, {
4152
+ method: 'POST',
4153
+ headers: {
4154
+ 'Content-Type': 'application/json',
4155
+ },
4156
+ body: JSON.stringify({
4157
+ action,
4158
+ url: location.href.toLowerCase(),
4159
+ title_article: document.title,
4160
+ cookie_id: getCookie('hhg-id'),
4161
+ ga_client_id: gaCookie,
4162
+ }),
4163
+ });
4164
+ }) }, content), target);
3983
4165
  };
3984
4166
 
3985
4167
  const SideBarLayout = ({ content }) => {
@@ -4392,20 +4574,20 @@ const LightboxFields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmi
4392
4574
  React__default.createElement(TextInput, Object.assign({ withAsterisk: required, spellCheck: false, type: "text", placeholder: " ",
4393
4575
  // className="lead-modal__form-control leadgen-form_field"
4394
4576
  // onChangeRaw={(e) => inputOnChange('text', e)}
4395
- label: label, "data-control": "text", "data-lead-control": 'TextBlock', inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value), { name: value }))));
4577
+ label: label, "data-control": "text", "data-lead-control": name, "data-is-required": required, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value), { name: value }))));
4396
4578
  case 'NumberBlock':
4397
4579
  return (React__default.createElement(TextField, { key: index, shrink: !!formValue, className: "lead-modal__form-control leadgen-form_field" },
4398
4580
  React__default.createElement(NumberInput$1, Object.assign({ withAsterisk: required, spellCheck: false, type: "number", placeholder: " ",
4399
4581
  // className="lead-modal__form-control leadgen-form_field"
4400
4582
  // onChange={(e) => inputOnChange('number', e)}
4401
- label: label, "data-control": "number", "data-lead-control": name, name: value, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4583
+ label: label, "data-control": "number", "data-lead-control": name, "data-is-required": required, name: value, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4402
4584
  case 'EmailBlock':
4403
4585
  return (React__default.createElement(TextField, { key: index, shrink: !!formValue, className: "lead-modal__form-control leadgen-form_field" },
4404
4586
  React__default.createElement(TextInput, Object.assign({ withAsterisk: required, spellCheck: false,
4405
4587
  // type="email"
4406
4588
  placeholder: " ",
4407
4589
  // className="lead-modal__form-control leadgen-form_field"
4408
- label: label, "data-control": "email", "data-lead-control": name, name: value, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4590
+ label: label, "data-control": "email", "data-lead-control": name, "data-is-required": required, name: value, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4409
4591
  case 'PhoneOtpBlock':
4410
4592
  case 'WhatsappOtpBlock':
4411
4593
  case 'ZaloOtpBlock':
@@ -4419,16 +4601,16 @@ const LightboxFields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmi
4419
4601
  React__default.createElement("div", { className: "mantine-Input-wrapper" },
4420
4602
  React__default.createElement(Phone, Object.assign({ className: "mantine-Input-input", name: value, spellCheck: false, type: "tel", placeholder: " ",
4421
4603
  // onBlur={(e) => inputOnBlur('tel', e)}
4422
- id: htmlForId, defaultCountry: (locale ? MAPPED_LOCALE[locale] || 'VN' : 'VN'), "data-control": "tel", "data-lead-control": name }, formPhoneInputWrapper))))));
4604
+ id: htmlForId, defaultCountry: (locale ? MAPPED_LOCALE[locale] || 'VN' : 'VN'), "data-control": "tel", "data-lead-control": name, "data-is-required": required }, formPhoneInputWrapper))))));
4423
4605
  }
4424
4606
  case 'LocationBlock': {
4425
4607
  return (React__default.createElement(TextField, { key: index, shrink: !!formValue, className: "lead-modal__form-control leadgen-form_field" },
4426
- React__default.createElement(GoogleLocationBlock, Object.assign({ withAsterisk: required, name: value, placeholder: " ", label: label, "data-control": "text", "data-lead-control": name, locale: locale, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4608
+ React__default.createElement(GoogleLocationBlock, Object.assign({ withAsterisk: required, name: value, placeholder: " ", label: label, "data-control": "text", "data-lead-control": name, "data-is-required": required, locale: locale, inputWrapperOrder: ['label', 'input', 'description', 'error'] }, form.getInputProps(value)))));
4427
4609
  }
4428
4610
  case 'DateBlock': {
4429
4611
  const _c = form.getInputProps(value), { error } = _c, formInputProps = __rest(_c, ["error"]);
4430
4612
  return (React__default.createElement(Input$1.Wrapper, { key: index, size: "md", withAsterisk: required, label: label, "data-invalid": !!error, inputWrapperOrder: ['label', 'input', 'description', 'error'], error: error, className: "lead-modal__form-control leadgen-form_field" },
4431
- React__default.createElement(InputDate, Object.assign({ name: value, error: Boolean(error), locale: locale, "data-extra": true, "data-name": value, "data-control": "date", "data-lead-control": name, className: "leadgen-form_field_date", labelTuples: labelTuples }, formInputProps))));
4613
+ React__default.createElement(InputDate, Object.assign({ name: value, error: Boolean(error), locale: locale, "data-extra": true, "data-name": value, "data-control": "date", "data-lead-control": name, "data-is-required": required, className: "leadgen-form_field_date", labelTuples: labelTuples }, formInputProps))));
4432
4614
  }
4433
4615
  case 'LinkButtonBlock':
4434
4616
  return (React__default.createElement("div", { key: index },
@@ -4451,7 +4633,7 @@ const LightboxFields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmi
4451
4633
  gap: 8,
4452
4634
  }, inputWrapperOrder: ['label', 'input', 'description', 'error'], inputContainer: (children) => {
4453
4635
  return (React__default.createElement("div", { className: "leadgen-choiceContainer" }, children));
4454
- } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Checkbox, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "checkbox", "data-lead-control": name }))))));
4636
+ } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Checkbox, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "checkbox", "data-lead-control": name, "data-is-required": required }))))));
4455
4637
  case 'RadioBlock':
4456
4638
  return (React__default.createElement(ChoiceField, { className: "leadgen-form_radio", key: index },
4457
4639
  isSendMailChimp && (React__default.createElement(Input$1, { type: "hidden", name: value + '-mailchimp', value: isSendMailChimp })),
@@ -4459,10 +4641,10 @@ const LightboxFields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmi
4459
4641
  // className="lead-modal__form-control leadgen-form_field"
4460
4642
  label: label, size: "md", inputWrapperOrder: ['label', 'input', 'description', 'error'], inputContainer: (children) => {
4461
4643
  return (React__default.createElement("div", { className: "leadgen-choiceContainer" }, children));
4462
- } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Radio, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "radio", "data-lead-control": name }))))));
4644
+ } }, form.getInputProps(value)), listQuestion.map((l, _index) => (React__default.createElement(Radio, { name: value, key: _index, value: l.value, label: l.placeholder, "data-control": "radio", "data-lead-control": name, "data-is-required": required }))))));
4463
4645
  case 'DropdownBlock':
4464
4646
  return (React__default.createElement(TextField, { shrink: !!formValue, className: "lead-modal__form-control leadgen-form_field DropdownBlock", key: index },
4465
- React__default.createElement("div", { style: { display: 'none' }, "data-extra": true, "data-name": value, "data-control": 'dropdown', "data-lead-control": name }),
4647
+ React__default.createElement("div", { style: { display: 'none' }, "data-extra": true, "data-name": value, "data-control": 'dropdown', "data-lead-control": name, "data-is-required": required }),
4466
4648
  React__default.createElement(Select
4467
4649
  // className="lead-modal__form-control leadgen-form_field"
4468
4650
  , Object.assign({
@@ -4496,7 +4678,7 @@ const LightboxFields = ({ listBlockAdded, popupId, locale, onClose, onOtherSubmi
4496
4678
  const _d = form.getInputProps(`TNC-${id}`), { error } = _d, tncInputProps = __rest(_d, ["error"]);
4497
4679
  return (React__default.createElement(ChoiceField, { className: "leadgen-form_checkbox", key: id },
4498
4680
  React__default.createElement(Input$1.Wrapper, { error: error },
4499
- React__default.createElement(Checkbox, Object.assign({ name: 'TNC-' + id, label: React__default.createElement("p", { className: "lead-modal__tnc-link", dangerouslySetInnerHTML: { __html: data.valueHTML } }), className: "tnc-block", "data-control": "checkbox", "data-lead-control": name }, tncInputProps)))));
4681
+ React__default.createElement(Checkbox, Object.assign({ name: 'TNC-' + id, label: React__default.createElement("p", { className: "lead-modal__tnc-link", dangerouslySetInnerHTML: { __html: data.valueHTML } }), className: "tnc-block", "data-control": "checkbox", "data-lead-control": name, "data-is-required": required }, tncInputProps)))));
4500
4682
  }
4501
4683
  return null;
4502
4684
  })));
@@ -4746,7 +4928,7 @@ const LEADGEN_SHOW_HEADER = [
4746
4928
  ];
4747
4929
  // const CAMPAGE_CODE_LIST_APPLY_NEW_UI = ['ri3lkoxcetjoj39', 'u0adw7hw8kw7t89']
4748
4930
  const CAMPAGE_CODE_LIST_APPLY_NEW_UI = ['ri3lkoxcetjoj39'];
4749
- const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSubmit, imageMobile, imageDesktop, imageOverlayMobile, imageOverlayDesktop, imageBackground, currentLayout, title, onSubmit, onUnmount, showThankyou, campaignId, campaignCode, campaign_subot_id, locale, showEmpty, setShowEmpty, userInfo, }) => {
4931
+ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSubmit, imageMobile, imageDesktop, imageOverlayMobile, imageOverlayDesktop, imageBackground, currentLayout, title, onSubmit, onUnmount, showThankyou, campaignId, campaignCode, campaign_subot_id, locale, showEmpty, setShowEmpty, userInfo, action, }) => {
4750
4932
  var _a, _b;
4751
4933
  const { primaryColor } = useContext(LeadGenContext$1);
4752
4934
  const { isMobile } = useScreenSize();
@@ -4771,7 +4953,7 @@ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSub
4771
4953
  }
4772
4954
  };
4773
4955
  const { height } = useViewportDimensions();
4774
- usePreventScroll();
4956
+ // usePreventScroll()
4775
4957
  const formActiveTime = useRef(0);
4776
4958
  const textBlocks = JSON.parse(extraFields.textBlocks);
4777
4959
  const listBlockAdded = JSON.parse(extraFields.listBlockAdded);
@@ -4858,47 +5040,8 @@ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSub
4858
5040
  return false;
4859
5041
  }, [...listBlockAddedRequired.map((k) => form.values[k])]);
4860
5042
  const onFocus = (e) => {
4861
- e.preventDefault();
4862
- function scrollIntoView() {
4863
- const $Input = e.target;
4864
- const $TextField = $Input.closest('.leadgen-form_field');
4865
- const scrollIntoView = {
4866
- block: 'center',
4867
- behavior: 'auto',
4868
- };
4869
- if ($TextField.classList.contains('DropdownBlock')) {
4870
- scrollIntoView.block = 'start';
4871
- const tfOffsetTop = ($TextField === null || $TextField === void 0 ? void 0 : $TextField.offsetTop) || 0;
4872
- const tfHeight = $TextField.clientHeight;
4873
- const $ScrollableElement = getParentScroll($TextField);
4874
- if ($ScrollableElement) {
4875
- // https://hhgdev.atlassian.net/browse/EL-682
4876
- const scrollHeight = $ScrollableElement.scrollHeight;
4877
- if (scrollHeight - (tfOffsetTop + tfHeight) < 192) {
4878
- scrollIntoView.block = 'end';
4879
- }
4880
- }
4881
- }
4882
- if (isMobile) {
4883
- window.scrollTo(0, 0);
4884
- }
4885
- $TextField.scrollIntoView(scrollIntoView);
4886
- }
4887
- let time = 0;
4888
- function requestFrame(timestamp) {
4889
- if (time === 0) {
4890
- time = timestamp;
4891
- }
4892
- if (timestamp - time <= 250) {
4893
- requestAnimationFrame(requestFrame);
4894
- }
4895
- else {
4896
- scrollIntoView();
4897
- }
4898
- }
4899
- if (isMobile) {
4900
- requestAnimationFrame(requestFrame);
4901
- }
5043
+ // EL-926 Temporary turn off handling focus form on mobile to fix scrolling bug on lightbox A
5044
+ return false;
4902
5045
  };
4903
5046
  const middlewareOnSubmit = (e) => {
4904
5047
  e.preventDefault();
@@ -5081,7 +5224,7 @@ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSub
5081
5224
  return React__default.createElement(SideBarLayout, { content: PopupContainer });
5082
5225
  }
5083
5226
  else if (isInline) {
5084
- return (React__default.createElement(InlineLayout, { content: PopupContainer, inlinePosition: extraFields.popupInlinePosition }));
5227
+ return (React__default.createElement(InlineLayout, { action: action, content: PopupContainer, campaignCode: campaignCode, inlinePosition: extraFields.popupInlinePosition }));
5085
5228
  }
5086
5229
  return null;
5087
5230
  };
@@ -5179,19 +5322,20 @@ const NewLeadPopup = ({ campaign, action, onSubmit, onClose, onUnmount, showThan
5179
5322
  const { apiUrl, siteDomain } = useContext(LeadGenContext$1);
5180
5323
  useEffect(() => {
5181
5324
  const gaCookie = getCookie('_ga') || null;
5182
- fetch(`${apiUrl}api/campaign/${code}/impression`, {
5183
- method: 'POST',
5184
- headers: {
5185
- 'Content-Type': 'application/json',
5186
- },
5187
- body: JSON.stringify({
5188
- action,
5189
- url: location.href.toLowerCase(),
5190
- title_article: document.title,
5191
- cookie_id: getCookie('hhg-id'),
5192
- ga_client_id: gaCookie,
5193
- }),
5194
- });
5325
+ !currentLayout.includes('Inline') &&
5326
+ fetch(`${apiUrl}api/campaign/${code}/impression`, {
5327
+ method: 'POST',
5328
+ headers: {
5329
+ 'Content-Type': 'application/json',
5330
+ },
5331
+ body: JSON.stringify({
5332
+ action,
5333
+ url: location.href.toLowerCase(),
5334
+ title_article: document.title,
5335
+ cookie_id: getCookie('hhg-id'),
5336
+ ga_client_id: gaCookie,
5337
+ }),
5338
+ });
5195
5339
  }, []);
5196
5340
  const { extra_fields, image, image_desktop, code, image_background, image_overlay_mobile, image_overlay_desktop, } = campaign || {};
5197
5341
  const { currentLayout } = extra_fields;
@@ -5293,7 +5437,7 @@ const NewLeadPopup = ({ campaign, action, onSubmit, onClose, onUnmount, showThan
5293
5437
  currentLayout == 'Fullscreen' ||
5294
5438
  currentLayout == 'Sidebar' ||
5295
5439
  currentLayout == 'Slider') {
5296
- return (React__default.createElement(LightboxLayout, { popupId: popupIdRef.current, extraFields: extra_fields, onClose: onClose, onOtherSubmit: onOtherSubmit, onUnmount: onUnmount, imageMobile: image, imageDesktop: image_desktop, imageBackground: image_background, currentLayout: currentLayout, title: titleText, onSubmit: (params) => onSubmit(params, categoryLevel, categoryData), key: currentLayout, imageOverlayDesktop: image_overlay_desktop, imageOverlayMobile: image_overlay_mobile, showThankyou: showThankyou, campaignId: campaign.id, campaignCode: campaign.code, campaign_subot_id: campaign.bot_id || [], locale: locale, showEmpty: showEmpty, setShowEmpty: setShowEmpty, userInfo: userInfo }));
5440
+ return (React__default.createElement(LightboxLayout, { popupId: popupIdRef.current, extraFields: extra_fields, onClose: onClose, onOtherSubmit: onOtherSubmit, onUnmount: onUnmount, imageMobile: image, imageDesktop: image_desktop, imageBackground: image_background, currentLayout: currentLayout, title: titleText, onSubmit: (params) => onSubmit(params, categoryLevel, categoryData), key: currentLayout, imageOverlayDesktop: image_overlay_desktop, imageOverlayMobile: image_overlay_mobile, showThankyou: showThankyou, campaignId: campaign.id, campaignCode: campaign.code, campaign_subot_id: campaign.bot_id || [], locale: locale, showEmpty: showEmpty, setShowEmpty: setShowEmpty, userInfo: userInfo, action: action }));
5297
5441
  }
5298
5442
  else if (currentLayout.includes('Skin')) {
5299
5443
  return (React__default.createElement(SkinLayout, { popupId: popupIdRef.current, link: actionBlocks.linkButtonBlock.data.url, linkNewTab: !!actionBlocks.linkButtonBlock.data.newtab, linkText: actionBlocks.linkButtonBlock.data.value, onClose: onClose, onOtherSubmit: onOtherSubmit, imageMobile: image, imageDesktop: image_desktop, currentLayout: currentLayout }));
@@ -5306,7 +5450,7 @@ const formatFormData = (currentForm, formData) => {
5306
5450
  return Object.keys(formData)
5307
5451
  .filter((key) => !!formData[key])
5308
5452
  .map((name) => {
5309
- var _a, _b, _c, _d;
5453
+ var _a, _b, _c, _d, _e, _f;
5310
5454
  const value = String(formData[name]);
5311
5455
  const control = ((_a = currentForm
5312
5456
  .querySelector(`*[name="${name}"][data-control]`)) === null || _a === void 0 ? void 0 : _a.getAttribute('data-control')) ||
@@ -5318,6 +5462,11 @@ const formatFormData = (currentForm, formData) => {
5318
5462
  ((_d = currentForm
5319
5463
  .querySelector(`*[data-extra][data-name="${name}"]`)) === null || _d === void 0 ? void 0 : _d.getAttribute('data-lead-control')) ||
5320
5464
  'text';
5465
+ const isRequired = Boolean(((_e = currentForm
5466
+ .querySelector(`*[name="${name}"][data-is-required]`)) === null || _e === void 0 ? void 0 : _e.getAttribute('data-is-required')) ||
5467
+ ((_f = currentForm
5468
+ .querySelector(`*[data-extra][data-name="${name}"]`)) === null || _f === void 0 ? void 0 : _f.getAttribute('data-is-required')) ||
5469
+ 'text');
5321
5470
  const formatedValue = control === 'tel'
5322
5471
  ? window.intlTelInputUtils
5323
5472
  .formatNumber(String(value), LEAD_LOCALE === null || LEAD_LOCALE === void 0 ? void 0 : LEAD_LOCALE.countryCodeNumber, numberFormatType)
@@ -5330,6 +5479,7 @@ const formatFormData = (currentForm, formData) => {
5330
5479
  value: formatedValue,
5331
5480
  control,
5332
5481
  leadControl,
5482
+ isRequired,
5333
5483
  // is_sent_mailchimp: currentForm.querySelector(
5334
5484
  // `div[data-name="${i.name}-mailchimp"]`,
5335
5485
  // )
@@ -5360,6 +5510,7 @@ const formatTrackingData = (params) => {
5360
5510
  field_name: control.key,
5361
5511
  component_type: curLeadControl,
5362
5512
  value: control.value,
5513
+ is_required: control.isRequired,
5363
5514
  };
5364
5515
  }
5365
5516
  })
@@ -5369,6 +5520,7 @@ const formatTrackingData = (params) => {
5369
5520
  return {
5370
5521
  field_name: item.data.value,
5371
5522
  component_type: item.name,
5523
+ is_required: item.isRequired,
5372
5524
  };
5373
5525
  }
5374
5526
  })