@sheerid/jslib-nightly 2.132.0-alpha.0 → 2.133.0-alpha.0

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 (515) hide show
  1. package/StepIDCheckLoopRegula.css +8 -0
  2. package/_mysheerid-preview.css +4 -4
  3. package/_mysheerid-preview.js +2382 -2379
  4. package/_mysheerid-preview.js.map +1 -1
  5. package/chunk/EmailLoopPending-CHILFZYc.js +4 -4
  6. package/chunk/EmailLoopPending-Nn_H3cfS.js +4 -4
  7. package/chunk/LicensedProfessionalOrganizationComponent-BYijEfDT.js +4 -4
  8. package/chunk/LicensedProfessionalOrganizationComponent-CiYU-2dW.js +4 -4
  9. package/chunk/Onfido-BX3RMDPu.js +4 -4
  10. package/chunk/{StepIDCheckLoopOnfido-D0kpzIyk.js → StepIDCheckLoopOnfido-BYKGoECK.js} +5 -5
  11. package/chunk/{StepIDCheckLoopOnfido-Bl1QfUZZ.js.map → StepIDCheckLoopOnfido-BYKGoECK.js.map} +1 -1
  12. package/chunk/{StepIDCheckLoopOnfido-Bl1QfUZZ.js → StepIDCheckLoopOnfido-BZUbGXcg.js} +5 -5
  13. package/chunk/{StepIDCheckLoopOnfido-D0kpzIyk.js.map → StepIDCheckLoopOnfido-BZUbGXcg.js.map} +1 -1
  14. package/chunk/StepIDCheckLoopRegula-CCHkCOBz.js +24140 -0
  15. package/chunk/StepIDCheckLoopRegula-CCHkCOBz.js.map +1 -0
  16. package/chunk/StepIDCheckLoopRegula-CHsMvmKH.js +24136 -0
  17. package/chunk/StepIDCheckLoopRegula-CHsMvmKH.js.map +1 -0
  18. package/chunk/{StepInactiveMilitaryPersonalInfoComponent-DTtUadmx.js → StepInactiveMilitaryPersonalInfoComponent-B_SLFztq.js} +12 -12
  19. package/chunk/{StepInactiveMilitaryPersonalInfoComponent-CooMPgH1.js.map → StepInactiveMilitaryPersonalInfoComponent-B_SLFztq.js.map} +1 -1
  20. package/chunk/{StepInactiveMilitaryPersonalInfoComponent-CooMPgH1.js → StepInactiveMilitaryPersonalInfoComponent-D5bERGdY.js} +12 -12
  21. package/chunk/{StepInactiveMilitaryPersonalInfoComponent-DTtUadmx.js.map → StepInactiveMilitaryPersonalInfoComponent-D5bERGdY.js.map} +1 -1
  22. package/chunk/{ar--TDb5qE5.js → ar-B0mzN_Bd.js} +12 -5
  23. package/chunk/{ar--TDb5qE5.js.map → ar-B0mzN_Bd.js.map} +1 -1
  24. package/chunk/{bg-D3cL-ciP.js → bg-CvzePvRz.js} +12 -5
  25. package/chunk/{bg-D3cL-ciP.js.map → bg-CvzePvRz.js.map} +1 -1
  26. package/chunk/{bn-IN-BqsOEBPN.js → bn-IN-jTk0yOHO.js} +12 -5
  27. package/chunk/{en-GB-DXa6bdA_.js.map → bn-IN-jTk0yOHO.js.map} +1 -1
  28. package/chunk/{cs-7pQwm9YC.js → cs-0hePpQmT.js} +12 -5
  29. package/chunk/{da-C2xASa_G.js.map → cs-0hePpQmT.js.map} +1 -1
  30. package/chunk/{da-C2xASa_G.js → da-BBEEUWuv.js} +12 -5
  31. package/chunk/{cs-7pQwm9YC.js.map → da-BBEEUWuv.js.map} +1 -1
  32. package/chunk/{de-D4nlAbMa.js → de-Kuzlya0F.js} +12 -5
  33. package/chunk/de-Kuzlya0F.js.map +1 -0
  34. package/chunk/{el-C-PZe5CV.js → el-BrF6GP4c.js} +12 -5
  35. package/chunk/el-BrF6GP4c.js.map +1 -0
  36. package/chunk/{en-GB-DXa6bdA_.js → en-GB-B1r5YmI6.js} +12 -5
  37. package/chunk/{es-ES-inNoG-F1.js.map → en-GB-B1r5YmI6.js.map} +1 -1
  38. package/chunk/{es-CNTVekqW.js → es-BmJo435P.js} +12 -5
  39. package/chunk/es-BmJo435P.js.map +1 -0
  40. package/chunk/{es-ES-inNoG-F1.js → es-ES-VJ4sReFa.js} +12 -5
  41. package/chunk/{bn-IN-BqsOEBPN.js.map → es-ES-VJ4sReFa.js.map} +1 -1
  42. package/chunk/{fi-CcolQnAY.js → fi-CuGjVMQ0.js} +12 -5
  43. package/chunk/fi-CuGjVMQ0.js.map +1 -0
  44. package/chunk/{fr-CA-CmZKx-C9.js → fr-CA-DoMwZIYT.js} +12 -5
  45. package/chunk/{fr-CA-CmZKx-C9.js.map → fr-CA-DoMwZIYT.js.map} +1 -1
  46. package/chunk/{fr-BjHvlhn5.js → fr-DXA7czWG.js} +12 -5
  47. package/chunk/fr-DXA7czWG.js.map +1 -0
  48. package/chunk/{ga-D-rK3PZy.js → ga-Cg4vMbHF.js} +12 -5
  49. package/chunk/ga-Cg4vMbHF.js.map +1 -0
  50. package/chunk/{hi-IN-B5SHv4t9.js → hi-IN-jLihWSoh.js} +12 -5
  51. package/chunk/hi-IN-jLihWSoh.js.map +1 -0
  52. package/chunk/{hr-CwvyeMFM.js → hr-8jLBEZkg.js} +12 -5
  53. package/chunk/hr-8jLBEZkg.js.map +1 -0
  54. package/chunk/{hu-BCZWPgvf.js → hu-Ein3QE6i.js} +12 -5
  55. package/chunk/hu-Ein3QE6i.js.map +1 -0
  56. package/chunk/{id-CRNXXELT.js → id-D2fOjsFI.js} +12 -5
  57. package/chunk/id-D2fOjsFI.js.map +1 -0
  58. package/chunk/index-1Cpf6KJI.js +4 -4
  59. package/chunk/index-2ob_KvkC.js +4 -4
  60. package/chunk/{index-BqUi3r5Z.js → index-BFhiexXx.js} +38 -38
  61. package/chunk/{index-BqUi3r5Z.js.map → index-BFhiexXx.js.map} +1 -1
  62. package/chunk/index-BU0HFLKm.js +4 -4
  63. package/chunk/{index-B4HIyFVA.js → index-Bau2KdXG.js} +7 -7
  64. package/chunk/{index-B4HIyFVA.js.map → index-Bau2KdXG.js.map} +1 -1
  65. package/chunk/index-C4OCK6G0.js +4 -4
  66. package/chunk/{index-CyTruyP6.js → index-C6KSFLsT.js} +38 -38
  67. package/chunk/{index-CyTruyP6.js.map → index-C6KSFLsT.js.map} +1 -1
  68. package/chunk/index-C8UuTatc.js +4 -4
  69. package/chunk/{index-xgVNIuKt.js → index-CPnI6FMZ.js} +5 -5
  70. package/chunk/{index-B5Db6m8t.js.map → index-CPnI6FMZ.js.map} +1 -1
  71. package/chunk/{index-CxH2IKXK.js → index-CQ1xb7h6.js} +6 -6
  72. package/chunk/{index-CxH2IKXK.js.map → index-CQ1xb7h6.js.map} +1 -1
  73. package/chunk/{index-BJg9BX3v.js → index-CRJId5Zv.js} +68 -67
  74. package/chunk/index-CRJId5Zv.js.map +1 -0
  75. package/chunk/index-CVEIzLov.js +4 -4
  76. package/chunk/index-CcE-GFi6.js +4 -4
  77. package/chunk/{index-Br3LkCoX.js → index-CjD74fwh.js} +9 -9
  78. package/chunk/{index-Br3LkCoX.js.map → index-CjD74fwh.js.map} +1 -1
  79. package/chunk/index-CjcYFvhf.js +4 -4
  80. package/chunk/{index-CoPQ1aC2.js → index-CqC2-Uw8.js} +9 -9
  81. package/chunk/{index-CoPQ1aC2.js.map → index-CqC2-Uw8.js.map} +1 -1
  82. package/chunk/{index-B5Db6m8t.js → index-D3QYlp53.js} +5 -5
  83. package/chunk/{index-xgVNIuKt.js.map → index-D3QYlp53.js.map} +1 -1
  84. package/chunk/{index-BLIxYZFr.js → index-D4FMD-a0.js} +68 -67
  85. package/chunk/index-D4FMD-a0.js.map +1 -0
  86. package/chunk/{index-N20c5WiN.js → index-D8yzfA8-.js} +5 -5
  87. package/chunk/{index-N20c5WiN.js.map → index-D8yzfA8-.js.map} +1 -1
  88. package/chunk/index-DAE3SOJH.js +4 -4
  89. package/chunk/index-DCTYdT7J.js +4 -4
  90. package/chunk/{index-Bofro8C_.js → index-DE9bhf5R.js} +5 -5
  91. package/chunk/{index-Bofro8C_.js.map → index-DE9bhf5R.js.map} +1 -1
  92. package/chunk/index-DFajPA-e.js +4 -4
  93. package/chunk/index-DHtYIKVA.js +4 -4
  94. package/chunk/index-DIkWpujR.js +4 -4
  95. package/chunk/index-DJo820YY.js +4 -4
  96. package/chunk/{index--Wcf_zsf.js → index-DR8uqKnQ.js} +9 -9
  97. package/chunk/{index--Wcf_zsf.js.map → index-DR8uqKnQ.js.map} +1 -1
  98. package/chunk/{index-dDH8B6_D.js → index-DWvcHUC_.js} +5 -5
  99. package/chunk/{index-DljRrdj9.js.map → index-DWvcHUC_.js.map} +1 -1
  100. package/chunk/index-DdQD36Ht.js +4 -4
  101. package/chunk/index-Dg1E2EXp.js +4 -4
  102. package/chunk/{index-Cnc52tkD.js → index-Du-JJq6C.js} +6 -6
  103. package/chunk/{index-Cnc52tkD.js.map → index-Du-JJq6C.js.map} +1 -1
  104. package/chunk/{index-Cu25bQnA.js → index-EDd1yOka.js} +7 -7
  105. package/chunk/{index-Cu25bQnA.js.map → index-EDd1yOka.js.map} +1 -1
  106. package/chunk/index-SwnUiXjr.js +4 -4
  107. package/chunk/{index-DSi_yLKY.js → index-dt1aUu5L.js} +9 -9
  108. package/chunk/{index-DSi_yLKY.js.map → index-dt1aUu5L.js.map} +1 -1
  109. package/chunk/index-huf3obhv.js +4 -4
  110. package/chunk/index-n6fChAZJ.js +4 -4
  111. package/chunk/index-oHEY5B58.js +4 -4
  112. package/chunk/{index-DljRrdj9.js → index-rWdohxWw.js} +5 -5
  113. package/chunk/{index-dDH8B6_D.js.map → index-rWdohxWw.js.map} +1 -1
  114. package/chunk/index-zX2rojxg.js +4 -4
  115. package/chunk/{is-BFoDLV-f.js → is-uofBua88.js} +12 -5
  116. package/chunk/is-uofBua88.js.map +1 -0
  117. package/chunk/{it-B_iK-eSd.js → it-BXQ3Cdz7.js} +12 -5
  118. package/chunk/it-BXQ3Cdz7.js.map +1 -0
  119. package/chunk/{iw-DL48t5mZ.js → iw-BVcBUbNp.js} +12 -5
  120. package/chunk/iw-BVcBUbNp.js.map +1 -0
  121. package/chunk/{ja-C5bG2SRl.js → ja-D_sIjDrs.js} +12 -5
  122. package/chunk/ja-D_sIjDrs.js.map +1 -0
  123. package/chunk/{ko-CmmVl873.js → ko-yej6GW7B.js} +12 -5
  124. package/chunk/ko-yej6GW7B.js.map +1 -0
  125. package/chunk/{lo-DvBsVm-4.js → lo-DOxRq08B.js} +12 -5
  126. package/chunk/lo-DOxRq08B.js.map +1 -0
  127. package/chunk/{lt-DWoqI4gx.js → lt-C0zB7hhb.js} +12 -5
  128. package/chunk/lt-C0zB7hhb.js.map +1 -0
  129. package/chunk/{ms-BCHBEoqA.js → ms-Dkvk6osM.js} +12 -5
  130. package/chunk/ms-Dkvk6osM.js.map +1 -0
  131. package/chunk/{nl-CeBqOv0i.js → nl-BBLPfL9j.js} +12 -5
  132. package/chunk/nl-BBLPfL9j.js.map +1 -0
  133. package/chunk/{nl-BE-DLixID0q.js → nl-BE-BPYfvpfr.js} +12 -5
  134. package/chunk/nl-BE-BPYfvpfr.js.map +1 -0
  135. package/chunk/{no-BR2xqD23.js → no-ClrbrhEP.js} +12 -5
  136. package/chunk/no-ClrbrhEP.js.map +1 -0
  137. package/chunk/{pl-Dl77tRgW.js → pl-DC_JTakc.js} +12 -5
  138. package/chunk/pl-DC_JTakc.js.map +1 -0
  139. package/chunk/{pt-BR--SxHOWht.js → pt-BR-B4MbJXYr.js} +12 -5
  140. package/chunk/pt-BR-B4MbJXYr.js.map +1 -0
  141. package/chunk/{pt-D0bmI49-.js → pt-nXffRpe2.js} +12 -5
  142. package/chunk/pt-nXffRpe2.js.map +1 -0
  143. package/chunk/{ro-HCkS3amY.js → ro-C1QBP9eD.js} +12 -5
  144. package/chunk/ro-C1QBP9eD.js.map +1 -0
  145. package/chunk/{ru-BDMi1lvr.js → ru-BDzTrG_-.js} +12 -5
  146. package/chunk/ru-BDzTrG_-.js.map +1 -0
  147. package/chunk/{sk-C4zNHeM6.js → sk-D4uJEbt6.js} +12 -5
  148. package/chunk/sk-D4uJEbt6.js.map +1 -0
  149. package/chunk/{sl-BbQVw1S0.js → sl-BqUvHKAJ.js} +12 -5
  150. package/chunk/sl-BqUvHKAJ.js.map +1 -0
  151. package/chunk/{sr-8d4sC8Hd.js → sr-cEvuJUfp.js} +12 -5
  152. package/chunk/sr-cEvuJUfp.js.map +1 -0
  153. package/chunk/{sv-B0-e7r_0.js → sv-ClxhV6_2.js} +12 -5
  154. package/chunk/sv-ClxhV6_2.js.map +1 -0
  155. package/chunk/{sw-Bo9F25Vc.js → sw-CKmTEK_g.js} +12 -5
  156. package/chunk/sw-CKmTEK_g.js.map +1 -0
  157. package/chunk/{th-DDuVbwLh.js → th-sCIzxp8V.js} +12 -5
  158. package/chunk/th-sCIzxp8V.js.map +1 -0
  159. package/chunk/{tr-CUwkgj2T.js → tr-Cj86X7Xp.js} +12 -5
  160. package/chunk/tr-Cj86X7Xp.js.map +1 -0
  161. package/chunk/{uk-BPrGA4MJ.js → uk-DuUWNZyE.js} +12 -5
  162. package/chunk/uk-DuUWNZyE.js.map +1 -0
  163. package/chunk/{ur-Cdtm-A0s.js → ur-oveEgJDZ.js} +12 -5
  164. package/chunk/ur-oveEgJDZ.js.map +1 -0
  165. package/chunk/useCollectFieldsEndpoint-DFo1yXvN.js +4 -4
  166. package/chunk/useCollectFieldsEndpoint-DPX8CT4Y.js +4 -4
  167. package/chunk/{useEmailFirstExperiment-q-thhCji.js → useEmailFirstExperiment-Cc1gdkQd.js} +26 -26
  168. package/chunk/{useEmailFirstExperiment-q-thhCji.js.map → useEmailFirstExperiment-Cc1gdkQd.js.map} +1 -1
  169. package/chunk/{useEmailFirstExperiment-DH410dM-.js → useEmailFirstExperiment-Ct5y0TUO.js} +26 -26
  170. package/chunk/{useEmailFirstExperiment-DH410dM-.js.map → useEmailFirstExperiment-Ct5y0TUO.js.map} +1 -1
  171. package/chunk/{vi-JbWizd9m.js → vi-uAKu07fX.js} +12 -5
  172. package/chunk/vi-uAKu07fX.js.map +1 -0
  173. package/chunk/{zh-HK-DXcspp2Y.js → zh-HK-BtpTdvxI.js} +12 -5
  174. package/chunk/zh-HK-BtpTdvxI.js.map +1 -0
  175. package/chunk/{zh-DjbXrser.js → zh-nzIa0uRS.js} +12 -5
  176. package/chunk/zh-nzIa0uRS.js.map +1 -0
  177. package/chunk/{zu-BzwZfIDF.js → zu-D3GJZUZ3.js} +12 -5
  178. package/chunk/zu-D3GJZUZ3.js.map +1 -0
  179. package/es6.css +4 -4
  180. package/jslib.js +25 -25
  181. package/lib/{EmailLoopPending-f1jnaMCa.js → EmailLoopPending-C3asqFaV.js} +11 -11
  182. package/lib/{EmailLoopPending-f1jnaMCa.js.map → EmailLoopPending-C3asqFaV.js.map} +1 -1
  183. package/lib/{LicensedProfessionalOrganizationComponent-DOJKnLOq.js → LicensedProfessionalOrganizationComponent-DlHreMgg.js} +5 -5
  184. package/lib/{LicensedProfessionalOrganizationComponent-DOJKnLOq.js.map → LicensedProfessionalOrganizationComponent-DlHreMgg.js.map} +1 -1
  185. package/lib/Onfido-BX3RMDPu.js +4 -4
  186. package/lib/StepCollectMilitaryStatusComponent-CrbaiB3G.js +11 -0
  187. package/lib/{StepCollectMilitaryStatusComponent-DwBZnwSd.js.map → StepCollectMilitaryStatusComponent-CrbaiB3G.js.map} +1 -1
  188. package/lib/{StepIDCheckLoopOnfido-Bbd7LHGl.js → StepIDCheckLoopOnfido-DUkLkoWZ.js} +5 -5
  189. package/lib/{StepIDCheckLoopOnfido-Bbd7LHGl.js.map → StepIDCheckLoopOnfido-DUkLkoWZ.js.map} +1 -1
  190. package/lib/StepIDCheckLoopRegula-BAaydCpb.js +23962 -0
  191. package/lib/StepIDCheckLoopRegula-BAaydCpb.js.map +1 -0
  192. package/lib/{StepInactiveMilitaryPersonalInfoComponent-Cnv0WH33.js → StepInactiveMilitaryPersonalInfoComponent-npFKpjb8.js} +26 -26
  193. package/lib/{StepInactiveMilitaryPersonalInfoComponent-Cnv0WH33.js.map → StepInactiveMilitaryPersonalInfoComponent-npFKpjb8.js.map} +1 -1
  194. package/lib/{VerificationApiUtils-BKZG3BMA.js → VerificationApiUtils-DLPoAr7j.js} +5 -5
  195. package/lib/{VerificationApiUtils-BKZG3BMA.js.map → VerificationApiUtils-DLPoAr7j.js.map} +1 -1
  196. package/lib/{ar--TDb5qE5.js → ar-B0mzN_Bd.js} +12 -5
  197. package/lib/ar-B0mzN_Bd.js.map +1 -0
  198. package/lib/{bg-D3cL-ciP.js → bg-CvzePvRz.js} +12 -5
  199. package/lib/bg-CvzePvRz.js.map +1 -0
  200. package/lib/{bn-IN-BqsOEBPN.js → bn-IN-jTk0yOHO.js} +12 -5
  201. package/lib/bn-IN-jTk0yOHO.js.map +1 -0
  202. package/lib/{cs-7pQwm9YC.js → cs-0hePpQmT.js} +12 -5
  203. package/lib/cs-0hePpQmT.js.map +1 -0
  204. package/lib/{da-C2xASa_G.js → da-BBEEUWuv.js} +12 -5
  205. package/lib/da-BBEEUWuv.js.map +1 -0
  206. package/lib/{de-D4nlAbMa.js → de-Kuzlya0F.js} +12 -5
  207. package/lib/de-Kuzlya0F.js.map +1 -0
  208. package/lib/{el-C-PZe5CV.js → el-BrF6GP4c.js} +12 -5
  209. package/lib/el-BrF6GP4c.js.map +1 -0
  210. package/lib/{en-GB-DXa6bdA_.js → en-GB-B1r5YmI6.js} +12 -5
  211. package/lib/en-GB-B1r5YmI6.js.map +1 -0
  212. package/lib/{es-CNTVekqW.js → es-BmJo435P.js} +12 -5
  213. package/lib/es-BmJo435P.js.map +1 -0
  214. package/lib/{es-ES-inNoG-F1.js → es-ES-VJ4sReFa.js} +12 -5
  215. package/lib/es-ES-VJ4sReFa.js.map +1 -0
  216. package/lib/{es6-C9uVx8os.js → es6-BnV6-nn6.js} +1052 -1036
  217. package/lib/es6-BnV6-nn6.js.map +1 -0
  218. package/lib/{fi-CcolQnAY.js → fi-CuGjVMQ0.js} +12 -5
  219. package/lib/fi-CuGjVMQ0.js.map +1 -0
  220. package/lib/{fr-CA-CmZKx-C9.js → fr-CA-DoMwZIYT.js} +12 -5
  221. package/lib/fr-CA-DoMwZIYT.js.map +1 -0
  222. package/lib/{fr-BjHvlhn5.js → fr-DXA7czWG.js} +12 -5
  223. package/lib/fr-DXA7czWG.js.map +1 -0
  224. package/lib/{ga-D-rK3PZy.js → ga-Cg4vMbHF.js} +12 -5
  225. package/lib/ga-Cg4vMbHF.js.map +1 -0
  226. package/lib/{hi-IN-B5SHv4t9.js → hi-IN-jLihWSoh.js} +12 -5
  227. package/lib/hi-IN-jLihWSoh.js.map +1 -0
  228. package/lib/{hr-CwvyeMFM.js → hr-8jLBEZkg.js} +12 -5
  229. package/lib/hr-8jLBEZkg.js.map +1 -0
  230. package/lib/{hu-BCZWPgvf.js → hu-Ein3QE6i.js} +12 -5
  231. package/lib/hu-Ein3QE6i.js.map +1 -0
  232. package/lib/{id-CRNXXELT.js → id-D2fOjsFI.js} +12 -5
  233. package/lib/id-D2fOjsFI.js.map +1 -0
  234. package/lib/{index-BkDGDkyF.js → index-7YK_CrGZ.js} +36 -36
  235. package/lib/{index-BkDGDkyF.js.map → index-7YK_CrGZ.js.map} +1 -1
  236. package/lib/{index-CFjXtM5c.js → index-BBw1ZoU3.js} +5 -5
  237. package/lib/{index-CFjXtM5c.js.map → index-BBw1ZoU3.js.map} +1 -1
  238. package/lib/{index-B4VKFVn5.js → index-BI1bxpVp.js} +18 -18
  239. package/lib/{index-B4VKFVn5.js.map → index-BI1bxpVp.js.map} +1 -1
  240. package/lib/{index-Dx7U_bMP.js → index-BThxi5DS.js} +24 -24
  241. package/lib/{index-Dx7U_bMP.js.map → index-BThxi5DS.js.map} +1 -1
  242. package/lib/{index-ByKtn29D.js → index-BVuj7IeT.js} +19 -19
  243. package/lib/{index-ByKtn29D.js.map → index-BVuj7IeT.js.map} +1 -1
  244. package/lib/{index-CpCmbFiO.js → index-Bh-Dkauz.js} +5 -5
  245. package/lib/{index-CpCmbFiO.js.map → index-Bh-Dkauz.js.map} +1 -1
  246. package/lib/index-BnflNQnL.js +185 -0
  247. package/lib/index-BnflNQnL.js.map +1 -0
  248. package/lib/index-CC574is9.js +11 -0
  249. package/lib/index-CC574is9.js.map +1 -0
  250. package/lib/{index-D1MaAlYJ.js → index-CCnNLAJ9.js} +7 -7
  251. package/lib/{index-D1MaAlYJ.js.map → index-CCnNLAJ9.js.map} +1 -1
  252. package/lib/index-CPzIAve6.js +11 -0
  253. package/lib/index-CPzIAve6.js.map +1 -0
  254. package/lib/{index-MZ8AUqKh.js → index-CU4VWt4y.js} +5 -5
  255. package/lib/{index-MZ8AUqKh.js.map → index-CU4VWt4y.js.map} +1 -1
  256. package/lib/{index-BvDeOjqb.js → index-CcKzNLcx.js} +20 -20
  257. package/lib/{index-BvDeOjqb.js.map → index-CcKzNLcx.js.map} +1 -1
  258. package/lib/{index-CmNcq_E3.js → index-CqM5GT6q.js} +9 -9
  259. package/lib/{index-CmNcq_E3.js.map → index-CqM5GT6q.js.map} +1 -1
  260. package/lib/{index-DFwWiYvd.js → index-D-kWzOG4.js} +5 -5
  261. package/lib/{index-DFwWiYvd.js.map → index-D-kWzOG4.js.map} +1 -1
  262. package/lib/{index-BxT33O9m.js → index-DHb5xWpq.js} +24 -24
  263. package/lib/{index-BxT33O9m.js.map → index-DHb5xWpq.js.map} +1 -1
  264. package/lib/index-DIkWpujR.js +4 -4
  265. package/lib/{index-BK47v1-n.js → index-DTTitkjm.js} +19 -19
  266. package/lib/{index-BK47v1-n.js.map → index-DTTitkjm.js.map} +1 -1
  267. package/lib/{index-ukt0OkGf.js → index-DabDVYES.js} +16 -16
  268. package/lib/{index-ukt0OkGf.js.map → index-DabDVYES.js.map} +1 -1
  269. package/lib/index-DhFhLdve.js +11 -0
  270. package/lib/index-DhFhLdve.js.map +1 -0
  271. package/lib/index-DtUF6vov.js +11 -0
  272. package/lib/index-DtUF6vov.js.map +1 -0
  273. package/lib/{index-x_-x3rK8.js → index-HW154tof.js} +6 -6
  274. package/lib/{index-x_-x3rK8.js.map → index-HW154tof.js.map} +1 -1
  275. package/lib/{index-CEthi0_N.js → index-YOLNI9gz.js} +5 -5
  276. package/lib/{index-CEthi0_N.js.map → index-YOLNI9gz.js.map} +1 -1
  277. package/lib/{index-Cdtl7tij.js → index-iCHF39WD.js} +20 -20
  278. package/lib/{index-Cdtl7tij.js.map → index-iCHF39WD.js.map} +1 -1
  279. package/lib/{index-DJv3POrD.js → index-paUjkUED.js} +19 -19
  280. package/lib/{index-DJv3POrD.js.map → index-paUjkUED.js.map} +1 -1
  281. package/lib/{is-BFoDLV-f.js → is-uofBua88.js} +12 -5
  282. package/lib/is-uofBua88.js.map +1 -0
  283. package/lib/{it-B_iK-eSd.js → it-BXQ3Cdz7.js} +12 -5
  284. package/lib/it-BXQ3Cdz7.js.map +1 -0
  285. package/lib/{iw-DL48t5mZ.js → iw-BVcBUbNp.js} +12 -5
  286. package/lib/iw-BVcBUbNp.js.map +1 -0
  287. package/lib/{ja-C5bG2SRl.js → ja-D_sIjDrs.js} +12 -5
  288. package/lib/ja-D_sIjDrs.js.map +1 -0
  289. package/lib/{ko-CmmVl873.js → ko-yej6GW7B.js} +12 -5
  290. package/lib/ko-yej6GW7B.js.map +1 -0
  291. package/lib/{lo-DvBsVm-4.js → lo-DOxRq08B.js} +12 -5
  292. package/lib/lo-DOxRq08B.js.map +1 -0
  293. package/lib/{lt-DWoqI4gx.js → lt-C0zB7hhb.js} +12 -5
  294. package/lib/lt-C0zB7hhb.js.map +1 -0
  295. package/lib/{ms-BCHBEoqA.js → ms-Dkvk6osM.js} +12 -5
  296. package/lib/ms-Dkvk6osM.js.map +1 -0
  297. package/lib/{nl-CeBqOv0i.js → nl-BBLPfL9j.js} +12 -5
  298. package/lib/nl-BBLPfL9j.js.map +1 -0
  299. package/lib/{nl-BE-DLixID0q.js → nl-BE-BPYfvpfr.js} +12 -5
  300. package/lib/nl-BE-BPYfvpfr.js.map +1 -0
  301. package/lib/{no-BR2xqD23.js → no-ClrbrhEP.js} +12 -5
  302. package/lib/no-ClrbrhEP.js.map +1 -0
  303. package/lib/{pl-Dl77tRgW.js → pl-DC_JTakc.js} +12 -5
  304. package/lib/pl-DC_JTakc.js.map +1 -0
  305. package/lib/{pt-BR--SxHOWht.js → pt-BR-B4MbJXYr.js} +12 -5
  306. package/lib/pt-BR-B4MbJXYr.js.map +1 -0
  307. package/lib/{pt-D0bmI49-.js → pt-nXffRpe2.js} +12 -5
  308. package/lib/pt-nXffRpe2.js.map +1 -0
  309. package/lib/{ro-HCkS3amY.js → ro-C1QBP9eD.js} +12 -5
  310. package/lib/ro-C1QBP9eD.js.map +1 -0
  311. package/lib/{ru-BDMi1lvr.js → ru-BDzTrG_-.js} +12 -5
  312. package/lib/ru-BDzTrG_-.js.map +1 -0
  313. package/lib/{sk-C4zNHeM6.js → sk-D4uJEbt6.js} +12 -5
  314. package/lib/sk-D4uJEbt6.js.map +1 -0
  315. package/lib/{sl-BbQVw1S0.js → sl-BqUvHKAJ.js} +12 -5
  316. package/lib/sl-BqUvHKAJ.js.map +1 -0
  317. package/lib/{sr-8d4sC8Hd.js → sr-cEvuJUfp.js} +12 -5
  318. package/lib/sr-cEvuJUfp.js.map +1 -0
  319. package/lib/{sv-B0-e7r_0.js → sv-ClxhV6_2.js} +12 -5
  320. package/lib/sv-ClxhV6_2.js.map +1 -0
  321. package/lib/{sw-Bo9F25Vc.js → sw-CKmTEK_g.js} +12 -5
  322. package/lib/sw-CKmTEK_g.js.map +1 -0
  323. package/lib/{th-DDuVbwLh.js → th-sCIzxp8V.js} +12 -5
  324. package/lib/th-sCIzxp8V.js.map +1 -0
  325. package/lib/{tr-CUwkgj2T.js → tr-Cj86X7Xp.js} +12 -5
  326. package/lib/tr-Cj86X7Xp.js.map +1 -0
  327. package/lib/{uk-BPrGA4MJ.js → uk-DuUWNZyE.js} +12 -5
  328. package/lib/uk-DuUWNZyE.js.map +1 -0
  329. package/lib/{ur-Cdtm-A0s.js → ur-oveEgJDZ.js} +12 -5
  330. package/lib/ur-oveEgJDZ.js.map +1 -0
  331. package/lib/{useCollectFieldsEndpoint-DpUjzm-c.js → useCollectFieldsEndpoint-Bg7LuTqN.js} +6 -6
  332. package/lib/{useCollectFieldsEndpoint-DpUjzm-c.js.map → useCollectFieldsEndpoint-Bg7LuTqN.js.map} +1 -1
  333. package/lib/{useEmailFirstExperiment-CRVgoM15.js → useEmailFirstExperiment-C4qS8xuG.js} +5 -5
  334. package/lib/{useEmailFirstExperiment-CRVgoM15.js.map → useEmailFirstExperiment-C4qS8xuG.js.map} +1 -1
  335. package/lib/{vi-JbWizd9m.js → vi-uAKu07fX.js} +12 -5
  336. package/lib/vi-uAKu07fX.js.map +1 -0
  337. package/lib/{zh-HK-DXcspp2Y.js → zh-HK-BtpTdvxI.js} +12 -5
  338. package/lib/zh-HK-BtpTdvxI.js.map +1 -0
  339. package/lib/{zh-DjbXrser.js → zh-nzIa0uRS.js} +12 -5
  340. package/lib/zh-nzIa0uRS.js.map +1 -0
  341. package/lib/{zu-BzwZfIDF.js → zu-D3GJZUZ3.js} +12 -5
  342. package/lib/zu-D3GJZUZ3.js.map +1 -0
  343. package/package.json +2 -1
  344. package/sheerid-install.css +4 -4
  345. package/sheerid-install.js +5 -5
  346. package/sheerid.css +5 -5
  347. package/sheerid.js +1409 -1406
  348. package/sheerid.js.map +1 -1
  349. package/src/components/ExpandableImage/ExpandableImage.d.ts +10 -0
  350. package/src/components/ExpandableImage/ExpandableImage.test.d.ts +1 -0
  351. package/src/components/FeatureFlags/flags.d.ts +1 -0
  352. package/src/components/StepIDCheckLoop/Regula/IdCheckLoopRegula/IdCheckLoopRegulaSdk.d.ts +8 -0
  353. package/src/components/StepIDCheckLoop/Regula/IdCheckLoopRegula/IdCheckLoopRegulaSdk.test.d.ts +1 -0
  354. package/src/components/StepIDCheckLoop/Regula/IdCheckLoopRegula/IdCheckReviewScreen.d.ts +12 -0
  355. package/src/components/StepIDCheckLoop/Regula/IdCheckLoopRegula/IdCheckReviewScreen.test.d.ts +1 -0
  356. package/src/components/StepIDCheckLoop/Regula/IdCheckLoopRegula/hooks/useRegulaSdk.d.ts +17 -0
  357. package/src/components/StepIDCheckLoop/Regula/utils/utils.d.ts +3 -0
  358. package/src/components/StepIDCheckLoop/Regula/utils/utils.test.d.ts +1 -0
  359. package/src/lib/intl/localized-messages/ar.json.d.ts +8 -1
  360. package/src/lib/intl/localized-messages/bg.json.d.ts +8 -1
  361. package/src/lib/intl/localized-messages/bn-IN.json.d.ts +8 -1
  362. package/src/lib/intl/localized-messages/cs.json.d.ts +8 -1
  363. package/src/lib/intl/localized-messages/da.json.d.ts +8 -1
  364. package/src/lib/intl/localized-messages/de.json.d.ts +8 -1
  365. package/src/lib/intl/localized-messages/el.json.d.ts +8 -1
  366. package/src/lib/intl/localized-messages/en-GB.json.d.ts +8 -1
  367. package/src/lib/intl/localized-messages/en-US.json.d.ts +8 -1
  368. package/src/lib/intl/localized-messages/es-ES.json.d.ts +8 -1
  369. package/src/lib/intl/localized-messages/es.json.d.ts +8 -1
  370. package/src/lib/intl/localized-messages/fi.json.d.ts +8 -1
  371. package/src/lib/intl/localized-messages/fr-CA.json.d.ts +8 -1
  372. package/src/lib/intl/localized-messages/fr.json.d.ts +8 -1
  373. package/src/lib/intl/localized-messages/ga.json.d.ts +8 -1
  374. package/src/lib/intl/localized-messages/hi-IN.json.d.ts +8 -1
  375. package/src/lib/intl/localized-messages/hr.json.d.ts +8 -1
  376. package/src/lib/intl/localized-messages/hu.json.d.ts +8 -1
  377. package/src/lib/intl/localized-messages/id.json.d.ts +8 -1
  378. package/src/lib/intl/localized-messages/is.json.d.ts +8 -1
  379. package/src/lib/intl/localized-messages/it.json.d.ts +8 -1
  380. package/src/lib/intl/localized-messages/iw.json.d.ts +8 -1
  381. package/src/lib/intl/localized-messages/ja.json.d.ts +8 -1
  382. package/src/lib/intl/localized-messages/ko.json.d.ts +8 -1
  383. package/src/lib/intl/localized-messages/lo.json.d.ts +8 -1
  384. package/src/lib/intl/localized-messages/lt.json.d.ts +8 -1
  385. package/src/lib/intl/localized-messages/ms.json.d.ts +8 -1
  386. package/src/lib/intl/localized-messages/nl-BE.json.d.ts +8 -1
  387. package/src/lib/intl/localized-messages/nl.json.d.ts +8 -1
  388. package/src/lib/intl/localized-messages/no.json.d.ts +8 -1
  389. package/src/lib/intl/localized-messages/pl.json.d.ts +8 -1
  390. package/src/lib/intl/localized-messages/pt-BR.json.d.ts +8 -1
  391. package/src/lib/intl/localized-messages/pt.json.d.ts +8 -1
  392. package/src/lib/intl/localized-messages/ro.json.d.ts +8 -1
  393. package/src/lib/intl/localized-messages/ru.json.d.ts +8 -1
  394. package/src/lib/intl/localized-messages/sk.json.d.ts +8 -1
  395. package/src/lib/intl/localized-messages/sl.json.d.ts +8 -1
  396. package/src/lib/intl/localized-messages/sr.json.d.ts +8 -1
  397. package/src/lib/intl/localized-messages/sv.json.d.ts +8 -1
  398. package/src/lib/intl/localized-messages/sw.json.d.ts +8 -1
  399. package/src/lib/intl/localized-messages/th.json.d.ts +8 -1
  400. package/src/lib/intl/localized-messages/tr.json.d.ts +8 -1
  401. package/src/lib/intl/localized-messages/uk.json.d.ts +8 -1
  402. package/src/lib/intl/localized-messages/ur.json.d.ts +8 -1
  403. package/src/lib/intl/localized-messages/vi.json.d.ts +8 -1
  404. package/src/lib/intl/localized-messages/zh-HK.json.d.ts +8 -1
  405. package/src/lib/intl/localized-messages/zh.json.d.ts +8 -1
  406. package/src/lib/intl/localized-messages/zu.json.d.ts +8 -1
  407. package/src/lib/types/types.d.ts +13 -1
  408. package/types-reference.zip +0 -0
  409. package/chunk/StepIDCheckLoopRegula-BkTDnK3G.js +0 -283
  410. package/chunk/StepIDCheckLoopRegula-BkTDnK3G.js.map +0 -1
  411. package/chunk/StepIDCheckLoopRegula-D6freNro.js +0 -287
  412. package/chunk/StepIDCheckLoopRegula-D6freNro.js.map +0 -1
  413. package/chunk/de-D4nlAbMa.js.map +0 -1
  414. package/chunk/el-C-PZe5CV.js.map +0 -1
  415. package/chunk/es-CNTVekqW.js.map +0 -1
  416. package/chunk/fi-CcolQnAY.js.map +0 -1
  417. package/chunk/fr-BjHvlhn5.js.map +0 -1
  418. package/chunk/ga-D-rK3PZy.js.map +0 -1
  419. package/chunk/hi-IN-B5SHv4t9.js.map +0 -1
  420. package/chunk/hr-CwvyeMFM.js.map +0 -1
  421. package/chunk/hu-BCZWPgvf.js.map +0 -1
  422. package/chunk/id-CRNXXELT.js.map +0 -1
  423. package/chunk/index-BJg9BX3v.js.map +0 -1
  424. package/chunk/index-BLIxYZFr.js.map +0 -1
  425. package/chunk/is-BFoDLV-f.js.map +0 -1
  426. package/chunk/it-B_iK-eSd.js.map +0 -1
  427. package/chunk/iw-DL48t5mZ.js.map +0 -1
  428. package/chunk/ja-C5bG2SRl.js.map +0 -1
  429. package/chunk/ko-CmmVl873.js.map +0 -1
  430. package/chunk/lo-DvBsVm-4.js.map +0 -1
  431. package/chunk/lt-DWoqI4gx.js.map +0 -1
  432. package/chunk/ms-BCHBEoqA.js.map +0 -1
  433. package/chunk/nl-BE-DLixID0q.js.map +0 -1
  434. package/chunk/nl-CeBqOv0i.js.map +0 -1
  435. package/chunk/no-BR2xqD23.js.map +0 -1
  436. package/chunk/pl-Dl77tRgW.js.map +0 -1
  437. package/chunk/pt-BR--SxHOWht.js.map +0 -1
  438. package/chunk/pt-D0bmI49-.js.map +0 -1
  439. package/chunk/ro-HCkS3amY.js.map +0 -1
  440. package/chunk/ru-BDMi1lvr.js.map +0 -1
  441. package/chunk/sk-C4zNHeM6.js.map +0 -1
  442. package/chunk/sl-BbQVw1S0.js.map +0 -1
  443. package/chunk/sr-8d4sC8Hd.js.map +0 -1
  444. package/chunk/sv-B0-e7r_0.js.map +0 -1
  445. package/chunk/sw-Bo9F25Vc.js.map +0 -1
  446. package/chunk/th-DDuVbwLh.js.map +0 -1
  447. package/chunk/tr-CUwkgj2T.js.map +0 -1
  448. package/chunk/uk-BPrGA4MJ.js.map +0 -1
  449. package/chunk/ur-Cdtm-A0s.js.map +0 -1
  450. package/chunk/vi-JbWizd9m.js.map +0 -1
  451. package/chunk/zh-DjbXrser.js.map +0 -1
  452. package/chunk/zh-HK-DXcspp2Y.js.map +0 -1
  453. package/chunk/zu-BzwZfIDF.js.map +0 -1
  454. package/lib/StepCollectMilitaryStatusComponent-DwBZnwSd.js +0 -11
  455. package/lib/StepIDCheckLoopRegula-Do_faEQZ.js +0 -118
  456. package/lib/StepIDCheckLoopRegula-Do_faEQZ.js.map +0 -1
  457. package/lib/ar--TDb5qE5.js.map +0 -1
  458. package/lib/bg-D3cL-ciP.js.map +0 -1
  459. package/lib/bn-IN-BqsOEBPN.js.map +0 -1
  460. package/lib/cs-7pQwm9YC.js.map +0 -1
  461. package/lib/da-C2xASa_G.js.map +0 -1
  462. package/lib/de-D4nlAbMa.js.map +0 -1
  463. package/lib/el-C-PZe5CV.js.map +0 -1
  464. package/lib/en-GB-DXa6bdA_.js.map +0 -1
  465. package/lib/es-CNTVekqW.js.map +0 -1
  466. package/lib/es-ES-inNoG-F1.js.map +0 -1
  467. package/lib/es6-C9uVx8os.js.map +0 -1
  468. package/lib/fi-CcolQnAY.js.map +0 -1
  469. package/lib/fr-BjHvlhn5.js.map +0 -1
  470. package/lib/fr-CA-CmZKx-C9.js.map +0 -1
  471. package/lib/ga-D-rK3PZy.js.map +0 -1
  472. package/lib/hi-IN-B5SHv4t9.js.map +0 -1
  473. package/lib/hr-CwvyeMFM.js.map +0 -1
  474. package/lib/hu-BCZWPgvf.js.map +0 -1
  475. package/lib/id-CRNXXELT.js.map +0 -1
  476. package/lib/index-BDnrc1pT.js +0 -11
  477. package/lib/index-BDnrc1pT.js.map +0 -1
  478. package/lib/index-BtznWkK0.js +0 -11
  479. package/lib/index-BtznWkK0.js.map +0 -1
  480. package/lib/index-C0gfewx0.js +0 -11
  481. package/lib/index-C0gfewx0.js.map +0 -1
  482. package/lib/index-Dn1QtBoJ.js +0 -11
  483. package/lib/index-Dn1QtBoJ.js.map +0 -1
  484. package/lib/index-Eh0zxMDr.js +0 -184
  485. package/lib/index-Eh0zxMDr.js.map +0 -1
  486. package/lib/is-BFoDLV-f.js.map +0 -1
  487. package/lib/it-B_iK-eSd.js.map +0 -1
  488. package/lib/iw-DL48t5mZ.js.map +0 -1
  489. package/lib/ja-C5bG2SRl.js.map +0 -1
  490. package/lib/ko-CmmVl873.js.map +0 -1
  491. package/lib/lo-DvBsVm-4.js.map +0 -1
  492. package/lib/lt-DWoqI4gx.js.map +0 -1
  493. package/lib/ms-BCHBEoqA.js.map +0 -1
  494. package/lib/nl-BE-DLixID0q.js.map +0 -1
  495. package/lib/nl-CeBqOv0i.js.map +0 -1
  496. package/lib/no-BR2xqD23.js.map +0 -1
  497. package/lib/pl-Dl77tRgW.js.map +0 -1
  498. package/lib/pt-BR--SxHOWht.js.map +0 -1
  499. package/lib/pt-D0bmI49-.js.map +0 -1
  500. package/lib/ro-HCkS3amY.js.map +0 -1
  501. package/lib/ru-BDMi1lvr.js.map +0 -1
  502. package/lib/sk-C4zNHeM6.js.map +0 -1
  503. package/lib/sl-BbQVw1S0.js.map +0 -1
  504. package/lib/sr-8d4sC8Hd.js.map +0 -1
  505. package/lib/sv-B0-e7r_0.js.map +0 -1
  506. package/lib/sw-Bo9F25Vc.js.map +0 -1
  507. package/lib/th-DDuVbwLh.js.map +0 -1
  508. package/lib/tr-CUwkgj2T.js.map +0 -1
  509. package/lib/uk-BPrGA4MJ.js.map +0 -1
  510. package/lib/ur-Cdtm-A0s.js.map +0 -1
  511. package/lib/vi-JbWizd9m.js.map +0 -1
  512. package/lib/zh-DjbXrser.js.map +0 -1
  513. package/lib/zh-HK-DXcspp2Y.js.map +0 -1
  514. package/lib/zu-BzwZfIDF.js.map +0 -1
  515. package/src/components/StepIDCheckLoop/Regula/utils/uploadFiles.d.ts +0 -1
