@hhgtech/hhg-components 1.29.361-beta-1 → 1.29.362

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 (525) hide show
  1. package/build/{LastPeriod-1e3a4dd6.js → LastPeriod-eb5cfea6.js} +1 -1
  2. package/build/{MobileBottomNavigationIcon-5916f647.js → MobileBottomNavigationIcon-1c8f1782.js} +3 -3
  3. package/build/{Spinner-e0f2304c.js → Spinner-b9257ddf.js} +1 -1
  4. package/build/{WhatsApp-e9a27204.js → WhatsApp-b20d8887.js} +1 -1
  5. package/build/adapters.js +19 -19
  6. package/build/atoms.js +47 -47
  7. package/build/babyGrowth.js +83 -83
  8. package/build/cache.js +2 -2
  9. package/build/care.js +17 -17
  10. package/build/careBookingSearchBar.js +14 -14
  11. package/build/careBookingSearchBarV2.js +15 -15
  12. package/build/components/atoms/inputDate/InputDate.d.ts +19 -0
  13. package/build/components/atoms/inputDate/InputDate.helpers.d.ts +11 -0
  14. package/build/{esm/lead/LeadGenForm/LeadGenForm.styled.d.ts → components/atoms/inputDate/InputDate.styled.d.ts} +1 -1
  15. package/build/components/atoms/inputDate/index.d.ts +1 -0
  16. package/build/components/atoms/inputMB/index.styled.d.ts +2 -2
  17. package/build/components/navigationV2/components/molecules/navigationBar/index.styled.d.ts +0 -2
  18. package/build/components/navigationV2/hooks/useNavConfig.d.ts +0 -1
  19. package/build/components/navigationV2/types.d.ts +1 -1
  20. package/build/components.js +96 -96
  21. package/build/{constants-cb5c4ca3.js → constants-bf5a6242.js} +1 -1
  22. package/build/constants.js +3 -3
  23. package/build/constantsDomainLocales.js +1 -1
  24. package/build/constantsRiskScreener.js +2 -2
  25. package/build/constantsSite.js +2 -2
  26. package/build/{core-729539d7.js → core-fc1b679c.js} +1 -1
  27. package/build/{dataTransform-e9ed2437.js → dataTransform-99aef06b.js} +1 -1
  28. package/build/ecom.js +4 -4
  29. package/build/{editor-1212f5b8.js → editor-0234fb2f.js} +11 -11
  30. package/build/embeddedHeathToolCards_babyGrowth.js +23 -23
  31. package/build/embeddedHeathToolCards_babyPoop.js +19 -19
  32. package/build/embeddedHeathToolCards_babyVaccine.js +22 -22
  33. package/build/embeddedHeathToolCards_bmi_bmi.js +25 -25
  34. package/build/embeddedHeathToolCards_bmrBmr.js +25 -25
  35. package/build/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  36. package/build/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  37. package/build/embeddedHeathToolCards_pwg_pwg.js +26 -26
  38. package/build/embeddedHeathToolCards_targetHeartRate.js +27 -27
  39. package/build/esm/{LastPeriod-b71490c0.js → LastPeriod-e8d99ec6.js} +1 -1
  40. package/build/esm/{MobileBottomNavigationIcon-8d94f4ba.js → MobileBottomNavigationIcon-5f4ee3f4.js} +3 -3
  41. package/build/esm/{Spinner-99c2fbb3.js → Spinner-6ffe5c0f.js} +1 -1
  42. package/build/esm/{WhatsApp-3c65161b.js → WhatsApp-1c55868a.js} +1 -1
  43. package/build/esm/adapters.js +19 -19
  44. package/build/esm/atoms.js +47 -47
  45. package/build/esm/babyGrowth.js +83 -83
  46. package/build/esm/cache.js +2 -2
  47. package/build/esm/care.js +17 -17
  48. package/build/esm/careBookingSearchBar.js +14 -14
  49. package/build/esm/careBookingSearchBarV2.js +15 -15
  50. package/build/esm/components/atoms/inputDate/InputDate.d.ts +19 -0
  51. package/build/esm/components/atoms/inputDate/InputDate.helpers.d.ts +11 -0
  52. package/build/{lead/LeadGenForm/LeadGenForm.styled.d.ts → esm/components/atoms/inputDate/InputDate.styled.d.ts} +1 -1
  53. package/build/esm/components/atoms/inputDate/index.d.ts +1 -0
  54. package/build/esm/components/atoms/inputMB/index.styled.d.ts +2 -2
  55. package/build/esm/components/navigationV2/components/molecules/navigationBar/index.styled.d.ts +0 -2
  56. package/build/esm/components/navigationV2/hooks/useNavConfig.d.ts +0 -1
  57. package/build/esm/components/navigationV2/types.d.ts +1 -1
  58. package/build/esm/components.js +96 -96
  59. package/build/esm/{constants-6341499d.js → constants-343513d8.js} +1 -1
  60. package/build/esm/constants.js +3 -3
  61. package/build/esm/constantsDomainLocales.js +1 -1
  62. package/build/esm/constantsRiskScreener.js +2 -2
  63. package/build/esm/constantsSite.js +2 -2
  64. package/build/esm/{core-d24c8960.js → core-d9fb3c8c.js} +1 -1
  65. package/build/esm/{dataTransform-6beebce6.js → dataTransform-fa355ead.js} +1 -1
  66. package/build/esm/ecom.js +4 -4
  67. package/build/esm/{editor-7870b558.js → editor-8c46a4c4.js} +11 -11
  68. package/build/esm/embeddedHeathToolCards_babyGrowth.js +23 -23
  69. package/build/esm/embeddedHeathToolCards_babyPoop.js +19 -19
  70. package/build/esm/embeddedHeathToolCards_babyVaccine.js +22 -22
  71. package/build/esm/embeddedHeathToolCards_bmi_bmi.js +25 -25
  72. package/build/esm/embeddedHeathToolCards_bmrBmr.js +25 -25
  73. package/build/esm/embeddedHeathToolCards_dueDate_dueDate.js +22 -22
  74. package/build/esm/embeddedHeathToolCards_ovulation_ovulation.js +22 -22
  75. package/build/esm/embeddedHeathToolCards_pwg_pwg.js +26 -26
  76. package/build/esm/embeddedHeathToolCards_targetHeartRate.js +27 -27
  77. package/build/esm/footer.js +21 -21
  78. package/build/esm/gAssets.js +2 -2
  79. package/build/esm/{healthTools-8680cb70.js → healthTools-4cffe096.js} +1 -1
  80. package/build/esm/healthToolsCardWrapper.js +18 -18
  81. package/build/esm/healthToolsForm.js +33 -33
  82. package/build/esm/hooks/useCSSFocusPopupHelper.d.ts +0 -1
  83. package/build/esm/hooks.js +13 -13
  84. package/build/esm/i18n.js +2 -2
  85. package/build/esm/i18nV2.js +2 -2
  86. package/build/esm/{index-90a2d72f.js → index-004e7f99.js} +2 -2
  87. package/build/esm/{index-49eb323b.js → index-02b8ada7.js} +3 -3
  88. package/build/esm/{index-cef28d7c.js → index-02e3a578.js} +6 -6
  89. package/build/esm/{index-96226c21.js → index-0e0b8184.js} +11 -18
  90. package/build/esm/{index-00bc9d15.js → index-11c1e9b1.js} +1 -1
  91. package/build/esm/{index-47f7f864.js → index-1a18f0d3.js} +1 -1
  92. package/build/esm/{index-3df28aa1.js → index-1bd2d4fd.js} +7 -7
  93. package/build/esm/{index-5b92c467.js → index-1c7f348a.js} +1 -1
  94. package/build/esm/{index-b10ca0ad.js → index-1fb033dd.js} +16 -16
  95. package/build/esm/{index-fbcbb083.js → index-1fd51a1e.js} +3 -3
  96. package/build/esm/{index-e7579fcb.js → index-264f679d.js} +15 -15
  97. package/build/esm/{index-f2dc7079.js → index-2d4afd18.js} +13 -13
  98. package/build/esm/{index-5c846d71.js → index-2d8c745d.js} +1 -1
  99. package/build/esm/{index-1ffb599d.js → index-2e1e583c.js} +25 -25
  100. package/build/esm/{index-062c5976.js → index-33f74b99.js} +2 -2
  101. package/build/esm/{index-a39f198f.js → index-345a0cd5.js} +16 -16
  102. package/build/esm/{index-a6744510.js → index-34e46c3b.js} +2 -2
  103. package/build/esm/{index-7955003f.js → index-3504643c.js} +2 -2
  104. package/build/esm/{index-becd0fee.js → index-3cb8cb4b.js} +1 -1
  105. package/build/esm/{index-e37b41df.js → index-3d551854.js} +21 -21
  106. package/build/esm/{index-ed02b87c.js → index-4157d466.js} +6 -6
  107. package/build/esm/{index-9c3b5959.js → index-41831dd2.js} +42 -69
  108. package/build/esm/{index-fbfb2e92.js → index-419ed52f.js} +2 -2
  109. package/build/esm/{index-0974a308.js → index-423a6b89.js} +6 -6
  110. package/build/esm/{index-5db02d1c.js → index-4364ba68.js} +13 -13
  111. package/build/esm/{index-1246e4a4.js → index-4b4487ff.js} +3 -3
  112. package/build/esm/{index-bf09e2d4.js → index-4df7bd0e.js} +2 -2
  113. package/build/esm/{index-94209fbe.js → index-4ea9c741.js} +3 -3
  114. package/build/esm/{index-b4f08356.js → index-4eb912b7.js} +22 -22
  115. package/build/esm/{index-a04a8089.js → index-5b2d87c3.js} +13 -13
  116. package/build/esm/{index-9f08c7df.js → index-61d13d80.js} +1 -1
  117. package/build/esm/{index-90c0bea0.js → index-65c29124.js} +18 -18
  118. package/build/esm/{index-a7c56e5d.js → index-69598671.js} +2 -2
  119. package/build/esm/{index-d146d365.js → index-6c04281f.js} +2 -2
  120. package/build/esm/{index-17775f87.js → index-6ecbccef.js} +1 -1
  121. package/build/esm/{index-86fffcc8.js → index-6f2df485.js} +17 -17
  122. package/build/esm/{index-e2aff6a8.js → index-71a0ce1b.js} +3 -3
  123. package/build/esm/{index-086be20d.js → index-74bc8897.js} +31 -31
  124. package/build/esm/{index-bba05381.js → index-765bca50.js} +13 -13
  125. package/build/esm/{index-88daf0a5.js → index-7665c530.js} +16 -16
  126. package/build/esm/{index-c7d8ff21.js → index-77f49076.js} +2 -2
  127. package/build/esm/{index-63222337.js → index-7c39e7fe.js} +6 -6
  128. package/build/esm/{index-35515a70.js → index-7dfd3707.js} +16 -16
  129. package/build/esm/{index-ce4c988c.js → index-7e805ed6.js} +5 -5
  130. package/build/esm/{index-8a6a9b40.js → index-7fe3b2e9.js} +6 -6
  131. package/build/esm/{index-d2f8052d.js → index-85965d53.js} +32 -32
  132. package/build/esm/{index-cbe15386.js → index-8b789e0b.js} +17 -17
  133. package/build/esm/{index-a43b7dd3.js → index-8d885690.js} +3 -3
  134. package/build/esm/{index-c0198e4a.js → index-90917b32.js} +17 -17
  135. package/build/esm/{index-ad569b96.js → index-93f05cbd.js} +1 -1
  136. package/build/esm/{index-84d7459b.js → index-98df08d3.js} +1 -1
  137. package/build/esm/{index-70435256.js → index-9b470a3d.js} +16 -16
  138. package/build/esm/{index-8ec915a3.js → index-a0ef2f51.js} +11 -11
  139. package/build/esm/{index-1d1047ac.js → index-a7ef127e.js} +2 -2
  140. package/build/esm/{index-10f5873c.js → index-ab71391f.js} +2 -2
  141. package/build/esm/{index-767d3f92.js → index-b61495a6.js} +18 -18
  142. package/build/esm/{index-a4e847bc.js → index-c167c204.js} +2 -2
  143. package/build/esm/{index-2b8cedcb.js → index-c17eb826.js} +2 -2
  144. package/build/esm/{index-032bf5cb.js → index-c57e9049.js} +24 -24
  145. package/build/esm/{index-c5d9bd94.js → index-cba80946.js} +5 -5
  146. package/build/esm/{index-c044e2d8.js → index-cd0bc16f.js} +4 -4
  147. package/build/esm/{index-416d4906.js → index-cf3b66bf.js} +10 -10
  148. package/build/esm/{index-e011bbd8.js → index-e9206ea6.js} +2 -2
  149. package/build/esm/{index-d1946a8e.js → index-f4d43595.js} +7 -7
  150. package/build/esm/index.js +117 -117
  151. package/build/esm/{labelSorting-9f03dd6c.js → labelSorting-abc38cd3.js} +4 -4
  152. package/build/esm/lead/helpers.d.ts +1 -51
  153. package/build/esm/lead/index.d.ts +1 -2
  154. package/build/esm/lead/services/index.d.ts +0 -14
  155. package/build/esm/lead.js +303 -1226
  156. package/build/esm/{logoIcon-54c7a908.js → logoIcon-63898b50.js} +2 -2
  157. package/build/esm/mantine.js +25 -25
  158. package/build/esm/misc.js +17 -17
  159. package/build/esm/miscGetDynamicHealthTool.js +4 -4
  160. package/build/esm/miscGetSocialList.js +8 -8
  161. package/build/esm/miscScreenSizeContext.js +1 -1
  162. package/build/esm/mobileBottomNavigation.js +5 -5
  163. package/build/esm/mobileBottomNavigationIcon.js +5 -5
  164. package/build/esm/molecules.js +74 -74
  165. package/build/esm/moleculesArticleCard.js +6 -6
  166. package/build/esm/moleculesArticleCardV2.js +16 -16
  167. package/build/esm/navigation.js +45 -45
  168. package/build/esm/navigationLogoutPopup.js +9 -9
  169. package/build/esm/navigationProfileButton.js +23 -23
  170. package/build/esm/onboardingV2.js +29 -29
  171. package/build/esm/organisms.js +49 -49
  172. package/build/esm/{post-4a3ff1a0.js → post-aca2b953.js} +2 -2
  173. package/build/esm/profileNavigation.js +19 -19
  174. package/build/esm/progressBar.js +1 -1
  175. package/build/esm/pwg.js +22 -22
  176. package/build/esm/ssoV2/api/featureFlag.d.ts +1 -2
  177. package/build/esm/ssoV2.js +39 -51
  178. package/build/esm/{store-129e3fcb.js → store-55bc0306.js} +4 -4
  179. package/build/esm/subot.js +35 -35
  180. package/build/esm/surveyOrPremiumBanner.js +32 -32
  181. package/build/esm/surveyQuestionCard.js +10 -10
  182. package/build/esm/{surveyThankyouCard-7fdbaefb.js → surveyThankyouCard-dea7be18.js} +5 -5
  183. package/build/esm/together.js +55 -55
  184. package/build/esm/togetherApiUtils.js +4 -4
  185. package/build/esm/togetherAtoms.js +30 -30
  186. package/build/esm/togetherComponentGlobalContext.js +4 -4
  187. package/build/esm/togetherMolecules.js +50 -50
  188. package/build/esm/togetherMoleculesCardAuthor.js +28 -28
  189. package/build/esm/togetherMoleculesPostImagePreview.js +11 -11
  190. package/build/esm/togetherMoleculesProfileDetail.js +38 -38
  191. package/build/esm/togetherOrganisms.js +49 -49
  192. package/build/esm/togetherRichTextEditor.js +17 -17
  193. package/build/esm/togetherShareBox.js +10 -10
  194. package/build/esm/{treePopoverMenu-7dea0335.js → treePopoverMenu-958e524b.js} +19 -19
  195. package/build/esm/{types-d3becc85.js → types-079b1d47.js} +2 -2
  196. package/build/esm/types.js +2 -2
  197. package/build/esm/{useCategory-a751e6bf.js → useCategory-455d8510.js} +5 -5
  198. package/build/esm/{useHealthToolCache-e5f37e0e.js → useHealthToolCache-1db108ec.js} +1 -1
  199. package/build/esm/{useMantineLocale-55437870.js → useMantineLocale-1d78bb2f.js} +6 -6
  200. package/build/esm/{usePlacesAutocomplete-76552e60.js → usePlacesAutocomplete-ba00126b.js} +1 -1
  201. package/build/esm/{useScreenSize-5dfcff9a.js → useScreenSize-245884d6.js} +2 -2
  202. package/build/esm/useTogetherAuthRequiredAction.js +9 -9
  203. package/build/esm/{utils-6fdbff97.js → utils-5b23c988.js} +2 -2
  204. package/build/esm/{utils-fc818da7.js → utils-69c2b171.js} +4 -4
  205. package/build/esm/{utils-084b7803.js → utils-951a523a.js} +2 -2
  206. package/build/esm/{utils-ceaf71c3.js → utils-fb814a53.js} +3 -3
  207. package/build/esm/vaccination.js +21 -21
  208. package/build/footer.js +21 -21
  209. package/build/gAssets.js +2 -2
  210. package/build/{healthTools-9faecef9.js → healthTools-8d4d21e8.js} +1 -1
  211. package/build/healthToolsCardWrapper.js +18 -18
  212. package/build/healthToolsForm.js +33 -33
  213. package/build/hooks/useCSSFocusPopupHelper.d.ts +0 -1
  214. package/build/hooks.js +13 -13
  215. package/build/i18n.js +1 -1
  216. package/build/i18nV2.js +1 -1
  217. package/build/{index-be199de9.js → index-045c0fb5.js} +2 -2
  218. package/build/{index-7c60ded5.js → index-06d8f4c6.js} +1 -1
  219. package/build/{index-588a71af.js → index-167e1ca6.js} +1 -1
  220. package/build/{index-6f508c09.js → index-17b8cc3b.js} +2 -2
  221. package/build/{index-7b782643.js → index-1ad6dabc.js} +16 -16
  222. package/build/{index-4095bae8.js → index-1e69287b.js} +2 -2
  223. package/build/{index-2959b04f.js → index-1e9e3c74.js} +15 -15
  224. package/build/{index-9cb679a6.js → index-24dfd213.js} +2 -2
  225. package/build/{index-c02e8354.js → index-2a91877d.js} +1 -1
  226. package/build/{index-627013fa.js → index-369fc772.js} +6 -6
  227. package/build/{index-67e41baa.js → index-3b8a44be.js} +2 -2
  228. package/build/{index-77cc52a0.js → index-4896bce9.js} +31 -31
  229. package/build/{index-a3320154.js → index-54decaa7.js} +16 -16
  230. package/build/{index-8733048c.js → index-5cd23f1e.js} +16 -16
  231. package/build/{index-24ce1942.js → index-6025ae75.js} +6 -6
  232. package/build/{index-b1f5562e.js → index-61c62e0f.js} +3 -3
  233. package/build/{index-be46ed0e.js → index-6528e7a9.js} +24 -24
  234. package/build/{index-217ba3eb.js → index-652b939b.js} +21 -21
  235. package/build/{index-40fcfd89.js → index-684bf9d8.js} +3 -3
  236. package/build/{index-865b4577.js → index-6881089f.js} +1 -1
  237. package/build/{index-2913a22f.js → index-6cb86f78.js} +11 -11
  238. package/build/{index-8b27bc8b.js → index-6de5d67e.js} +16 -16
  239. package/build/{index-c5328c6c.js → index-6e720c8f.js} +4 -4
  240. package/build/{index-0962a6b0.js → index-74e3f2df.js} +2 -2
  241. package/build/{index-e2e56d71.js → index-80d7b6b7.js} +13 -13
  242. package/build/{index-41572306.js → index-80d944f3.js} +13 -13
  243. package/build/{index-a1afcde7.js → index-81ce2d77.js} +13 -13
  244. package/build/{index-732d54c4.js → index-82b1fba7.js} +25 -25
  245. package/build/{index-b2f7e794.js → index-8e577b03.js} +6 -6
  246. package/build/{index-8c4675ad.js → index-8f7ccbb3.js} +1 -1
  247. package/build/{index-adc245ae.js → index-90b88af0.js} +3 -3
  248. package/build/{index-6bc0c7a2.js → index-9115b007.js} +2 -2
  249. package/build/{index-f253a38c.js → index-93c19a42.js} +5 -5
  250. package/build/{index-3b018bf8.js → index-95159081.js} +3 -3
  251. package/build/{index-cc2bed5e.js → index-99d339ff.js} +17 -17
  252. package/build/{index-2bd8cfe6.js → index-9e62bfa0.js} +3 -3
  253. package/build/{index-5f898245.js → index-9eccde6f.js} +2 -2
  254. package/build/{index-82070fc5.js → index-9f31bdf3.js} +2 -2
  255. package/build/{index-1af4d972.js → index-a7e501b8.js} +3 -3
  256. package/build/{index-43aac258.js → index-a8c2eeb9.js} +13 -13
  257. package/build/{index-f8050d0a.js → index-ae5aa3a2.js} +18 -18
  258. package/build/{index-802178e4.js → index-b2826d24.js} +6 -6
  259. package/build/{index-bee470e8.js → index-b9e15de3.js} +2 -2
  260. package/build/{index-7857ab1f.js → index-bc1e7b8f.js} +42 -69
  261. package/build/{index-f71d9ef2.js → index-c0b7233b.js} +22 -22
  262. package/build/{index-73f1e2a5.js → index-c6ed23e0.js} +2 -2
  263. package/build/{index-d66e037f.js → index-cb5353f3.js} +32 -32
  264. package/build/{index-710cf66d.js → index-cd8cdac0.js} +2 -2
  265. package/build/{index-6b66b710.js → index-cde3684e.js} +5 -5
  266. package/build/{index-b4c4e2f6.js → index-cf24b488.js} +17 -17
  267. package/build/{index-a3751eb3.js → index-cf5ab11f.js} +7 -7
  268. package/build/{index-2b809d10.js → index-d4f98d06.js} +16 -16
  269. package/build/{index-d69b410f.js → index-dad75e0a.js} +2 -2
  270. package/build/{index-4cb6d92f.js → index-e502976f.js} +17 -17
  271. package/build/{index-6e62f595.js → index-e9c7436a.js} +1 -1
  272. package/build/{index-3160778e.js → index-e9f022f9.js} +11 -18
  273. package/build/{index-678e9f82.js → index-e9fb386a.js} +2 -2
  274. package/build/{index-b789cdea.js → index-eafbbe5d.js} +6 -6
  275. package/build/{index-ef09c144.js → index-eb61030b.js} +10 -10
  276. package/build/{index-3954cdd0.js → index-ef154db0.js} +1 -1
  277. package/build/{index-450a27f3.js → index-f0827e71.js} +7 -7
  278. package/build/{index-5ea60ab5.js → index-f3a871c5.js} +1 -1
  279. package/build/{index-36820903.js → index-f68d8f40.js} +1 -1
  280. package/build/{index-fe813a71.js → index-f987d8ac.js} +18 -18
  281. package/build/index.js +117 -117
  282. package/build/{labelSorting-7550b906.js → labelSorting-cdab818b.js} +4 -4
  283. package/build/lead/helpers.d.ts +1 -51
  284. package/build/lead/index.d.ts +1 -2
  285. package/build/lead/services/index.d.ts +0 -14
  286. package/build/lead.js +303 -1227
  287. package/build/{logoIcon-2198a6cf.js → logoIcon-0e2a19d8.js} +2 -2
  288. package/build/mantine.js +22 -22
  289. package/build/misc.js +17 -17
  290. package/build/miscGetDynamicHealthTool.js +4 -4
  291. package/build/miscGetSocialList.js +8 -8
  292. package/build/miscScreenSizeContext.js +1 -1
  293. package/build/mobileBottomNavigation.js +5 -5
  294. package/build/mobileBottomNavigationIcon.js +5 -5
  295. package/build/molecules.js +74 -74
  296. package/build/moleculesArticleCard.js +6 -6
  297. package/build/moleculesArticleCardV2.js +16 -16
  298. package/build/navigation.js +45 -45
  299. package/build/navigationLogoutPopup.js +9 -9
  300. package/build/navigationProfileButton.js +23 -23
  301. package/build/onboardingV2.js +28 -28
  302. package/build/organisms.js +49 -49
  303. package/build/{post-2c5aae3d.js → post-cd894bd5.js} +2 -2
  304. package/build/profileNavigation.js +19 -19
  305. package/build/progressBar.js +1 -1
  306. package/build/pwg.js +22 -22
  307. package/build/ssoV2/api/featureFlag.d.ts +1 -2
  308. package/build/ssoV2.js +37 -49
  309. package/build/{store-dd807202.js → store-f713fb4f.js} +4 -4
  310. package/build/subot.js +34 -34
  311. package/build/surveyOrPremiumBanner.js +32 -32
  312. package/build/surveyQuestionCard.js +10 -10
  313. package/build/{surveyThankyouCard-71fd8153.js → surveyThankyouCard-1d7606f1.js} +5 -5
  314. package/build/together.js +55 -55
  315. package/build/togetherApiUtils.js +4 -4
  316. package/build/togetherAtoms.js +30 -30
  317. package/build/togetherComponentGlobalContext.js +4 -4
  318. package/build/togetherMolecules.js +50 -50
  319. package/build/togetherMoleculesCardAuthor.js +28 -28
  320. package/build/togetherMoleculesPostImagePreview.js +11 -11
  321. package/build/togetherMoleculesProfileDetail.js +38 -38
  322. package/build/togetherOrganisms.js +49 -49
  323. package/build/togetherRichTextEditor.js +17 -17
  324. package/build/togetherShareBox.js +10 -10
  325. package/build/{treePopoverMenu-c32f6666.js → treePopoverMenu-a243163c.js} +19 -19
  326. package/build/{types-27d92fe1.js → types-5a9f59b9.js} +2 -2
  327. package/build/types.js +2 -2
  328. package/build/{useCategory-db7ef553.js → useCategory-52540c0e.js} +5 -5
  329. package/build/{useHealthToolCache-44b62d5b.js → useHealthToolCache-0c768f4c.js} +1 -1
  330. package/build/{useMantineLocale-8146a689.js → useMantineLocale-b8a79d56.js} +6 -6
  331. package/build/{usePlacesAutocomplete-d46f3a91.js → usePlacesAutocomplete-23fb3031.js} +1 -1
  332. package/build/{useScreenSize-7b8652ca.js → useScreenSize-7806176e.js} +2 -2
  333. package/build/useTogetherAuthRequiredAction.js +9 -9
  334. package/build/{utils-5570c388.js → utils-4ee2cb9c.js} +4 -4
  335. package/build/{utils-c203ac13.js → utils-54be35b1.js} +3 -3
  336. package/build/{utils-2b62f9f5.js → utils-a2cd3f70.js} +2 -2
  337. package/build/{utils-21fc3d78.js → utils-e6efa11e.js} +2 -2
  338. package/build/vaccination.js +21 -21
  339. package/package.json +3 -3
  340. package/build/components/mantine/phoneInput/PhoneInput.d.ts +0 -15
  341. package/build/components/mantine/phoneInput/index.d.ts +0 -1
  342. package/build/esm/components/mantine/phoneInput/PhoneInput.d.ts +0 -15
  343. package/build/esm/components/mantine/phoneInput/index.d.ts +0 -1
  344. package/build/esm/lead/LeadGenForm/LeadGenForm.d.ts +0 -41
  345. package/build/esm/lead/LeadGenForm/LeadGenThankYou.d.ts +0 -20
  346. package/build/esm/lead/LeadGenForm/index.d.ts +0 -1
  347. package/build/esm/lead/LeadGenForm/textField/index.d.ts +0 -13
  348. package/build/esm/lead/LeadGenForm/textField/index.styled.d.ts +0 -11
  349. package/build/esm/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxContainer.d.ts +0 -25
  350. package/build/esm/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxContext.d.ts +0 -25
  351. package/build/esm/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxWrapper.d.ts +0 -30
  352. package/build/esm/lead/LeadGenSubscriptionBox/index.d.ts +0 -1
  353. package/build/lead/LeadGenForm/LeadGenForm.d.ts +0 -41
  354. package/build/lead/LeadGenForm/LeadGenThankYou.d.ts +0 -20
  355. package/build/lead/LeadGenForm/index.d.ts +0 -1
  356. package/build/lead/LeadGenForm/textField/index.d.ts +0 -13
  357. package/build/lead/LeadGenForm/textField/index.styled.d.ts +0 -11
  358. package/build/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxContainer.d.ts +0 -25
  359. package/build/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxContext.d.ts +0 -25
  360. package/build/lead/LeadGenSubscriptionBox/LeadGenSubscriptionBoxWrapper.d.ts +0 -30
  361. package/build/lead/LeadGenSubscriptionBox/index.d.ts +0 -1
  362. /package/build/{BMI_BOYS.percentile.monthly-f83d0242.js → BMI_BOYS.percentile.monthly-7bd9cca9.js} +0 -0
  363. /package/build/{BMI_BOYS.percentile.weekly-db859897.js → BMI_BOYS.percentile.weekly-821e86aa.js} +0 -0
  364. /package/build/{BMI_BOYS.percentile.yearly-0a039425.js → BMI_BOYS.percentile.yearly-1ce7e28b.js} +0 -0
  365. /package/build/{BMI_BOYS.zscore.monthly-b82f9313.js → BMI_BOYS.zscore.monthly-d5358fcc.js} +0 -0
  366. /package/build/{BMI_BOYS.zscore.weekly-cf458186.js → BMI_BOYS.zscore.weekly-ff90aead.js} +0 -0
  367. /package/build/{BMI_BOYS.zscore.yearly-23633ed6.js → BMI_BOYS.zscore.yearly-381df8e7.js} +0 -0
  368. /package/build/{BMI_GIRLS.percentile.monthly-a195d3e8.js → BMI_GIRLS.percentile.monthly-6b514dd8.js} +0 -0
  369. /package/build/{BMI_GIRLS.percentile.weekly-26a0e155.js → BMI_GIRLS.percentile.weekly-ba4fca15.js} +0 -0
  370. /package/build/{BMI_GIRLS.percentile.yearly-72a13496.js → BMI_GIRLS.percentile.yearly-a1eafb9e.js} +0 -0
  371. /package/build/{BMI_GIRLS.zscore.monthly-71ea5c36.js → BMI_GIRLS.zscore.monthly-2d5679c7.js} +0 -0
  372. /package/build/{BMI_GIRLS.zscore.weekly-c3b5a41d.js → BMI_GIRLS.zscore.weekly-820e90ba.js} +0 -0
  373. /package/build/{BMI_GIRLS.zscore.yearly-cfc420b0.js → BMI_GIRLS.zscore.yearly-93be0423.js} +0 -0
  374. /package/build/{ChevronDown-ccfd21a6.js → ChevronDown-8db65738.js} +0 -0
  375. /package/build/{Close-4bdc25d9.js → Close-6f1a29c2.js} +0 -0
  376. /package/build/{Google-32f6e9ae.js → Google-b3858fb2.js} +0 -0
  377. /package/build/{HEAD CIRCUM_BOYS.percentile.monthly-c7425207.js → HEAD CIRCUM_BOYS.percentile.monthly-c6537dae.js} +0 -0
  378. /package/build/{HEAD CIRCUM_BOYS.percentile.weekly-11bbd192.js → HEAD CIRCUM_BOYS.percentile.weekly-a9409c76.js} +0 -0
  379. /package/build/{HEAD CIRCUM_BOYS.percentile.yearly-85dfe539.js → HEAD CIRCUM_BOYS.percentile.yearly-fcb76bd5.js} +0 -0
  380. /package/build/{HEAD CIRCUM_BOYS.zscore.monthly-7d1301a5.js → HEAD CIRCUM_BOYS.zscore.monthly-088cfc6b.js} +0 -0
  381. /package/build/{HEAD CIRCUM_BOYS.zscore.weekly-497aa967.js → HEAD CIRCUM_BOYS.zscore.weekly-e85d79b9.js} +0 -0
  382. /package/build/{HEAD CIRCUM_BOYS.zscore.yearly-9322e349.js → HEAD CIRCUM_BOYS.zscore.yearly-26396c15.js} +0 -0
  383. /package/build/{HEAD CIRCUM_GIRLS.percentile.monthly-13e1c2c2.js → HEAD CIRCUM_GIRLS.percentile.monthly-466e611e.js} +0 -0
  384. /package/build/{HEAD CIRCUM_GIRLS.percentile.weekly-0940db8b.js → HEAD CIRCUM_GIRLS.percentile.weekly-3884eef6.js} +0 -0
  385. /package/build/{HEAD CIRCUM_GIRLS.percentile.yearly-b91da0f0.js → HEAD CIRCUM_GIRLS.percentile.yearly-bdb12ec2.js} +0 -0
  386. /package/build/{HEAD CIRCUM_GIRLS.zscore.monthly-56cbba76.js → HEAD CIRCUM_GIRLS.zscore.monthly-1414b5bb.js} +0 -0
  387. /package/build/{HEAD CIRCUM_GIRLS.zscore.weekly-ba6755bf.js → HEAD CIRCUM_GIRLS.zscore.weekly-ecca5443.js} +0 -0
  388. /package/build/{HEAD CIRCUM_GIRLS.zscore.yearly-35e6a30c.js → HEAD CIRCUM_GIRLS.zscore.yearly-b83f13da.js} +0 -0
  389. /package/build/{HEIGHT_BOYS.percentile.monthly-34d3fdc4.js → HEIGHT_BOYS.percentile.monthly-757826fd.js} +0 -0
  390. /package/build/{HEIGHT_BOYS.percentile.weekly-a3eaff24.js → HEIGHT_BOYS.percentile.weekly-7d469cc8.js} +0 -0
  391. /package/build/{HEIGHT_BOYS.percentile.yearly-d2444c3f.js → HEIGHT_BOYS.percentile.yearly-436a8da0.js} +0 -0
  392. /package/build/{HEIGHT_BOYS.zscore.monthly-f8be0c41.js → HEIGHT_BOYS.zscore.monthly-c606ab30.js} +0 -0
  393. /package/build/{HEIGHT_BOYS.zscore.weekly-8dbb3814.js → HEIGHT_BOYS.zscore.weekly-b567ca19.js} +0 -0
  394. /package/build/{HEIGHT_BOYS.zscore.yearly-1b27b566.js → HEIGHT_BOYS.zscore.yearly-2b101282.js} +0 -0
  395. /package/build/{HEIGHT_GIRLS.percentile.monthly-e43bf4a8.js → HEIGHT_GIRLS.percentile.monthly-3834b792.js} +0 -0
  396. /package/build/{HEIGHT_GIRLS.percentile.weekly-63128c3e.js → HEIGHT_GIRLS.percentile.weekly-b0cb287b.js} +0 -0
  397. /package/build/{HEIGHT_GIRLS.percentile.yearly-8568f0a9.js → HEIGHT_GIRLS.percentile.yearly-78a93718.js} +0 -0
  398. /package/build/{HEIGHT_GIRLS.zscore.monthly-2c215347.js → HEIGHT_GIRLS.zscore.monthly-5ba760ed.js} +0 -0
  399. /package/build/{HEIGHT_GIRLS.zscore.weekly-15ce8d55.js → HEIGHT_GIRLS.zscore.weekly-a1bcb8c5.js} +0 -0
  400. /package/build/{HEIGHT_GIRLS.zscore.yearly-f02101c0.js → HEIGHT_GIRLS.zscore.yearly-500a14ff.js} +0 -0
  401. /package/build/{Locale-bd59384d.js → Locale-8424b413.js} +0 -0
  402. /package/build/{Visible-92287ae1.js → Visible-047d1970.js} +0 -0
  403. /package/build/{WEIGHT_BOYS.percentile.monthly-3c53ce2b.js → WEIGHT_BOYS.percentile.monthly-df68990f.js} +0 -0
  404. /package/build/{WEIGHT_BOYS.percentile.weekly-0b4dfdc1.js → WEIGHT_BOYS.percentile.weekly-b022cb25.js} +0 -0
  405. /package/build/{WEIGHT_BOYS.percentile.yearly-7e0f4e61.js → WEIGHT_BOYS.percentile.yearly-5d8ca4e9.js} +0 -0
  406. /package/build/{WEIGHT_BOYS.zscore.monthly-a847e3b8.js → WEIGHT_BOYS.zscore.monthly-9a645a93.js} +0 -0
  407. /package/build/{WEIGHT_BOYS.zscore.weekly-73e11170.js → WEIGHT_BOYS.zscore.weekly-509ec466.js} +0 -0
  408. /package/build/{WEIGHT_BOYS.zscore.yearly-9ac3acb2.js → WEIGHT_BOYS.zscore.yearly-a0c4faae.js} +0 -0
  409. /package/build/{WEIGHT_GIRLS.percentile.monthly-ecb9c9d9.js → WEIGHT_GIRLS.percentile.monthly-33cb1313.js} +0 -0
  410. /package/build/{WEIGHT_GIRLS.percentile.weekly-8b2d126a.js → WEIGHT_GIRLS.percentile.weekly-ac0690b5.js} +0 -0
  411. /package/build/{WEIGHT_GIRLS.percentile.yearly-80d6691d.js → WEIGHT_GIRLS.percentile.yearly-0b68de4d.js} +0 -0
  412. /package/build/{WEIGHT_GIRLS.zscore.monthly-2b5cc87c.js → WEIGHT_GIRLS.zscore.monthly-51cd36f2.js} +0 -0
  413. /package/build/{WEIGHT_GIRLS.zscore.weekly-eb17366f.js → WEIGHT_GIRLS.zscore.weekly-7e18c745.js} +0 -0
  414. /package/build/{WEIGHT_GIRLS.zscore.yearly-3813bf19.js → WEIGHT_GIRLS.zscore.yearly-e14b0b34.js} +0 -0
  415. /package/build/{animation-c368926c.js → animation-fcea7611.js} +0 -0
  416. /package/build/{constants-29fd5d65.js → constants-346f1e34.js} +0 -0
  417. /package/build/{constants-bd2e9a70.js → constants-a79017ab.js} +0 -0
  418. /package/build/{constants-78c956e4.js → constants-b5640ab3.js} +0 -0
  419. /package/build/{dataTransform-98f1dd92.js → dataTransform-64ef46ac.js} +0 -0
  420. /package/build/{doctor-09a95c49.js → doctor-9bed311e.js} +0 -0
  421. /package/build/esm/{BMI_BOYS.percentile.monthly-e380fd79.js → BMI_BOYS.percentile.monthly-ffa66b36.js} +0 -0
  422. /package/build/esm/{BMI_BOYS.percentile.weekly-55f8a9cf.js → BMI_BOYS.percentile.weekly-ac9a5856.js} +0 -0
  423. /package/build/esm/{BMI_BOYS.percentile.yearly-8ef771b4.js → BMI_BOYS.percentile.yearly-902f0b93.js} +0 -0
  424. /package/build/esm/{BMI_BOYS.zscore.monthly-b4cd99ce.js → BMI_BOYS.zscore.monthly-d5849e19.js} +0 -0
  425. /package/build/esm/{BMI_BOYS.zscore.weekly-2f51eed4.js → BMI_BOYS.zscore.weekly-6178c788.js} +0 -0
  426. /package/build/esm/{BMI_BOYS.zscore.yearly-4388a844.js → BMI_BOYS.zscore.yearly-2ff5db4d.js} +0 -0
  427. /package/build/esm/{BMI_GIRLS.percentile.monthly-79579370.js → BMI_GIRLS.percentile.monthly-7f857304.js} +0 -0
  428. /package/build/esm/{BMI_GIRLS.percentile.weekly-4325a562.js → BMI_GIRLS.percentile.weekly-9b81d7a8.js} +0 -0
  429. /package/build/esm/{BMI_GIRLS.percentile.yearly-80cb63c3.js → BMI_GIRLS.percentile.yearly-854701a4.js} +0 -0
  430. /package/build/esm/{BMI_GIRLS.zscore.monthly-75a23515.js → BMI_GIRLS.zscore.monthly-9ffe688d.js} +0 -0
  431. /package/build/esm/{BMI_GIRLS.zscore.weekly-404ae543.js → BMI_GIRLS.zscore.weekly-58e51b14.js} +0 -0
  432. /package/build/esm/{BMI_GIRLS.zscore.yearly-21af74ac.js → BMI_GIRLS.zscore.yearly-98018354.js} +0 -0
  433. /package/build/esm/{ChevronDown-8dc4a472.js → ChevronDown-1e80d818.js} +0 -0
  434. /package/build/esm/{Close-92688f4f.js → Close-218e750a.js} +0 -0
  435. /package/build/esm/{Google-cffaa0bb.js → Google-370a6f1a.js} +0 -0
  436. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.monthly-628a2084.js → HEAD CIRCUM_BOYS.percentile.monthly-9120321c.js} +0 -0
  437. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.weekly-3abb626a.js → HEAD CIRCUM_BOYS.percentile.weekly-d4a8532e.js} +0 -0
  438. /package/build/esm/{HEAD CIRCUM_BOYS.percentile.yearly-ef24237d.js → HEAD CIRCUM_BOYS.percentile.yearly-a9210cf2.js} +0 -0
  439. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.monthly-7a2680b3.js → HEAD CIRCUM_BOYS.zscore.monthly-4c111e5c.js} +0 -0
  440. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.weekly-906eed27.js → HEAD CIRCUM_BOYS.zscore.weekly-651972ff.js} +0 -0
  441. /package/build/esm/{HEAD CIRCUM_BOYS.zscore.yearly-24cce7f9.js → HEAD CIRCUM_BOYS.zscore.yearly-fec03c75.js} +0 -0
  442. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.monthly-392f3c6d.js → HEAD CIRCUM_GIRLS.percentile.monthly-3dc39954.js} +0 -0
  443. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.weekly-85724b5f.js → HEAD CIRCUM_GIRLS.percentile.weekly-49da4f7f.js} +0 -0
  444. /package/build/esm/{HEAD CIRCUM_GIRLS.percentile.yearly-f5b3ea5f.js → HEAD CIRCUM_GIRLS.percentile.yearly-91d18834.js} +0 -0
  445. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.monthly-51af5ab5.js → HEAD CIRCUM_GIRLS.zscore.monthly-db82e848.js} +0 -0
  446. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.weekly-05c3f036.js → HEAD CIRCUM_GIRLS.zscore.weekly-0fb52b88.js} +0 -0
  447. /package/build/esm/{HEAD CIRCUM_GIRLS.zscore.yearly-72a30df5.js → HEAD CIRCUM_GIRLS.zscore.yearly-a2db290d.js} +0 -0
  448. /package/build/esm/{HEIGHT_BOYS.percentile.monthly-6e5a2f2d.js → HEIGHT_BOYS.percentile.monthly-6e710248.js} +0 -0
  449. /package/build/esm/{HEIGHT_BOYS.percentile.weekly-efd39949.js → HEIGHT_BOYS.percentile.weekly-3fb3fe32.js} +0 -0
  450. /package/build/esm/{HEIGHT_BOYS.percentile.yearly-0c99b795.js → HEIGHT_BOYS.percentile.yearly-9a5f599a.js} +0 -0
  451. /package/build/esm/{HEIGHT_BOYS.zscore.monthly-182ec26e.js → HEIGHT_BOYS.zscore.monthly-b46ef65d.js} +0 -0
  452. /package/build/esm/{HEIGHT_BOYS.zscore.weekly-ca821dc5.js → HEIGHT_BOYS.zscore.weekly-952421e8.js} +0 -0
  453. /package/build/esm/{HEIGHT_BOYS.zscore.yearly-d4b55d1e.js → HEIGHT_BOYS.zscore.yearly-a01537be.js} +0 -0
  454. /package/build/esm/{HEIGHT_GIRLS.percentile.monthly-d732f78f.js → HEIGHT_GIRLS.percentile.monthly-f8d50e2a.js} +0 -0
  455. /package/build/esm/{HEIGHT_GIRLS.percentile.weekly-1f8ac2b4.js → HEIGHT_GIRLS.percentile.weekly-b9120261.js} +0 -0
  456. /package/build/esm/{HEIGHT_GIRLS.percentile.yearly-aab892cd.js → HEIGHT_GIRLS.percentile.yearly-87951788.js} +0 -0
  457. /package/build/esm/{HEIGHT_GIRLS.zscore.monthly-966d7757.js → HEIGHT_GIRLS.zscore.monthly-b92ea262.js} +0 -0
  458. /package/build/esm/{HEIGHT_GIRLS.zscore.weekly-9d6152fe.js → HEIGHT_GIRLS.zscore.weekly-30900806.js} +0 -0
  459. /package/build/esm/{HEIGHT_GIRLS.zscore.yearly-beb3f557.js → HEIGHT_GIRLS.zscore.yearly-a1b819bb.js} +0 -0
  460. /package/build/esm/{Locale-d2c107b5.js → Locale-23142efe.js} +0 -0
  461. /package/build/esm/{Visible-04146e00.js → Visible-4de68fea.js} +0 -0
  462. /package/build/esm/{WEIGHT_BOYS.percentile.monthly-a0ad8d73.js → WEIGHT_BOYS.percentile.monthly-bedc7af5.js} +0 -0
  463. /package/build/esm/{WEIGHT_BOYS.percentile.weekly-1ff70d05.js → WEIGHT_BOYS.percentile.weekly-79bed6e4.js} +0 -0
  464. /package/build/esm/{WEIGHT_BOYS.percentile.yearly-b5c7f873.js → WEIGHT_BOYS.percentile.yearly-df4f20d6.js} +0 -0
  465. /package/build/esm/{WEIGHT_BOYS.zscore.monthly-83b9c79f.js → WEIGHT_BOYS.zscore.monthly-9659fdeb.js} +0 -0
  466. /package/build/esm/{WEIGHT_BOYS.zscore.weekly-aed9472c.js → WEIGHT_BOYS.zscore.weekly-ea4c0332.js} +0 -0
  467. /package/build/esm/{WEIGHT_BOYS.zscore.yearly-5c0bafcf.js → WEIGHT_BOYS.zscore.yearly-02ea0da7.js} +0 -0
  468. /package/build/esm/{WEIGHT_GIRLS.percentile.monthly-3c54cdc8.js → WEIGHT_GIRLS.percentile.monthly-d39d355c.js} +0 -0
  469. /package/build/esm/{WEIGHT_GIRLS.percentile.weekly-a726acfa.js → WEIGHT_GIRLS.percentile.weekly-a0c92336.js} +0 -0
  470. /package/build/esm/{WEIGHT_GIRLS.percentile.yearly-81e7c09b.js → WEIGHT_GIRLS.percentile.yearly-ec031e52.js} +0 -0
  471. /package/build/esm/{WEIGHT_GIRLS.zscore.monthly-fd6bf4be.js → WEIGHT_GIRLS.zscore.monthly-fc78e900.js} +0 -0
  472. /package/build/esm/{WEIGHT_GIRLS.zscore.weekly-8a4e2b0b.js → WEIGHT_GIRLS.zscore.weekly-bf56ff58.js} +0 -0
  473. /package/build/esm/{WEIGHT_GIRLS.zscore.yearly-57ad5159.js → WEIGHT_GIRLS.zscore.yearly-1c519e0d.js} +0 -0
  474. /package/build/esm/{animation-2c87bd05.js → animation-4e80d44f.js} +0 -0
  475. /package/build/esm/{constants-25a0420c.js → constants-7e8a9103.js} +0 -0
  476. /package/build/esm/{constants-7b1877ec.js → constants-9df11f36.js} +0 -0
  477. /package/build/esm/{constants-deeb4d52.js → constants-fc431ad1.js} +0 -0
  478. /package/build/esm/{dataTransform-de91215a.js → dataTransform-d489f6a8.js} +0 -0
  479. /package/build/esm/{doctor-e90b52ca.js → doctor-3d4909a0.js} +0 -0
  480. /package/build/esm/{index-c2209669.js → index-0167ffe4.js} +0 -0
  481. /package/build/esm/{index-a0a30c17.js → index-0a460405.js} +0 -0
  482. /package/build/esm/{index-e74f696a.js → index-1ae63c79.js} +0 -0
  483. /package/build/esm/{index-d9c00d74.js → index-4f082205.js} +0 -0
  484. /package/build/esm/{index-ed8a21dd.js → index-4fadd89c.js} +0 -0
  485. /package/build/esm/{index-50a50724.js → index-9f9fa32d.js} +0 -0
  486. /package/build/esm/{index-a8ca5aeb.js → index-d50723f9.js} +0 -0
  487. /package/build/esm/{index-6f1aba31.js → index-fa4aed4f.js} +0 -0
  488. /package/build/esm/{index-7843fb5f.js → index-fbf3c6e1.js} +0 -0
  489. /package/build/esm/{index.styles-cdf78679.js → index.styles-756b61f3.js} +0 -0
  490. /package/build/esm/{localizeNumberFormat-8c01e2ef.js → localizeNumberFormat-2d28ab00.js} +0 -0
  491. /package/build/esm/{normalizeLink-f1c2f1a6.js → normalizeLink-6b1a2f2a.js} +0 -0
  492. /package/build/esm/{number-643052be.js → number-49291c9b.js} +0 -0
  493. /package/build/esm/{other-c0cc5584.js → other-9f3c0383.js} +0 -0
  494. /package/build/esm/{paths-4737ee59.js → paths-eefeda8b.js} +0 -0
  495. /package/build/esm/{translationsContext-045786e4.js → translationsContext-feb0f31b.js} +0 -0
  496. /package/build/esm/{tslib.es6-913c164a.js → tslib.es6-2571f98c.js} +0 -0
  497. /package/build/esm/{types-08548ac0.js → types-043c25d4.js} +0 -0
  498. /package/build/esm/{useIsInit-7fe00a6e.js → useIsInit-86319274.js} +0 -0
  499. /package/build/esm/{useOutsideClick-2c1abf56.js → useOutsideClick-9225f4e5.js} +0 -0
  500. /package/build/esm/{useScrollbarSize-4a361956.js → useScrollbarSize-f614e3bf.js} +0 -0
  501. /package/build/esm/{useUniqueId-dc775b08.js → useUniqueId-31d70d4b.js} +0 -0
  502. /package/build/esm/{utils-cea86c7b.js → utils-213d1bf3.js} +0 -0
  503. /package/build/{index-6bfb59f4.js → index-17063ec3.js} +0 -0
  504. /package/build/{index-bfa5c241.js → index-20253671.js} +0 -0
  505. /package/build/{index-cc012b11.js → index-2f650ddf.js} +0 -0
  506. /package/build/{index-175813bc.js → index-52b55bf6.js} +0 -0
  507. /package/build/{index-4b72e83e.js → index-76bc8ed0.js} +0 -0
  508. /package/build/{index-59472ea2.js → index-af3a7e2b.js} +0 -0
  509. /package/build/{index-5a138fcc.js → index-d95a2116.js} +0 -0
  510. /package/build/{index-fdf38e42.js → index-f8312234.js} +0 -0
  511. /package/build/{index-0e1942ed.js → index-feab9a46.js} +0 -0
  512. /package/build/{index.styles-89ab190d.js → index.styles-ff03980e.js} +0 -0
  513. /package/build/{localizeNumberFormat-07e9360c.js → localizeNumberFormat-b36cb8e4.js} +0 -0
  514. /package/build/{normalizeLink-28d21e3a.js → normalizeLink-3c8a02ba.js} +0 -0
  515. /package/build/{number-af276dca.js → number-f0767903.js} +0 -0
  516. /package/build/{other-763dcd40.js → other-6c620bcf.js} +0 -0
  517. /package/build/{paths-c76a3551.js → paths-86f60a67.js} +0 -0
  518. /package/build/{translationsContext-98a72507.js → translationsContext-776c1d5f.js} +0 -0
  519. /package/build/{tslib.es6-db3140a3.js → tslib.es6-b6754243.js} +0 -0
  520. /package/build/{types-95744672.js → types-7694bb3e.js} +0 -0
  521. /package/build/{useIsInit-81cd34a6.js → useIsInit-4ff2343b.js} +0 -0
  522. /package/build/{useOutsideClick-e738361b.js → useOutsideClick-572163cd.js} +0 -0
  523. /package/build/{useScrollbarSize-616206df.js → useScrollbarSize-135fa94c.js} +0 -0
  524. /package/build/{useUniqueId-cc1feaa4.js → useUniqueId-490497d9.js} +0 -0
  525. /package/build/{utils-f3cc3b6c.js → utils-22ce9f9e.js} +0 -0
