@incodetech/core 2.1.0-rc.1 → 2.1.0-rc.3

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 (263) hide show
  1. package/dist/3dAvatarProvider-ChciZmjE.esm.js +28214 -0
  2. package/dist/{BrowserStorageProvider-BpJM-gIl.esm.js → BrowserStorageProvider-CrrN540a.esm.js} +1 -8
  3. package/dist/BrowserVisibilityObserverProvider-rim9Jrz-.esm.js +25 -0
  4. package/dist/Face2DProvider-BeLlYBbB.esm.js +824 -0
  5. package/dist/FaceDetectionProvider-B78455D4.d.ts +119 -0
  6. package/dist/IVisibilityObserverCapability-BbWjgpiF.d.ts +12 -0
  7. package/dist/IWasmUtilCapability-d2XvzaCk.d.ts +145 -0
  8. package/dist/IpifyProvider-BRW14_uo.esm.js +51 -0
  9. package/dist/{OpenViduRecordingProvider-O4GjBseO.esm.js → OpenViduRecordingProvider-B_0GKkzc.esm.js} +1 -1
  10. package/dist/PrivacyLensProvider-hDzaDzZ6.esm.js +339 -0
  11. package/dist/{StreamCanvasCapture-ImiDQdVA.esm.js → StreamCanvasCapture-Bz17q4FP.esm.js} +1 -1
  12. package/dist/StreamCanvasCapture-DS1TOoiH.d.ts +42 -0
  13. package/dist/{WasmUtilProvider-BKWm8rSA.esm.js → WasmUtilProvider-ADG54T6M.esm.js} +26 -2
  14. package/dist/{addressSearch-DvmWXKZg.esm.js → addressSearch-DJyNTg5S.esm.js} +4 -4
  15. package/dist/{ae-signature-BFZta3TZ.esm.js → ae-signature-DlElqFrZ.esm.js} +1 -1
  16. package/dist/ae-signature.d.ts +4 -3
  17. package/dist/ae-signature.esm.js +10 -7
  18. package/dist/antifraud.d.ts +4 -3
  19. package/dist/antifraud.esm.js +7 -6
  20. package/dist/antifraudManager-BKdQoMFf.esm.js +84 -0
  21. package/dist/{antifraudManager-CznnhyvD.d.ts → antifraudManager-DpIvbrZP.d.ts} +2 -2
  22. package/dist/{antifraudStateMachine-Ccrb-Jxc.esm.js → antifraudStateMachine-C0NGnP9W.esm.js} +3 -3
  23. package/dist/{api-CESGtpbH.esm.js → api-DsbUi7TO.esm.js} +21 -2
  24. package/dist/authentication.d.ts +19 -13
  25. package/dist/authentication.esm.js +33 -27
  26. package/dist/{authenticationManager-CaiQbp-q.d.ts → authenticationManager-CdPbNS2H.d.ts} +13 -3
  27. package/dist/{authenticationManager-BlR6mSaG.esm.js → authenticationManager-Dtl1vcET.esm.js} +17 -8
  28. package/dist/{authenticationStateMachine-DkcGUMw5.esm.js → authenticationStateMachine-D-hOlg8p.esm.js} +20 -23
  29. package/dist/avatar.d.ts +3 -0
  30. package/dist/avatar.esm.js +3 -0
  31. package/dist/{backCameraStream-D7Wo4Nbx.esm.js → backCameraStream-ZyqrFyjO.esm.js} +3 -3
  32. package/dist/browser-DlFgHpoC-qLKs75Qp.esm.js +1425 -0
  33. package/dist/{browserSimulation-B1dWiXp7.esm.js → browserSimulation-TsSoavQv.esm.js} +153 -1216
  34. package/dist/camera-DUkgmYMo.esm.js +79 -0
  35. package/dist/camera.d.ts +7 -1
  36. package/dist/camera.esm.js +4 -4
  37. package/dist/{StreamCanvasCapture-yyl20qd9.d.ts → canvas-CJUmoXSD.d.ts} +1 -41
  38. package/dist/certificate-issuance.d.ts +312 -0
  39. package/dist/certificate-issuance.esm.js +74 -0
  40. package/dist/certificateIssuanceStateMachine-C07m7qtP.esm.js +127 -0
  41. package/dist/clientLifecycle-Ct7h9uxx.esm.js +534 -0
  42. package/dist/consent.d.ts +4 -3
  43. package/dist/consent.esm.js +7 -6
  44. package/dist/{consentManager-BYo9Nu1r.esm.js → consentManager-BtnPZUW4.esm.js} +30 -5
  45. package/dist/{consentManager-Cg5Sk2tv.d.ts → consentManager-DufVo9D9.d.ts} +55 -55
  46. package/dist/{consentStateMachine-BG3yL8aC.esm.js → consentStateMachine-DO2JqoZW.esm.js} +3 -3
  47. package/dist/cpf-ocr.d.ts +4 -3
  48. package/dist/cpf-ocr.esm.js +7 -6
  49. package/dist/{cpfOcrManager-sSKegxox.esm.js → cpfOcrManager-C4rLgKsu.esm.js} +6 -5
  50. package/dist/{cpfOcrManager-Dg1s_TY5.d.ts → cpfOcrManager-DqZZ94Gt.d.ts} +19 -19
  51. package/dist/createFaceAvatar-B8pFpy6o.d.ts +401 -0
  52. package/dist/createFaceAvatar-BOHDKQRq.esm.js +46 -0
  53. package/dist/cross-document-data-match.d.ts +2 -1
  54. package/dist/cross-document-data-match.esm.js +6 -5
  55. package/dist/curp-validation.d.ts +10 -7
  56. package/dist/curp-validation.esm.js +7 -6
  57. package/dist/{curpValidationManager-CFem6zP9.esm.js → curpValidationManager-BafobPXC.esm.js} +52 -5
  58. package/dist/{curpValidationManager-RttixpIc.d.ts → curpValidationManager-Co6LZAHT.d.ts} +4 -3
  59. package/dist/{curpValidationStateMachine-B7V_qp66.esm.js → curpValidationStateMachine-DXTPK6vI.esm.js} +3 -3
  60. package/dist/custom-fields.d.ts +4 -2
  61. package/dist/custom-fields.esm.js +49 -6
  62. package/dist/custom-watchlist.d.ts +2 -1
  63. package/dist/custom-watchlist.esm.js +27 -6
  64. package/dist/{customWatchlistStateMachine-HmFybXLX.esm.js → customWatchlistStateMachine-B4G3Chkx.esm.js} +3 -3
  65. package/dist/{deepsightLoader-8tnddNx-.esm.js → deepsightLoader-DHSVD776.esm.js} +14 -13
  66. package/dist/{deepsightService-CrHmvx8X.esm.js → deepsightService-CDahSjGP.esm.js} +9 -38
  67. package/dist/deepsightService-CMB9XjES.d.ts +69 -0
  68. package/dist/device.d.ts +9 -1
  69. package/dist/device.esm.js +5 -5
  70. package/dist/document-capture.d.ts +178 -177
  71. package/dist/document-capture.esm.js +78 -14
  72. package/dist/document-upload.d.ts +51 -50
  73. package/dist/document-upload.esm.js +10 -9
  74. package/dist/{documentCaptureStateMachine-CUTUzUw_.esm.js → documentCaptureStateMachine-DSOX2epf.esm.js} +7 -7
  75. package/dist/dynamic-forms.d.ts +4 -192
  76. package/dist/dynamic-forms.esm.js +8 -410
  77. package/dist/dynamicFormsManager-BOefZbyF.esm.js +168 -0
  78. package/dist/dynamicFormsManager-CUYLOj9g.d.ts +239 -0
  79. package/dist/dynamicFormsStateMachine-BXHcaocI.esm.js +284 -0
  80. package/dist/ekyb.d.ts +10 -6
  81. package/dist/ekyb.esm.js +62 -17
  82. package/dist/{ekybStateMachine-klc-AImJ.esm.js → ekybStateMachine-CCSeqjCt.esm.js} +5 -5
  83. package/dist/ekyc.d.ts +5 -3
  84. package/dist/ekyc.esm.js +55 -9
  85. package/dist/{ekycStateMachine-CXbpaJJn.esm.js → ekycStateMachine-DkLVTOyA.esm.js} +5 -5
  86. package/dist/electronic-signature.d.ts +4 -3
  87. package/dist/electronic-signature.esm.js +9 -6
  88. package/dist/{electronicSignatureManager-BaECdJ1u.esm.js → electronicSignatureManager-DjzUzqZj.esm.js} +135 -92
  89. package/dist/email.d.ts +5 -4
  90. package/dist/email.esm.js +9 -8
  91. package/dist/{emailManager--D5G3ChB.esm.js → emailManager-B_XzEsXH.esm.js} +47 -6
  92. package/dist/{emailManager-lAzDoQOs.d.ts → emailManager-fHASH6uo.d.ts} +4 -3
  93. package/dist/{emailStateMachine-CxTOMAjC.esm.js → emailStateMachine-fqJ42b19.esm.js} +5 -5
  94. package/dist/{endpoints-BeTK0Mlt.esm.js → endpoints-BzMJFAPV.esm.js} +15 -0
  95. package/dist/{events-Dvvriq9l.esm.js → events-CqGY1yMq.esm.js} +87 -206
  96. package/dist/events.d.ts +23 -16
  97. package/dist/events.esm.js +3 -2
  98. package/dist/extensibility.d.ts +37 -27
  99. package/dist/extensibility.esm.js +74 -57
  100. package/dist/externalFetch-CyhBfD-n.esm.js +22 -0
  101. package/dist/face-match.d.ts +2 -2
  102. package/dist/face-match.esm.js +6 -5
  103. package/dist/{faceCaptureManagerFactory-ej2j1LMr.esm.js → faceCaptureManagerFactory-2brKTzMb.esm.js} +115 -25
  104. package/dist/faceCaptureManagerFactory-CGKbf7zt.d.ts +400 -0
  105. package/dist/{faceCaptureSetup-B9t6bYze.esm.js → faceCaptureSetup-CDUVU1nl.esm.js} +97 -13
  106. package/dist/{faceMatchStateMachine-DeXXzSuz.esm.js → faceMatchStateMachine-DUeUjEPx.esm.js} +3 -3
  107. package/dist/field-comparison.d.ts +4 -3
  108. package/dist/field-comparison.esm.js +6 -5
  109. package/dist/{fieldComparisonManager-COGI2ARD.esm.js → fieldComparisonManager-B9W0a9A5.esm.js} +5 -4
  110. package/dist/{fieldComparisonManager-Bu5TaSr3.d.ts → fieldComparisonManager-DdLqDeB2.d.ts} +2 -2
  111. package/dist/fiscal-qr.d.ts +5 -3
  112. package/dist/fiscal-qr.esm.js +13 -12
  113. package/dist/flow-events.d.ts +8 -6
  114. package/dist/flow.d.ts +34 -16
  115. package/dist/flow.esm.js +53 -30
  116. package/dist/flowCompletionService-BIqSTZcd.d.ts +28 -0
  117. package/dist/flowCompletionService-qEqh_g14.esm.js +42 -0
  118. package/dist/{flowServices-ChgTNggJ.esm.js → flowServices-C4piblgx.esm.js} +24 -9
  119. package/dist/geolocation.d.ts +4 -126
  120. package/dist/geolocation.esm.js +8 -87
  121. package/dist/geolocationManager-BP2Do9O-.esm.js +123 -0
  122. package/dist/geolocationManager-Cs50eRlC.d.ts +156 -0
  123. package/dist/{geolocationStateMachine-Dvh7X0wF.esm.js → geolocationStateMachine-BYfOOOG0.esm.js} +4 -4
  124. package/dist/{getDeviceClass-C8Do2qYu.esm.js → getDeviceClass-DGGzzfqm.esm.js} +1 -1
  125. package/dist/getDeviceData-TrKM8NPh.esm.js +101 -0
  126. package/dist/government-validation.d.ts +4 -3
  127. package/dist/government-validation.esm.js +43 -8
  128. package/dist/{governmentValidationStateMachine-DcJ-BfsC.esm.js → governmentValidationStateMachine-CwoPPO8b.esm.js} +5 -5
  129. package/dist/home.d.ts +18 -15
  130. package/dist/home.esm.js +5 -4
  131. package/dist/http.d.ts +1 -0
  132. package/dist/http.esm.js +2 -2
  133. package/dist/id-ocr.d.ts +4 -625
  134. package/dist/id-ocr.esm.js +8 -84
  135. package/dist/id-verification.d.ts +28 -27
  136. package/dist/id-verification.esm.js +6 -5
  137. package/dist/id.d.ts +24 -13
  138. package/dist/id.esm.js +48 -33
  139. package/dist/idCaptureDefaults-DNJON8Xo.esm.js +188 -0
  140. package/dist/{idCaptureManager-ChCNmgBj.d.ts → idCaptureManager-BVdvfJys.d.ts} +47 -12
  141. package/dist/{idCaptureManager-D3pwWutw.esm.js → idCaptureManager-Bo9DCQSU.esm.js} +100 -15
  142. package/dist/{idCaptureStateMachine-B3AiDIsT.esm.js → idCaptureStateMachine-BeDidMLU.esm.js} +525 -439
  143. package/dist/idOcrManager-BkRDrpZu.esm.js +92 -0
  144. package/dist/idOcrManager-CJzrmM91.d.ts +641 -0
  145. package/dist/{idOcrStateMachine-CDQ5d_VM.esm.js → idOcrStateMachine-DRZc4FBl.esm.js} +5 -5
  146. package/dist/{idVerificationStateMachine-kRxwImzO.esm.js → idVerificationStateMachine-oqiERKpg.esm.js} +3 -3
  147. package/dist/identity-reuse.d.ts +4 -3
  148. package/dist/identity-reuse.esm.js +7 -6
  149. package/dist/{identityReuseManager-C6n_97dw.esm.js → identityReuseManager-Bu62LToE.esm.js} +4 -3
  150. package/dist/{identityReuseManager-Cww-NDtd.d.ts → identityReuseManager-TWKbXuvY.d.ts} +33 -33
  151. package/dist/{identityReuseStateMachine-BfE5YiEr.esm.js → identityReuseStateMachine-BmONeF6B.esm.js} +3 -3
  152. package/dist/{index-B5hPA0Bg.d.ts → index-DtUlD-bz.d.ts} +2 -2
  153. package/dist/{index-B9NysVDB.d.ts → index-Icld-cKW.d.ts} +175 -295
  154. package/dist/index-XTtxaahe.d.ts +93 -0
  155. package/dist/index.d.ts +3 -2
  156. package/dist/index.esm.js +16 -12
  157. package/dist/{invokeOnCaptureCallback-ygByVdnn.esm.js → invokeOnCaptureCallback-v_PV_IJz.esm.js} +1 -1
  158. package/dist/{lib-BY67lgbq.esm.js → lib-B050WTth.esm.js} +1 -1
  159. package/dist/mandatory-consent.d.ts +10 -7
  160. package/dist/mandatory-consent.esm.js +7 -6
  161. package/dist/{mandatoryConsentManager-Dq6WiOZh.d.ts → mandatoryConsentManager-Bmdjo14S.d.ts} +50 -50
  162. package/dist/{mandatoryConsentManager-H6D18cZB.esm.js → mandatoryConsentManager-CQ3jirlZ.esm.js} +4 -3
  163. package/dist/{mandatoryConsentStateMachine-DtQNW1ji.esm.js → mandatoryConsentStateMachine-DkJJLHqC.esm.js} +3 -3
  164. package/dist/mediaRecorderOptions-C3NAkVgK.esm.js +42 -0
  165. package/dist/mediapipeShared-CRAKVElv.esm.js +67 -0
  166. package/dist/{recordingService-yRw7hfzU.esm.js → onDeviceFaceResults-DVBggeq8.esm.js} +71 -389
  167. package/dist/{openviduLazy-Dh14JNJc.esm.js → openviduLazy-BTOIauGP.esm.js} +2 -2
  168. package/dist/openviduLazy-Dov8oKfL.esm.js +3 -0
  169. package/dist/{permissionGuards-D0wGddy7.esm.js → permissionGuards-BR2oN573.esm.js} +1 -1
  170. package/dist/{permissionServices-Doec4X5L.esm.js → permissionServices-BJhGL13R.esm.js} +7 -4
  171. package/dist/personhood.d.ts +534 -0
  172. package/dist/personhood.esm.js +1494 -0
  173. package/dist/phone.d.ts +5 -4
  174. package/dist/phone.esm.js +9 -8
  175. package/dist/{phoneManager-fPmIBYQK.d.ts → phoneManager-BOTcjXgs.d.ts} +4 -3
  176. package/dist/{phoneManager-BmF-0Ez4.esm.js → phoneManager-BWlxqbyD.esm.js} +48 -6
  177. package/dist/{phoneStateMachine-BiV0yoEx.esm.js → phoneStateMachine-B_V9nODs.esm.js} +5 -5
  178. package/dist/{qe-signature-CUYPcHVo.esm.js → qe-signature-BhFnI9pT.esm.js} +1 -1
  179. package/dist/qe-signature.d.ts +4 -3
  180. package/dist/qe-signature.esm.js +10 -7
  181. package/dist/recordingService-m_1xCthr.esm.js +347 -0
  182. package/dist/redirect-to-mobile.d.ts +4 -3
  183. package/dist/redirect-to-mobile.esm.js +9 -7
  184. package/dist/{redirectToMobileManager-Dy3t7o0C.esm.js → redirectToMobileManager-BaAo9rgi.esm.js} +5 -4
  185. package/dist/{redirectToMobileManager-BNe3IzC_.d.ts → redirectToMobileManager-Br0KZK1G.d.ts} +2 -2
  186. package/dist/{redirectToMobileStateMachine-DyAdRxfP.esm.js → redirectToMobileStateMachine-DoAnf2ql.esm.js} +16 -28
  187. package/dist/{runChildModule-CuoHZ1cx.esm.js → runChildModule-0nQfjVVo.esm.js} +14 -24
  188. package/dist/selfie.d.ts +27 -14
  189. package/dist/selfie.esm.js +43 -30
  190. package/dist/{selfieManager-BNuTIGAz.esm.js → selfieManager-D_ZFERsE.esm.js} +17 -8
  191. package/dist/{selfieManager-C2y_t6DG.d.ts → selfieManager-R0Jw5sjb.d.ts} +13 -3
  192. package/dist/{selfieStateMachine-Bv99bZJE.esm.js → selfieStateMachine-CIgeeiN9.esm.js} +4 -4
  193. package/dist/{session-DoVb-OcB.esm.js → session-9jIfKFCc.esm.js} +3 -3
  194. package/dist/session.d.ts +11 -8
  195. package/dist/session.esm.js +16 -12
  196. package/dist/{sessionInitializer-DRB-hgbV.esm.js → sessionInitializer-C_TYIgyk.esm.js} +16 -109
  197. package/dist/{setup-BwCluiw3.d.ts → setup-CpRnXxn8.d.ts} +61 -2
  198. package/dist/setup-DHc6OaHm.esm.js +562 -0
  199. package/dist/signature.d.ts +4 -2
  200. package/dist/signature.esm.js +49 -6
  201. package/dist/{signatureStateMachine-C5qqYLRz.esm.js → signatureStateMachine-DtoiPzys.esm.js} +21 -39
  202. package/dist/{stats-BMNUG1AU.esm.js → stats-CYcScXcO.esm.js} +2 -2
  203. package/dist/stats.esm.js +3 -3
  204. package/dist/thumbmarkAdapter-fHBUDlAP.esm.js +1194 -0
  205. package/dist/tri-BG1iJsr4.esm.js +399 -0
  206. package/dist/tri.d.ts +2 -0
  207. package/dist/tri.esm-DUC01NgO.esm.js +2593 -0
  208. package/dist/tri.esm.js +4 -0
  209. package/dist/trust-graph.d.ts +4 -3
  210. package/dist/trust-graph.esm.js +4 -3
  211. package/dist/{types-NuT8ftBV.d.ts → types-BklZ_Wne.d.ts} +2 -1
  212. package/dist/{types-DOUhndhT.d.ts → types-BsYXnC5s.d.ts} +39 -3
  213. package/dist/{types-DsnEVMhr.esm.js → types-CMcxlSmH.esm.js} +2 -1
  214. package/dist/types-CxW2e0Ar.d.ts +132 -0
  215. package/dist/{types-Bj9hdFjU.d.ts → types-DgGlgyZT.d.ts} +1 -1
  216. package/dist/types-ElOJAGaM.esm.js +189 -0
  217. package/dist/urlUtils-BZqFU9rR.esm.js +16 -0
  218. package/dist/video-C2WIj6TS.esm.js +36 -0
  219. package/dist/video-selfie.d.ts +351 -0
  220. package/dist/video-selfie.esm.js +1509 -0
  221. package/dist/videoSelfieSteps-7M5vxKn-.esm.js +58 -0
  222. package/dist/{warmup-Dg8Lh-50.d.ts → warmup-BJZPQIiX.d.ts} +5 -1
  223. package/dist/wasm.d.ts +4 -3
  224. package/dist/wasm.esm.js +17 -13
  225. package/dist/watchlist-for-business.d.ts +2 -1
  226. package/dist/watchlist-for-business.esm.js +30 -7
  227. package/dist/watchlist.d.ts +2 -1
  228. package/dist/watchlist.esm.js +28 -6
  229. package/dist/{watchlistForBusinessStateMachine-DMl8j2Ov.esm.js → watchlistForBusinessStateMachine-DvEunDxs.esm.js} +3 -3
  230. package/dist/{watchlistStateMachine-DmQlqI6L.esm.js → watchlistStateMachine-AHXVf-TB.esm.js} +3 -3
  231. package/dist/workflow.d.ts +296 -103
  232. package/dist/workflow.esm.js +137 -74
  233. package/dist/{xstate.esm-C9wncMQa.esm.js → xstate.esm-Bomq1a0z.esm.js} +54 -5
  234. package/package.json +26 -1
  235. package/dist/IpifyProvider-D4LWD15E.esm.js +0 -167
  236. package/dist/antifraudManager-CkV4u-LE.esm.js +0 -55
  237. package/dist/camera-DJWm3V4g.esm.js +0 -22
  238. package/dist/deepsightService-Dh5P-hLf.d.ts +0 -265
  239. package/dist/faceCaptureManagerFactory-CjdBUS6s.d.ts +0 -721
  240. package/dist/flowCompletionService-BdR2cGgB.d.ts +0 -19
  241. package/dist/flowCompletionService-DdGojV9K.esm.js +0 -20
  242. package/dist/getBrowser-C8DP7oTB.esm.js +0 -8
  243. package/dist/openviduLazy-B8L--0oe.esm.js +0 -3
  244. package/dist/setup-CUO4mErT.esm.js +0 -1037
  245. /package/dist/{Actor-Y0_Fj-KL.d.ts → Actor-CGEelYtQ.d.ts} +0 -0
  246. /package/dist/{BrowserTimerProvider-DhNc_x02.esm.js → BrowserTimerProvider-CHloo0eQ.esm.js} +0 -0
  247. /package/dist/{ITimerCapability-CB0I1Uf2.esm.js → ITimerCapability-pltuG1E8.esm.js} +0 -0
  248. /package/dist/{Manager-BHn8wH8K.d.ts → Manager-CJ3G2zqi.d.ts} +0 -0
  249. /package/dist/{MotionSensorProvider-Bx7Mpzt0.esm.js → MotionSensorProvider-DCbId4De.esm.js} +0 -0
  250. /package/dist/{StateMachine-BC_nGvrc.d.ts → StateMachine-C_AY4cs7.d.ts} +0 -0
  251. /package/dist/{apiError-B-j-gyDx.esm.js → apiError-DNS2OCEX.esm.js} +0 -0
  252. /package/dist/{camera-SRBpPq2X.d.ts → camera-CNVUo-bC.d.ts} +0 -0
  253. /package/dist/{canvas-SKcRBxsk.esm.js → canvas-_I95hkPg.esm.js} +0 -0
  254. /package/dist/{chunk-CMUKZ2uL.esm.js → chunk-CIKcdghV.esm.js} +0 -0
  255. /package/dist/{cpf-BRzggV8G.esm.js → cpf-BKaho0j_.esm.js} +0 -0
  256. /package/dist/{dateUtils-AksLQmgV.esm.js → dateUtils-7-tQYRNN.esm.js} +0 -0
  257. /package/dist/{getDeviceClass-C0olyNFS.esm.js → getDeviceClass-DavNdcxh.esm.js} +0 -0
  258. /package/dist/{http-Cai3IoLS.esm.js → http-BkiUT7EB.esm.js} +0 -0
  259. /package/dist/{otp-CGMdUzBC.esm.js → otp-Bfnzf7I3.esm.js} +0 -0
  260. /package/dist/{otp-DF5A0sFx.d.ts → otp-M4iy57XY.d.ts} +0 -0
  261. /package/dist/{platform-SKvEfCBh.esm.js → platform-uIVQUnJP.esm.js} +0 -0
  262. /package/dist/{types-DvGZI7BF.d.ts → types-D_IceWxT.d.ts} +0 -0
  263. /package/dist/{types-ya0LN_MX.d.ts → types-Duy2rDxF.d.ts} +0 -0