@@ -4,21 +4,21 @@
4
4
  * This file is not intended for use in other contexts and there are no guarantees about its behavior outside of MySheerID.
5
5
  */
6
6
  /**
7
- * VERSION: 2.132.0-alpha.0
8
- * BUILD_TIMESTAMP: 1759198226923
9
- * BUILD_DATE: Tue Sep 30 2025 02:10:26 GMT+0000 (Coordinated Universal Time)
10
- * BUILD_COMMIT: 7c3342c2397c22449dfe363bf8fd2df02eb99e0a
7
+ * VERSION: 2.133.0-alpha.0
8
+ * BUILD_TIMESTAMP: 1759347680150
9
+ * BUILD_DATE: Wed Oct 01 2025 19:41:20 GMT+0000 (Coordinated Universal Time)
10
+ * BUILD_COMMIT: fba56a51e008d7a472fdb2a578276960c2b5ae9c
11
11
  */
12
- import { t as l, j as i, b as d, ao as R, ap as L, l as E, aq as B, ar as H, aj as q, as as I, at as G, au as J, av as K, a as Y, aw as z, ax as W } from "../_mysheerid-preview.js";
12
+ import { t as o, j as i, b as d, al as R, am as L, l as E, an as B, ao as H, ag as q, ap as I, aq as G, ar as J, as as K, a as Y, at as z, au as W } from "../_mysheerid-preview.js";
13
13
  const V = ({
14
14
  title: t,
15
15
  message: s,
16
16
  closing: a,
17
17
  helpRequestResponse: c = "blue",
18
- onResendClick: o
18
+ onResendClick: l
19
19
  }) => {
20
- const [e, m] = l.useState(!1), f = async () => {
21
- o && (await o(), m(!0));
20
+ const [e, m] = o.useState(!1), f = async () => {
21
+ l && (await l(), m(!0));
22
22
  };
23
23
  return /* @__PURE__ */ i.jsxs(
24
24
  "div",
@@ -139,7 +139,7 @@ const $ = ({
139
139
  Accept: "application/json",
140
140
  "Content-Type": "application/json"
141
141
  }, X = async (t, s = void 0, a = {}) => {
142
- const c = B(), o = {
142
+ const c = B(), l = {
143
143
  emailAddress: s,
144
144
  programId: t
145
145
  };
@@ -147,7 +147,7 @@ const $ = ({
147
147
  const e = await H(c, {
148
148
  headers: { ...Q, ...a },
149
149
  method: "POST",
150
- body: JSON.stringify(o)
150
+ body: JSON.stringify(l)
151
151
  });
152
152
  return { ...await e.json(), status: e.status };
153
153
  } catch (e) {
@@ -163,8 +163,8 @@ async function b(t, s) {
163
163
  t,
164
164
  s
165
165
  );
166
- let c = n.PENDING, o = null;
167
- return a.status === 500 ? (c = n.NOT_FOUND, o = "Error during lookup.") : a.status === 404 || a.status === 429 ? c = n.NOT_FOUND : a.status === 400 ? c = n.ALREADY_INITIATED : a.status === 200 && (a.currentStep === "error" || a.currentStep === "docReviewLimitExceeded" ? (c = n.NOT_FOUND, o = "An error occurred during verification.") : a.currentStep === "pending" || a.currentStep === "consolation" || a.currentStep === "loading" ? (c = n.PENDING, o = "pending") : a.currentStep.toLowerCase().startsWith("collect") ? o = "Unexpected API response." : (c = n.FOUND, o = a.currentStep)), R({ eventName: L.VERIFICATION_HELP, params: { status: c, programId: t } }), { status: c, message: o };
166
+ let c = n.PENDING, l = null;
167
+ return a.status === 500 ? (c = n.NOT_FOUND, l = "Error during lookup.") : a.status === 404 || a.status === 429 ? c = n.NOT_FOUND : a.status === 400 ? c = n.ALREADY_INITIATED : a.status === 200 && (a.currentStep === "error" || a.currentStep === "docReviewLimitExceeded" ? (c = n.NOT_FOUND, l = "An error occurred during verification.") : a.currentStep === "pending" || a.currentStep === "consolation" || a.currentStep === "loading" ? (c = n.PENDING, l = "pending") : a.currentStep.toLowerCase().startsWith("collect") ? l = "Unexpected API response." : (c = n.FOUND, l = a.currentStep)), R({ eventName: L.VERIFICATION_HELP, params: { status: c, programId: t } }), { status: c, message: l };
168
168
  } catch (a) {
169
169
  return E.error("Error submitting verification help request:", a), {
170
170
  status: n.PENDING,
@@ -173,12 +173,12 @@ async function b(t, s) {
173
173
  }
174
174
  }
175
175
  function ee(t, s, a) {
176
- const [c, o] = l.useState(!1), [e, m] = l.useState(null), f = q("collect-info-step-email-first"), g = f === "no-message-dimmed-fields", [y, O] = l.useState(!1), [_, j] = l.useState(!1), [x, T] = l.useState(!1), [u, S] = l.useState({
176
+ const [c, l] = o.useState(!1), [e, m] = o.useState(null), f = q("collect-info-step-email-first"), g = f === "no-message-dimmed-fields", [y, O] = o.useState(!1), [_, j] = o.useState(!1), [x, T] = o.useState(!1), [u, S] = o.useState({
177
177
  emailLookupResponse: null,
178
178
  hasBlurred: !1,
179
179
  hasKeyPressed: !1,
180
180
  isValidEmail: !I(s)
181
- }), { userDidConvert: M } = G(a), C = l.useCallback((r) => {
181
+ }), { userDidConvert: M } = G(a), C = o.useCallback((r) => {
182
182
  const p = !I(r);
183
183
  S((h) => ({
184
184
  ...h,
@@ -188,13 +188,13 @@ function ee(t, s, a) {
188
188
  isValidEmail: p
189
189
  }));
190
190
  }, []);
191
- l.useEffect(() => {
191
+ o.useEffect(() => {
192
192
  C(s);
193
193
  }, [s, C]);
194
- const w = l.useMemo(
194
+ const w = o.useMemo(
195
195
  () => s !== "" && u.isValidEmail && (!g || (e == null ? void 0 : e.status) === n.NOT_FOUND),
196
196
  [s, u.isValidEmail, g, e]
197
- ), U = l.useMemo(
197
+ ), U = o.useMemo(
198
198
  () => (s === "" || typeof s == "string" && s.length >= 1 || (e == null ? void 0 : e.status) === null) && ((e == null ? void 0 : e.status) === n.NOT_FOUND || ![
199
199
  n.ALREADY_INITIATED,
200
200
  n.FOUND,
@@ -202,25 +202,25 @@ function ee(t, s, a) {
202
202
  n.REJECTED
203
203
  ].includes(e == null ? void 0 : e.status)),
204
204
  [s, e]
205
- ), N = l.useCallback(async () => {
205
+ ), N = o.useCallback(async () => {
206
206
  if (!(!u.isValidEmail || y || x)) {
207
- j(!0), O(!1), o(!0);
207
+ j(!0), O(!1), l(!0);
208
208
  try {
209
209
  const r = await b(t, s);
210
210
  r.status === n.FOUND && M(J, K), m(r);
211
211
  } catch (r) {
212
212
  E.error("Error during email lookup:", r);
213
213
  } finally {
214
- o(!1);
214
+ l(!1);
215
215
  }
216
216
  }
217
- }, [t, s, y, x, u.isValidEmail]), v = l.useCallback(
217
+ }, [t, s, y, x, u.isValidEmail]), v = o.useCallback(
218
218
  (r) => {
219
219
  _ || r.key === "Enter" && (T(!0), N());
220
220
  },
221
221
  [N, _]
222
- ), k = l.useCallback(async () => {
223
- o(!0);
222
+ ), k = o.useCallback(async () => {
223
+ l(!0);
224
224
  try {
225
225
  const r = await b(
226
226
  t,
@@ -230,14 +230,14 @@ function ee(t, s, a) {
230
230
  } catch (r) {
231
231
  E.error("Error resending email:", r);
232
232
  } finally {
233
- o(!1);
233
+ l(!1);
234
234
  }
235
- }, [t, s, a]), A = l.useCallback(async () => {
235
+ }, [t, s, a]), A = o.useCallback(async () => {
236
236
  u.isValidEmail && (O(!0), m({
237
237
  status: n.NOT_FOUND,
238
238
  message: "makeChanges"
239
239
  }));
240
- }, [u.isValidEmail]), P = l.useCallback(
240
+ }, [u.isValidEmail]), P = o.useCallback(
241
241
  async (r) => {
242
242
  if (!r) return;
243
243
  const p = Y(
@@ -1 +1 @@
1
- {"version":3,"file":"useEmailFirstExperiment-q-thhCji.js","sources":["../../src/components/FormFields/EmailFirstCollectInfo/EmailMessageComponent.tsx","../../src/components/FormFields/EmailFirstCollectInfo/types.ts","../../src/components/FormFields/EmailFirstCollectInfo/EmailLookupResponseMessageComponent.tsx","../../src/lib/ServerApi/VerificationHelpRequestApi.ts","../../src/components/FormFields/EmailFirstCollectInfo/useEmailFirstExperiment.ts"],"sourcesContent":["import React, { useState } from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\n\ninterface EmailMessageComponentProps {\n title?: string | React.ReactNode;\n message?: string | React.ReactNode;\n closing?: string | React.ReactNode;\n helpRequestResponse?: \"green\" | \"blue\";\n onResendClick?: () => Promise<void>;\n}\n\nconst EmailMessageComponent = ({\n title,\n message,\n closing,\n helpRequestResponse = \"blue\",\n onResendClick,\n}: EmailMessageComponentProps) => {\n const [hasSent, setHasSent] = useState(false);\n\n const handleClick = async () => {\n if (onResendClick) {\n await onResendClick();\n setHasSent(true);\n }\n };\n\n return (\n <div\n className={\n helpRequestResponse === \"green\"\n ? \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-green\"\n : \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-blue\"\n }\n >\n <div className=\"sid-email-msg-container__title\">{title}</div>\n <div className=\"sid-email-msg-container__content\">{message}</div>\n <div className=\"sid-email-msg-container__content sid-email-msg-container__closing\">\n {closing}\n </div>\n <div className=\"sid-email-resend-area\">\n <button\n type=\"button\"\n className={\n hasSent\n ? \"sid-email-resend-area__button sid-email-resend-area__button__sent\"\n : \"sid-email-resend-area__button\"\n }\n onClick={handleClick}\n disabled={hasSent}\n >\n <FormattedHTMLMessage\n id={\n hasSent\n ? \"step.personalInfo.emailFirstCollectInfo.sent\"\n : \"step.personalInfo.emailFirstCollectInfo.sendAgain\"\n }\n defaultMessage={hasSent ? \"Sent!\" : \"Send Again\"}\n />\n </button>\n </div>\n </div>\n );\n};\n\nexport { EmailMessageComponent };\n","export enum EmailLookupStatus {\n FOUND = \"existingVerificationFound\",\n NOT_FOUND = \"existingVerificationNotFound\",\n PENDING = \"pendingVerification\",\n REJECTED = \"rejectedVerification\",\n ALREADY_INITIATED = \"emailResendAlreadyInitiated\",\n}\n\nexport type EmailLookupResponse = {\n status: EmailLookupStatus;\n message: string | null;\n};\n\nexport type EmailFirstCollectInfoStep =\n | \"message-dimmed-fields\"\n | \"no-message-dimmed-fields\"\n | \"control\"\n | \"default\";\n\nexport interface VerificationHelpRequestApiResponse {\n systemErrorMessage?: string;\n currentStep?: string;\n status?: number;\n}\n","import React from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\nimport { EmailMessageComponent } from \"./EmailMessageComponent\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\n\ninterface EmailLookupResponseMessagesProps {\n emailLookupResponse: EmailLookupResponse | null;\n onResendClick?: () => Promise<void>;\n onHandleClickLink?: () => Promise<void>;\n}\n\nconst EmailLookupResponseMessages: React.FC<EmailLookupResponseMessagesProps> = ({\n emailLookupResponse,\n onResendClick = async () => {},\n onHandleClickLink = async () => {},\n}) => {\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message === \"success\"\n ) {\n return (\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.title\"\n defaultMessage=\"You've been here before!\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.message\"\n defaultMessage=\"Verify@sheerid.com re-sent your confirmation email with details on redeeming your verified offer.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.closing\"\n defaultMessage=\"Enjoy!\"\n />\n }\n helpRequestResponse=\"green\"\n onResendClick={onResendClick}\n />\n );\n }\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message !== \"success\"\n ) {\n return (\n <>\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.title\"\n defaultMessage=\"Looks like you started.\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.message\"\n defaultMessage=\"This email is associated with a verification in the works.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.closing\"\n defaultMessage=\"Verify@sheerid.com re-sent our last email to you with next steps.\"\n />\n }\n helpRequestResponse=\"blue\"\n onResendClick={onResendClick}\n />\n <div className=\"sid-email-first__need-changes sid-h-small-text\">\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.needChanges\"\n defaultMessage=\"Need to make changes?\"\n />\n <button\n type=\"submit\"\n className=\"sid-email-first__need-changes-link sid-link\"\n onClick={onHandleClickLink}\n >\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.proceedHere\"\n defaultMessage=\"Proceed here\"\n />\n </button>\n </div>\n </>\n );\n }\n\n return null;\n};\n\nexport default EmailLookupResponseMessages;\n","import { logger } from \"../utils/logger/logger\";\nimport {\n EmailLookupResponse,\n EmailLookupStatus,\n VerificationHelpRequestApiResponse,\n} from \"../../components/FormFields/EmailFirstCollectInfo/types\";\nimport { getVerificationHelpUrl } from \"./ApiUrls\";\nimport { DatabaseId } from \"../types/types\";\nimport { fetchWithTimeout } from \"./Network\";\nimport { EventName, recordGaEvent } from \"../GoogleAnalytics/ga\";\n\nconst defaultJsonHeaders = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n};\n/**\n * Endpoint to support email-first functionality.\n * Look up a verification, return status and trigger notifier(s)\n *\n * @param programId Your programId from my.sheerid.com\n * @param emailAddress Email Address used for the verification.\n */\nexport const submitVerificationHelpRequest = async (\n programId: DatabaseId,\n emailAddress: string = undefined,\n headers = {},\n): Promise<VerificationHelpRequestApiResponse> => {\n const url = getVerificationHelpUrl();\n const requestBody = {\n emailAddress,\n programId,\n };\n\n try {\n const response = await fetchWithTimeout(url, {\n headers: { ...defaultJsonHeaders, ...headers },\n method: \"POST\",\n body: JSON.stringify(requestBody),\n });\n\n const responseJson = await response.json();\n return { ...responseJson, status: response.status };\n } catch (error) {\n logger.error(\"Error in submitVerificationHelpRequest:\", error);\n return {\n systemErrorMessage: \"An error occurred during the request.\",\n status: 500,\n };\n }\n};\n\nexport async function handleSubmitVerificationHelpRequest(\n programId: string,\n email: string,\n): Promise<EmailLookupResponse> {\n try {\n const resp: VerificationHelpRequestApiResponse = await submitVerificationHelpRequest(\n programId,\n email,\n );\n let status: EmailLookupStatus = EmailLookupStatus.PENDING;\n let message: string | null = null;\n\n if (resp.status === 500) {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"Error during lookup.\";\n } else if (resp.status === 404 || resp.status === 429) {\n status = EmailLookupStatus.NOT_FOUND;\n } else if (resp.status === 400) {\n status = EmailLookupStatus.ALREADY_INITIATED;\n } else if (resp.status === 200) {\n if (resp.currentStep === \"error\" || resp.currentStep === \"docReviewLimitExceeded\") {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"An error occurred during verification.\";\n } else if (\n resp.currentStep === \"pending\" ||\n resp.currentStep === \"consolation\" ||\n resp.currentStep === \"loading\"\n ) {\n status = EmailLookupStatus.PENDING;\n message = \"pending\";\n } else if (!resp.currentStep.toLowerCase().startsWith(\"collect\")) {\n status = EmailLookupStatus.FOUND;\n message = resp.currentStep;\n } else {\n message = \"Unexpected API response.\";\n }\n }\n recordGaEvent({ eventName: EventName.VERIFICATION_HELP, params: { status, programId } });\n return { status, message };\n } catch (error) {\n logger.error(\"Error submitting verification help request:\", error);\n return {\n status: EmailLookupStatus.PENDING,\n message: \"Error during lookup.\",\n };\n }\n}\n","import { useState, useCallback, useEffect, useMemo } from \"react\";\nimport {\n COLLECT_INFO_SUBMISSION_TIME,\n COLLECT_INFO_SUBMIT,\n useMetrics,\n} from \"@/components/FeatureFlags/useMetrics\";\nimport {\n Organization,\n StudentPersonalInfoViewModel,\n TeacherPersonalInfoViewModel,\n VerificationService,\n} from \"../../../lib/types/types\";\nimport { logger } from \"../../../lib/utils/logger/logger\";\nimport { handleSubmitVerificationHelpRequest } from \"../../../lib/ServerApi/VerificationHelpRequestApi\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\nimport { getEmailValidationError } from \"../../../lib/validators/validators\";\nimport { useFlag } from \"../../FeatureFlags/hooks\";\nimport { getOrgSearchUrl } from \"../../../lib/ProgramTheme/programThemeGetters\";\nimport { getDomainFromEmail } from \"../../../lib/utils/routing/Url\";\nimport { fetchOrganization } from \"../../../lib/ServerApi/OrganizationApiClient\";\n\nexport function useEmailFirstExperiment(programId: string, email: string, segment: string) {\n const [isLoading, setIsLoading] = useState(false);\n const [emailLookupResponse, setEmailLookupResponse] = useState<EmailLookupResponse | null>(null);\n const emailFirstCollectInfoStep = useFlag(\"collect-info-step-email-first\");\n const isEmailUpTop = emailFirstCollectInfoStep === \"no-message-dimmed-fields\";\n const [bypassEmailLookup, setBypassEmailLookup] = useState(false);\n const [hasBlurred, setHasBlurred] = useState(false);\n const [hasKeyPressed, setHasKeyPressed] = useState(false);\n const [emailInputState, setEmailInputState] = useState({\n emailLookupResponse: null,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: !getEmailValidationError(email),\n });\n const { userDidConvert } = useMetrics(segment);\n\n const updateEmailState = useCallback((newEmail: string) => {\n const isValid = !getEmailValidationError(newEmail);\n setEmailInputState((prevState) => ({\n ...prevState,\n emailLookupResponse: newEmail !== \"\" && isValid ? null : prevState.emailLookupResponse,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: isValid,\n }));\n }, []);\n\n useEffect(() => {\n updateEmailState(email);\n }, [email, updateEmailState]);\n\n const enableFormFields = useMemo(\n () =>\n email !== \"\" &&\n emailInputState.isValidEmail &&\n (!isEmailUpTop || emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND),\n [email, emailInputState.isValidEmail, isEmailUpTop, emailLookupResponse],\n );\n\n const showFormFields = useMemo(\n () =>\n (email === \"\" ||\n (typeof email === \"string\" && email.length >= 1) ||\n emailLookupResponse?.status === null) &&\n (emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND ||\n ![\n EmailLookupStatus.ALREADY_INITIATED,\n EmailLookupStatus.FOUND,\n EmailLookupStatus.PENDING,\n EmailLookupStatus.REJECTED,\n ].includes(emailLookupResponse?.status)),\n [email, emailLookupResponse],\n );\n\n const emailOnBlur = useCallback(async () => {\n if (!emailInputState.isValidEmail || bypassEmailLookup || hasKeyPressed) return;\n setHasBlurred(true);\n setBypassEmailLookup(false);\n setIsLoading(true);\n try {\n const response = await handleSubmitVerificationHelpRequest(programId, email);\n if (response.status === EmailLookupStatus.FOUND) {\n userDidConvert(COLLECT_INFO_SUBMIT, COLLECT_INFO_SUBMISSION_TIME);\n }\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error during email lookup:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, bypassEmailLookup, hasKeyPressed, emailInputState.isValidEmail]);\n\n const emailOnKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (hasBlurred) return;\n if (event.key === \"Enter\") {\n setHasKeyPressed(true);\n emailOnBlur();\n }\n },\n [emailOnBlur, hasBlurred],\n );\n\n const handleResendClick = useCallback(async () => {\n setIsLoading(true);\n try {\n const response: EmailLookupResponse = await handleSubmitVerificationHelpRequest(\n programId,\n email,\n );\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error resending email:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, segment]);\n\n const handleOnClickProceedHere = useCallback(async () => {\n if (!emailInputState.isValidEmail) return;\n setBypassEmailLookup(true);\n setEmailLookupResponse({\n status: EmailLookupStatus.NOT_FOUND,\n message: \"makeChanges\",\n });\n }, [emailInputState.isValidEmail]);\n\n const getOrgByDomain = useCallback(\n async (verificationService: VerificationService): Promise<Organization | undefined> => {\n if (!verificationService) return undefined;\n\n const orgSearchUrl = getOrgSearchUrl(\n verificationService.viewModel as\n | StudentPersonalInfoViewModel\n | TeacherPersonalInfoViewModel,\n verificationService.programTheme,\n );\n\n const emailDomain = getDomainFromEmail(email);\n const orgDomainMatch = new URL(orgSearchUrl);\n orgDomainMatch.searchParams.set(\"domain\", emailDomain);\n\n const response = await fetchOrganization(orgDomainMatch.toString());\n\n return response && response.length === 1 ? response[0] : undefined;\n },\n [email],\n );\n\n if (!isEmailUpTop) {\n return {\n isEmailUpTop,\n isEmailValidationLoading: false,\n showOtherFields: true,\n disableOtherFields: false,\n emailLookupResponse: null,\n showEmailLookupResponseMessages: false,\n showFormFields: true,\n emailOnBlur: () => {},\n emailOnKeyDown: () => {},\n handleResendClick: () => Promise.resolve(),\n emailFirstCollectInfoStep,\n isValidEmail: !getEmailValidationError(email),\n getOrgByDomain: async () => undefined,\n enableFormFields: true,\n };\n }\n\n return {\n isEmailUpTop,\n isEmailValidationLoading: isLoading,\n emailLookupResponse,\n showEmailLookupResponseMessages: !!emailLookupResponse,\n showFormFields,\n emailOnBlur,\n emailOnKeyDown,\n handleResendClick,\n emailFirstCollectInfoStep,\n isValidEmail: emailInputState.isValidEmail,\n getOrgByDomain,\n enableFormFields,\n handleOnClickProceedHere,\n };\n}\n"],"names":["EmailMessageComponent","title","message","closing","helpRequestResponse","onResendClick","hasSent","setHasSent","useState","handleClick","jsxs","jsx","FormattedHTMLMessage","EmailLookupStatus","EmailLookupResponseMessages","emailLookupResponse","onHandleClickLink","Fragment","defaultJsonHeaders","submitVerificationHelpRequest","programId","emailAddress","headers","url","getVerificationHelpUrl","requestBody","response","fetchWithTimeout","error","logger","handleSubmitVerificationHelpRequest","email","resp","status","recordGaEvent","EventName","useEmailFirstExperiment","segment","isLoading","setIsLoading","setEmailLookupResponse","emailFirstCollectInfoStep","useFlag","isEmailUpTop","bypassEmailLookup","setBypassEmailLookup","hasBlurred","setHasBlurred","hasKeyPressed","setHasKeyPressed","emailInputState","setEmailInputState","getEmailValidationError","userDidConvert","useMetrics","updateEmailState","useCallback","newEmail","isValid","prevState","useEffect","enableFormFields","useMemo","showFormFields","emailOnBlur","COLLECT_INFO_SUBMIT","COLLECT_INFO_SUBMISSION_TIME","emailOnKeyDown","event","handleResendClick","handleOnClickProceedHere","getOrgByDomain","verificationService","orgSearchUrl","getOrgSearchUrl","emailDomain","getDomainFromEmail","orgDomainMatch","fetchOrganization"],"mappings":"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"}
1
+ {"version":3,"file":"useEmailFirstExperiment-Cc1gdkQd.js","sources":["../../src/components/FormFields/EmailFirstCollectInfo/EmailMessageComponent.tsx","../../src/components/FormFields/EmailFirstCollectInfo/types.ts","../../src/components/FormFields/EmailFirstCollectInfo/EmailLookupResponseMessageComponent.tsx","../../src/lib/ServerApi/VerificationHelpRequestApi.ts","../../src/components/FormFields/EmailFirstCollectInfo/useEmailFirstExperiment.ts"],"sourcesContent":["import React, { useState } from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\n\ninterface EmailMessageComponentProps {\n title?: string | React.ReactNode;\n message?: string | React.ReactNode;\n closing?: string | React.ReactNode;\n helpRequestResponse?: \"green\" | \"blue\";\n onResendClick?: () => Promise<void>;\n}\n\nconst EmailMessageComponent = ({\n title,\n message,\n closing,\n helpRequestResponse = \"blue\",\n onResendClick,\n}: EmailMessageComponentProps) => {\n const [hasSent, setHasSent] = useState(false);\n\n const handleClick = async () => {\n if (onResendClick) {\n await onResendClick();\n setHasSent(true);\n }\n };\n\n return (\n <div\n className={\n helpRequestResponse === \"green\"\n ? \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-green\"\n : \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-blue\"\n }\n >\n <div className=\"sid-email-msg-container__title\">{title}</div>\n <div className=\"sid-email-msg-container__content\">{message}</div>\n <div className=\"sid-email-msg-container__content sid-email-msg-container__closing\">\n {closing}\n </div>\n <div className=\"sid-email-resend-area\">\n <button\n type=\"button\"\n className={\n hasSent\n ? \"sid-email-resend-area__button sid-email-resend-area__button__sent\"\n : \"sid-email-resend-area__button\"\n }\n onClick={handleClick}\n disabled={hasSent}\n >\n <FormattedHTMLMessage\n id={\n hasSent\n ? \"step.personalInfo.emailFirstCollectInfo.sent\"\n : \"step.personalInfo.emailFirstCollectInfo.sendAgain\"\n }\n defaultMessage={hasSent ? \"Sent!\" : \"Send Again\"}\n />\n </button>\n </div>\n </div>\n );\n};\n\nexport { EmailMessageComponent };\n","export enum EmailLookupStatus {\n FOUND = \"existingVerificationFound\",\n NOT_FOUND = \"existingVerificationNotFound\",\n PENDING = \"pendingVerification\",\n REJECTED = \"rejectedVerification\",\n ALREADY_INITIATED = \"emailResendAlreadyInitiated\",\n}\n\nexport type EmailLookupResponse = {\n status: EmailLookupStatus;\n message: string | null;\n};\n\nexport type EmailFirstCollectInfoStep =\n | \"message-dimmed-fields\"\n | \"no-message-dimmed-fields\"\n | \"control\"\n | \"default\";\n\nexport interface VerificationHelpRequestApiResponse {\n systemErrorMessage?: string;\n currentStep?: string;\n status?: number;\n}\n","import React from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\nimport { EmailMessageComponent } from \"./EmailMessageComponent\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\n\ninterface EmailLookupResponseMessagesProps {\n emailLookupResponse: EmailLookupResponse | null;\n onResendClick?: () => Promise<void>;\n onHandleClickLink?: () => Promise<void>;\n}\n\nconst EmailLookupResponseMessages: React.FC<EmailLookupResponseMessagesProps> = ({\n emailLookupResponse,\n onResendClick = async () => {},\n onHandleClickLink = async () => {},\n}) => {\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message === \"success\"\n ) {\n return (\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.title\"\n defaultMessage=\"You've been here before!\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.message\"\n defaultMessage=\"Verify@sheerid.com re-sent your confirmation email with details on redeeming your verified offer.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.closing\"\n defaultMessage=\"Enjoy!\"\n />\n }\n helpRequestResponse=\"green\"\n onResendClick={onResendClick}\n />\n );\n }\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message !== \"success\"\n ) {\n return (\n <>\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.title\"\n defaultMessage=\"Looks like you started.\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.message\"\n defaultMessage=\"This email is associated with a verification in the works.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.closing\"\n defaultMessage=\"Verify@sheerid.com re-sent our last email to you with next steps.\"\n />\n }\n helpRequestResponse=\"blue\"\n onResendClick={onResendClick}\n />\n <div className=\"sid-email-first__need-changes sid-h-small-text\">\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.needChanges\"\n defaultMessage=\"Need to make changes?\"\n />\n <button\n type=\"submit\"\n className=\"sid-email-first__need-changes-link sid-link\"\n onClick={onHandleClickLink}\n >\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.proceedHere\"\n defaultMessage=\"Proceed here\"\n />\n </button>\n </div>\n </>\n );\n }\n\n return null;\n};\n\nexport default EmailLookupResponseMessages;\n","import { logger } from \"../utils/logger/logger\";\nimport {\n EmailLookupResponse,\n EmailLookupStatus,\n VerificationHelpRequestApiResponse,\n} from \"../../components/FormFields/EmailFirstCollectInfo/types\";\nimport { getVerificationHelpUrl } from \"./ApiUrls\";\nimport { DatabaseId } from \"../types/types\";\nimport { fetchWithTimeout } from \"./Network\";\nimport { EventName, recordGaEvent } from \"../GoogleAnalytics/ga\";\n\nconst defaultJsonHeaders = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n};\n/**\n * Endpoint to support email-first functionality.\n * Look up a verification, return status and trigger notifier(s)\n *\n * @param programId Your programId from my.sheerid.com\n * @param emailAddress Email Address used for the verification.\n */\nexport const submitVerificationHelpRequest = async (\n programId: DatabaseId,\n emailAddress: string = undefined,\n headers = {},\n): Promise<VerificationHelpRequestApiResponse> => {\n const url = getVerificationHelpUrl();\n const requestBody = {\n emailAddress,\n programId,\n };\n\n try {\n const response = await fetchWithTimeout(url, {\n headers: { ...defaultJsonHeaders, ...headers },\n method: \"POST\",\n body: JSON.stringify(requestBody),\n });\n\n const responseJson = await response.json();\n return { ...responseJson, status: response.status };\n } catch (error) {\n logger.error(\"Error in submitVerificationHelpRequest:\", error);\n return {\n systemErrorMessage: \"An error occurred during the request.\",\n status: 500,\n };\n }\n};\n\nexport async function handleSubmitVerificationHelpRequest(\n programId: string,\n email: string,\n): Promise<EmailLookupResponse> {\n try {\n const resp: VerificationHelpRequestApiResponse = await submitVerificationHelpRequest(\n programId,\n email,\n );\n let status: EmailLookupStatus = EmailLookupStatus.PENDING;\n let message: string | null = null;\n\n if (resp.status === 500) {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"Error during lookup.\";\n } else if (resp.status === 404 || resp.status === 429) {\n status = EmailLookupStatus.NOT_FOUND;\n } else if (resp.status === 400) {\n status = EmailLookupStatus.ALREADY_INITIATED;\n } else if (resp.status === 200) {\n if (resp.currentStep === \"error\" || resp.currentStep === \"docReviewLimitExceeded\") {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"An error occurred during verification.\";\n } else if (\n resp.currentStep === \"pending\" ||\n resp.currentStep === \"consolation\" ||\n resp.currentStep === \"loading\"\n ) {\n status = EmailLookupStatus.PENDING;\n message = \"pending\";\n } else if (!resp.currentStep.toLowerCase().startsWith(\"collect\")) {\n status = EmailLookupStatus.FOUND;\n message = resp.currentStep;\n } else {\n message = \"Unexpected API response.\";\n }\n }\n recordGaEvent({ eventName: EventName.VERIFICATION_HELP, params: { status, programId } });\n return { status, message };\n } catch (error) {\n logger.error(\"Error submitting verification help request:\", error);\n return {\n status: EmailLookupStatus.PENDING,\n message: \"Error during lookup.\",\n };\n }\n}\n","import { useState, useCallback, useEffect, useMemo } from \"react\";\nimport {\n COLLECT_INFO_SUBMISSION_TIME,\n COLLECT_INFO_SUBMIT,\n useMetrics,\n} from \"@/components/FeatureFlags/useMetrics\";\nimport {\n Organization,\n StudentPersonalInfoViewModel,\n TeacherPersonalInfoViewModel,\n VerificationService,\n} from \"../../../lib/types/types\";\nimport { logger } from \"../../../lib/utils/logger/logger\";\nimport { handleSubmitVerificationHelpRequest } from \"../../../lib/ServerApi/VerificationHelpRequestApi\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\nimport { getEmailValidationError } from \"../../../lib/validators/validators\";\nimport { useFlag } from \"../../FeatureFlags/hooks\";\nimport { getOrgSearchUrl } from \"../../../lib/ProgramTheme/programThemeGetters\";\nimport { getDomainFromEmail } from \"../../../lib/utils/routing/Url\";\nimport { fetchOrganization } from \"../../../lib/ServerApi/OrganizationApiClient\";\n\nexport function useEmailFirstExperiment(programId: string, email: string, segment: string) {\n const [isLoading, setIsLoading] = useState(false);\n const [emailLookupResponse, setEmailLookupResponse] = useState<EmailLookupResponse | null>(null);\n const emailFirstCollectInfoStep = useFlag(\"collect-info-step-email-first\");\n const isEmailUpTop = emailFirstCollectInfoStep === \"no-message-dimmed-fields\";\n const [bypassEmailLookup, setBypassEmailLookup] = useState(false);\n const [hasBlurred, setHasBlurred] = useState(false);\n const [hasKeyPressed, setHasKeyPressed] = useState(false);\n const [emailInputState, setEmailInputState] = useState({\n emailLookupResponse: null,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: !getEmailValidationError(email),\n });\n const { userDidConvert } = useMetrics(segment);\n\n const updateEmailState = useCallback((newEmail: string) => {\n const isValid = !getEmailValidationError(newEmail);\n setEmailInputState((prevState) => ({\n ...prevState,\n emailLookupResponse: newEmail !== \"\" && isValid ? null : prevState.emailLookupResponse,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: isValid,\n }));\n }, []);\n\n useEffect(() => {\n updateEmailState(email);\n }, [email, updateEmailState]);\n\n const enableFormFields = useMemo(\n () =>\n email !== \"\" &&\n emailInputState.isValidEmail &&\n (!isEmailUpTop || emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND),\n [email, emailInputState.isValidEmail, isEmailUpTop, emailLookupResponse],\n );\n\n const showFormFields = useMemo(\n () =>\n (email === \"\" ||\n (typeof email === \"string\" && email.length >= 1) ||\n emailLookupResponse?.status === null) &&\n (emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND ||\n ![\n EmailLookupStatus.ALREADY_INITIATED,\n EmailLookupStatus.FOUND,\n EmailLookupStatus.PENDING,\n EmailLookupStatus.REJECTED,\n ].includes(emailLookupResponse?.status)),\n [email, emailLookupResponse],\n );\n\n const emailOnBlur = useCallback(async () => {\n if (!emailInputState.isValidEmail || bypassEmailLookup || hasKeyPressed) return;\n setHasBlurred(true);\n setBypassEmailLookup(false);\n setIsLoading(true);\n try {\n const response = await handleSubmitVerificationHelpRequest(programId, email);\n if (response.status === EmailLookupStatus.FOUND) {\n userDidConvert(COLLECT_INFO_SUBMIT, COLLECT_INFO_SUBMISSION_TIME);\n }\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error during email lookup:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, bypassEmailLookup, hasKeyPressed, emailInputState.isValidEmail]);\n\n const emailOnKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (hasBlurred) return;\n if (event.key === \"Enter\") {\n setHasKeyPressed(true);\n emailOnBlur();\n }\n },\n [emailOnBlur, hasBlurred],\n );\n\n const handleResendClick = useCallback(async () => {\n setIsLoading(true);\n try {\n const response: EmailLookupResponse = await handleSubmitVerificationHelpRequest(\n programId,\n email,\n );\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error resending email:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, segment]);\n\n const handleOnClickProceedHere = useCallback(async () => {\n if (!emailInputState.isValidEmail) return;\n setBypassEmailLookup(true);\n setEmailLookupResponse({\n status: EmailLookupStatus.NOT_FOUND,\n message: \"makeChanges\",\n });\n }, [emailInputState.isValidEmail]);\n\n const getOrgByDomain = useCallback(\n async (verificationService: VerificationService): Promise<Organization | undefined> => {\n if (!verificationService) return undefined;\n\n const orgSearchUrl = getOrgSearchUrl(\n verificationService.viewModel as\n | StudentPersonalInfoViewModel\n | TeacherPersonalInfoViewModel,\n verificationService.programTheme,\n );\n\n const emailDomain = getDomainFromEmail(email);\n const orgDomainMatch = new URL(orgSearchUrl);\n orgDomainMatch.searchParams.set(\"domain\", emailDomain);\n\n const response = await fetchOrganization(orgDomainMatch.toString());\n\n return response && response.length === 1 ? response[0] : undefined;\n },\n [email],\n );\n\n if (!isEmailUpTop) {\n return {\n isEmailUpTop,\n isEmailValidationLoading: false,\n showOtherFields: true,\n disableOtherFields: false,\n emailLookupResponse: null,\n showEmailLookupResponseMessages: false,\n showFormFields: true,\n emailOnBlur: () => {},\n emailOnKeyDown: () => {},\n handleResendClick: () => Promise.resolve(),\n emailFirstCollectInfoStep,\n isValidEmail: !getEmailValidationError(email),\n getOrgByDomain: async () => undefined,\n enableFormFields: true,\n };\n }\n\n return {\n isEmailUpTop,\n isEmailValidationLoading: isLoading,\n emailLookupResponse,\n showEmailLookupResponseMessages: !!emailLookupResponse,\n showFormFields,\n emailOnBlur,\n emailOnKeyDown,\n handleResendClick,\n emailFirstCollectInfoStep,\n isValidEmail: emailInputState.isValidEmail,\n getOrgByDomain,\n enableFormFields,\n handleOnClickProceedHere,\n };\n}\n"],"names":["EmailMessageComponent","title","message","closing","helpRequestResponse","onResendClick","hasSent","setHasSent","useState","handleClick","jsxs","jsx","FormattedHTMLMessage","EmailLookupStatus","EmailLookupResponseMessages","emailLookupResponse","onHandleClickLink","Fragment","defaultJsonHeaders","submitVerificationHelpRequest","programId","emailAddress","headers","url","getVerificationHelpUrl","requestBody","response","fetchWithTimeout","error","logger","handleSubmitVerificationHelpRequest","email","resp","status","recordGaEvent","EventName","useEmailFirstExperiment","segment","isLoading","setIsLoading","setEmailLookupResponse","emailFirstCollectInfoStep","useFlag","isEmailUpTop","bypassEmailLookup","setBypassEmailLookup","hasBlurred","setHasBlurred","hasKeyPressed","setHasKeyPressed","emailInputState","setEmailInputState","getEmailValidationError","userDidConvert","useMetrics","updateEmailState","useCallback","newEmail","isValid","prevState","useEffect","enableFormFields","useMemo","showFormFields","emailOnBlur","COLLECT_INFO_SUBMIT","COLLECT_INFO_SUBMISSION_TIME","emailOnKeyDown","event","handleResendClick","handleOnClickProceedHere","getOrgByDomain","verificationService","orgSearchUrl","getOrgSearchUrl","emailDomain","getDomainFromEmail","orgDomainMatch","fetchOrganization"],"mappings":"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"}
@@ -1,20 +1,20 @@
1
1
 
2
2
  /**
3
- * VERSION: 2.132.0-alpha.0
4
- * BUILD_TIMESTAMP: 1759198153669
5
- * BUILD_DATE: Tue Sep 30 2025 02:09:13 GMT+0000 (Coordinated Universal Time)
6
- * BUILD_COMMIT: 7c3342c2397c22449dfe363bf8fd2df02eb99e0a
3
+ * VERSION: 2.133.0-alpha.0
4
+ * BUILD_TIMESTAMP: 1759347628516
5
+ * BUILD_DATE: Wed Oct 01 2025 19:40:28 GMT+0000 (Coordinated Universal Time)
6
+ * BUILD_COMMIT: fba56a51e008d7a472fdb2a578276960c2b5ae9c
7
7
  */
8
- import { t as l, j as i, b as d, ao as R, ap as L, l as E, aq as B, ar as H, aj as q, as as I, at as G, au as J, av as K, a as Y, aw as z, ax as W } from "../sheerid.js";
8
+ import { t as o, j as i, b as d, al as R, am as L, l as E, an as B, ao as H, ag as q, ap as I, aq as G, ar as J, as as K, a as Y, at as z, au as W } from "../sheerid.js";
9
9
  const V = ({
10
10
  title: t,
11
11
  message: s,
12
12
  closing: a,
13
13
  helpRequestResponse: c = "blue",
14
- onResendClick: o
14
+ onResendClick: l
15
15
  }) => {
16
- const [e, m] = l.useState(!1), f = async () => {
17
- o && (await o(), m(!0));
16
+ const [e, m] = o.useState(!1), f = async () => {
17
+ l && (await l(), m(!0));
18
18
  };
19
19
  return /* @__PURE__ */ i.jsxs(
20
20
  "div",
@@ -135,7 +135,7 @@ const $ = ({
135
135
  Accept: "application/json",
136
136
  "Content-Type": "application/json"
137
137
  }, X = async (t, s = void 0, a = {}) => {
138
- const c = B(), o = {
138
+ const c = B(), l = {
139
139
  emailAddress: s,
140
140
  programId: t
141
141
  };
@@ -143,7 +143,7 @@ const $ = ({
143
143
  const e = await H(c, {
144
144
  headers: { ...Q, ...a },
145
145
  method: "POST",
146
- body: JSON.stringify(o)
146
+ body: JSON.stringify(l)
147
147
  });
148
148
  return { ...await e.json(), status: e.status };
149
149
  } catch (e) {
@@ -159,8 +159,8 @@ async function b(t, s) {
159
159
  t,
160
160
  s
161
161
  );
162
- let c = n.PENDING, o = null;
163
- return a.status === 500 ? (c = n.NOT_FOUND, o = "Error during lookup.") : a.status === 404 || a.status === 429 ? c = n.NOT_FOUND : a.status === 400 ? c = n.ALREADY_INITIATED : a.status === 200 && (a.currentStep === "error" || a.currentStep === "docReviewLimitExceeded" ? (c = n.NOT_FOUND, o = "An error occurred during verification.") : a.currentStep === "pending" || a.currentStep === "consolation" || a.currentStep === "loading" ? (c = n.PENDING, o = "pending") : a.currentStep.toLowerCase().startsWith("collect") ? o = "Unexpected API response." : (c = n.FOUND, o = a.currentStep)), R({ eventName: L.VERIFICATION_HELP, params: { status: c, programId: t } }), { status: c, message: o };
162
+ let c = n.PENDING, l = null;
163
+ return a.status === 500 ? (c = n.NOT_FOUND, l = "Error during lookup.") : a.status === 404 || a.status === 429 ? c = n.NOT_FOUND : a.status === 400 ? c = n.ALREADY_INITIATED : a.status === 200 && (a.currentStep === "error" || a.currentStep === "docReviewLimitExceeded" ? (c = n.NOT_FOUND, l = "An error occurred during verification.") : a.currentStep === "pending" || a.currentStep === "consolation" || a.currentStep === "loading" ? (c = n.PENDING, l = "pending") : a.currentStep.toLowerCase().startsWith("collect") ? l = "Unexpected API response." : (c = n.FOUND, l = a.currentStep)), R({ eventName: L.VERIFICATION_HELP, params: { status: c, programId: t } }), { status: c, message: l };
164
164
  } catch (a) {
165
165
  return E.error("Error submitting verification help request:", a), {
166
166
  status: n.PENDING,
@@ -169,12 +169,12 @@ async function b(t, s) {
169
169
  }
170
170
  }
171
171
  function ee(t, s, a) {
172
- const [c, o] = l.useState(!1), [e, m] = l.useState(null), f = q("collect-info-step-email-first"), g = f === "no-message-dimmed-fields", [y, O] = l.useState(!1), [_, j] = l.useState(!1), [x, T] = l.useState(!1), [u, S] = l.useState({
172
+ const [c, l] = o.useState(!1), [e, m] = o.useState(null), f = q("collect-info-step-email-first"), g = f === "no-message-dimmed-fields", [y, O] = o.useState(!1), [_, j] = o.useState(!1), [x, T] = o.useState(!1), [u, S] = o.useState({
173
173
  emailLookupResponse: null,
174
174
  hasBlurred: !1,
175
175
  hasKeyPressed: !1,
176
176
  isValidEmail: !I(s)
177
- }), { userDidConvert: M } = G(a), C = l.useCallback((r) => {
177
+ }), { userDidConvert: M } = G(a), C = o.useCallback((r) => {
178
178
  const p = !I(r);
179
179
  S((h) => ({
180
180
  ...h,
@@ -184,13 +184,13 @@ function ee(t, s, a) {
184
184
  isValidEmail: p
185
185
  }));
186
186
  }, []);
187
- l.useEffect(() => {
187
+ o.useEffect(() => {
188
188
  C(s);
189
189
  }, [s, C]);
190
- const w = l.useMemo(
190
+ const w = o.useMemo(
191
191
  () => s !== "" && u.isValidEmail && (!g || (e == null ? void 0 : e.status) === n.NOT_FOUND),
192
192
  [s, u.isValidEmail, g, e]
193
- ), U = l.useMemo(
193
+ ), U = o.useMemo(
194
194
  () => (s === "" || typeof s == "string" && s.length >= 1 || (e == null ? void 0 : e.status) === null) && ((e == null ? void 0 : e.status) === n.NOT_FOUND || ![
195
195
  n.ALREADY_INITIATED,
196
196
  n.FOUND,
@@ -198,25 +198,25 @@ function ee(t, s, a) {
198
198
  n.REJECTED
199
199
  ].includes(e == null ? void 0 : e.status)),
200
200
  [s, e]
201
- ), N = l.useCallback(async () => {
201
+ ), N = o.useCallback(async () => {
202
202
  if (!(!u.isValidEmail || y || x)) {
203
- j(!0), O(!1), o(!0);
203
+ j(!0), O(!1), l(!0);
204
204
  try {
205
205
  const r = await b(t, s);
206
206
  r.status === n.FOUND && M(J, K), m(r);
207
207
  } catch (r) {
208
208
  E.error("Error during email lookup:", r);
209
209
  } finally {
210
- o(!1);
210
+ l(!1);
211
211
  }
212
212
  }
213
- }, [t, s, y, x, u.isValidEmail]), v = l.useCallback(
213
+ }, [t, s, y, x, u.isValidEmail]), v = o.useCallback(
214
214
  (r) => {
215
215
  _ || r.key === "Enter" && (T(!0), N());
216
216
  },
217
217
  [N, _]
218
- ), k = l.useCallback(async () => {
219
- o(!0);
218
+ ), k = o.useCallback(async () => {
219
+ l(!0);
220
220
  try {
221
221
  const r = await b(
222
222
  t,
@@ -226,14 +226,14 @@ function ee(t, s, a) {
226
226
  } catch (r) {
227
227
  E.error("Error resending email:", r);
228
228
  } finally {
229
- o(!1);
229
+ l(!1);
230
230
  }
231
- }, [t, s, a]), A = l.useCallback(async () => {
231
+ }, [t, s, a]), A = o.useCallback(async () => {
232
232
  u.isValidEmail && (O(!0), m({
233
233
  status: n.NOT_FOUND,
234
234
  message: "makeChanges"
235
235
  }));
236
- }, [u.isValidEmail]), P = l.useCallback(
236
+ }, [u.isValidEmail]), P = o.useCallback(
237
237
  async (r) => {
238
238
  if (!r) return;
239
239
  const p = Y(
@@ -1 +1 @@
1
- {"version":3,"file":"useEmailFirstExperiment-DH410dM-.js","sources":["../../src/components/FormFields/EmailFirstCollectInfo/EmailMessageComponent.tsx","../../src/components/FormFields/EmailFirstCollectInfo/types.ts","../../src/components/FormFields/EmailFirstCollectInfo/EmailLookupResponseMessageComponent.tsx","../../src/lib/ServerApi/VerificationHelpRequestApi.ts","../../src/components/FormFields/EmailFirstCollectInfo/useEmailFirstExperiment.ts"],"sourcesContent":["import React, { useState } from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\n\ninterface EmailMessageComponentProps {\n title?: string | React.ReactNode;\n message?: string | React.ReactNode;\n closing?: string | React.ReactNode;\n helpRequestResponse?: \"green\" | \"blue\";\n onResendClick?: () => Promise<void>;\n}\n\nconst EmailMessageComponent = ({\n title,\n message,\n closing,\n helpRequestResponse = \"blue\",\n onResendClick,\n}: EmailMessageComponentProps) => {\n const [hasSent, setHasSent] = useState(false);\n\n const handleClick = async () => {\n if (onResendClick) {\n await onResendClick();\n setHasSent(true);\n }\n };\n\n return (\n <div\n className={\n helpRequestResponse === \"green\"\n ? \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-green\"\n : \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-blue\"\n }\n >\n <div className=\"sid-email-msg-container__title\">{title}</div>\n <div className=\"sid-email-msg-container__content\">{message}</div>\n <div className=\"sid-email-msg-container__content sid-email-msg-container__closing\">\n {closing}\n </div>\n <div className=\"sid-email-resend-area\">\n <button\n type=\"button\"\n className={\n hasSent\n ? \"sid-email-resend-area__button sid-email-resend-area__button__sent\"\n : \"sid-email-resend-area__button\"\n }\n onClick={handleClick}\n disabled={hasSent}\n >\n <FormattedHTMLMessage\n id={\n hasSent\n ? \"step.personalInfo.emailFirstCollectInfo.sent\"\n : \"step.personalInfo.emailFirstCollectInfo.sendAgain\"\n }\n defaultMessage={hasSent ? \"Sent!\" : \"Send Again\"}\n />\n </button>\n </div>\n </div>\n );\n};\n\nexport { EmailMessageComponent };\n","export enum EmailLookupStatus {\n FOUND = \"existingVerificationFound\",\n NOT_FOUND = \"existingVerificationNotFound\",\n PENDING = \"pendingVerification\",\n REJECTED = \"rejectedVerification\",\n ALREADY_INITIATED = \"emailResendAlreadyInitiated\",\n}\n\nexport type EmailLookupResponse = {\n status: EmailLookupStatus;\n message: string | null;\n};\n\nexport type EmailFirstCollectInfoStep =\n | \"message-dimmed-fields\"\n | \"no-message-dimmed-fields\"\n | \"control\"\n | \"default\";\n\nexport interface VerificationHelpRequestApiResponse {\n systemErrorMessage?: string;\n currentStep?: string;\n status?: number;\n}\n","import React from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\nimport { EmailMessageComponent } from \"./EmailMessageComponent\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\n\ninterface EmailLookupResponseMessagesProps {\n emailLookupResponse: EmailLookupResponse | null;\n onResendClick?: () => Promise<void>;\n onHandleClickLink?: () => Promise<void>;\n}\n\nconst EmailLookupResponseMessages: React.FC<EmailLookupResponseMessagesProps> = ({\n emailLookupResponse,\n onResendClick = async () => {},\n onHandleClickLink = async () => {},\n}) => {\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message === \"success\"\n ) {\n return (\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.title\"\n defaultMessage=\"You've been here before!\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.message\"\n defaultMessage=\"Verify@sheerid.com re-sent your confirmation email with details on redeeming your verified offer.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.closing\"\n defaultMessage=\"Enjoy!\"\n />\n }\n helpRequestResponse=\"green\"\n onResendClick={onResendClick}\n />\n );\n }\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message !== \"success\"\n ) {\n return (\n <>\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.title\"\n defaultMessage=\"Looks like you started.\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.message\"\n defaultMessage=\"This email is associated with a verification in the works.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.closing\"\n defaultMessage=\"Verify@sheerid.com re-sent our last email to you with next steps.\"\n />\n }\n helpRequestResponse=\"blue\"\n onResendClick={onResendClick}\n />\n <div className=\"sid-email-first__need-changes sid-h-small-text\">\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.needChanges\"\n defaultMessage=\"Need to make changes?\"\n />\n <button\n type=\"submit\"\n className=\"sid-email-first__need-changes-link sid-link\"\n onClick={onHandleClickLink}\n >\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.proceedHere\"\n defaultMessage=\"Proceed here\"\n />\n </button>\n </div>\n </>\n );\n }\n\n return null;\n};\n\nexport default EmailLookupResponseMessages;\n","import { logger } from \"../utils/logger/logger\";\nimport {\n EmailLookupResponse,\n EmailLookupStatus,\n VerificationHelpRequestApiResponse,\n} from \"../../components/FormFields/EmailFirstCollectInfo/types\";\nimport { getVerificationHelpUrl } from \"./ApiUrls\";\nimport { DatabaseId } from \"../types/types\";\nimport { fetchWithTimeout } from \"./Network\";\nimport { EventName, recordGaEvent } from \"../GoogleAnalytics/ga\";\n\nconst defaultJsonHeaders = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n};\n/**\n * Endpoint to support email-first functionality.\n * Look up a verification, return status and trigger notifier(s)\n *\n * @param programId Your programId from my.sheerid.com\n * @param emailAddress Email Address used for the verification.\n */\nexport const submitVerificationHelpRequest = async (\n programId: DatabaseId,\n emailAddress: string = undefined,\n headers = {},\n): Promise<VerificationHelpRequestApiResponse> => {\n const url = getVerificationHelpUrl();\n const requestBody = {\n emailAddress,\n programId,\n };\n\n try {\n const response = await fetchWithTimeout(url, {\n headers: { ...defaultJsonHeaders, ...headers },\n method: \"POST\",\n body: JSON.stringify(requestBody),\n });\n\n const responseJson = await response.json();\n return { ...responseJson, status: response.status };\n } catch (error) {\n logger.error(\"Error in submitVerificationHelpRequest:\", error);\n return {\n systemErrorMessage: \"An error occurred during the request.\",\n status: 500,\n };\n }\n};\n\nexport async function handleSubmitVerificationHelpRequest(\n programId: string,\n email: string,\n): Promise<EmailLookupResponse> {\n try {\n const resp: VerificationHelpRequestApiResponse = await submitVerificationHelpRequest(\n programId,\n email,\n );\n let status: EmailLookupStatus = EmailLookupStatus.PENDING;\n let message: string | null = null;\n\n if (resp.status === 500) {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"Error during lookup.\";\n } else if (resp.status === 404 || resp.status === 429) {\n status = EmailLookupStatus.NOT_FOUND;\n } else if (resp.status === 400) {\n status = EmailLookupStatus.ALREADY_INITIATED;\n } else if (resp.status === 200) {\n if (resp.currentStep === \"error\" || resp.currentStep === \"docReviewLimitExceeded\") {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"An error occurred during verification.\";\n } else if (\n resp.currentStep === \"pending\" ||\n resp.currentStep === \"consolation\" ||\n resp.currentStep === \"loading\"\n ) {\n status = EmailLookupStatus.PENDING;\n message = \"pending\";\n } else if (!resp.currentStep.toLowerCase().startsWith(\"collect\")) {\n status = EmailLookupStatus.FOUND;\n message = resp.currentStep;\n } else {\n message = \"Unexpected API response.\";\n }\n }\n recordGaEvent({ eventName: EventName.VERIFICATION_HELP, params: { status, programId } });\n return { status, message };\n } catch (error) {\n logger.error(\"Error submitting verification help request:\", error);\n return {\n status: EmailLookupStatus.PENDING,\n message: \"Error during lookup.\",\n };\n }\n}\n","import { useState, useCallback, useEffect, useMemo } from \"react\";\nimport {\n COLLECT_INFO_SUBMISSION_TIME,\n COLLECT_INFO_SUBMIT,\n useMetrics,\n} from \"@/components/FeatureFlags/useMetrics\";\nimport {\n Organization,\n StudentPersonalInfoViewModel,\n TeacherPersonalInfoViewModel,\n VerificationService,\n} from \"../../../lib/types/types\";\nimport { logger } from \"../../../lib/utils/logger/logger\";\nimport { handleSubmitVerificationHelpRequest } from \"../../../lib/ServerApi/VerificationHelpRequestApi\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\nimport { getEmailValidationError } from \"../../../lib/validators/validators\";\nimport { useFlag } from \"../../FeatureFlags/hooks\";\nimport { getOrgSearchUrl } from \"../../../lib/ProgramTheme/programThemeGetters\";\nimport { getDomainFromEmail } from \"../../../lib/utils/routing/Url\";\nimport { fetchOrganization } from \"../../../lib/ServerApi/OrganizationApiClient\";\n\nexport function useEmailFirstExperiment(programId: string, email: string, segment: string) {\n const [isLoading, setIsLoading] = useState(false);\n const [emailLookupResponse, setEmailLookupResponse] = useState<EmailLookupResponse | null>(null);\n const emailFirstCollectInfoStep = useFlag(\"collect-info-step-email-first\");\n const isEmailUpTop = emailFirstCollectInfoStep === \"no-message-dimmed-fields\";\n const [bypassEmailLookup, setBypassEmailLookup] = useState(false);\n const [hasBlurred, setHasBlurred] = useState(false);\n const [hasKeyPressed, setHasKeyPressed] = useState(false);\n const [emailInputState, setEmailInputState] = useState({\n emailLookupResponse: null,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: !getEmailValidationError(email),\n });\n const { userDidConvert } = useMetrics(segment);\n\n const updateEmailState = useCallback((newEmail: string) => {\n const isValid = !getEmailValidationError(newEmail);\n setEmailInputState((prevState) => ({\n ...prevState,\n emailLookupResponse: newEmail !== \"\" && isValid ? null : prevState.emailLookupResponse,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: isValid,\n }));\n }, []);\n\n useEffect(() => {\n updateEmailState(email);\n }, [email, updateEmailState]);\n\n const enableFormFields = useMemo(\n () =>\n email !== \"\" &&\n emailInputState.isValidEmail &&\n (!isEmailUpTop || emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND),\n [email, emailInputState.isValidEmail, isEmailUpTop, emailLookupResponse],\n );\n\n const showFormFields = useMemo(\n () =>\n (email === \"\" ||\n (typeof email === \"string\" && email.length >= 1) ||\n emailLookupResponse?.status === null) &&\n (emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND ||\n ![\n EmailLookupStatus.ALREADY_INITIATED,\n EmailLookupStatus.FOUND,\n EmailLookupStatus.PENDING,\n EmailLookupStatus.REJECTED,\n ].includes(emailLookupResponse?.status)),\n [email, emailLookupResponse],\n );\n\n const emailOnBlur = useCallback(async () => {\n if (!emailInputState.isValidEmail || bypassEmailLookup || hasKeyPressed) return;\n setHasBlurred(true);\n setBypassEmailLookup(false);\n setIsLoading(true);\n try {\n const response = await handleSubmitVerificationHelpRequest(programId, email);\n if (response.status === EmailLookupStatus.FOUND) {\n userDidConvert(COLLECT_INFO_SUBMIT, COLLECT_INFO_SUBMISSION_TIME);\n }\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error during email lookup:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, bypassEmailLookup, hasKeyPressed, emailInputState.isValidEmail]);\n\n const emailOnKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (hasBlurred) return;\n if (event.key === \"Enter\") {\n setHasKeyPressed(true);\n emailOnBlur();\n }\n },\n [emailOnBlur, hasBlurred],\n );\n\n const handleResendClick = useCallback(async () => {\n setIsLoading(true);\n try {\n const response: EmailLookupResponse = await handleSubmitVerificationHelpRequest(\n programId,\n email,\n );\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error resending email:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, segment]);\n\n const handleOnClickProceedHere = useCallback(async () => {\n if (!emailInputState.isValidEmail) return;\n setBypassEmailLookup(true);\n setEmailLookupResponse({\n status: EmailLookupStatus.NOT_FOUND,\n message: \"makeChanges\",\n });\n }, [emailInputState.isValidEmail]);\n\n const getOrgByDomain = useCallback(\n async (verificationService: VerificationService): Promise<Organization | undefined> => {\n if (!verificationService) return undefined;\n\n const orgSearchUrl = getOrgSearchUrl(\n verificationService.viewModel as\n | StudentPersonalInfoViewModel\n | TeacherPersonalInfoViewModel,\n verificationService.programTheme,\n );\n\n const emailDomain = getDomainFromEmail(email);\n const orgDomainMatch = new URL(orgSearchUrl);\n orgDomainMatch.searchParams.set(\"domain\", emailDomain);\n\n const response = await fetchOrganization(orgDomainMatch.toString());\n\n return response && response.length === 1 ? response[0] : undefined;\n },\n [email],\n );\n\n if (!isEmailUpTop) {\n return {\n isEmailUpTop,\n isEmailValidationLoading: false,\n showOtherFields: true,\n disableOtherFields: false,\n emailLookupResponse: null,\n showEmailLookupResponseMessages: false,\n showFormFields: true,\n emailOnBlur: () => {},\n emailOnKeyDown: () => {},\n handleResendClick: () => Promise.resolve(),\n emailFirstCollectInfoStep,\n isValidEmail: !getEmailValidationError(email),\n getOrgByDomain: async () => undefined,\n enableFormFields: true,\n };\n }\n\n return {\n isEmailUpTop,\n isEmailValidationLoading: isLoading,\n emailLookupResponse,\n showEmailLookupResponseMessages: !!emailLookupResponse,\n showFormFields,\n emailOnBlur,\n emailOnKeyDown,\n handleResendClick,\n emailFirstCollectInfoStep,\n isValidEmail: emailInputState.isValidEmail,\n getOrgByDomain,\n enableFormFields,\n handleOnClickProceedHere,\n };\n}\n"],"names":["EmailMessageComponent","title","message","closing","helpRequestResponse","onResendClick","hasSent","setHasSent","useState","handleClick","jsxs","jsx","FormattedHTMLMessage","EmailLookupStatus","EmailLookupResponseMessages","emailLookupResponse","onHandleClickLink","Fragment","defaultJsonHeaders","submitVerificationHelpRequest","programId","emailAddress","headers","url","getVerificationHelpUrl","requestBody","response","fetchWithTimeout","error","logger","handleSubmitVerificationHelpRequest","email","resp","status","recordGaEvent","EventName","useEmailFirstExperiment","segment","isLoading","setIsLoading","setEmailLookupResponse","emailFirstCollectInfoStep","useFlag","isEmailUpTop","bypassEmailLookup","setBypassEmailLookup","hasBlurred","setHasBlurred","hasKeyPressed","setHasKeyPressed","emailInputState","setEmailInputState","getEmailValidationError","userDidConvert","useMetrics","updateEmailState","useCallback","newEmail","isValid","prevState","useEffect","enableFormFields","useMemo","showFormFields","emailOnBlur","COLLECT_INFO_SUBMIT","COLLECT_INFO_SUBMISSION_TIME","emailOnKeyDown","event","handleResendClick","handleOnClickProceedHere","getOrgByDomain","verificationService","orgSearchUrl","getOrgSearchUrl","emailDomain","getDomainFromEmail","orgDomainMatch","fetchOrganization"],"mappings":"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"}
1
+ {"version":3,"file":"useEmailFirstExperiment-Ct5y0TUO.js","sources":["../../src/components/FormFields/EmailFirstCollectInfo/EmailMessageComponent.tsx","../../src/components/FormFields/EmailFirstCollectInfo/types.ts","../../src/components/FormFields/EmailFirstCollectInfo/EmailLookupResponseMessageComponent.tsx","../../src/lib/ServerApi/VerificationHelpRequestApi.ts","../../src/components/FormFields/EmailFirstCollectInfo/useEmailFirstExperiment.ts"],"sourcesContent":["import React, { useState } from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\n\ninterface EmailMessageComponentProps {\n title?: string | React.ReactNode;\n message?: string | React.ReactNode;\n closing?: string | React.ReactNode;\n helpRequestResponse?: \"green\" | \"blue\";\n onResendClick?: () => Promise<void>;\n}\n\nconst EmailMessageComponent = ({\n title,\n message,\n closing,\n helpRequestResponse = \"blue\",\n onResendClick,\n}: EmailMessageComponentProps) => {\n const [hasSent, setHasSent] = useState(false);\n\n const handleClick = async () => {\n if (onResendClick) {\n await onResendClick();\n setHasSent(true);\n }\n };\n\n return (\n <div\n className={\n helpRequestResponse === \"green\"\n ? \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-green\"\n : \"sid-email-msg-container sid-l-horz-center sid-l-space-top-md sid-email-msg-container--bg-blue\"\n }\n >\n <div className=\"sid-email-msg-container__title\">{title}</div>\n <div className=\"sid-email-msg-container__content\">{message}</div>\n <div className=\"sid-email-msg-container__content sid-email-msg-container__closing\">\n {closing}\n </div>\n <div className=\"sid-email-resend-area\">\n <button\n type=\"button\"\n className={\n hasSent\n ? \"sid-email-resend-area__button sid-email-resend-area__button__sent\"\n : \"sid-email-resend-area__button\"\n }\n onClick={handleClick}\n disabled={hasSent}\n >\n <FormattedHTMLMessage\n id={\n hasSent\n ? \"step.personalInfo.emailFirstCollectInfo.sent\"\n : \"step.personalInfo.emailFirstCollectInfo.sendAgain\"\n }\n defaultMessage={hasSent ? \"Sent!\" : \"Send Again\"}\n />\n </button>\n </div>\n </div>\n );\n};\n\nexport { EmailMessageComponent };\n","export enum EmailLookupStatus {\n FOUND = \"existingVerificationFound\",\n NOT_FOUND = \"existingVerificationNotFound\",\n PENDING = \"pendingVerification\",\n REJECTED = \"rejectedVerification\",\n ALREADY_INITIATED = \"emailResendAlreadyInitiated\",\n}\n\nexport type EmailLookupResponse = {\n status: EmailLookupStatus;\n message: string | null;\n};\n\nexport type EmailFirstCollectInfoStep =\n | \"message-dimmed-fields\"\n | \"no-message-dimmed-fields\"\n | \"control\"\n | \"default\";\n\nexport interface VerificationHelpRequestApiResponse {\n systemErrorMessage?: string;\n currentStep?: string;\n status?: number;\n}\n","import React from \"react\";\nimport { FormattedHTMLMessage } from \"react-intl\";\nimport { EmailMessageComponent } from \"./EmailMessageComponent\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\n\ninterface EmailLookupResponseMessagesProps {\n emailLookupResponse: EmailLookupResponse | null;\n onResendClick?: () => Promise<void>;\n onHandleClickLink?: () => Promise<void>;\n}\n\nconst EmailLookupResponseMessages: React.FC<EmailLookupResponseMessagesProps> = ({\n emailLookupResponse,\n onResendClick = async () => {},\n onHandleClickLink = async () => {},\n}) => {\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message === \"success\"\n ) {\n return (\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.title\"\n defaultMessage=\"You've been here before!\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.message\"\n defaultMessage=\"Verify@sheerid.com re-sent your confirmation email with details on redeeming your verified offer.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.existingVerificationFound.closing\"\n defaultMessage=\"Enjoy!\"\n />\n }\n helpRequestResponse=\"green\"\n onResendClick={onResendClick}\n />\n );\n }\n if (\n emailLookupResponse.status === EmailLookupStatus.FOUND &&\n emailLookupResponse.message !== \"success\"\n ) {\n return (\n <>\n <EmailMessageComponent\n title={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.title\"\n defaultMessage=\"Looks like you started.\"\n />\n }\n message={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.message\"\n defaultMessage=\"This email is associated with a verification in the works.\"\n />\n }\n closing={\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.pendingVerification.closing\"\n defaultMessage=\"Verify@sheerid.com re-sent our last email to you with next steps.\"\n />\n }\n helpRequestResponse=\"blue\"\n onResendClick={onResendClick}\n />\n <div className=\"sid-email-first__need-changes sid-h-small-text\">\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.needChanges\"\n defaultMessage=\"Need to make changes?\"\n />\n <button\n type=\"submit\"\n className=\"sid-email-first__need-changes-link sid-link\"\n onClick={onHandleClickLink}\n >\n <FormattedHTMLMessage\n id=\"step.personalInfo.emailFirstCollectInfo.proceedHere\"\n defaultMessage=\"Proceed here\"\n />\n </button>\n </div>\n </>\n );\n }\n\n return null;\n};\n\nexport default EmailLookupResponseMessages;\n","import { logger } from \"../utils/logger/logger\";\nimport {\n EmailLookupResponse,\n EmailLookupStatus,\n VerificationHelpRequestApiResponse,\n} from \"../../components/FormFields/EmailFirstCollectInfo/types\";\nimport { getVerificationHelpUrl } from \"./ApiUrls\";\nimport { DatabaseId } from \"../types/types\";\nimport { fetchWithTimeout } from \"./Network\";\nimport { EventName, recordGaEvent } from \"../GoogleAnalytics/ga\";\n\nconst defaultJsonHeaders = {\n Accept: \"application/json\",\n \"Content-Type\": \"application/json\",\n};\n/**\n * Endpoint to support email-first functionality.\n * Look up a verification, return status and trigger notifier(s)\n *\n * @param programId Your programId from my.sheerid.com\n * @param emailAddress Email Address used for the verification.\n */\nexport const submitVerificationHelpRequest = async (\n programId: DatabaseId,\n emailAddress: string = undefined,\n headers = {},\n): Promise<VerificationHelpRequestApiResponse> => {\n const url = getVerificationHelpUrl();\n const requestBody = {\n emailAddress,\n programId,\n };\n\n try {\n const response = await fetchWithTimeout(url, {\n headers: { ...defaultJsonHeaders, ...headers },\n method: \"POST\",\n body: JSON.stringify(requestBody),\n });\n\n const responseJson = await response.json();\n return { ...responseJson, status: response.status };\n } catch (error) {\n logger.error(\"Error in submitVerificationHelpRequest:\", error);\n return {\n systemErrorMessage: \"An error occurred during the request.\",\n status: 500,\n };\n }\n};\n\nexport async function handleSubmitVerificationHelpRequest(\n programId: string,\n email: string,\n): Promise<EmailLookupResponse> {\n try {\n const resp: VerificationHelpRequestApiResponse = await submitVerificationHelpRequest(\n programId,\n email,\n );\n let status: EmailLookupStatus = EmailLookupStatus.PENDING;\n let message: string | null = null;\n\n if (resp.status === 500) {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"Error during lookup.\";\n } else if (resp.status === 404 || resp.status === 429) {\n status = EmailLookupStatus.NOT_FOUND;\n } else if (resp.status === 400) {\n status = EmailLookupStatus.ALREADY_INITIATED;\n } else if (resp.status === 200) {\n if (resp.currentStep === \"error\" || resp.currentStep === \"docReviewLimitExceeded\") {\n status = EmailLookupStatus.NOT_FOUND;\n message = \"An error occurred during verification.\";\n } else if (\n resp.currentStep === \"pending\" ||\n resp.currentStep === \"consolation\" ||\n resp.currentStep === \"loading\"\n ) {\n status = EmailLookupStatus.PENDING;\n message = \"pending\";\n } else if (!resp.currentStep.toLowerCase().startsWith(\"collect\")) {\n status = EmailLookupStatus.FOUND;\n message = resp.currentStep;\n } else {\n message = \"Unexpected API response.\";\n }\n }\n recordGaEvent({ eventName: EventName.VERIFICATION_HELP, params: { status, programId } });\n return { status, message };\n } catch (error) {\n logger.error(\"Error submitting verification help request:\", error);\n return {\n status: EmailLookupStatus.PENDING,\n message: \"Error during lookup.\",\n };\n }\n}\n","import { useState, useCallback, useEffect, useMemo } from \"react\";\nimport {\n COLLECT_INFO_SUBMISSION_TIME,\n COLLECT_INFO_SUBMIT,\n useMetrics,\n} from \"@/components/FeatureFlags/useMetrics\";\nimport {\n Organization,\n StudentPersonalInfoViewModel,\n TeacherPersonalInfoViewModel,\n VerificationService,\n} from \"../../../lib/types/types\";\nimport { logger } from \"../../../lib/utils/logger/logger\";\nimport { handleSubmitVerificationHelpRequest } from \"../../../lib/ServerApi/VerificationHelpRequestApi\";\nimport { EmailLookupResponse, EmailLookupStatus } from \"./types\";\nimport { getEmailValidationError } from \"../../../lib/validators/validators\";\nimport { useFlag } from \"../../FeatureFlags/hooks\";\nimport { getOrgSearchUrl } from \"../../../lib/ProgramTheme/programThemeGetters\";\nimport { getDomainFromEmail } from \"../../../lib/utils/routing/Url\";\nimport { fetchOrganization } from \"../../../lib/ServerApi/OrganizationApiClient\";\n\nexport function useEmailFirstExperiment(programId: string, email: string, segment: string) {\n const [isLoading, setIsLoading] = useState(false);\n const [emailLookupResponse, setEmailLookupResponse] = useState<EmailLookupResponse | null>(null);\n const emailFirstCollectInfoStep = useFlag(\"collect-info-step-email-first\");\n const isEmailUpTop = emailFirstCollectInfoStep === \"no-message-dimmed-fields\";\n const [bypassEmailLookup, setBypassEmailLookup] = useState(false);\n const [hasBlurred, setHasBlurred] = useState(false);\n const [hasKeyPressed, setHasKeyPressed] = useState(false);\n const [emailInputState, setEmailInputState] = useState({\n emailLookupResponse: null,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: !getEmailValidationError(email),\n });\n const { userDidConvert } = useMetrics(segment);\n\n const updateEmailState = useCallback((newEmail: string) => {\n const isValid = !getEmailValidationError(newEmail);\n setEmailInputState((prevState) => ({\n ...prevState,\n emailLookupResponse: newEmail !== \"\" && isValid ? null : prevState.emailLookupResponse,\n hasBlurred: false,\n hasKeyPressed: false,\n isValidEmail: isValid,\n }));\n }, []);\n\n useEffect(() => {\n updateEmailState(email);\n }, [email, updateEmailState]);\n\n const enableFormFields = useMemo(\n () =>\n email !== \"\" &&\n emailInputState.isValidEmail &&\n (!isEmailUpTop || emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND),\n [email, emailInputState.isValidEmail, isEmailUpTop, emailLookupResponse],\n );\n\n const showFormFields = useMemo(\n () =>\n (email === \"\" ||\n (typeof email === \"string\" && email.length >= 1) ||\n emailLookupResponse?.status === null) &&\n (emailLookupResponse?.status === EmailLookupStatus.NOT_FOUND ||\n ![\n EmailLookupStatus.ALREADY_INITIATED,\n EmailLookupStatus.FOUND,\n EmailLookupStatus.PENDING,\n EmailLookupStatus.REJECTED,\n ].includes(emailLookupResponse?.status)),\n [email, emailLookupResponse],\n );\n\n const emailOnBlur = useCallback(async () => {\n if (!emailInputState.isValidEmail || bypassEmailLookup || hasKeyPressed) return;\n setHasBlurred(true);\n setBypassEmailLookup(false);\n setIsLoading(true);\n try {\n const response = await handleSubmitVerificationHelpRequest(programId, email);\n if (response.status === EmailLookupStatus.FOUND) {\n userDidConvert(COLLECT_INFO_SUBMIT, COLLECT_INFO_SUBMISSION_TIME);\n }\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error during email lookup:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, bypassEmailLookup, hasKeyPressed, emailInputState.isValidEmail]);\n\n const emailOnKeyDown = useCallback(\n (event: React.KeyboardEvent<HTMLInputElement>) => {\n if (hasBlurred) return;\n if (event.key === \"Enter\") {\n setHasKeyPressed(true);\n emailOnBlur();\n }\n },\n [emailOnBlur, hasBlurred],\n );\n\n const handleResendClick = useCallback(async () => {\n setIsLoading(true);\n try {\n const response: EmailLookupResponse = await handleSubmitVerificationHelpRequest(\n programId,\n email,\n );\n setEmailLookupResponse(response);\n } catch (error) {\n logger.error(\"Error resending email:\", error);\n } finally {\n setIsLoading(false);\n }\n }, [programId, email, segment]);\n\n const handleOnClickProceedHere = useCallback(async () => {\n if (!emailInputState.isValidEmail) return;\n setBypassEmailLookup(true);\n setEmailLookupResponse({\n status: EmailLookupStatus.NOT_FOUND,\n message: \"makeChanges\",\n });\n }, [emailInputState.isValidEmail]);\n\n const getOrgByDomain = useCallback(\n async (verificationService: VerificationService): Promise<Organization | undefined> => {\n if (!verificationService) return undefined;\n\n const orgSearchUrl = getOrgSearchUrl(\n verificationService.viewModel as\n | StudentPersonalInfoViewModel\n | TeacherPersonalInfoViewModel,\n verificationService.programTheme,\n );\n\n const emailDomain = getDomainFromEmail(email);\n const orgDomainMatch = new URL(orgSearchUrl);\n orgDomainMatch.searchParams.set(\"domain\", emailDomain);\n\n const response = await fetchOrganization(orgDomainMatch.toString());\n\n return response && response.length === 1 ? response[0] : undefined;\n },\n [email],\n );\n\n if (!isEmailUpTop) {\n return {\n isEmailUpTop,\n isEmailValidationLoading: false,\n showOtherFields: true,\n disableOtherFields: false,\n emailLookupResponse: null,\n showEmailLookupResponseMessages: false,\n showFormFields: true,\n emailOnBlur: () => {},\n emailOnKeyDown: () => {},\n handleResendClick: () => Promise.resolve(),\n emailFirstCollectInfoStep,\n isValidEmail: !getEmailValidationError(email),\n getOrgByDomain: async () => undefined,\n enableFormFields: true,\n };\n }\n\n return {\n isEmailUpTop,\n isEmailValidationLoading: isLoading,\n emailLookupResponse,\n showEmailLookupResponseMessages: !!emailLookupResponse,\n showFormFields,\n emailOnBlur,\n emailOnKeyDown,\n handleResendClick,\n emailFirstCollectInfoStep,\n isValidEmail: emailInputState.isValidEmail,\n getOrgByDomain,\n enableFormFields,\n handleOnClickProceedHere,\n };\n}\n"],"names":["EmailMessageComponent","title","message","closing","helpRequestResponse","onResendClick","hasSent","setHasSent","useState","handleClick","jsxs","jsx","FormattedHTMLMessage","EmailLookupStatus","EmailLookupResponseMessages","emailLookupResponse","onHandleClickLink","Fragment","defaultJsonHeaders","submitVerificationHelpRequest","programId","emailAddress","headers","url","getVerificationHelpUrl","requestBody","response","fetchWithTimeout","error","logger","handleSubmitVerificationHelpRequest","email","resp","status","recordGaEvent","EventName","useEmailFirstExperiment","segment","isLoading","setIsLoading","setEmailLookupResponse","emailFirstCollectInfoStep","useFlag","isEmailUpTop","bypassEmailLookup","setBypassEmailLookup","hasBlurred","setHasBlurred","hasKeyPressed","setHasKeyPressed","emailInputState","setEmailInputState","getEmailValidationError","userDidConvert","useMetrics","updateEmailState","useCallback","newEmail","isValid","prevState","useEffect","enableFormFields","useMemo","showFormFields","emailOnBlur","COLLECT_INFO_SUBMIT","COLLECT_INFO_SUBMISSION_TIME","emailOnKeyDown","event","handleResendClick","handleOnClickProceedHere","getOrgByDomain","verificationService","orgSearchUrl","getOrgSearchUrl","emailDomain","getDomainFromEmail","orgDomainMatch","fetchOrganization"],"mappings":"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"}
@@ -4,10 +4,10 @@
4
4
  * This file is not intended for use in other contexts and there are no guarantees about its behavior outside of MySheerID.
5
5
  */
6
6
  /**
7
- * VERSION: 2.132.0-alpha.0
8
- * BUILD_TIMESTAMP: 1759198226923
9
- * BUILD_DATE: Tue Sep 30 2025 02:10:26 GMT+0000 (Coordinated Universal Time)
10
- * BUILD_COMMIT: 7c3342c2397c22449dfe363bf8fd2df02eb99e0a
7
+ * VERSION: 2.133.0-alpha.0
8
+ * BUILD_TIMESTAMP: 1759347680150
9
+ * BUILD_DATE: Wed Oct 01 2025 19:41:20 GMT+0000 (Coordinated Universal Time)
10
+ * BUILD_COMMIT: fba56a51e008d7a472fdb2a578276960c2b5ae9c
11
11
  */
12
12
  const e = {
13
13
  "defaultMessages.ACTIVE_DUTY": "Đang Tại Ngũ",
@@ -811,6 +811,14 @@ const e = {
811
811
  "defaultMessages.step.idCheckLoop.docTypes.residencePermit.title": "Giấy Phép Cư Trú",
812
812
  "defaultMessages.step.idCheckLoop.regula.addBackImage": "Thêm mặt sau của thẻ ID",
813
813
  "defaultMessages.step.idCheckLoop.regula.addFontImage": "Thêm mặt trước của thẻ ID",
814
+ "defaultMessages.step.idCheckLoop.regula.info.subtitle": "Bằng lái xe, CMND, hộ chiếu hoặc giấy phép cư trú.",
815
+ "defaultMessages.step.idCheckLoop.regula.info.title": "Ảnh chụp giấy tờ tùy thân do chính phủ cấp",
816
+ "defaultMessages.step.idCheckLoop.regula.sdk.imageQualityError": "Hình ảnh có vấn đề về chất lượng. Vui lòng đảm bảo hình ảnh rõ nét, đủ ánh sáng và tất cả chi tiết đều hiển thị.",
817
+ "defaultMessages.step.idCheckLoop.regula.sdk.imageQualityErrorTitle": "Chúng tôi không thể xử lý tài liệu của bạn",
818
+ "defaultMessages.step.idCheckLoop.regula.sdk.rejectedImageNextStep": "Vui lòng chụp lại và tải lên lần nữa.",
819
+ "defaultMessages.step.idCheckLoop.regula.sdk.subtitle": "Gửi ảnh chụp CMND/CCCD do chính phủ cấp để tiếp tục xác minh.",
820
+ "defaultMessages.step.idCheckLoop.regula.sdk.title": "Tải lên tài liệu nhận dạng",
821
+ "defaultMessages.step.idCheckLoop.regula.sdk.uploadAgain": "Tải lên lại",
814
822
  "defaultMessages.step.idCheckLoop.regula.submit": "Gửi",
815
823
  "defaultMessages.step.idCheckLoop.regula.terms": 'Bằng cách nhấp vào "Tiếp tục", quý vị đồng ý rằng quý vị đã đọc, hiểu và chấp nhận {privacyPolicyLink} và {termsOfService}.',
816
824
  "defaultMessages.step.idCheckLoop.regula.title": "Để tiếp tục, chúng tôi cần xác minh danh tính của quý vị.",
@@ -1020,7 +1028,6 @@ const e = {
1020
1028
  "segmentMessages.medical.step.success.redirectButtonText": "Sử dụng mã ngay",
1021
1029
  "segmentMessages.medical.step.success.subtitle": "Đây là mã coupon cá nhân của bạn. Mã này chỉ dành riêng cho bạn và chỉ được dùng một lần.",
1022
1030
  "segmentMessages.medical.step.success.title": "Bạn đã được xác minh",
1023
- "segmentMessages.member.emailExplanation": "Cần gửi mã dành riêng cho bạn",
1024
1031
  "segmentMessages.member.step.docUpload.title": "Chúng tôi cần thêm thông tin",
1025
1032
  "segmentMessages.member.step.docUpload.uploadInstructions": "Tải lên một giấy tờ chính thức thể hiện",
1026
1033
  "segmentMessages.member.step.docUpload.whoIsSheerId": "",
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vi-uAKu07fX.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}