package/build/lead.js CHANGED
@@ -2,47 +2,47 @@
2
2
 
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
- var tslib_es6 = require('./tslib.es6-db3140a3.js');
5
+ var tslib_es6 = require('./tslib.es6-b6754243.js');
6
6
  var React = require('react');
7
7
  var core = require('@mantine/core');
8
8
  var dayjs = require('dayjs');
9
9
  var debounce = require('lodash/debounce');
10
10
  var form = require('@mantine/form');
11
- var index = require('./index-7c60ded5.js');
12
- var translationsContext = require('./translationsContext-98a72507.js');
11
+ var index = require('./index-06d8f4c6.js');
12
+ var translationsContext = require('./translationsContext-776c1d5f.js');
13
13
  var miscCookieHelper = require('./miscCookieHelper.js');
14
- var utils$1 = require('./utils-f3cc3b6c.js');
15
- var index$1 = require('./index-5f898245.js');
16
- var index$2 = require('./index-2913a22f.js');
17
- var index$4 = require('./index-b2f7e794.js');
18
- var utils = require('./utils-21fc3d78.js');
19
- var dates = require('@mantine/dates');
20
- var index$7 = require('./index-678e9f82.js');
21
- require('./index-588a71af.js');
22
- require('./index-0e1942ed.js');
23
- require('./useMantineLocale-8146a689.js');
24
- var index$5 = require('./index-5ea60ab5.js');
25
- require('./index.styles-89ab190d.js');
14
+ var utils$1 = require('./utils-22ce9f9e.js');
15
+ var index$1 = require('./index-9eccde6f.js');
16
+ var index$2 = require('./index-6cb86f78.js');
17
+ var index$4 = require('./index-8e577b03.js');
18
+ var utils = require('./utils-e6efa11e.js');
19
+ require('@mantine/dates');
20
+ var index$8 = require('./index-e9fb386a.js');
21
+ require('./index-167e1ca6.js');
22
+ require('./index-feab9a46.js');
23
+ require('./useMantineLocale-b8a79d56.js');
24
+ var index$5 = require('./index-f3a871c5.js');
25
+ require('./index.styles-ff03980e.js');
26
26
  var hooks = require('@mantine/hooks');