@@ -1,7 +1,9 @@
1
- import "./camera-SRBpPq2X.js";
2
- import "./types-Bj9hdFjU.js";
3
- import "./types-DvGZI7BF.js";
4
- import "./types-DOUhndhT.js";
5
- import "./flowCompletionService-BdR2cGgB.js";
6
- import { a as FlowEventListener, c as FlowModuleStartedEvent, i as FlowEvent, l as FlowReadyEvent, n as FlowCompletedEvent, o as FlowEventSubscribable, r as FlowErrorEvent, s as FlowModuleCompletedEvent, t as FlowClosedEvent, u as FlowStartedEvent } from "./index-B5hPA0Bg.js";
1
+ import "./camera-CNVUo-bC.js";
2
+ import "./types-DgGlgyZT.js";
3
+ import "./types-D_IceWxT.js";
4
+ import "./canvas-CJUmoXSD.js";
5
+ import "./createFaceAvatar-B8pFpy6o.js";
6
+ import "./types-BsYXnC5s.js";
7
+ import "./flowCompletionService-BIqSTZcd.js";
8
+ import { a as FlowEventListener, c as FlowModuleStartedEvent, i as FlowEvent, l as FlowReadyEvent, n as FlowCompletedEvent, o as FlowEventSubscribable, r as FlowErrorEvent, s as FlowModuleCompletedEvent, t as FlowClosedEvent, u as FlowStartedEvent } from "./index-DtUlD-bz.js";
7
9
  export { FlowClosedEvent, FlowCompletedEvent, FlowErrorEvent, FlowEvent, FlowEventListener, FlowEventSubscribable, FlowModuleCompletedEvent, FlowModuleStartedEvent, FlowReadyEvent, FlowStartedEvent };