27
- require('./other-763dcd40.js');
28
- require('./index-3b018bf8.js');
29
- var usePlacesAutocomplete = require('./usePlacesAutocomplete-d46f3a91.js');
30
- var index$3 = require('./index-9cb679a6.js');
31
- var index$6 = require('./index-6bc0c7a2.js');
32
- var styled = require('@emotion/styled');
27
+ require('./other-6c620bcf.js');
28
+ require('./index-95159081.js');
29
+ var usePlacesAutocomplete = require('./usePlacesAutocomplete-23fb3031.js');
30
+ var index$3 = require('./index-24dfd213.js');
31
+ var index$6 = require('./index-9115b007.js');
33
32
  var uuid = require('uuid');
33
+ var index$7 = require('./index-d95a2116.js');
34
+ var index$9 = require('./index-045c0fb5.js');
35
+ var useScreenSize = require('./useScreenSize-7806176e.js');
36
+ var ReactDOM = require('react-dom');
34
37
  var react = require('@emotion/react');
38
+ var styled = require('@emotion/styled');
35
39
  var miscTheme = require('./miscTheme.js');
36
- var index$8 = require('./index-5a138fcc.js');
37
- var index$9 = require('./index-be199de9.js');
38
- var useScreenSize = require('./useScreenSize-7b8652ca.js');
39
- var ReactDOM = require('react-dom');
40
- var Close = require('./Close-4bdc25d9.js');
40
+ var Close = require('./Close-6f1a29c2.js');
41
41
  require('@hhgtech/icons/other');
42
42
  require('@mantine/carousel');
43
- require('./Locale-bd59384d.js');
43
+ require('./Locale-8424b413.js');
44
44
  require('classnames');
45
- require('./useUniqueId-cc1feaa4.js');
45
+ require('./useUniqueId-490497d9.js');
46
46
  require('./constantsSite.js');
47
47
  require('@hhgtech/icons/core');
48
48
  require('date-fns/locale');
@@ -101,7 +101,7 @@ if (sessionStorage.getItem('insider_object')) {
101
101
  }
102
102
  const docLang = document.documentElement.lang;
103
103
  // TODO: country code
104
- const LEAD_LOCALE_DATA$1 = {
104
+ const LEAD_LOCALE_DATA = {
105
105
  'vi-VN': {
106
106
  popupLang: 'vi',
107
107
  countryCode: 'vn',
@@ -143,7 +143,7 @@ const LEAD_LOCALE_DATA$1 = {
143
143
  countryCodeNumber: 91,
144
144
  },
145
145
  };
146
- const LEAD_LOCALE = LEAD_LOCALE_DATA$1[docLang] || LEAD_LOCALE_DATA$1['vi-VN'];
146
+ const LEAD_LOCALE = LEAD_LOCALE_DATA[docLang] || LEAD_LOCALE_DATA['vi-VN'];
147
147
  function LEAD_RESET_VAR() {
148
148
  // LEAD_CURRENT_URL = location.href.toLowerCase();
149
149
  LEAD_CURRENT_URL =
@@ -164,11 +164,6 @@ const LEAD_TIMEZONE_DATA = {
164
164
  9: 'Asia/Manila', // Philippines / Filipinos Site
165
165
  };
166
166
 
167
- const LEADGEN_ACTIONS = {
168
- SHOW: 'SHOW',
169
- SCROLL: 'SCROLL',
170
- TIME: 'TIME',
171
- };
172
167
  const LEADGEN_LAYOUT = {
173
168
  LightBoxA: 'LightBoxA',
174
169
  LightBoxB: 'LightBoxB',
@@ -198,10 +193,8 @@ const LEADGEN_BLOCK = {
198
193
  DropdownBlock: 'DropdownBlock',
199
194
  CheckboxBlock: 'CheckboxBlock',
200
195
  TncBlock: 'TncBlock',
201
- TitleBlock: 'TitleBlock',
202
- SubtitleBlock: 'SubtitleBlock',
203
196
  };
204
- const LEADGEN_BLOCK_INPUT = [
197
+ const LEADGEN_BLOCK_IN_FORM = [
205
198
  LEADGEN_BLOCK.TextBlock,
206
199
  LEADGEN_BLOCK.NumberBlock,
207
200
  LEADGEN_BLOCK.DateBlock,
@@ -217,48 +210,6 @@ const LEADGEN_BLOCK_INPUT = [
217
210
  LEADGEN_BLOCK.TncBlock,
218
211
  ];
219
212
  const SSO_MAP_LEAD = ['name', 'email', 'birthday', 'phone', 'gender'];
220
- const LEAD_LOCALE_DATA = {
221
- 'vi-VN': {
222
- popupLang: 'vi',
223
- countryCode: 'vn',
224
- countryCodeNumber: 84,
225
- },
226
- 'id-ID': {
227
- popupLang: 'id',
228
- countryCode: 'id',
229
- countryCodeNumber: 62,
230
- },
231
- 'th-TH': {
232
- popupLang: 'th',
233
- countryCode: 'th',
234
- countryCodeNumber: 66,
235
- },
236
- 'ms-MY': {
237
- popupLang: 'ms',
238
- countryCode: 'my',
239
- countryCodeNumber: 60,
240
- },
241
- 'zh-TW': {
242
- popupLang: 'zh',
243
- countryCode: 'tw',
244
- countryCodeNumber: 886,
245
- },
246
- 'km-KH': {
247
- popupLang: 'km',
248
- countryCode: 'kh',
249
- countryCodeNumber: 855,
250
- },
251
- 'my-MM': {
252
- popupLang: 'my',
253
- countryCode: 'mm',
254
- countryCodeNumber: 95,
255
- },
256
- 'hi-IN': {
257
- popupLang: 'hi',
258
- countryCode: 'in',
259
- countryCodeNumber: 91,
260
- },
261
- };
262
213
  const mappingSSOToLead = (userInfoProps) => {
263
214
  var _a, _b;
264
215
  try {
@@ -274,7 +225,7 @@ const mappingSSOToLead = (userInfoProps) => {
274
225
  if (ssoKey === 'birthday') {
275
226
  const dob = dayjs__default["default"](initValue, 'YYYY-MM-DD', true);
276
227
  if (dob.isValid()) {
277
- user.birthday = dob.toDate();
228
+ user.birthday = dob;
278
229
  }
279
230
  }
280
231
  else if (ssoKey === 'gender') {
@@ -297,46 +248,6 @@ const mappingSSOToLead = (userInfoProps) => {
297
248
  catch (error) {
298
249
  return;
299
250
  }
300
- };
301
- const formatCampaignDetail = (campaign) => {
302
- if (!campaign) {
303
- return {};
304
- }
305
- try {
306
- const { extra_fields, thank_you_image } = campaign || {};
307
- const { textBlocks: exTextBlocks, imageBlocks: exImageBlocks, listBlockAdded: exListBlockAdded, listBlockThankyou: exListBlockThankyou, actionBlocks: exActionBlocks, } = extra_fields;
308
- const textBlocks = JSON.parse(exTextBlocks);
309
- const imageBlocks = JSON.parse(exImageBlocks);
310
- const listBlockAdded = JSON.parse(exListBlockAdded);
311
- const listBlockThankyou = JSON.parse(exListBlockThankyou);
312
- const actionBlocks = JSON.parse(exActionBlocks);
313
- const ThankYouBlock = {
314
- image: { src: thank_you_image },
315
- };
316
- listBlockThankyou.forEach((block) => {
317
- const { name, data } = block || {};
318
- const { value: htmlText, align, newtab, url } = data || {};
319
- switch (name) {
320
- case LEADGEN_BLOCK.TitleBlock: {
321
- ThankYouBlock.title = { htmlText, align };
322
- }
323
- case LEADGEN_BLOCK.SubtitleBlock: {
324
- ThankYouBlock.description = { htmlText, align };
325
- }
326
- case LEADGEN_BLOCK.LinkButtonBlock: {
327
- ThankYouBlock.button = { htmlText, newtab, url };
328
- }
329
- }
330
- });
331
- return Object.assign(Object.assign({}, campaign), { extra_fields: Object.assign(Object.assign({}, extra_fields), { textBlocks,
332
- imageBlocks,
333
- listBlockAdded,
334
- listBlockThankyou,
335
- actionBlocks }), ThankYouBlock });
336
- }
337
- catch (error) {
338
- return {};
339
- }
340
251
  };
341
252
 
342
253
  class Store {
@@ -347,13 +258,6 @@ class Store {
347
258
  }
348
259
  const leadStore = new Store();
349
260
 
350
- const LEADGEN_API_METHOD = {
351
- GET: 'get',
352
- POST: 'POST',
353
- };
354
- const LEADGEN_API_PATH = {
355
- V2_CAMPAIGN: 'api/v2/campaign',
356
- };
357
261
  const leadApi = {
358
262
  call(_a) {
359
263
  var { url, data = undefined } = _a, config = tslib_es6.__rest(_a, ["url", "data"]);
@@ -457,39 +361,8 @@ const verifyOtpLead = ({ phone, otp, type, }) => {
457
361
  },
458
362
  });
459
363
  };
460
- const campaignGetByCode = (campaign_code) => {
461
- return leadApi.call({
462
- url: `${LEADGEN_API_PATH.V2_CAMPAIGN}/${campaign_code}`,
463
- method: LEADGEN_API_METHOD.GET,
464
- });
465
- };
466
- const campaignPostLead = ({ data }) => {
467
- return leadApi.call({
468
- url: 'api/v2/subscription-box',
469
- method: LEADGEN_API_METHOD.POST,
470
- data,
471
- });
472
- };
473
- const campaignPostImpression = ({ code, action, title_article, ga_client_id, cookie_id, extra, url, referrer, }) => {
474
- return leadApi.call({
475
- url: `api/campaign/${code}/impression`,
476
- method: LEADGEN_API_METHOD.POST,
477
- data: {
478
- action,
479
- title_article,
480
- cookie_id,
481
- ga_client_id,
482
- url,
483
- extra,
484
- referrer,
485
- },
486
- });
487
- };
488
364
  const Service = {
489
365
  campaignGetById,
490
- campaignGetByCode,
491
- campaignPostLead,
492
- campaignPostImpression,
493
366
  validateEmailOrPhoneOnSubot,
494
367
  validateEmailOrPhoneOnLeadGen,
495
368
  validatePhoneNumberOnLeadGen,
@@ -1491,1065 +1364,66 @@ const getTranslations = (locale) => {
1491
1364
 
1492
1365
  const LeadGenContext = React.createContext({});
1493
1366
 
1494
- const LeadGenSubscriptionBoxContext = React.createContext({});
1495
- const LeadGenSubscriptionBoxProvider = (props) => {
1496
- const { campaign_code, apiUrl: apiUrlProps, apiSubotUrl, locale, forceCampaign: forceCampaignProps, children, } = props;
1497
- const [forceCampaign, setForceCampaign] = React.useState(forceCampaignProps);
1498
- const leadGenSubscriptionBoxValue = React.useMemo(() => (Object.assign(Object.assign({}, props), { forceCampaign })), [campaign_code, locale, forceCampaign]);
1499
- const translationContextValue = { locale, values: getTranslations(locale) };
1367
+ const useImageSize = (src) => {
1368
+ const [width, setWidth] = React.useState(16);
1369
+ const [height, setHeight] = React.useState(9);
1370
+ const [loaded, setLoaded] = React.useState(false);
1371
+ // load src image to get its width and height
1500
1372
  React.useEffect(() => {
1501
- if (forceCampaignProps) {
1502
- setForceCampaign(forceCampaignProps);
1503
- return;
1504
- }
1505
- if (campaign_code) {
1506
- Service.campaignGetByCode(campaign_code).then((res) => {
1507
- const { _data } = res || {};
1508
- const { campaigns } = _data || {};
1509
- setForceCampaign(formatCampaignDetail(campaigns));
1373
+ setLoaded(false);
1374
+ if (src) {
1375
+ const img = new Image();
1376
+ img.addEventListener('load', () => {
1377
+ setWidth(img.naturalWidth);
1378
+ setHeight(img.naturalHeight);
1379
+ setLoaded(true);
1380
+ });
1381
+ img.addEventListener('error', () => {
1382
+ setWidth(16);
1383
+ setHeight(9);
1384
+ setLoaded(true);
1510
1385
  });
1386
+ img.src = src;
1511
1387
  }
1512
- }, [campaign_code]);
1513
- React.useEffect(() => {
1514
- leadStore.apiLeadUrl = apiUrlProps;
1515
- leadStore.apiSubotUrl = apiSubotUrl;
1516
- return () => {
1517
- setForceCampaign(null);
1518
- };
1519
- }, []);
1520
- if (!forceCampaign || !(forceCampaign === null || forceCampaign === void 0 ? void 0 : forceCampaign.id)) {
1388
+ else {
1389
+ setWidth(16);
1390
+ setHeight(9);
1391
+ setLoaded(true);
1392
+ }
1393
+ }, [src]);
1394
+ return {
1395
+ loaded,
1396
+ width,
1397
+ height,
1398
+ };
1399
+ };
1400
+
1401
+ const CloseButton = ({ onClose, containerClassName, svgClassName, }) => (React__default["default"].createElement("button", { onClick: onClose, className: `le-newbuilder-close-button js-modal__close ${containerClassName || ''}` },
1402
+ React__default["default"].createElement("svg", { width: "1em", height: "1em", viewBox: "0 0 20 20", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", className: svgClassName },
1403
+ React__default["default"].createElement("path", { d: "M9.99981 10.8432L14.0583 14.9017C14.1691 15.0125 14.3083 15.0691 14.476 15.0717C14.6437 15.0743 14.7854 15.0176 14.9013 14.9017C15.0172 14.7858 15.0752 14.6453 15.0752 14.4802C15.0752 14.3151 15.0172 14.1746 14.9013 14.0587L10.8429 10.0002L14.9013 5.9417C15.0121 5.83094 15.0688 5.69172 15.0713 5.52402C15.0739 5.35634 15.0172 5.21456 14.9013 5.09866C14.7854 4.98276 14.6449 4.9248 14.4798 4.9248C14.3147 4.9248 14.1742 4.98276 14.0583 5.09866L9.99981 9.15712L5.94133 5.09866C5.83057 4.98789 5.69135 4.93122 5.52365 4.92866C5.35598 4.92609 5.21419 4.98276 5.09829 5.09866C4.98239 5.21456 4.92444 5.35506 4.92444 5.52018C4.92444 5.6853 4.98239 5.82581 5.09829 5.9417L9.15675 10.0002L5.09829 14.0587C4.98752 14.1694 4.93085 14.3087 4.9283 14.4763C4.92572 14.644 4.98239 14.7858 5.09829 14.9017C5.21419 15.0176 5.3547 15.0756 5.51982 15.0756C5.68493 15.0756 5.82544 15.0176 5.94133 14.9017L9.99981 10.8432Z" }))));
1404
+
1405
+ // url: imageBlocks.imageMobile.data.url
1406
+ // newTab: imageBlocks.imageMobile.data.newtab
1407
+ // imageMobile: campaignShow.image
1408
+ // imageDestkop: campaignShow.image_desktop
1409
+ const CenterTabLayout = ({ popupId, url, newTab, imageDestkop, imageMobile, onClose, onOtherSubmit, }) => {
1410
+ const { width: imageMobileWidth, height: imageMobileHeight, loaded: imageMobileLoaded, } = useImageSize(imageMobile);
1411
+ const { width: imageDestkopWidth, height: imageDestkopHeight, loaded: imageDestkopLoaded, } = useImageSize(imageDestkop);
1412
+ if (!imageMobileLoaded || !imageDestkopLoaded)
1521
1413
  return null;
1522
- }
1523
- return (React__default["default"].createElement(LeadGenSubscriptionBoxContext.Provider, { value: leadGenSubscriptionBoxValue },
1524
- React__default["default"].createElement(translationsContext.TranslationsContext.Provider, { value: translationContextValue }, children)));
1525
- };
1526
-
1527
- // You can give context variables any name
1528
- const [LeadFormProvider, useLeadFormContext, useLeadForm] = form.createFormContext();
1529
- const useLeadFormConfig = ({ listBlockAdded = [], validatingPhoneRef, validatingEmailRef, campaignId, campaign_subot_id = [], userInfo, }) => {
1530
- var _a;
1531
- const { t } = index.useTranslations();
1532
- const initialValues = React.useMemo(() => mappingSSOToLead(userInfo), [userInfo === null || userInfo === void 0 ? void 0 : userInfo.id]);
1533
- const LEAD_LOCALE = LEAD_LOCALE_DATA[(_a = document === null || document === void 0 ? void 0 : document.documentElement) === null || _a === void 0 ? void 0 : _a.lang] ||
1534
- LEAD_LOCALE_DATA['vi-VN'];
1535
- const validateObj = React.useMemo(() => {
1536
- const InputBlocks = [
1537
- 'TextBlock',
1538
- 'NumberBlock',
1539
- 'EmailBlock',
1540
- 'PhoneBlock',
1541
- 'DateBlock',
1542
- 'CheckboxBlock',
1543
- 'RadioBlock',
1544
- 'DropdownBlock',
1545
- 'PhoneOtpBlock',
1546
- 'WhatsappOtpBlock',
1547
- 'ZaloOtpBlock',
1548
- 'LocationBlock',
1549
- 'TncBlock',
1550
- ];
1551
- // ALL are required and can skip if not touched yet
1552
- const withSharedCheck = (name, cb,
1553
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
1554
- block) => {
1555
- return (value) => {
1556
- var _a;
1557
- const isBLockRequired = (_a = block === null || block === void 0 ? void 0 : block.data) === null || _a === void 0 ? void 0 : _a.required;
1558
- if (!formRef.current.isTouched(name))
1559
- return;
1560
- if ((typeof value === 'string' && value.replace(' ', '') === '') ||
1561
- typeof value === 'undefined' ||
1562
- value === '' ||
1563
- (Array.isArray(value) && value.length === 0)) {
1564
- return isBLockRequired
1565
- ? t('validator.required')
1566
- : cb === null || cb === void 0 ? void 0 : cb(value);
1567
- }
1568
- return cb === null || cb === void 0 ? void 0 : cb(value);
1569
- };
1570
- };
1571
- return listBlockAdded
1572
- .filter((b) => InputBlocks.includes(b.name))
1573
- .reduce((r, b) => {
1574
- var _a;
1575
- const isRequired = (_a = b.data.required) !== null && _a !== void 0 ? _a : true;
1576
- if (b.name === 'NumberBlock') {
1577
- return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1578
- if (value && isNaN(Number(value))) {
1579
- return t('validator.number');
1580
- }
1581
- }, b) });
1582
- }
1583
- else if (b.name === 'EmailBlock') {
1584
- return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1585
- if (value && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value)) {
1586
- return t('validator.email');
1587
- }
1588
- if (!value)
1589
- return;
1590
- validatingEmailRef.current = true;
1591
- setTimeout(() => {
1592
- formRef.current.setFieldError(b.data.value, 'Validating...');
1593
- checkUsedEmailOrPhoneWithCache(campaignId, campaign_subot_id, {
1594
- email: value,
1595
- })
1596
- .then((tKey) => {
1597
- if (tKey) {
1598
- formRef.current.setFieldError(b.data.value, t(tKey));
1599
- }
1600
- else {
1601
- formRef.current.clearFieldError(b.data.value);
1602
- }
1603
- validatingEmailRef.current = false;
1604
- })
1605
- .catch((e) => {
1606
- console.error(e);
1607
- formRef.current.setFieldError(b.data.value, e.message || 'Something went wrong');
1608
- validatingEmailRef.current = false;
1609
- });
1610
- }, 200);
1611
- }, b) });
1612
- }
1613
- else if (b.name === 'PhoneBlock' ||
1614
- b.name === 'PhoneOtpBlock' ||
1615
- b.name === 'ZaloOtpBlock' ||
1616
- b.name === 'WhatsappOtpBlock') {
1617
- return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1618
- if (value &&
1619
- window.intlTelInputUtils &&
1620
- !window.intlTelInputUtils.isValidNumber(String(value), LEAD_LOCALE.countryCode)) {
1621
- return t('validator.phone');
1622
- }
1623
- if (!value)
1624
- return;
1625
- validatingPhoneRef.current = true;
1626
- setTimeout(() => {
1627
- formRef.current.setFieldError(b.data.value, 'Validating...');
1628
- if (b.data.singleSubmission) {
1629
- checkUsedPhoneOnlyWithCache(campaignId, value)
1630
- .then((tKey) => {
1631
- if (tKey) {
1632
- formRef.current.setFieldError(b.data.value, t(tKey));
1633
- }
1634
- else {
1635
- formRef.current.clearFieldError(b.data.value);
1636
- }
1637
- validatingPhoneRef.current = false;
1638
- })
1639
- .catch((err) => {
1640
- console.error(err);
1641
- formRef.current.setFieldError(b.data.value, err.message || 'Something went wrong');
1642
- validatingPhoneRef.current = false;
1643
- });
1644
- }
1645
- else {
1646
- checkUsedEmailOrPhoneWithCache(campaignId, campaign_subot_id, {
1647
- phone: value,
1648
- })
1649
- .then((tKey) => {
1650
- if (tKey) {
1651
- formRef.current.setFieldError(b.data.value, t(tKey));
1652
- }
1653
- else {
1654
- formRef.current.clearFieldError(b.data.value);
1655
- }
1656
- validatingPhoneRef.current = false;
1657
- })
1658
- .catch((e) => {
1659
- console.error(e);
1660
- formRef.current.setFieldError(b.data.value, e.message || 'Something went wrong');
1661
- validatingPhoneRef.current = false;
1662
- });
1663
- }
1664
- }, 200);
1665
- }, b) });
1666
- }
1667
- else if (b.name === 'DateBlock') {
1668
- return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1669
- if (value && isNaN(Date.parse(value))) {
1670
- return t('validator.date');
1671
- }
1672
- }, b) });
1673
- }
1674
- else if (b.name === 'TncBlock') {
1675
- return Object.assign(Object.assign({}, r), { [`TNC-` + b.id]: withSharedCheck('TNC-' + b.id, (value) => {
1676
- if (isRequired && !value) {
1677
- return t('validator.required');
1678
- }
1679
- }, b) });
1680
- }
1681
- else {
1682
- return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, undefined, b) });
1683
- }
1684
- }, {});
1685
- }, [listBlockAdded.map((b) => b.name).join(',')]);
1686
- const form = useLeadForm({
1687
- validateInputOnChange: true,
1688
- clearInputErrorOnChange: true,
1689
- validate: validateObj,
1690
- initialValues,
1691
- });
1692
- const formRef = React.useRef(form);
1693
- formRef.current = form;
1694
- return { form, validateObj };
1695
- };
1696
-
1697
- const PhoneInput = React.forwardRef((props, ref) => {
1698
- const { defaultCountry, id: idProps, name, placeholder, label, labelElement, labelProps, description, descriptionProps, withAsterisk, inputMode, inputContainer, inputWrapperOrder, error, className, classNames, style, styles } = props, restProps = tslib_es6.__rest(props, ["defaultCountry", "id", "name", "placeholder", "label", "labelElement", "labelProps", "description", "descriptionProps", "withAsterisk", "inputMode", "inputContainer", "inputWrapperOrder", "error", "className", "classNames", "style", "styles"]);
1699
- const id = idProps || uuid.v1() + name;
1700
- return (React__default["default"].createElement(core.Input.Wrapper, { size: "md", label: label, labelElement: labelElement, labelProps: Object.assign({ htmlFor: id }, labelProps), description: description, descriptionProps: descriptionProps, withAsterisk: withAsterisk, inputMode: inputMode, inputContainer: inputContainer, inputWrapperOrder: inputWrapperOrder, error: error, "data-invalid": !!error, className: className, classNames: classNames, style: style, styles: styles },
1701
- React__default["default"].createElement("div", { className: "mantine-Input-wrapper" },
1702
- React__default["default"].createElement(index$2.Phone, Object.assign({}, restProps, { id: id, ref: ref, name: name, spellCheck: false, placeholder: placeholder, defaultCountry: defaultCountry, className: "mantine-Input-input", type: "tel", "data-control": "tel" })))));
1703
- });
1704
-
1705
- const StyledLeadGenFormInner = styled__default["default"].div `
1706
- display: flex;
1707
- flex-wrap: wrap;
1708
- gap: 8px;
1709
- .leadgen-form_input {
1710
- width: calc(50% - 4px);
1711
- }
1712
-
1713
- .leadgen-form_input_checkbox {
1714
- width: 100%;
1715
- }
1716
- `;
1717
-
1718
- const cssInputNotShrink$1 = react.css `
1719
- height: 100% !important;
1720
- min-height: calc(var(--container-height, 56px) * 22 / 56);
1721
- color: ${miscTheme.theme.colors.gray800};
1722
- font-size: var(--input, 16px);
1723
- line-height: calc(var(--container-height, 56px) * 22 / 56);
1724
- border: none !important;
1725
- border-radius: 0 !important;
1726
- outline: none !important;
1727
- box-shadow: none !important;
1728
- padding: 0;
1729
- cursor: pointer;
1730
- opacity: 0;
1731
-
1732
- ::placeholder {
1733
- color: ${miscTheme.theme.colors.gray400};
1734
- }
1735
- `;
1736
- const cssInputShrink$1 = react.css `
1737
- height: auto !important;
1738
- cursor: text;
1739
- opacity: 1;
1740
- transition: 0.1s ease-in-out all;
1741
- `;
1742
- const cssLabelNotShrink$1 = react.css `
1743
- position: absolute;
1744
- top: calc(var(--container-height) / 2);
1745
- left: var(--space-x, 16px);
1746
- color: ${miscTheme.theme.colors.gray400};
1747
- font-size: var(--label-not-shrink, 16px);
1748
- font-weight: 400;
1749
- line-height: calc(var(--container-height, 56px) * 18 / 56);
1750
- margin: 0;
1751
- z-index: 1;
1752
- cursor: pointer;
1753
- transform: translateY(-50%);
1754
- transition: 0.125s ease-in all;
1755
- `;
1756
- const cssLabelShrink$1 = react.css `
1757
- color: ${miscTheme.theme.colors.gray600};
1758
- font-weight: 600;
1759
- font-size: var(--label-shrink, 12px);
1760
- top: calc(var(--container-height) * 7 / 56);
1761
- transform: none;
1762
- transition: 0.125s ease-out all;
1763
- `;
1764
- const cssWrapperInputNotShrink$1 = react.css `
1765
- min-height: var(--container-height, 56px);
1766
- display: flex;
1767
- align-items: flex-end;
1768
- border: 1px solid ${miscTheme.theme.colors.gray200};
1769
- border-radius: 8px;
1770
- background-color: #fff;
1771
- padding-inline: var(--space-x, 16px);
1772
- padding-block: var(--space-y-not-shrink, 16px);
1773
- cursor: pointer;
1774
- pointer-events: none;
1775
-
1776
- &:has(.mantine-Input-rightSection) {
1777
- padding-right: var(--container-height, 56px);
1778
- }
1779
-
1780
- .mantine-Input-icon {
1781
- display: none;
1782
- }
1783
-
1784
- .mantine-NumberInput-control {
1785
- border-color: ${miscTheme.theme.colors.gray200};
1786
- }
1787
- `;
1788
- const cssWrapperInputShrink$1 = react.css `
1789
- height: auto;
1790
- min-height: var(--container-height, 56px);
1791
- padding-block: var(--space-y-shrink, 7px);
1792
- cursor: text;
1793
- pointer-events: auto;
1794
- `;
1795
- const cssInputWrapperError$1 = react.css `
1796
- color: ${miscTheme.theme.colors.red800};
1797
- font-size: 12px;
1798
- line-height: 1.5;
1799
- `;
1800
- const StyledTextFieldContainer$1 = styled__default["default"].div `
1801
- --space-x: 16px;
1802
- --space-y-not-shrink: 16px;
1803
- --space-y-shrink: 7px;
1804
- --container-height: 56px;
1805
- --label-not-shrink: 16px;
1806
- --label-shrink: 12px;
1807
- --input: 16px;
1808
-
1809
- position: relative;
1810
- min-width: 100px;
1811
- max-width: 100%;
1812
- display: inline-block;
1813
-
1814
- .textField_wrapper {
1815
- display: inline-block;
1816
- width: 100%;
1817
- cursor: pointer;
1818
- }
1819
-
1820
- .mantine-InputWrapper-root {
1821
- &[data-invalid='true'] {
1822
- .mantine-Input-wrapper {
1823
- border-color: ${miscTheme.theme.colors.red400};
1824
- }
1825
- }
1826
-
1827
- .mantine-Input-wrapper {
1828
- &:has([data-invalid]) {
1829
- border-color: ${miscTheme.theme.colors.red400};
1830
- }
1831
- }
1832
- }
1833
-
1834
- .mantine-InputWrapper-label {
1835
- ${cssLabelNotShrink$1}
1836
- }
1837
-
1838
- .mantine-Input-wrapper {
1839
- ${cssWrapperInputNotShrink$1}
1840
-
1841
- + .mantine-Popover-dropdown[data-position="bottom-start"] {
1842
- left: 0 !important;
1843
- }
1844
- + .mantine-Popover-dropdown[data-position='top-start'] {
1845
- top: unset !important;
1846
- left: 0 !important;
1847
- bottom: 100% !important;
1848
- }
1849
- }
1850
-
1851
- .mantine-Input-input {
1852
- ${cssInputNotShrink$1}
1853
- }
1854
-
1855
- &.textField_shrink,
1856
- &:focus-within {
1857
- .mantine-InputWrapper-label {
1858
- ${cssLabelShrink$1}
1859
- }
1860
-
1861
- .mantine-Input-wrapper {
1862
- ${cssWrapperInputShrink$1}
1863
- &.mantine-Select-wrapper {
1864
- .mantine-Select-rightSection {
1865
- pointer-events: auto !important;
1866
- }
1867
- }
1868
- }
1869
-
1870
- .mantine-Input-input {
1871
- ${cssInputShrink$1}
1872
- }
1873
-
1874
- &:has(.PhoneInput) {
1875
- .mantine-InputWrapper-label {
1876
- left: var(--space-x, 16px);
1877
- }
1878
- .PhoneInput {
1879
- .PhoneInputInput {
1880
- opacity: 1;
1881
- }
1882
- }
1883
- }
1884
- }
1885
-
1886
- .PhoneInput {
1887
- --phone-select: 75px;
1888
- --phone-input-space-x: 8px;
1889
- width: 100%;
1890
- opacity: 1;
1891
- border: none;
1892
- .PhoneInputCountry {
1893
- background-color: transparent;
1894
- border: none;
1895
- padding: 0;
1896
- width: var(--phone-select, 75px);
1897
- }
1898
- .PhoneInputInput {
1899
- flex: 1;
1900
- min-width: 0;
1901
- line-height: 1.5;
1902
- outline: none !important;
1903
- border: none;
1904
- box-shadow: none;
1905
- padding: 0 var(--phone-input-space-x, 8px);
1906
- opacity: 0;
1907
- color: ${miscTheme.theme.colors.gray800} !important;
1908
- :focus {
1909
- color: ${miscTheme.theme.colors.gray800} !important;
1910
- }
1911
- }
1912
- }
1913
-
1914
- &:has(.PhoneInput) {
1915
- .mantine-InputWrapper-label {
1916
- left: calc(
1917
- var(--space-x, 16px) + var(--phone-select, 75px) +
1918
- var(--phone-input-space-x, 8px)
1919
- );
1920
- }
1921
- }
1922
- `;
1923
- const StyledChoiceFieldContainer$1 = styled__default["default"].div `
1924
- &.leadgen-form_checkbox,
1925
- &.leadgen-form_radio {
1926
- width: 100%;
1927
- }
1928
-
1929
- &.leadgen-form_dropdown {
1930
- width: calc(50% - 12px);
1931
- }
1932
-
1933
- .mantine-InputWrapper-root {
1934
- display: block;
1935
- }
1936
-
1937
- .mantine-InputWrapper-label {
1938
- margin-bottom: 0.5rem;
1939
- color: ${miscTheme.theme.colors.gray800};
1940
- font-size: 16px;
1941
- font-weight: 400;
1942
- line-height: 1.5;
1943
- }
1944
-
1945
- .mantine-Radio-root,
1946
- .mantine-Checkbox-root {
1947
- gap: 8px;
1948
- min-width: calc(50% - 4px);
1949
-
1950
- input[type='radio'],
1951
- input[type='checkbox'] {
1952
- border-color: ${miscTheme.theme.colors.gray600};
1953
- width: 18px;
1954
- height: 18px;
1955
- }
1956
- input[type='checkbox'] {
1957
- border-radius: 4px;
1958
- }
1959
-
1960
- &[data-checked='true'] {
1961
- input[type='radio'],
1962
- input[type='checkbox'] {
1963
- border-color: ${miscTheme.theme.colors.primary600};
1964
- + svg {
1965
- color: ${miscTheme.theme.colors.primary600};
1966
- }
1967
- }
1968
-
1969
- input[type='radio'] {
1970
- background-color: white;
1971
- }
1972
- }
1973
-
1974
- .mantine-Checkbox-input {
1975
- &:checked {
1976
- border-color: ${miscTheme.theme.colors.primary600};
1977
- }
1978
- }
1979
- }
1980
-
1981
- .mantine-Radio-inner,
1982
- .mantine-Checkbox-inner {
1983
- width: 24px;
1984
- height: 24px;
1985
- display: flex;
1986
- align-items: center;
1987
- justify-content: center;
1988
- }
1989
-
1990
- .mantine-Radio-body,
1991
- .mantine-Checkbox-body {
1992
- display: flex;
1993
- align-items: center;
1994
- }
1995
-
1996
- .mantine-Radio-label,
1997
- .mantine-Checkbox-label {
1998
- padding-left: 8px;
1999
- color: ${miscTheme.theme.colors.gray800};
2000
- font-size: 14px;
2001
- line-height: 1.4;
2002
- letter-spacing: -0.2px;
2003
- }
2004
-
2005
- .leadgen-choiceContainer {
2006
- display: flex;
2007
- flex-wrap: wrap;
2008
- align-items: flex-start;
2009
- gap: 8px;
2010
- }
2011
-
2012
- .mantine-InputWrapper-error {
2013
- ${cssInputWrapperError$1}
2014
- }
2015
- `;
2016
-
2017
- const TextField$1 = (props) => {
2018
- const { shrink: shrinkProps, onChangeShrink, className, children } = props, restProps = tslib_es6.__rest(props, ["shrink", "onChangeShrink", "className", "children"]);
2019
- const containerRef = hooks.useClickOutside(() => {
2020
- if (shrinkProps) {
2021
- return;
2022
- }
2023
- setShrink(false);
2024
- onChangeShrink === null || onChangeShrink === void 0 ? void 0 : onChangeShrink(false);
2025
- });
2026
- const [shrink, setShrink] = React.useState(shrinkProps);
2027
- const onClick = React.useCallback((e) => {
2028
- setShrink(true);
2029
- onChangeShrink === null || onChangeShrink === void 0 ? void 0 : onChangeShrink(true);
2030
- if (shrink) {
2031
- return;
2032
- }
2033
- const $textEl = e.currentTarget.querySelectorAll('input:not([disabled]):not([type="submit"]),select:not([disabled]),textarea:not([disabled])');
2034
- const $focusEl = $textEl.item($textEl.length - 1);
2035
- if ($focusEl) {
2036
- $focusEl.focus();
2037
- setTimeout(() => {
2038
- $focusEl.scrollIntoView({
2039
- behavior: 'auto',
2040
- block: 'center',
2041
- inline: 'start',
2042
- });
2043
- }, 100);
2044
- }
2045
- }, [shrink]);
2046
- React.useEffect(() => {
2047
- setShrink(shrinkProps);
2048
- }, [shrinkProps]);
2049
- return (React__default["default"].createElement(StyledTextFieldContainer$1, Object.assign({ shrink: shrink, className: core.clsx(className, 'textField', { textField_shrink: !!shrink }) }, restProps),
2050
- React__default["default"].createElement("div", { ref: containerRef, onClick: onClick, className: "textField_wrapper" }, children)));
2051
- };
2052
- const ChoiceField$1 = (props) => {
2053
- const { children, className } = props, restProps = tslib_es6.__rest(props, ["children", "className"]);
2054
- return (React__default["default"].createElement(StyledChoiceFieldContainer$1, Object.assign({ className: core.clsx(className, 'choiceField') }, restProps), children));
2055
- };
2056
-
2057
- const libraries = ['places'];
2058
- const GoogleLocationBlock = (props) => {
2059
- var _a;
2060
- const { inputWrapperOrder = ['label', 'input', 'description', 'error'], defaultValue, value: valueProps, onChange: onChangeProps, locale } = props, restProps = tslib_es6.__rest(props, ["inputWrapperOrder", "defaultValue", "value", "onChange", "locale"]);
2061
- const [LoadScript, setLoadScript] = React.useState(null);
2062
- const [value, setValue] = React.useState(defaultValue || valueProps);
2063
- const { predictions } = usePlacesAutocomplete.usePlacesAutocomplete(value, '', locale === 'tl-PH' ? 'en' : (_a = locale === null || locale === void 0 ? void 0 : locale.split('-')) === null || _a === void 0 ? void 0 : _a[0]);
2064
- const onChangeAutocomplete = React.useCallback((s) => {
2065
- setValue(s);
2066
- onChangeProps === null || onChangeProps === void 0 ? void 0 : onChangeProps(s);
2067
- }, []);
2068
- const onClickItem = React.useCallback((item) => {
2069
- /** For sure get value */
2070
- setValue(item.value);
2071
- const predCur = predictions === null || predictions === void 0 ? void 0 : predictions.find(({ description }) => description === item.value);
2072
- onChangeProps === null || onChangeProps === void 0 ? void 0 : onChangeProps(item.value, predCur === null || predCur === void 0 ? void 0 : predCur.rawData);
2073
- }, [onChangeProps, predictions]);
2074
- React.useEffect(() => {
2075
- setValue(valueProps);
2076
- }, [valueProps]);
2077
- React.useEffect(() => {
2078
- var _a, _b, _c;
2079
- // only load extra google script when not yet loaded
2080
- if (!((_c = (_b = (_a = window === null || window === void 0 ? void 0 : window.google) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.places) === null || _c === void 0 ? void 0 : _c.AutocompleteService) && !LoadScript) {
2081
- Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@react-google-maps/api')); }).then((m) => {
2082
- setLoadScript(() => m.LoadScript);
2083
- });
2084
- }
2085
- }, []);
2086
- return (React__default["default"].createElement(core.Autocomplete, Object.assign({ defaultValue: defaultValue, value: value, onChange: onChangeAutocomplete, data: predictions.map((pred) => {
2087
- return { value: pred.description, label: pred.description };
2088
- }), filter: () => true, onItemSubmit: onClickItem, inputWrapperOrder: inputWrapperOrder, zIndex: index$7.ZINDEX_SSO - 9e6 + 2, withinPortal: true, styles: { dropdown: { pointerEvents: 'auto' } }, inputContainer: (children) => {
2089
- return (React__default["default"].createElement(React__default["default"].Fragment, null,
2090
- LoadScript && (React__default["default"].createElement(LoadScript, { googleMapsApiKey: usePlacesAutocomplete.GOOGLE_API_KEY, libraries: libraries, loadingElement: React__default["default"].createElement(React__default["default"].Fragment, null), style: { width: '100%' } })),
2091
- children));
2092
- } }, restProps)));
2093
- };
2094
-
2095
- const LEADGEN_ORDER_INPUT_WRAPPER = [
2096
- 'label',
2097
- 'input',
2098
- 'description',
2099
- 'error',
2100
- ];
2101
- const LeadGenForm = React.forwardRef((props, ref) => {
2102
- const { locale, blocks, scrollToErrorField = true, form: formProps, rules: validate, initialValues, onFinish, onFinishFailed, className, style, } = props;
2103
- const formRef = React.useRef(null);
2104
- const form$1 = formProps || form.useForm({ initialValues, validate });
2105
- const middlewareFinish = (values, event) => {
2106
- onFinish === null || onFinish === void 0 ? void 0 : onFinish(values, event);
2107
- };
2108
- const middlewareFinishFailed = (errors, values, events) => {
2109
- if (scrollToErrorField && errors) {
2110
- const firstErrorKey = Object.keys(errors)[0];
2111
- const firstErrorElement = document.querySelector(`[name="${firstErrorKey}"]`);
2112
- if (firstErrorElement && (firstErrorElement === null || firstErrorElement === void 0 ? void 0 : firstErrorElement.focus)) {
2113
- setTimeout(() => {
2114
- firstErrorElement === null || firstErrorElement === void 0 ? void 0 : firstErrorElement.focus();
2115
- firstErrorElement.scrollIntoView({
2116
- behavior: 'auto',
2117
- block: 'center',
2118
- inline: 'center',
2119
- });
2120
- }, 100);
2121
- }
2122
- }
2123
- onFinishFailed === null || onFinishFailed === void 0 ? void 0 : onFinishFailed(errors, values, events);
2124
- };
2125
- React.useEffect(() => {
2126
- (() => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
2127
- if (!window.intlTelInputUtils) {
2128
- yield require('intl-tel-input/build/js/utils');
2129
- }
2130
- }))();
2131
- }, []);
2132
- React.useImperativeHandle(ref, () => (Object.assign(Object.assign({}, form$1), { submit: () => formRef.current.requestSubmit() })), [form$1, formRef]);
2133
- if (!blocks || !blocks.length) {
2134
- return null;
2135
- }
2136
- return (React__default["default"].createElement("form", { ref: formRef, onSubmit: form$1.onSubmit(middlewareFinish, middlewareFinishFailed), className: className, style: style },
2137
- React__default["default"].createElement(StyledLeadGenFormInner, { className: "leadgen-form_inputs" }, blocks.map((block, idx) => {
2138
- const { id, name: blockName, data } = block;
2139
- const { placeholder, value: name, required, listQuestion, valueHTML, isSendMailChimp = false, } = data;
2140
- const formInputProps = form$1.getInputProps(name);
2141
- const { value, error } = formInputProps;
2142
- const reactKey = `${id}-${idx}`;
2143
- switch (blockName) {
2144
- case LEADGEN_BLOCK.TextBlock: {
2145
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2146
- React__default["default"].createElement(core.TextInput, Object.assign({ name: name, spellCheck: false, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, type: "text", "data-control": "text" }, formInputProps))));
2147
- }
2148
- case LEADGEN_BLOCK.NumberBlock: {
2149
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2150
- React__default["default"].createElement(core.NumberInput, Object.assign({ name: value, spellCheck: false, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, type: "number", "data-control": "number" }, formInputProps))));
2151
- }
2152
- case LEADGEN_BLOCK.EmailBlock: {
2153
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2154
- React__default["default"].createElement(core.TextInput, Object.assign({ name: name, spellCheck: false, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, "data-control": "email" }, formInputProps))));
2155
- }
2156
- case LEADGEN_BLOCK.PhoneOtpBlock:
2157
- case LEADGEN_BLOCK.WhatsappOtpBlock:
2158
- case LEADGEN_BLOCK.ZaloOtpBlock:
2159
- case LEADGEN_BLOCK.PhoneBlock: {
2160
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2161
- React__default["default"].createElement(PhoneInput, Object.assign({ name: name, spellCheck: false, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, defaultCountry: (locale ? utils.MAPPED_LOCALE[locale] || 'VN' : 'VN'), type: "text", "data-control": "text" }, formInputProps))));
2162
- }
2163
- case LEADGEN_BLOCK.LocationBlock: {
2164
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2165
- React__default["default"].createElement(GoogleLocationBlock, Object.assign({ name: name, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, locale: locale, "data-control": "text" }, formInputProps))));
2166
- }
2167
- case LEADGEN_BLOCK.DateBlock: {
2168
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2169
- React__default["default"].createElement(dates.DateInput, Object.assign({ locale: (utils.MAPPED_LOCALE === null || utils.MAPPED_LOCALE === void 0 ? void 0 : utils.MAPPED_LOCALE[locale]) || utils.MAPPED_LOCALE['vi-VN'], valueFormat: "DD/MM/YYYY", name: name, withAsterisk: required, label: placeholder, placeholder: placeholder, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, type: "default", "data-control": "date" }, formInputProps))));
2170
- }
2171
- case LEADGEN_BLOCK.DropdownBlock:
2172
- return (React__default["default"].createElement(TextField$1, { key: reactKey, shrink: !!value, className: "leadgen-form_input" },
2173
- React__default["default"].createElement("div", { style: { display: 'none' }, "data-extra": true, "data-name": value, "data-control": 'dropdown' }),
2174
- React__default["default"].createElement(core.Select, Object.assign({ name: name, withAsterisk: required, label: placeholder, placeholder: placeholder, data: listQuestion.map((l) => ({
2175
- value: l.value,
2176
- label: l.placeholder,
2177
- })) }, formInputProps))));
2178
- case LEADGEN_BLOCK.CheckboxBlock: {
2179
- const formInputCheckboxProps = form$1.getInputProps(name, {
2180
- type: 'checkbox',
2181
- });
2182
- return (React__default["default"].createElement(ChoiceField$1, { className: "leadgen-form_input leadgen-form_input_checkbox", key: reactKey },
2183
- isSendMailChimp && (React__default["default"].createElement("div", { style: { display: 'none' }, "data-name": name + '-mailchimp' })),
2184
- React__default["default"].createElement(core.Checkbox.Group, Object.assign({ size: "md", withAsterisk: required, label: placeholder, value: value, sx: {
2185
- display: 'flex',
2186
- flexDirection: 'column',
2187
- flexWrap: 'wrap',
2188
- gap: 8,
2189
- }, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, inputContainer: (children) => {
2190
- return (React__default["default"].createElement("div", { className: "leadgen-choiceContainer" }, children));
2191
- } }, formInputCheckboxProps), listQuestion.map((l, _idx) => (React__default["default"].createElement(core.Checkbox, { name: name, key: _idx, value: l.value, label: l.placeholder, "data-control": "checkbox" }))))));
2192
- }
2193
- case LEADGEN_BLOCK.RadioBlock: {
2194
- return (React__default["default"].createElement(ChoiceField$1, { className: "leadgen-form_input leadgen-form_input_checkbox", key: reactKey },
2195
- isSendMailChimp && (React__default["default"].createElement("div", { style: { display: 'none' }, "data-name": name + '-mailchimp' })),
2196
- React__default["default"].createElement(core.Radio.Group, Object.assign({ size: "md", withAsterisk: required, label: placeholder, value: value, spellCheck: true, inputWrapperOrder: LEADGEN_ORDER_INPUT_WRAPPER, inputContainer: (children) => {
2197
- return (React__default["default"].createElement("div", { className: "leadgen-choiceContainer" }, children));
2198
- } }, formInputProps), listQuestion.map((l, _index) => (React__default["default"].createElement(core.Radio, { name: name, key: _index, value: l.value, label: l.placeholder, "data-control": "radio" }))))));
2199
- }
2200
- case 'TncBlock':
2201
- return (React__default["default"].createElement(ChoiceField$1, { className: "leadgen-form_input leadgen-form_input_checkbox", key: reactKey },
2202
- React__default["default"].createElement(core.Input.Wrapper, { error: error },
2203
- React__default["default"].createElement(core.Checkbox, Object.assign({ value: value, name: 'TNC-' + id, label: React__default["default"].createElement("p", { className: "lead-modal__tnc-link", dangerouslySetInnerHTML: { __html: valueHTML } }), className: "tnc-block", "data-control": "checkbox" }, formInputProps)))));
2204
- default: {
2205
- return null;
2206
- }
2207
- }
2208
- }))));
2209
- });
2210
-
2211
- const StyledLeadGenThankYou = styled__default["default"].div `
2212
- display: flex;
2213
- gap: 8px;
2214
- flex-direction: column;
2215
- padding-block: 24px;
2216
-
2217
- .leadgen-image {
2218
- width: 120px;
2219
- height: 120px;
2220
- margin-inline: auto;
2221
- object-fit: contain;
2222
- object-position: center;
2223
- text-align: center;
2224
- }
2225
-
2226
- .leadgen-title {
2227
- margin-block: 0;
2228
- color: ${miscTheme.theme.colors.gray900};
2229
- font-weight: 700;
2230
- font-size: 18px;
2231
- line-height: 28px;
2232
- letter-spacing: -0.2px;
2233
- }
2234
-
2235
- .leadgen-description {
2236
- margin-block: 0;
2237
- color: ${miscTheme.theme.colors.gray600};
2238
- font-weight: 400;
2239
- font-size: 14px;
2240
- line-height: 22px;
2241
- letter-spacing: -0.2px;
2242
- text-align: center;
2243
- }
2244
-
2245
- > [data-align] {
2246
- &[data-align='right'] {
2247
- text-align: right;
2248
- }
2249
- &[data-align='center'] {
2250
- text-align: center;
2251
- }
2252
- }
2253
- `;
2254
- const LeadGenThankYou = ({ image, title, description, showButton = false, button, className, style, }) => {
2255
- const { src } = image;
2256
- const { htmlText: titleText, align: titleAlign } = title;
2257
- const { htmlText: descriptionText, align: descriptionAlign } = description;
2258
- const { htmlText: buttonText, newtab, url, onClick } = button;
2259
- return (React__default["default"].createElement(StyledLeadGenThankYou, { className: className, style: style },
2260
- React__default["default"].createElement("img", { src: src, alt: "", className: "leadgen-thankyou_image leadgen-image" }),
2261
- React__default["default"].createElement("p", { className: "leadgen-thankyou_title leadgen-title", "data-align": titleAlign }, titleText),
2262
- React__default["default"].createElement("p", { className: "leadgen-thankyou_description leadgen-description", "data-align": descriptionAlign }, descriptionText),
2263
- !!buttonText && showButton && (React__default["default"].createElement(core.Button, { component: url ? 'a' : 'button', target: newtab ? '_blank' : undefined, href: url, size: "lg", variant: "filled", className: "leadgen-thankyoue_btn leadgen-btn", onClick: onClick }, buttonText))));
2264
- };
2265
-
2266
- const StyledLeadGenSubscriptionBoxBody = styled__default["default"].div `
2267
- margin-top: 16px;
2268
- .leadgen-btn {
2269
- margin-top: 16px;
2270
- }
2271
- `;
2272
- const StyledLeadGenSubscriptionBoxHeaderImage = styled__default["default"].div `
2273
- margin-top: 3px;
2274
- margin-right: 20px;
2275
- width: 44px;
2276
- height: 44px;
2277
-
2278
- img {
2279
- width: 100%;
2280
- height: 100%;
2281
- object-fix: contain;
2282
- onject-position: center;
2283
- }
2284
-
2285
- :has(img[src='']) {
2286
- display: none;
2287
- }
2288
- `;
2289
- const StyledLeadGenSubscriptionBoxHeader = styled__default["default"].div `
2290
- display: flex;
2291
- align-items: center;
2292
- margin-bottom: 16px;
2293
- .leadgen-title {
2294
- margin-bottom: 0;
2295
- flex: 1;
2296
- min-width: 0;
2297
- color: ${miscTheme.theme.colors.gray900};
2298
- font-size: 18px;
2299
- font-weight: 600;
2300
- line-height: 1.4;
2301
- letter-spacing: -0.8px;
2302
- }
2303
- `;
2304
- const StyledLeadGenSubscriptionBox = styled__default["default"].div `
2305
- padding: 16px;
2306
- border: 1px solid ${miscTheme.theme.colors.neutral100};
2307
- border-radius: 12px;
2308
- margin-inline: auto;
2309
- .leadgen-form_inputs {
2310
- .leadgen-form_input {
2311
- width: 100%;
2312
- }
2313
- }
2314
-
2315
- .leadgen-form_input {
2316
- .mantine-Input-wrapper {
2317
- max-height: 56px;
2318
- }
2319
- }
2320
-
2321
- @media screen and (min-width: 768px) {
2322
- .leadgen-subscription_box_body {
2323
- display: flex;
2324
- > form {
2325
- flex: 1;
2326
- min-width: 0;
2327
-
2328
- .leadgen-form_inputs {
2329
- .leadgen-form_input {
2330
- width: calc(50% - 4px);
2331
- }
2332
- }
2333
- }
2334
-
2335
- .leadgen-btn {
2336
- margin-top: 0;
2337
- margin-left: 8px;
2338
- width: auto;
2339
- min-height: 56px;
2340
- }
2341
- }
2342
- }
2343
- `;
2344
- const LeadGenSubscriptionBoxWithoutMemo = ({ locale, userInfo, siteId, siteDomain, forceCampaign, campaign_code, article_id, subscription_title: subscriptionTitleProps, }) => {
2345
- var _a, _b, _c;
2346
- const refContainer = React.useRef(null);
2347
- const validatingEmailRef = React.useRef(false);
2348
- const validatingPhoneRef = React.useRef(false);
2349
- const { image, extra_fields, id: campaign_id, bot_id: campaign_subot_id = [], ThankYouBlock, } = forceCampaign || {};
2350
- const { textBlocks, listBlockAdded, actionBlocks } = extra_fields || {};
2351
- const { submitBlock } = actionBlocks || {};
2352
- const [loading, setLoading] = React.useState(false);
2353
- const [showThankyou, setShowThankyou] = React.useState(false);
2354
- const formRef = React.useRef(null);
2355
- const { form, validateObj } = useLeadFormConfig({
2356
- listBlockAdded,
2357
- campaignId: campaign_id,
2358
- campaign_subot_id,
2359
- validatingEmailRef,
2360
- validatingPhoneRef,
2361
- userInfo,
2362
- });
2363
- const subscription_title = React.useMemo(() => { var _a, _b; return subscriptionTitleProps || ((_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); }, [subscriptionTitleProps, (_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]);
2364
- const { image: thankyouImage, title: thankyouTitle, description: thankyouDescription, button: thankyouButton, } = ThankYouBlock || {};
2365
- const { apiUrl } = React.useMemo(() => {
2366
- let apiUrl = leadStore.apiLeadUrl;
2367
- if (apiUrl.includes('localhost')) {
2368
- apiUrl = 'https://dev.leadgen.hellobacsi.com/';
2369
- }
2370
- return {
2371
- apiUrl,
2372
- };
2373
- }, [siteDomain, siteId]);
2374
- const url = React.useMemo(() => location.href.toLowerCase() || '', []);
2375
- const article_title = React.useMemo(() => document.title || '', []);
2376
- const cookie_id = React.useMemo(() => miscCookieHelper.getCookie('hhg-id') || null, []);
2377
- const ga_client_id = React.useMemo(() => miscCookieHelper.getCookie('_ga') || null, []);
2378
- const leadgenImpression = React.useCallback(() => {
2379
- Service.campaignPostImpression({
2380
- url,
2381
- action: LEADGEN_ACTIONS.SCROLL,
2382
- code: campaign_code,
2383
- title_article: article_title,
2384
- cookie_id,
2385
- ga_client_id,
2386
- extra: { cookie_id, article_id, subscription_title },
2387
- });
2388
- }, [
2389
- article_id,
2390
- article_title,
2391
- cookie_id,
2392
- ga_client_id,
2393
- campaign_code,
2394
- subscription_title,
2395
- ]);
2396
- const intersectionObserverCallback = React.useCallback((entries) => {
2397
- entries.forEach((entry) => {
2398
- const { isIntersecting, target } = entry;
2399
- if (isIntersecting && target === refContainer.current) {
2400
- leadgenImpression();
2401
- }
2402
- });
2403
- }, [leadgenImpression]);
2404
- const IObserver = new IntersectionObserver(intersectionObserverCallback);
2405
- const middlewareOnSubmit = React.useCallback((value) => tslib_es6.__awaiter(void 0, void 0, void 0, function* () {
2406
- const newValue = {
2407
- url,
2408
- article_title,
2409
- cookie_id,
2410
- ga_client_id,
2411
- article_id,
2412
- campaign_id,
2413
- campaign_code,
2414
- subscription_title: subscription_title,
2415
- };
2416
- listBlockAdded.forEach(({ data: { value: k } }) => {
2417
- newValue[k] = value[k];
2418
- });
2419
- setLoading(true);
2420
- try {
2421
- const { _data } = (yield Service.campaignPostLead({ data: newValue })) || {};
2422
- const { model } = _data;
2423
- if (model && model.id) {
2424
- setShowThankyou(true);
2425
- }
2426
- }
2427
- catch (error) {
2428
- console.log('** Error : ', error);
2429
- }
2430
- setLoading(false);
2431
- }), [
2432
- url,
2433
- article_id,
2434
- article_title,
2435
- cookie_id,
2436
- ga_client_id,
2437
- campaign_code,
2438
- subscription_title,
2439
- listBlockAdded,
2440
- ]);
2441
- React.useEffect(() => {
2442
- if (refContainer.current) {
2443
- IObserver.observe(refContainer.current);
2444
- }
2445
- return () => {
2446
- IObserver.disconnect();
2447
- };
2448
- }, [
2449
- url,
2450
- article_id,
2451
- article_title,
2452
- ga_client_id,
2453
- campaign_id,
2454
- campaign_code,
2455
- subscription_title,
2456
- ]);
2457
- return (React__default["default"].createElement("div", { ref: refContainer },
2458
- React__default["default"].createElement(StyledLeadGenSubscriptionBox, null,
2459
- showThankyou && (React__default["default"].createElement(LeadGenThankYou, { image: Object.assign(Object.assign({}, thankyouImage), { src: thankyouImage.src || `${apiUrl}admin/img/thanksyou.png` }), title: thankyouTitle, description: thankyouDescription, button: thankyouButton })),
2460
- !showThankyou && (React__default["default"].createElement(React__default["default"].Fragment, null,
2461
- React__default["default"].createElement(StyledLeadGenSubscriptionBoxHeader, null,
2462
- !!image && (React__default["default"].createElement(StyledLeadGenSubscriptionBoxHeaderImage, null,
2463
- React__default["default"].createElement("img", { src: image, alt: "" }))),
2464
- React__default["default"].createElement("p", { className: "leadgen-title" }, subscription_title)),
2465
- React__default["default"].createElement(StyledLeadGenSubscriptionBoxBody, { className: "leadgen-subscription_box_body" },
2466
- React__default["default"].createElement(LeadGenForm, { ref: formRef, form: form, rules: validateObj, blocks: listBlockAdded, locale: locale, onFinish: middlewareOnSubmit }),
2467
- React__default["default"].createElement(core.Button, { disabled: loading, loading: loading, variant: "filled", size: "lg", onClick: () => { var _a; return (_a = formRef.current) === null || _a === void 0 ? void 0 : _a.submit(); }, className: "leadgen-btn leadgen-btn_action", fullWidth: true }, (_c = submitBlock === null || submitBlock === void 0 ? void 0 : submitBlock.data) === null || _c === void 0 ? void 0 : _c.value)))))));
2468
- };
2469
- const LeadGenSubscriptionBoxWithMemo = React.memo(LeadGenSubscriptionBoxWithoutMemo);
2470
-
2471
- const Container = () => {
2472
- const context = React.useContext(LeadGenSubscriptionBoxContext);
2473
- const {
2474
- // apiUrl: apiUrlProps,
2475
- // apiSubotUrl,
2476
- campaign_code, article_id, subscription_title, locale, siteId, siteDomain, userInfo, forceCampaign, } = context;
2477
- if (!forceCampaign || !(forceCampaign === null || forceCampaign === void 0 ? void 0 : forceCampaign.id)) {
2478
- return null;
2479
- }
2480
- return (React__default["default"].createElement(LeadGenSubscriptionBoxWithMemo, { locale: locale, userInfo: userInfo, siteId: siteId, siteDomain: siteDomain, forceCampaign: forceCampaign, campaign_code: campaign_code, article_id: article_id, subscription_title: subscription_title }));
2481
- };
2482
- Container.displayName = 'LeadGenSubscriptionBox';
2483
- const LeadGenSubscriptionBoxContainer = (props) => {
2484
- const { campaign_code } = props;
2485
- if (!campaign_code) {
2486
- return null;
2487
- }
2488
- return (React__default["default"].createElement(LeadGenSubscriptionBoxProvider, Object.assign({}, props),
2489
- React__default["default"].createElement(Container, null)));
2490
- };
2491
- const LeadGenSubscriptionBox = LeadGenSubscriptionBoxContainer;
2492
-
2493
- const useImageSize = (src) => {
2494
- const [width, setWidth] = React.useState(16);
2495
- const [height, setHeight] = React.useState(9);
2496
- const [loaded, setLoaded] = React.useState(false);
2497
- // load src image to get its width and height
2498
- React.useEffect(() => {
2499
- setLoaded(false);
2500
- if (src) {
2501
- const img = new Image();
2502
- img.addEventListener('load', () => {
2503
- setWidth(img.naturalWidth);
2504
- setHeight(img.naturalHeight);
2505
- setLoaded(true);
2506
- });
2507
- img.addEventListener('error', () => {
2508
- setWidth(16);
2509
- setHeight(9);
2510
- setLoaded(true);
2511
- });
2512
- img.src = src;
2513
- }
2514
- else {
2515
- setWidth(16);
2516
- setHeight(9);
2517
- setLoaded(true);
2518
- }
2519
- }, [src]);
2520
- return {
2521
- loaded,
2522
- width,
2523
- height,
2524
- };
2525
- };
2526
-
2527
- const CloseButton = ({ onClose, containerClassName, svgClassName, }) => (React__default["default"].createElement("button", { onClick: onClose, className: `le-newbuilder-close-button js-modal__close ${containerClassName || ''}` },
2528
- React__default["default"].createElement("svg", { width: "1em", height: "1em", viewBox: "0 0 20 20", fill: "currentColor", xmlns: "http://www.w3.org/2000/svg", className: svgClassName },
2529
- React__default["default"].createElement("path", { d: "M9.99981 10.8432L14.0583 14.9017C14.1691 15.0125 14.3083 15.0691 14.476 15.0717C14.6437 15.0743 14.7854 15.0176 14.9013 14.9017C15.0172 14.7858 15.0752 14.6453 15.0752 14.4802C15.0752 14.3151 15.0172 14.1746 14.9013 14.0587L10.8429 10.0002L14.9013 5.9417C15.0121 5.83094 15.0688 5.69172 15.0713 5.52402C15.0739 5.35634 15.0172 5.21456 14.9013 5.09866C14.7854 4.98276 14.6449 4.9248 14.4798 4.9248C14.3147 4.9248 14.1742 4.98276 14.0583 5.09866L9.99981 9.15712L5.94133 5.09866C5.83057 4.98789 5.69135 4.93122 5.52365 4.92866C5.35598 4.92609 5.21419 4.98276 5.09829 5.09866C4.98239 5.21456 4.92444 5.35506 4.92444 5.52018C4.92444 5.6853 4.98239 5.82581 5.09829 5.9417L9.15675 10.0002L5.09829 14.0587C4.98752 14.1694 4.93085 14.3087 4.9283 14.4763C4.92572 14.644 4.98239 14.7858 5.09829 14.9017C5.21419 15.0176 5.3547 15.0756 5.51982 15.0756C5.68493 15.0756 5.82544 15.0176 5.94133 14.9017L9.99981 10.8432Z" }))));
2530
-
2531
- // url: imageBlocks.imageMobile.data.url
2532
- // newTab: imageBlocks.imageMobile.data.newtab
2533
- // imageMobile: campaignShow.image
2534
- // imageDestkop: campaignShow.image_desktop
2535
- const CenterTabLayout = ({ popupId, url, newTab, imageDestkop, imageMobile, onClose, onOtherSubmit, }) => {
2536
- const { width: imageMobileWidth, height: imageMobileHeight, loaded: imageMobileLoaded, } = useImageSize(imageMobile);
2537
- const { width: imageDestkopWidth, height: imageDestkopHeight, loaded: imageDestkopLoaded, } = useImageSize(imageDestkop);
2538
- if (!imageMobileLoaded || !imageDestkopLoaded)
2539
- return null;
2540
- return (React__default["default"].createElement("div", { id: popupId, className: "lead-modal-wrapper", "data-popup-url": location.pathname, "data-popup-type": "center_tab" },
2541
- React__default["default"].createElement("div", { className: "le-center-tab-popup" },
2542
- React__default["default"].createElement("div", { style: { position: 'relative' } },
2543
- React__default["default"].createElement("a", { className: "js-popup-other-submit", href: url, target: newTab ? 'blank' : '_parent', onClick: onOtherSubmit },
2544
- index$8.isVideo(imageMobile) ? (React__default["default"].createElement("video", { loop: true, muted: true, autoPlay: true, className: "le-only-mobile" },
2545
- React__default["default"].createElement("source", { src: imageMobile }))) : (React__default["default"].createElement("img", { className: "le-only-mobile", src: imageMobile, style: {
2546
- aspectRatio: `${imageMobileWidth}/${imageMobileHeight}`,
2547
- } })),
2548
- index$8.isVideo(imageDestkop) ? (React__default["default"].createElement("video", { loop: true, muted: true, autoPlay: true, className: "le-only-desktop" },
2549
- React__default["default"].createElement("source", { src: imageDestkop }))) : (React__default["default"].createElement("img", { className: "le-only-desktop", src: imageDestkop, style: {
2550
- aspectRatio: `${imageDestkopWidth}/${imageDestkopHeight}`,
2551
- } }))),
2552
- React__default["default"].createElement(CloseButton, { onClose: onClose, containerClassName: "close-button-top-right" })))));
1414
+ return (React__default["default"].createElement("div", { id: popupId, className: "lead-modal-wrapper", "data-popup-url": location.pathname, "data-popup-type": "center_tab" },
1415
+ React__default["default"].createElement("div", { className: "le-center-tab-popup" },
1416
+ React__default["default"].createElement("div", { style: { position: 'relative' } },
1417
+ React__default["default"].createElement("a", { className: "js-popup-other-submit", href: url, target: newTab ? 'blank' : '_parent', onClick: onOtherSubmit },
1418
+ index$7.isVideo(imageMobile) ? (React__default["default"].createElement("video", { loop: true, muted: true, autoPlay: true, className: "le-only-mobile" },
1419
+ React__default["default"].createElement("source", { src: imageMobile }))) : (React__default["default"].createElement("img", { className: "le-only-mobile", src: imageMobile, style: {
1420
+ aspectRatio: `${imageMobileWidth}/${imageMobileHeight}`,
1421
+ } })),
1422
+ index$7.isVideo(imageDestkop) ? (React__default["default"].createElement("video", { loop: true, muted: true, autoPlay: true, className: "le-only-desktop" },
1423
+ React__default["default"].createElement("source", { src: imageDestkop }))) : (React__default["default"].createElement("img", { className: "le-only-desktop", src: imageDestkop, style: {
1424
+ aspectRatio: `${imageDestkopWidth}/${imageDestkopHeight}`,
1425
+ } }))),
1426
+ React__default["default"].createElement(CloseButton, { onClose: onClose, containerClassName: "close-button-top-right" })))));
2553
1427
  };
2554
1428
 
2555
1429
  // title: titleText
@@ -2771,6 +1645,211 @@ const EmptyComponent = ({ onClose, onContinue, }) => {
2771
1645
  React__default["default"].createElement(core.Button, { onClick: onContinue, size: "lg", variant: "filled", fullWidth: false, className: "leadgen-btn leadgen-btn_empty_again" }, t('lead.empty.submitAgain')))));