package/dist/flow.d.ts CHANGED
@@ -1,14 +1,16 @@
1
- import { n as WasmPipeline } from "./warmup-Dg8Lh-50.js";
2
- import { t as Manager } from "./Manager-BHn8wH8K.js";
3
- import { t as AnyStateMachine } from "./StateMachine-BC_nGvrc.js";
4
- import "./camera-SRBpPq2X.js";
5
- import "./types-Bj9hdFjU.js";
6
- import "./types-DvGZI7BF.js";
7
- import { i as FlowModuleConfig, n as Flow, r as FlowModule } from "./types-DOUhndhT.js";
8
- import { n as GetFinishStatusFn, t as FinishStatus } from "./flowCompletionService-BdR2cGgB.js";
9
- import { o as FlowEventSubscribable } from "./index-B5hPA0Bg.js";
10
- import { n as ModuleRegistry } from "./types-NuT8ftBV.js";
11
- import * as xstate766 from "xstate";
1
+ import { n as WasmPipeline } from "./warmup-BJZPQIiX.js";
2
+ import { t as AnyStateMachine } from "./StateMachine-C_AY4cs7.js";
3
+ import { t as Manager } from "./Manager-CJ3G2zqi.js";
4
+ import "./camera-CNVUo-bC.js";
5
+ import "./types-DgGlgyZT.js";
6
+ import "./types-D_IceWxT.js";
7
+ import "./canvas-CJUmoXSD.js";
8
+ import "./createFaceAvatar-B8pFpy6o.js";
9
+ import { i as FlowModuleConfig, n as Flow, r as FlowModule } from "./types-BsYXnC5s.js";
10
+ import { a as TotalScore, c as getTotalScoreStatus, n as FinishStatus, o as classifyScoreStatus, r as GetFinishStatusFn, t as FinishScreenVariant } from "./flowCompletionService-BIqSTZcd.js";
11
+ import { o as FlowEventSubscribable } from "./index-DtUlD-bz.js";
12
+ import { n as ModuleRegistry } from "./types-BklZ_Wne.js";
13
+ import * as xstate1068 from "xstate";
12
14
 