2772
1646
  };
2773
1647
 
1648
+ const libraries = ['places'];
1649
+ const GoogleLocationBlock = (props) => {
1650
+ var _a;
1651
+ const { inputWrapperOrder = ['label', 'input', 'description', 'error'], defaultValue, value: valueProps, onChange: onChangeProps, locale } = props, restProps = tslib_es6.__rest(props, ["inputWrapperOrder", "defaultValue", "value", "onChange", "locale"]);
1652
+ const [LoadScript, setLoadScript] = React.useState(null);
1653
+ const [value, setValue] = React.useState(defaultValue || valueProps);
1654
+ const { predictions } = usePlacesAutocomplete.usePlacesAutocomplete(value, '', locale === 'tl-PH' ? 'en' : (_a = locale === null || locale === void 0 ? void 0 : locale.split('-')) === null || _a === void 0 ? void 0 : _a[0]);
1655
+ const onChangeAutocomplete = React.useCallback((s) => {
1656
+ setValue(s);
1657
+ onChangeProps === null || onChangeProps === void 0 ? void 0 : onChangeProps(s);
1658
+ }, []);
1659
+ const onClickItem = React.useCallback((item) => {
1660
+ /** For sure get value */
1661
+ setValue(item.value);
1662
+ const predCur = predictions === null || predictions === void 0 ? void 0 : predictions.find(({ description }) => description === item.value);
1663
+ onChangeProps === null || onChangeProps === void 0 ? void 0 : onChangeProps(item.value, predCur === null || predCur === void 0 ? void 0 : predCur.rawData);
1664
+ }, [onChangeProps, predictions]);
1665
+ React.useEffect(() => {
1666
+ setValue(valueProps);
1667
+ }, [valueProps]);
1668
+ React.useEffect(() => {
1669
+ var _a, _b, _c;
1670
+ // only load extra google script when not yet loaded
1671
+ if (!((_c = (_b = (_a = window === null || window === void 0 ? void 0 : window.google) === null || _a === void 0 ? void 0 : _a.maps) === null || _b === void 0 ? void 0 : _b.places) === null || _c === void 0 ? void 0 : _c.AutocompleteService) && !LoadScript) {
1672
+ Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@react-google-maps/api')); }).then((m) => {
1673
+ setLoadScript(() => m.LoadScript);
1674
+ });
1675
+ }
1676
+ }, []);
1677
+ return (React__default["default"].createElement(core.Autocomplete, Object.assign({ defaultValue: defaultValue, value: value, onChange: onChangeAutocomplete, data: predictions.map((pred) => {
1678
+ return { value: pred.description, label: pred.description };
1679
+ }), filter: () => true, onItemSubmit: onClickItem, inputWrapperOrder: inputWrapperOrder, zIndex: index$8.ZINDEX_SSO - 9e6 + 2, withinPortal: true, styles: { dropdown: { pointerEvents: 'auto' } }, inputContainer: (children) => {
1680
+ return (React__default["default"].createElement(React__default["default"].Fragment, null,
1681
+ LoadScript && (React__default["default"].createElement(LoadScript, { googleMapsApiKey: usePlacesAutocomplete.GOOGLE_API_KEY, libraries: libraries, loadingElement: React__default["default"].createElement(React__default["default"].Fragment, null), style: { width: '100%' } })),
1682
+ children));
1683
+ } }, restProps)));
1684
+ };
1685
+
1686
+ // You can give context variables any name
1687
+ const [LeadFormProvider, useLeadFormContext, useLeadForm] = form.createFormContext();
1688
+ const useLeadFormConfig = ({ listBlockAdded = [], validatingPhoneRef, validatingEmailRef, campaignId, campaign_subot_id = [], userInfo, }) => {
1689
+ const { t } = index.useTranslations();
1690
+ const initialValues = React.useMemo(() => mappingSSOToLead(userInfo), [userInfo === null || userInfo === void 0 ? void 0 : userInfo.id]);
1691
+ const validateObj = React.useMemo(() => {
1692
+ const InputBlocks = [
1693
+ 'TextBlock',
1694
+ 'NumberBlock',
1695
+ 'EmailBlock',
1696
+ 'PhoneBlock',
1697
+ 'DateBlock',
1698
+ 'CheckboxBlock',
1699
+ 'RadioBlock',
1700
+ 'DropdownBlock',
1701
+ 'PhoneOtpBlock',
1702
+ 'WhatsappOtpBlock',
1703
+ 'ZaloOtpBlock',
1704
+ 'LocationBlock',
1705
+ 'TncBlock',
1706
+ ];
1707
+ // ALL are required and can skip if not touched yet
1708
+ const withSharedCheck = (name, cb,
1709
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1710
+ block) => {
1711
+ return (value) => {
1712
+ var _a;
1713
+ const isBLockRequired = (_a = block === null || block === void 0 ? void 0 : block.data) === null || _a === void 0 ? void 0 : _a.required;
1714
+ if (!formRef.current.isTouched(name))
1715
+ return;
1716
+ if ((typeof value === 'string' && value.replace(' ', '') === '') ||
1717
+ typeof value === 'undefined' ||
1718
+ value === '' ||
1719
+ (Array.isArray(value) && value.length === 0)) {
1720
+ return isBLockRequired
1721
+ ? t('validator.required')
1722
+ : cb === null || cb === void 0 ? void 0 : cb(value);
1723
+ }
1724
+ return cb === null || cb === void 0 ? void 0 : cb(value);
1725
+ };
1726
+ };
1727
+ return listBlockAdded
1728
+ .filter((b) => InputBlocks.includes(b.name))
1729
+ .reduce((r, b) => {
1730
+ var _a;
1731
+ const isRequired = (_a = b.data.required) !== null && _a !== void 0 ? _a : true;
1732
+ if (b.name === 'NumberBlock') {
1733
+ return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1734
+ if (value && isNaN(Number(value))) {
1735
+ return t('validator.number');
1736
+ }
1737
+ }, b) });
1738
+ }
1739
+ else if (b.name === 'EmailBlock') {
1740
+ return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1741
+ if (value && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value)) {
1742
+ return t('validator.email');
1743
+ }
1744
+ if (!value)
1745
+ return;
1746
+ validatingEmailRef.current = true;
1747
+ setTimeout(() => {
1748
+ formRef.current.setFieldError(b.data.value, 'Validating...');
1749
+ checkUsedEmailOrPhoneWithCache(campaignId, campaign_subot_id, {
1750
+ email: value,
1751
+ })
1752
+ .then((tKey) => {
1753
+ if (tKey) {
1754
+ formRef.current.setFieldError(b.data.value, t(tKey));
1755
+ }
1756
+ else {
1757
+ formRef.current.clearFieldError(b.data.value);
1758
+ }
1759
+ validatingEmailRef.current = false;
1760
+ })
1761
+ .catch((e) => {
1762
+ console.error(e);
1763
+ formRef.current.setFieldError(b.data.value, e.message || 'Something went wrong');
1764
+ validatingEmailRef.current = false;
1765
+ });
1766
+ }, 200);
1767
+ }, b) });
1768
+ }
1769
+ else if (b.name === 'PhoneBlock' ||
1770
+ b.name === 'PhoneOtpBlock' ||
1771
+ b.name === 'ZaloOtpBlock' ||
1772
+ b.name === 'WhatsappOtpBlock') {
1773
+ return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1774
+ if (value &&
1775
+ window.intlTelInputUtils &&
1776
+ !window.intlTelInputUtils.isValidNumber(String(value), LEAD_LOCALE.countryCode)) {
1777
+ return t('validator.phone');
1778
+ }
1779
+ if (!value)
1780
+ return;
1781
+ validatingPhoneRef.current = true;
1782
+ setTimeout(() => {
1783
+ formRef.current.setFieldError(b.data.value, 'Validating...');
1784
+ if (b.data.singleSubmission) {
1785
+ checkUsedPhoneOnlyWithCache(campaignId, value)
1786
+ .then((tKey) => {
1787
+ if (tKey) {
1788
+ formRef.current.setFieldError(b.data.value, t(tKey));
1789
+ }
1790
+ else {
1791
+ formRef.current.clearFieldError(b.data.value);
1792
+ }
1793
+ validatingPhoneRef.current = false;
1794
+ })
1795
+ .catch((err) => {
1796
+ console.error(err);
1797
+ formRef.current.setFieldError(b.data.value, err.message || 'Something went wrong');
1798
+ validatingPhoneRef.current = false;
1799
+ });
1800
+ }
1801
+ else {
1802
+ checkUsedEmailOrPhoneWithCache(campaignId, campaign_subot_id, {
1803
+ phone: value,
1804
+ })
1805
+ .then((tKey) => {
1806
+ if (tKey) {
1807
+ formRef.current.setFieldError(b.data.value, t(tKey));
1808
+ }
1809
+ else {
1810
+ formRef.current.clearFieldError(b.data.value);
1811
+ }
1812
+ validatingPhoneRef.current = false;
1813
+ })
1814
+ .catch((e) => {
1815
+ console.error(e);
1816
+ formRef.current.setFieldError(b.data.value, e.message || 'Something went wrong');
1817
+ validatingPhoneRef.current = false;
1818
+ });
1819
+ }
1820
+ }, 200);
1821
+ }, b) });
1822
+ }
1823
+ else if (b.name === 'DateBlock') {
1824
+ return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, (value) => {
1825
+ if (value && isNaN(Date.parse(value))) {
1826
+ return t('validator.date');
1827
+ }
1828
+ }, b) });
1829
+ }
1830
+ else if (b.name === 'TncBlock') {
1831
+ return Object.assign(Object.assign({}, r), { [`TNC-` + b.id]: withSharedCheck('TNC-' + b.id, (value) => {
1832
+ if (isRequired && !value) {
1833
+ return t('validator.required');
1834
+ }
1835
+ }, b) });
1836
+ }
1837
+ else {
1838
+ return Object.assign(Object.assign({}, r), { [b.data.value]: withSharedCheck(b.data.value, undefined, b) });
1839
+ }
1840
+ }, {});
1841
+ }, [listBlockAdded.map((b) => b.name).join(',')]);
1842
+ const form = useLeadForm({
1843
+ validateInputOnChange: true,
1844
+ clearInputErrorOnChange: true,
1845
+ validate: validateObj,
1846
+ initialValues,
1847
+ });
1848
+ const formRef = React.useRef(form);
1849
+ formRef.current = form;
1850
+ return { form, validateObj };
1851
+ };
1852
+
2774
1853
  const SubtitleBlock = ({ children, align, }) => (React__default["default"].createElement("p", { className: `lead-modal__description ${'le-text-align-' + (align || '')} ${LEAD_CLASS}` }, children));
2775
1854
 
2776
1855
  const cssInputNotShrink = react.css `
@@ -3089,13 +2168,11 @@ const TextField = (props) => {
3089
2168
  const $focusEl = $textEl.item($textEl.length - 1);
3090
2169
  if ($focusEl) {
3091
2170
  $focusEl.focus();
3092
- setTimeout(() => {
3093
- $focusEl.scrollIntoView({
3094
- behavior: 'auto',
3095
- block: 'center',
3096
- inline: 'start',
3097
- });
3098
- }, 100);
2171
+ $focusEl.scrollIntoView({
2172
+ behavior: 'auto',
2173
+ block: 'center',
2174
+ inline: 'start',
2175
+ });
3099
2176
  }
3100
2177
  }, [shrink]);
3101
2178
  React.useEffect(() => {
@@ -3318,7 +2395,7 @@ const HeaderImage = ({ src, ratio = 3 / 2, className, style, }) => {
3318
2395
  if (!src) {
3319
2396
  return null;
3320
2397
  }
3321
- return (React__default["default"].createElement(StyleHeaderImage, { paddingTop: (1 / ratio) * 100, className: core.clsx(className, 'leadgen-header_image'), style: style }, index$8.isVideo(src) ? (React__default["default"].createElement("video", { muted: true, autoPlay: true, loop: true, className: "leadgen-header_image_feature leadgen-header_image_video", src: src })) : (React__default["default"].createElement("img", { src: src, draggable: "false", alt: "", className: "leadgen-header_image_feature leadgen-header_image_image" }))));
2398
+ return (React__default["default"].createElement(StyleHeaderImage, { paddingTop: (1 / ratio) * 100, className: core.clsx(className, 'leadgen-header_image'), style: style }, index$7.isVideo(src) ? (React__default["default"].createElement("video", { muted: true, autoPlay: true, loop: true, className: "leadgen-header_image_feature leadgen-header_image_video", src: src })) : (React__default["default"].createElement("img", { src: src, draggable: "false", alt: "", className: "leadgen-header_image_feature leadgen-header_image_image" }))));
3322
2399
  };
3323
2400
 
3324
2401
  const OtpBlock = ({ otpData, onSuccess, autoSendWhenOpen, }) => {
@@ -3495,7 +2572,7 @@ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSub
3495
2572
  const isDrawer = isLightBoxB && isMobile;
3496
2573
  const limitFieldsLightBoxB = isLightBoxB && listBlockAdded.length <= LEADGEN_LIMIT_LIGHTBOXB;
3497
2574
  const hasForm = isLightBoxA
3498
- ? listBlockAdded.some((item) => LEADGEN_BLOCK_INPUT.some((k) => k === (item === null || item === void 0 ? void 0 : item.name)))
2575
+ ? listBlockAdded.some((item) => LEADGEN_BLOCK_IN_FORM.some((k) => k === (item === null || item === void 0 ? void 0 : item.name)))
3499
2576
  : true;
3500
2577
  const headerInsideFormContainer = isSlider || isLightBoxA || isFullscreen;
3501
2578
  const showHeader = !!imageMobile || !!imageDesktop;
@@ -3661,7 +2738,7 @@ const LightboxLayout = ({ popupId, extraFields, onClose: onCloseProp, onOtherSub
3661
2738
  'leadgen-inline': isInPage,
3662
2739
  'leadgen-slider': isSlider,
3663
2740
  });
3664
- const PopupContainer = isDrawer ? (React__default["default"].createElement(index$9.DrawerComponent, { fadeFromIndex: index$7.ZINDEX_SSO - 9e6, open: open, snapPoints: [0.8, 1], activeSnapPoint: snap, setActiveSnapPoint: setSnap, onOpenChange: onOpenChange, overlayClassName: popupContainerClassName, className: "leadgen-drawer" },
2741
+ const PopupContainer = isDrawer ? (React__default["default"].createElement(index$9.DrawerComponent, { fadeFromIndex: index$8.ZINDEX_SSO - 9e6, open: open, snapPoints: [0.8, 1], activeSnapPoint: snap, setActiveSnapPoint: setSnap, onOpenChange: onOpenChange, overlayClassName: popupContainerClassName, className: "leadgen-drawer" },
3665
2742
  PopupWrapper,
3666
2743
  React__default["default"].createElement("div", { style: { position: 'absolute', inset: 0, zIndex: snap === 1 ? -1 : 1 }, onClick: () => setSnap(1) }))) : (React__default["default"].createElement("div", { id: popupId, "data-popup-url": currentPath, "data-popup-type": "lightbox-inline", className: popupContainerClassName },
3667
2744
  isFullscreen ? (React__default["default"].createElement("img", { className: "le-only-desktop le-fullscreen-img", draggable: false, src: imageBackground || '', style: {
@@ -3724,7 +2801,7 @@ const SkinLayout = ({ popupId, link, linkText, linkNewTab, onClose, imageMobile,
3724
2801
  React__default["default"].createElement("aside", { className: "le-only-mobile" },
3725
2802
  React__default["default"].createElement("div", { className: "le-skin-mobile" },
3726
2803
  React__default["default"].createElement("div", { style: { position: 'relative' } },
3727
- index$8.isVideo(imageMobile) ? (React__default["default"].createElement("video", { muted: true, autoPlay: true, loop: true },
2804
+ index$7.isVideo(imageMobile) ? (React__default["default"].createElement("video", { muted: true, autoPlay: true, loop: true },
3728
2805
  React__default["default"].createElement("source", { src: imageMobile, type: "video/mp4" }))) : (React__default["default"].createElement("img", { src: imageMobile, style: {
3729
2806
  width: '100%',
3730
2807
  aspectRatio: `${imageMobileWidth}/${imageMobileHeight}`,
@@ -4521,7 +3598,7 @@ const _LeadGen = ({ apiUrl: apiUrlProp, siteDomain, siteId, locale, apiSubotUrl,
4521
3598
  }, [showCampaign]);
4522
3599
  return (React__default["default"].createElement(LeadGenContext.Provider, { value: { apiUrl, siteDomain, siteId, locale } },
4523
3600
  React__default["default"].createElement(translationsContext.TranslationsContext.Provider, { value: { locale, values: getTranslations(locale) } }, children ? (React__default["default"].createElement(Component, { campaign: showCampaign, onSubmit: onSubmit, onClose: onClose, showThankyou: showThankyou, setShowThankyou: setShowThankyou, locale: locale, showEmpty: showEmpty, setShowEmpty: setShowEmpty, userInfo: userInfo }, children)) : (React__default["default"].createElement(core.Portal, { target: utils$1.getPopupWrapperDom() },
4524
- React__default["default"].createElement(core.Box, { sx: { position: 'fixed', zIndex: index$7.ZINDEX_SSO - 9e6 } },
3601
+ React__default["default"].createElement(core.Box, { sx: { position: 'fixed', zIndex: index$8.ZINDEX_SSO - 9e6 } },
4525
3602
  React__default["default"].createElement(core.Transition, { mounted: Boolean(((_a = showCampaign === null || showCampaign === void 0 ? void 0 : showCampaign.extra_fields) === null || _a === void 0 ? void 0 : _a.popupVersion) === '2.1'), transition: "fade", duration: 600, timingFunction: "ease" }, (styles) => {
4526
3603
  var _a;
4527
3604
  return (React__default["default"].createElement(core.Box, { style: styles }, ((_a = showCampaign === null || showCampaign === void 0 ? void 0 : showCampaign.extra_fields) === null || _a === void 0 ? void 0 : _a.popupVersion) === '2.1' && (React__default["default"].createElement(React__default["default"].Fragment, null,
@@ -4540,4 +3617,3 @@ LeadGen.OtpForm = OtpBlock$1;
4540
3617
  LeadGen.Close = Close.Close;
4541
3618
 
4542
3619
  exports.LeadGen = LeadGen;
4543
- exports.LeadGenSubscriptionBox = LeadGenSubscriptionBox;