13
15
  //#region src/modules/flow/flowUtils.d.ts
14
16
  type NormalizeFlowModulesOptions = {
@@ -60,7 +62,7 @@ type GetFlow = (signal: AbortSignal, options?: GetFlowOptions) => Promise<Flow>;
60
62
  declare const getFlow: GetFlow;
61
63
  //#endregion
62
64
  //#region src/modules/flow/noOpFlowModuleMachine.d.ts
63
- declare const noOpFlowModuleMachine: xstate766.StateMachine<xstate766.MachineContext, xstate766.AnyEventObject, {}, never, never, never, never, "finished", string, xstate766.NonReducibleUnknown, xstate766.NonReducibleUnknown, xstate766.EventObject, xstate766.MetaObject, {
65
+ declare const noOpFlowModuleMachine: xstate1068.StateMachine<xstate1068.MachineContext, xstate1068.AnyEventObject, {}, never, never, never, never, "finished", string, xstate1068.NonReducibleUnknown, xstate1068.NonReducibleUnknown, xstate1068.EventObject, xstate1068.MetaObject, {
64
66
  readonly id: "noOpFlowModule";
65
67
  readonly initial: "finished";
66
68
  readonly states: {
@@ -230,6 +232,8 @@ type OrchestratedFlowEvent = {
230
232
  type: 'MODULE_COMPLETE';
231
233
  } | {
232
234
  type: 'COMPLETE_FLOW';
235
+ } | {
236
+ type: 'FINISH_FLOW';
233
237
  } | {
234
238
  type: 'HOME_CONTINUE';
235
239
  } | {
@@ -260,6 +264,11 @@ type OrchestratedFlowLoadingState = {
260
264
  homeScreen: OrchestratedFlowHomeScreen;
261
265
  presentation: OrchestratedFlowPresentation;
262
266
  };
267
+ type OrchestratedFlowCompletingState = {
268
+ status: 'completing';
269
+ homeScreen: OrchestratedFlowHomeScreen;
270
+ presentation: OrchestratedFlowPresentation;
271
+ };
263
272
  type OrchestratedFlowReadyState = {
264
273
  status: 'ready';
265
274
  flow: Flow;
@@ -288,10 +297,11 @@ type OrchestratedFlowErrorState = {
288
297
  status: 'error';
289
298
  error: string;
290
299
  errorCode?: number;
300
+ moduleErrorCode?: string;
291
301
  homeScreen: OrchestratedFlowHomeScreen;
292
302
  presentation: OrchestratedFlowPresentation;
293
303
  };
294
- type OrchestratedFlowState = OrchestratedFlowIdleState | OrchestratedFlowLoadingState | OrchestratedFlowReadyState | OrchestratedFlowFinishedState | OrchestratedFlowErrorState;
304
+ type OrchestratedFlowState = OrchestratedFlowIdleState | OrchestratedFlowLoadingState | OrchestratedFlowCompletingState | OrchestratedFlowReadyState | OrchestratedFlowFinishedState | OrchestratedFlowErrorState;
295
305
  type CreateOrchestratedFlowActorOptions = {
296
306
  getFlow?: GetFlowFn;
297
307
  modules?: ModuleRegistry;
@@ -326,10 +336,18 @@ declare function createOrchestratedFlowManager(options: CreateOrchestratedFlowAc
326
336
  */
327
337
  completeModule(): void;
328
338
  /**
329
- * Skip all remaining modules and go straight to the completion step.
330
- * Used when the flow was completed externally (e.g. via redirect to mobile).
339
+ * Skip all remaining modules and complete the flow now, notifying the
340
+ * backend (getFinishStatus) on the way to the completion step.
331
341
  */
332
342
  completeFlow(): void;
343
+ /**
344
+ * Finish the flow because the onboarding was already completed externally —
345
+ * e.g. the REDIRECT_TO_MOBILE handoff finished end-to-end on mobile. Lands
346
+ * on the completion screen WITHOUT calling getFinishStatus: mobile already
347
+ * notified the backend, and the desktop never reached its own finish.
348
+ * Use this (not `completeFlow`) from REDIRECT_TO_MOBILE's `onFinish`.
349
+ */
350
+ finishFlow(): void;
333
351
  /**
334
352
  * Signal that the current module encountered a terminal error, optionally
335
353
  * with its machine-readable `moduleErrorCode`. The flow machine decides what
@@ -363,4 +381,4 @@ declare function createOrchestratedFlowManager(options: CreateOrchestratedFlowAc
363
381
  continueFromHome(): Promise<void>;
364
382
  } & FlowEventSubscribable;
365
383
  //#endregion
366
- export { type FinishStatus, type Flow, type FlowModule, type FlowModuleConfig, type FlowReadyState, type FlowState, type LazyModule, type LazyModuleRegistry, type ModuleLoader, type ModuleLoaderRegistry, type ModuleRegistry, type OrchestratedFlowFinishedState, type OrchestratedFlowHomeScreen, type OrchestratedFlowInput, type OrchestratedFlowPresentation, type OrchestratedFlowReadyState, type OrchestratedFlowState, createFlowManager, createModuleLoader, createOrchestratedFlowManager, getFlow, getRequiredWasmPipelines, noOpFlowModuleMachine, normalizeFlowModules };
384
+ export { type FinishScreenVariant, type FinishStatus, type Flow, type FlowModule, type FlowModuleConfig, type FlowReadyState, type FlowState, type LazyModule, type LazyModuleRegistry, type ModuleLoader, type ModuleLoaderRegistry, type ModuleRegistry, type OrchestratedFlowCompletingState, type OrchestratedFlowFinishedState, type OrchestratedFlowHomeScreen, type OrchestratedFlowInput, type OrchestratedFlowPresentation, type OrchestratedFlowReadyState, type OrchestratedFlowState, type TotalScore, classifyScoreStatus, createFlowManager, createModuleLoader, createOrchestratedFlowManager, getFlow, getRequiredWasmPipelines, getTotalScoreStatus, noOpFlowModuleMachine, normalizeFlowModules };
package/dist/flow.esm.js CHANGED
@@ -1,19 +1,24 @@
1
- import "./api-CESGtpbH.esm.js";
2
- import { h as addEvent } from "./events-Dvvriq9l.esm.js";
3
- import "./endpoints-BeTK0Mlt.esm.js";
4
- import "./stats-BMNUG1AU.esm.js";
5
- import "./IpifyProvider-D4LWD15E.esm.js";
6
- import "./browserSimulation-B1dWiXp7.esm.js";
7
- import "./sessionInitializer-DRB-hgbV.esm.js";
8
- import "./platform-SKvEfCBh.esm.js";
9
- import "./getBrowser-C8DP7oTB.esm.js";
10
- import { a as fromPromise, c as createManager, r as assign, s as createActor, t as setup } from "./xstate.esm-C9wncMQa.esm.js";
11
- import "./apiError-B-j-gyDx.esm.js";
12
- import "./types-DsnEVMhr.esm.js";
13
- import "./session-DoVb-OcB.esm.js";
14
- import { n as getRequiredWasmPipelines, r as normalizeFlowModules, t as getFlow } from "./flowServices-ChgTNggJ.esm.js";
15
- import { n as isAdvanceableError, r as attachFlowEventEmitter, t as runChildModule } from "./runChildModule-CuoHZ1cx.esm.js";
16
- import { t as getFinishStatus } from "./flowCompletionService-DdGojV9K.esm.js";
1
+ import "./BrowserTimerProvider-CHloo0eQ.esm.js";
2
+ import "./api-DsbUi7TO.esm.js";
3
+ import { d as addEvent } from "./events-CqGY1yMq.esm.js";
4
+ import "./types-ElOJAGaM.esm.js";
5
+ import "./endpoints-BzMJFAPV.esm.js";
6
+ import "./stats-CYcScXcO.esm.js";
7
+ import "./browserSimulation-TsSoavQv.esm.js";
8
+ import "./sessionInitializer-C_TYIgyk.esm.js";
9
+ import "./getDeviceData-TrKM8NPh.esm.js";
10
+ import "./thumbmarkAdapter-fHBUDlAP.esm.js";
11
+ import "./IpifyProvider-BRW14_uo.esm.js";
12
+ import "./platform-uIVQUnJP.esm.js";
13
+ import "./tri-BG1iJsr4.esm.js";
14
+ import { a as fromPromise, l as createManager, r as assign, s as createActor, t as setup } from "./xstate.esm-Bomq1a0z.esm.js";
15
+ import "./apiError-DNS2OCEX.esm.js";
16
+ import "./types-CMcxlSmH.esm.js";
17
+ import "./session-9jIfKFCc.esm.js";
18
+ import "./videoSelfieSteps-7M5vxKn-.esm.js";
19
+ import { n as getRequiredWasmPipelines, r as normalizeFlowModules, t as getFlow } from "./flowServices-C4piblgx.esm.js";
20
+ import { n as getFinishStatus, r as getTotalScoreStatus, t as classifyScoreStatus } from "./flowCompletionService-qEqh_g14.esm.js";
21
+ import { n as isAdvanceableError, r as attachFlowEventEmitter, t as runChildModule } from "./runChildModule-0nQfjVVo.esm.js";
17
22
 
18
23
  //#region src/modules/flow/noOpFlowModuleMachine.ts
19
24
  const noOpFlowModuleMachine = setup({}).createMachine({
@@ -427,6 +432,7 @@ const orchestratedFlowMachine = setup({
427
432
  prefetchNextLazyModule(context);
428
433
  },
429
434
  setFinishStatus: assign(({ event }) => ({ finishStatus: event.output })),
435
+ setFinishStatusFailed: assign({ moduleErrorCode: "FINISH_STATUS_FAILED" }),
430
436
  setModuleErrorCode: assign(({ event }) => ({ moduleErrorCode: event.moduleErrorCode })),
431
437
  trackAdvanceableModuleError: ({ context, event }) => {
432
438
  addEvent({
@@ -444,6 +450,7 @@ const orchestratedFlowMachine = setup({
444
450
  isAdvanceableModuleErrorOnLastStep: ({ context, event }) => isAdvanceableError(event.moduleErrorCode) && context.currentStepIndex >= 0 && context.currentStepIndex === context.steps.length - 1,
445
451
  isLastStep: ({ context }) => context.currentStepIndex >= 0 && context.currentStepIndex === context.steps.length - 1,
446
452
  canGoNext: ({ context }) => context.currentStepIndex >= 0 && context.currentStepIndex < context.steps.length - 1,
453
+ isOnboardingFinishedSignal: ({ event }) => event.output?.action === "onboardingFinished",
447
454
  shouldEnterHome: ({ context }) => shouldEnterHome(context),
448
455
  hasModule: ({ context, event }) => {
449
456
  if (!("output" in event)) return false;
@@ -570,13 +577,20 @@ const orchestratedFlowMachine = setup({
570
577
  }
571
578
  },
572
579
  on: {
573
- MODULE_COMPLETE: [{
574
- target: "completing",
575
- guard: "isLastStep"
576
- }, {
577
- target: "resolvingModule",
578
- actions: "incrementStep"
579
- }],
580
+ MODULE_COMPLETE: [
581
+ {
582
+ target: "finished",
583
+ guard: "isOnboardingFinishedSignal"
584
+ },
585
+ {
586
+ target: "completing",
587
+ guard: "isLastStep"
588
+ },
589
+ {
590
+ target: "resolvingModule",
591
+ actions: "incrementStep"
592
+ }
593
+ ],
580
594
  MODULE_ERROR: [
581
595
  {
582
596
  guard: "isAdvanceableModuleErrorOnLastStep",
@@ -598,6 +612,7 @@ const orchestratedFlowMachine = setup({
598
612
  }
599
613
  ],
600
614
  COMPLETE_FLOW: { target: "completing" },
615
+ FINISH_FLOW: { target: "finished" },
601
616
  RESET: {
602
617
  target: "idle",
603
618
  actions: "resetContext"
@@ -618,7 +633,7 @@ const orchestratedFlowMachine = setup({
618
633
  },
619
634
  onError: {
620
635
  target: "error",
621
- actions: "setError"
636
+ actions: ["setError", "setFinishStatusFailed"]
622
637
  }
623
638
  },
624
639
  on: { RESET: {
@@ -626,10 +641,7 @@ const orchestratedFlowMachine = setup({
626
641
  actions: "resetContext"
627
642
  } }
628
643
  },
629
- finished: { on: { RESET: {
630
- target: "idle",
631
- actions: "resetContext"
632
- } } },
644
+ finished: { type: "final" },
633
645
  error: {
634
646
  entry: "clearHomeContinueLoading",
635
647
  on: { RESET: {
@@ -672,7 +684,8 @@ function deriveUiModel(snapshot, mappedStatus, isHomePhase, options) {
672
684
  function getMappedStatus(snapshot) {
673
685
  const { value } = snapshot;
674
686
  if (value === "idle") return "idle";
675
- if (value === "loading" || value === "resolvingModule" || value === "completing" || typeof value === "object") return "loading";
687
+ if (value === "completing") return "completing";
688
+ if (value === "loading" || value === "resolvingModule" || typeof value === "object") return "loading";
676
689
  if (value === "finished") return "finished";
677
690
  if (value === "error") return "error";
678
691
  return "ready";
@@ -691,6 +704,11 @@ function mapOrchestratedFlowState(snapshot, uiOptions) {
691
704
  homeScreen: uiModel.homeScreen,
692
705
  presentation: uiModel.presentation
693
706
  };
707
+ if (mappedStatus === "completing") return {
708
+ status: "completing",
709
+ homeScreen: uiModel.homeScreen,
710
+ presentation: uiModel.presentation
711
+ };
694
712
  if (mappedStatus === "finished") return {
695
713
  status: "finished",
696
714
  flow: context.flow ?? {},
@@ -708,6 +726,7 @@ function mapOrchestratedFlowState(snapshot, uiOptions) {
708
726
  status: "error",
709
727
  error: context.error ?? "Unknown error",
710
728
  errorCode: context.errorCode,
729
+ moduleErrorCode: context.moduleErrorCode,
711
730
  homeScreen: uiModel.homeScreen,
712
731
  presentation: uiModel.presentation
713
732
  };
@@ -793,6 +812,10 @@ function createOrchestratedFlowApi({ actor, getSnapshot, trackElementClicked },
793
812
  trackElementClicked?.("completeFlow");
794
813
  actor.send({ type: "COMPLETE_FLOW" });
795
814
  },
815
+ finishFlow() {
816
+ trackElementClicked?.("finishFlow");
817
+ actor.send({ type: "FINISH_FLOW" });
818
+ },
796
819
  errorModule(error, moduleErrorCode) {
797
820
  actor.send({
798
821
  type: "MODULE_ERROR",
@@ -861,4 +884,4 @@ function createOrchestratedFlowManager(options) {
861
884
  }
862
885
 
863
886
  //#endregion
864
- export { createFlowManager, createModuleLoader, createOrchestratedFlowManager, getFlow, getRequiredWasmPipelines, noOpFlowModuleMachine, normalizeFlowModules };
887
+ export { classifyScoreStatus, createFlowManager, createModuleLoader, createOrchestratedFlowManager, getFlow, getRequiredWasmPipelines, getTotalScoreStatus, noOpFlowModuleMachine, normalizeFlowModules };
@@ -0,0 +1,28 @@
1
+ //#region src/modules/flow/flowCompletionService.d.ts
2
+ type FinishStatus = {
3
+ redirectionUrl: string;
4
+ action: 'approved' | 'rejected' | 'none';
5
+ scoreStatus: 'OK' | 'WARN' | 'MANUAL_OK' | 'FAIL' | 'UNKNOWN' | 'MANUAL_FAIL';
6
+ /**
7
+ * Dashboard-configured completion-screen copy. Sourced from POST /omni/start
8
+ * (session creation), not /omni/finish-status — `getFinishStatus` itself
9
+ * always returns `null` here and the orchestrated flow overlays the real
10
+ * values captured at session creation. `null` when the dashboard has no
11
+ * end-screen configured. Raw values only; hosts apply their own i18n fallback.
12
+ */
13
+ endScreenTitle: string | null;
14
+ endScreenText: string | null;
15
+ };
16
+ type GetFinishStatusFn = (flowId: string | undefined | null, signal?: AbortSignal) => Promise<FinishStatus>;
17
+ declare const getFinishStatus: GetFinishStatusFn;
18
+ /** The session's overall score status (superset of `FinishStatus['scoreStatus']`). */
19
+ type TotalScore = 'OK' | 'WARN' | 'MANUAL_OK' | 'FAIL' | 'UNKNOWN' | 'MANUAL_FAIL' | 'MANUAL' | 'MANUAL_PENDING';
20
+ /** The three status-specific finish screens a session can resolve to. */
21
+ type FinishScreenVariant = 'success' | 'error' | 'review';
22
+ /** Maps a session's `TotalScore` to the finish-screen variant; unknown or absent → `error`. */
23
+ declare function classifyScoreStatus(score: TotalScore | undefined): FinishScreenVariant;
24
+ type GetTotalScoreStatusFn = (signal?: AbortSignal) => Promise<TotalScore>;
25
+ /** Fetches the session's overall score status via a lighter read-only GET. */
26
+ declare function getTotalScoreStatus(signal?: AbortSignal): Promise<TotalScore>;
27
+ //#endregion
28
+ export { TotalScore as a, getTotalScoreStatus as c, GetTotalScoreStatusFn as i, FinishStatus as n, classifyScoreStatus as o, GetFinishStatusFn as r, getFinishStatus as s, FinishScreenVariant as t };
@@ -0,0 +1,42 @@
1
+ import { t as api } from "./api-DsbUi7TO.esm.js";
2
+ import { t as endpoints } from "./endpoints-BzMJFAPV.esm.js";
3
+ import { n as toIncodeApiError } from "./apiError-DNS2OCEX.esm.js";
4
+
5
+ //#region src/modules/flow/flowCompletionService.ts
6
+ const getFinishStatus = async (flowId, signal) => {
7
+ const url = `${endpoints.finishStatus}${flowId ? `?flowId=${flowId}` : ""}`;
8
+ try {
9
+ return {
10
+ ...(await api.get(url, { signal })).data,
11
+ endScreenTitle: null,
12
+ endScreenText: null
13
+ };
14
+ } catch (error) {
15
+ toIncodeApiError(endpoints.finishStatus, error);
16
+ }
17
+ };
18
+ const SCORE_VARIANTS = {
19
+ OK: "success",
20
+ WARN: "success",
21
+ MANUAL_OK: "success",
22
+ FAIL: "error",
23
+ UNKNOWN: "error",
24
+ MANUAL_FAIL: "error",
25
+ MANUAL: "review",
26
+ MANUAL_PENDING: "review"
27
+ };
28
+ /** Maps a session's `TotalScore` to the finish-screen variant; unknown or absent → `error`. */
29
+ function classifyScoreStatus(score) {
30
+ return (score && SCORE_VARIANTS[score]) ?? "error";
31
+ }
32
+ /** Fetches the session's overall score status via a lighter read-only GET. */
33
+ async function getTotalScoreStatus(signal) {
34
+ try {
35
+ return (await api.get(endpoints.sessionTotalScoreStatus, { signal })).data.totalScoreStatus;
36
+ } catch (error) {
37
+ toIncodeApiError(endpoints.sessionTotalScoreStatus, error);
38
+ }
39
+ }
40
+
41
+ //#endregion
42
+ export { getFinishStatus as n, getTotalScoreStatus as r, classifyScoreStatus as t };
@@ -1,14 +1,14 @@
1
- import { t as api } from "./api-CESGtpbH.esm.js";
2
- import { t as endpoints } from "./endpoints-BeTK0Mlt.esm.js";
3
- import { n as getSessionFingerprintResult, r as initializeSession } from "./sessionInitializer-DRB-hgbV.esm.js";
4
- import { n as toIncodeApiError } from "./apiError-B-j-gyDx.esm.js";
1
+ import { t as api } from "./api-DsbUi7TO.esm.js";
2
+ import { t as endpoints } from "./endpoints-BzMJFAPV.esm.js";
3
+ import { n as getSessionFingerprintResult, r as initializeSession } from "./sessionInitializer-C_TYIgyk.esm.js";
4
+ import { n as toIncodeApiError } from "./apiError-DNS2OCEX.esm.js";
5
+ import { r as videoSelfieWasmPipelines } from "./videoSelfieSteps-7M5vxKn-.esm.js";
5
6
 
6
7
  //#region src/modules/flow/flowUtils.ts
7
8
  const WASM_MODULE_PIPELINES = {
8
9
  SELFIE: "selfie",
9
10
  AUTHENTICATION: "selfie",
10
11
  FACE_MATCH: "selfie",
11
- VIDEO_ONBOARDING: "selfie",
12
12
  ID: "idCapture",
13
13
  TUTORIAL_ID: "idCapture",
14
14
  SECOND_ID: "idCapture"
@@ -18,6 +18,9 @@ function isOnDeviceFaceModule(module) {
18
18
  if (!FACE_MODULES_WITH_ON_DEVICE_VARIANT.has(module.key)) return false;
19
19
  return module.configuration?.onDeviceFaceResultsSubmissionEnabled === true;
20
20
  }
21
+ function isVideoOnboardingModule(module) {
22
+ return module.key === "VIDEO_ONBOARDING";
23
+ }
21
24
  /**
22
25
  * Analyzes a flow configuration and returns the WASM pipelines needed.
23
26
  * Use this to conditionally warmup WASM only when required by the flow.
@@ -44,6 +47,10 @@ function getRequiredWasmPipelines(flow) {
44
47
  pipelines.add("onDeviceSelfie");
45
48
  continue;
46
49
  }
50
+ if (isVideoOnboardingModule(module)) {
51
+ for (const p of videoSelfieWasmPipelines(module.configuration)) pipelines.add(p);
52
+ continue;
53
+ }
47
54
  const pipeline = WASM_MODULE_PIPELINES[module.key];
48
55
  if (pipeline) pipelines.add(pipeline);
49
56
  }
@@ -62,6 +69,7 @@ function normalizeFlowModules(flow, options = {}) {
62
69
  let modules = normalizeIdModules(flow.flowModules);
63
70
  modules = normalizeCpfModules(modules, options);
64
71
  modules = dropWatchlistBusinessIfEkyb(modules);
72
+ modules = dropSelfieIfVideoSelfieUsesAsSelfie(modules);
65
73
  if (shouldInjectRedirect(flow, modules, options)) modules = addRedirect(flow, modules, options);
66
74
  return modules;
67
75
  }
@@ -74,6 +82,17 @@ function dropWatchlistBusinessIfEkyb(modules) {
74
82
  if (!hasModule(modules, "EKYB")) return modules;
75
83
  return modules.filter((m) => m.key !== "WATCHLIST_BUSINESS");
76
84
  }
85
+ /**
86
+ * Drops standalone SELFIE modules when a VIDEO_ONBOARDING module has
87
+ * `useAsSelfie: true`. The video-selfie sequence captures the onboarding selfie
88
+ * itself (its own `selfie` step), so a separate SELFIE step would be redundant.
89
+ * Only SELFIE is removed (not AUTHENTICATION / FACE_MATCH). Mirrors legacy
90
+ * flowService `removeSelfie`.
91
+ */
92
+ function dropSelfieIfVideoSelfieUsesAsSelfie(modules) {
93
+ if (!modules.some((m) => m.key === "VIDEO_ONBOARDING" && m.configuration.useAsSelfie === true)) return modules;
94
+ return modules.filter((m) => m.key !== "SELFIE");
95
+ }
77
96
  function normalizeIdModules(modules) {
78
97
  return modules.flatMap((module, idx, arr) => {
79
98
  if (module.key === "TUTORIAL_ID") {
@@ -179,10 +198,6 @@ const getFlow = async (signal, options = {}) => {
179
198
  if (data.mandatoryConsentCheck !== false) await sessionPromise;
180
199
  const flow = prependMandatoryConsent(data);
181
200
  const normalizedModules = normalizeFlowModules(flow, options);
182
- console.log({
183
- ...flow,
184
- flowModules: normalizedModules
185
- });
186
201
  return {
187
202
  ...flow,
188
203
  flowModules: normalizedModules
@@ -1,127 +1,5 @@
1
- import { t as Manager } from "./Manager-BHn8wH8K.js";
2
- import "./Actor-Y0_Fj-KL.js";
3
-
4
- //#region ../infra/src/capabilities/IGeolocationCapability.d.ts
5
- type GeolocationCoords = {
6
- latitude: number;
7
- longitude: number;
8
- };
9
- type IGeolocationCapability = {
10
- getCurrentPosition(): Promise<GeolocationCoords>;
11
- };
12
- //#endregion
13
- //#region src/modules/geolocation/types.d.ts
14
- /**
15
- * Configuration options for the Geolocation module.
16
- *
17
- * @example
18
- * ```typescript
19
- * const config: GeolocationConfig = {
20
- * allowUserToSkipGeolocation: true,
21
- * };
22
- * ```
23
- */
24
- type GeolocationConfig = {
25
- /**
26
- * Whether the user is allowed to skip geolocation capture.
27
- * When true, a skip button is shown on the permission-denied screen.
28
- * Backend field name from flow/workflow configuration.
29
- * @default false
30
- */
31
- allowUserToSkipGeolocation?: boolean;
32
- };
33
- //#endregion
34
- //#region src/modules/geolocation/geolocationStateMachine.d.ts
35
- type GeolocationDeviceType = 'ios' | 'android' | 'desktop';
36
- declare const geolocationMachine: any;
37
- //#endregion
38
- //#region src/modules/geolocation/geolocationActor.d.ts
39
- type CreateGeolocationActorOptions = {
40
- config: GeolocationConfig;
41
- geolocation?: IGeolocationCapability;
42
- };
43
- //#endregion
44
- //#region src/modules/geolocation/geolocationManager.d.ts
45
- /** Geolocation manager is in initial state, waiting for `request()` to be called */
46
- type GeolocationIdleState = {
47
- status: 'idle';
48
- };
49
- /** Browser geolocation permission prompt is active */
50
- type GeolocationRequestingState = {
51
- status: 'requestingLocation';
52
- };
53
- /** Coordinates are being submitted to the backend */
54
- type GeolocationSubmittingState = {
55
- status: 'submitting';
56
- };
57
- /**
58
- * Location successfully acquired — call `continue()` to proceed
59
- * @property location - Location name returned from backend, or null
60
- */
61
- type GeolocationAcquiredState = {
62
- status: 'locationAcquired';
63
- location: string | null;
64
- };
65
- /**
66
- * User denied geolocation permission — shows device-specific instructions
67
- * @property deviceType - Used by UI to render the correct instruction panel
68
- * @property canSkip - Whether the skip button should be shown
69
- */
70
- type GeolocationPermissionDeniedState = {
71
- status: 'permissionDenied';
72
- deviceType: GeolocationDeviceType;
73
- canSkip: boolean;
74
- };
75
- /** Geolocation flow completed successfully */
76
- type GeolocationFinishedState = {
77
- status: 'finished';
78
- };
79
- /**
80
- * Union of all possible geolocation manager states.
81
- *
82
- * @example
83
- * ```typescript
84
- * const state = geolocationManager.getState();
85
- * if (state.status === 'locationAcquired') {
86
- * console.log(state.location);
87
- * }
88
- * if (state.status === 'permissionDenied') {
89
- * console.log(state.deviceType); // 'ios' | 'android' | 'desktop'
90
- * }
91
- * ```
92
- */
93
- type GeolocationState = GeolocationIdleState | GeolocationRequestingState | GeolocationSubmittingState | GeolocationAcquiredState | GeolocationPermissionDeniedState | GeolocationFinishedState;
94
- /**
95
- * Creates a geolocation manager for headless or UI-driven usage.
96
- *
97
- * @example Headless usage
98
- * ```typescript
99
- * const manager = createGeolocationManager({ config: { allowUserToSkipGeolocation: true } });
100
- * manager.subscribe((state) => console.log(state.status));
101
- * manager.request();
102
- * ```
103
- */
104
- declare function createGeolocationManager(options: CreateGeolocationActorOptions): Manager<GeolocationState> & {
105
- /**
106
- * Initiates the browser geolocation permission request.
107
- * Transitions from 'idle' to 'requestingLocation'.
108
- */
109
- request(): void;
110
- /**
111
- * Confirms the acquired location and completes the module.
112
- * Should be called when state is 'locationAcquired'.
113
- */
114
- continue(): void;
115
- /**
116
- * Skips geolocation when the user has denied permission.
117
- * Only works when `config.allowUserToSkipGeolocation` is true.
118
- */
119
- skip(): void;
120
- /**
121
- * Resets the manager back to initial state.
122
- */
123
- reset(): void;
124
- };
125
- type GeolocationManager = ReturnType<typeof createGeolocationManager>;
126
- //#endregion
1
+ import "./StateMachine-C_AY4cs7.js";
2
+ import "./Manager-CJ3G2zqi.js";
3
+ import "./Actor-CGEelYtQ.js";
4
+ import { n as GeolocationState, o as geolocationMachine, r as createGeolocationManager, s as GeolocationConfig, t as GeolocationManager } from "./geolocationManager-Cs50eRlC.js";
127
5
  export { type GeolocationConfig, type GeolocationManager, type GeolocationState, createGeolocationManager, geolocationMachine };
@@ -1,89 +1,10 @@
1
- import "./api-CESGtpbH.esm.js";
2
- import { n as eventModuleNames, o as createManagerInstrumentation } from "./events-Dvvriq9l.esm.js";
3
- import "./endpoints-BeTK0Mlt.esm.js";
4
- import "./platform-SKvEfCBh.esm.js";
5
- import { c as createManager, s as createActor } from "./xstate.esm-C9wncMQa.esm.js";
6
- import { t as geolocationMachine } from "./geolocationStateMachine-Dvh7X0wF.esm.js";
1
+ import "./api-DsbUi7TO.esm.js";
2
+ import "./events-CqGY1yMq.esm.js";
3
+ import "./types-ElOJAGaM.esm.js";
4
+ import "./endpoints-BzMJFAPV.esm.js";
5
+ import "./platform-uIVQUnJP.esm.js";
6
+ import "./xstate.esm-Bomq1a0z.esm.js";
7
+ import { t as createGeolocationManager } from "./geolocationManager-BP2Do9O-.esm.js";
8
+ import { t as geolocationMachine } from "./geolocationStateMachine-BYfOOOG0.esm.js";
7
9
 
8
- //#region ../infra/src/providers/browser/BrowserGeolocationProvider.ts
9
- var BrowserGeolocationProvider = class {
10
- getCurrentPosition() {
11
- return new Promise((resolve, reject) => {
12
- navigator.geolocation.getCurrentPosition((pos) => resolve({
13
- latitude: pos.coords.latitude,
14
- longitude: pos.coords.longitude
15
- }), reject);
16
- });
17
- }
18
- };
19
-
20
- //#endregion
21
- //#region src/modules/geolocation/geolocationActor.ts
22
- function createGeolocationActor(options) {
23
- const geolocation = options.geolocation ?? new BrowserGeolocationProvider();
24
- return createActor(geolocationMachine, { input: {
25
- config: options.config,
26
- geolocation
27
- } }).start();
28
- }
29
-
30
- //#endregion
31
- //#region src/modules/geolocation/geolocationManager.ts
32
- function mapState(snapshot) {
33
- const typedSnapshot = snapshot;
34
- const { context } = typedSnapshot;
35
- if (typedSnapshot.matches("idle")) return { status: "idle" };
36
- if (typedSnapshot.matches("requestingLocation")) return { status: "requestingLocation" };
37
- if (typedSnapshot.matches("submitting")) return { status: "submitting" };
38
- if (typedSnapshot.matches("locationAcquired")) return {
39
- status: "locationAcquired",
40
- location: context.location ?? null
41
- };
42
- if (typedSnapshot.matches("permissionDenied")) return {
43
- status: "permissionDenied",
44
- deviceType: context.deviceType,
45
- canSkip: context.config.allowUserToSkipGeolocation === true
46
- };
47
- if (typedSnapshot.matches("finished")) return { status: "finished" };
48
- return { status: "idle" };
49
- }
50
- function createApi({ actor, trackElementClicked }) {
51
- return {
52
- request() {
53
- trackElementClicked?.("request");
54
- actor.send({ type: "REQUEST" });
55
- },
56
- continue() {
57
- trackElementClicked?.("continue");
58
- actor.send({ type: "CONTINUE" });
59
- },
60
- skip() {
61
- trackElementClicked?.("skip");
62
- actor.send({ type: "SKIP" });
63
- },
64
- reset() {
65
- actor.send({ type: "RESET" });
66
- }
67
- };
68
- }
69
- /**
70
- * Creates a geolocation manager for headless or UI-driven usage.
71
- *
72
- * @example Headless usage
73
- * ```typescript
74
- * const manager = createGeolocationManager({ config: { allowUserToSkipGeolocation: true } });
75
- * manager.subscribe((state) => console.log(state.status));
76
- * manager.request();
77
- * ```
78
- */
79
- function createGeolocationManager(options) {
80
- return createManager({
81
- actor: createGeolocationActor(options),
82
- mapState,
83
- createApi,
84
- instrumentation: createManagerInstrumentation(eventModuleNames.geolocation)
85
- });
86
- }
87
-
88
- //#endregion
89
10
  export { createGeolocationManager, geolocationMachine };