@incodetech/core 2.1.1 → 2.2.0-rc.1
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.
- package/dist/{3dAvatarProvider-BwOmTMOy.esm.js → 3dAvatarProvider-g02DTFqT.esm.js} +811 -880
- package/dist/Actor-iTq7YY48.d.ts +1 -0
- package/dist/BrowserDiagnosticsCryptoProvider-BwGL3Lmi.esm.js +95 -0
- package/dist/BrowserLazyImportProvider-BhoA957O.esm.js +114 -0
- package/dist/{BrowserStorageProvider-CBHBhKQN.esm.js → BrowserStorageProvider-k-FDkC4W.esm.js} +2 -4
- package/dist/{BrowserTimerProvider-CHloo0eQ.esm.js → BrowserTimerProvider-BXhgNxLt.esm.js} +1 -2
- package/dist/{BrowserVisibilityObserverProvider-GBS6XSii.esm.js → BrowserVisibilityObserverProvider-BX1BiLDK.esm.js} +1 -2
- package/dist/Face2DProvider-UUQt_vRC.esm.js +437 -0
- package/dist/{createFaceAvatar-CpdYp9Iy.d.ts → FaceDetectionProvider-Mh6q3EbA.d.ts} +107 -159
- package/dist/IBrowserEnvironmentCapability-DEaRRk-R.esm.js +9 -0
- package/dist/IFaceAvatarCapability-BrL19G0s.d.ts +23 -0
- package/dist/IFeatureManagementCapability-DdEUp6tB.d.ts +1125 -0
- package/dist/IIdCaptureCapability-DHTT3FC2.d.ts +237 -0
- package/dist/IStorageCapability-ORkQfK3F.d.ts +242 -0
- package/dist/{ITimerCapability-DJ73P4RK.esm.js → ITimerCapability-DgdDzp8G.esm.js} +1 -2
- package/dist/{Manager-goNPc_h_.d.ts → Manager-CQQ99QOI.d.ts} +1 -0
- package/dist/{MotionSensorProvider-BHuHoYvJ.esm.js → MotionSensorProvider-DGiV77J_.esm.js} +2 -37
- package/dist/{OpenViduRecordingProvider-CK6A5kiU.esm.js → OpenViduRecordingProvider-Du98qevC.esm.js} +2 -4
- package/dist/PrivacyLensProvider-D8PS7AJa.esm.js +405 -0
- package/dist/StateMachine-EDpYWy0i.d.ts +6 -0
- package/dist/{StreamCanvasCapture-CAqUdVkM.esm.js → StreamCanvasCapture-D2XcXCZ4.esm.js} +2 -4
- package/dist/{addressSearch-D7msRieq.esm.js → addressSearch-DQyrvDQj.esm.js} +10 -21
- package/dist/ae-signature.d.ts +4 -6
- package/dist/ae-signature.esm.js +10 -11
- package/dist/antifraud.d.ts +1 -6
- package/dist/antifraud.esm.js +3 -8
- package/dist/{antifraudManager-5KA84wtF.esm.js → antifraudManager-B8Plzf7a.esm.js} +11 -8
- package/dist/{antifraudManager-DCiNI6np.d.ts → antifraudManager-BY36bS12.d.ts} +3 -3
- package/dist/{antifraudStateMachine-BQVw46N5.esm.js → antifraudStateMachine-r4VxSBS4.esm.js} +5 -7
- package/dist/api-Bx3gKW_y.esm.js +129 -0
- package/dist/{apiError-DkOXfFBu.esm.js → apiError-oiEnJIlk.esm.js} +25 -3
- package/dist/authentication.d.ts +3 -19
- package/dist/authentication.esm.js +3 -35
- package/dist/{authenticationManager-BeT6tNZm.d.ts → authenticationManager-BBMGTcwW.d.ts} +3 -4
- package/dist/{authenticationManager-BryLnSaF.esm.js → authenticationManager-Dq_tudSW.esm.js} +7 -10
- package/dist/{authenticationStateMachine-DbdxfGHx.esm.js → authenticationStateMachine-D4koAtP3.esm.js} +11 -15
- package/dist/avatar.d.ts +2 -2
- package/dist/avatar.esm.js +2 -3
- package/dist/avatar2dWarm-DqucNFX4.esm.js +1330 -0
- package/dist/avatarStats-CdUOb3VD.esm.js +136 -0
- package/dist/{backCameraStream-ChrMTJv-.esm.js → backCameraStream-CUeYm5eu.esm.js} +20 -8
- package/dist/browser-DlFgHpoC-DnyrCR8r.esm.js +1513 -0
- package/dist/callback-645_omgz.d.ts +133 -0
- package/dist/camera-_2sXMXiF.esm.js +140 -0
- package/dist/camera.d.ts +19 -2
- package/dist/camera.esm.js +2 -6
- package/dist/{canvas-Pi10hG_l.esm.js → canvas-E1zGkel4.esm.js} +1 -2
- package/dist/certificate-issuance.d.ts +34 -39
- package/dist/certificate-issuance.esm.js +4 -11
- package/dist/{certificateIssuanceStateMachine-DlZQT1_u.esm.js → certificateIssuanceStateMachine-COd7_l2T.esm.js} +7 -11
- package/dist/consent.d.ts +1 -4
- package/dist/consent.esm.js +3 -8
- package/dist/{consentManager-BwNu-uC-.esm.js → consentManager-BApTlfA0.esm.js} +5 -7
- package/dist/{consentManager-B4PMGXW-.d.ts → consentManager-uhDPdU6i.d.ts} +55 -61
- package/dist/{consentStateMachine-BOkVFiU7.esm.js → consentStateMachine-WD-S-Yhs.esm.js} +5 -7
- package/dist/{cpf-16m_cGAM.esm.js → cpf-BIADjddF.esm.js} +1 -2
- package/dist/createFaceAvatar-BEj18KXi.d.ts +50 -0
- package/dist/createFaceAvatar-DQKaRise.esm.js +103 -0
- package/dist/cross-document-data-match.d.ts +2 -26
- package/dist/cross-document-data-match.esm.js +2 -71
- package/dist/crossDocumentDataMatchManager-Dq8Z3SOg.d.ts +41 -0
- package/dist/crossDocumentDataMatchManager-OmYvyung.esm.js +84 -0
- package/dist/curp-validation.d.ts +1 -11
- package/dist/curp-validation.esm.js +3 -8
- package/dist/{curpValidationManager-CoqODZx5.d.ts → curpValidationManager-DVGr7Fq7.d.ts} +4 -6
- package/dist/{curpValidationManager-Cbji2inV.esm.js → curpValidationManager-UZxcrsrz.esm.js} +11 -7
- package/dist/{curpValidationStateMachine-Dlw4qfFb.esm.js → curpValidationStateMachine-9KwnqeoB.esm.js} +22 -14
- package/dist/custom-fields.d.ts +2 -5
- package/dist/custom-fields.esm.js +24 -11
- package/dist/custom-watchlist.d.ts +1 -3
- package/dist/custom-watchlist.esm.js +11 -10
- package/dist/{customWatchlistStateMachine-D8w0mNxm.esm.js → customWatchlistStateMachine-B_ey3TFj.esm.js} +5 -7
- package/dist/{dateUtils-BW6mBV6p.esm.js → dateUtils-CvG0FvK8.esm.js} +1 -2
- package/dist/{deepsightService-CViys6T4.esm.js → deepsightLoader-CWE0SvF1.esm.js} +68 -14
- package/dist/{deepsightService-BuTOFTr8.d.ts → deepsightService-DLVQS_RH.d.ts} +41 -2
- package/dist/device.d.ts +10 -2
- package/dist/device.esm.js +21 -21
- package/dist/document-capture.d.ts +3 -1816
- package/dist/document-capture.esm.js +3 -245
- package/dist/document-upload.d.ts +48 -55
- package/dist/document-upload.esm.js +8 -14
- package/dist/documentCaptureManager-B3t0ydtg.d.ts +2062 -0
- package/dist/documentCaptureManager-DszmcU-l.esm.js +296 -0
- package/dist/{documentCaptureStateMachine-BkTvU3yq.esm.js → documentCaptureStateMachine-D2jBwwVb.esm.js} +66 -40
- package/dist/dynamic-forms.d.ts +2 -4
- package/dist/dynamic-forms.esm.js +3 -9
- package/dist/{dynamicFormsManager-CHXUBNs4.esm.js → dynamicFormsManager-B-OmpJkU.esm.js} +48 -9
- package/dist/{dynamicFormsManager-CKZkE7Wo.d.ts → dynamicFormsManager-fhK0yINk.d.ts} +22 -46
- package/dist/{dynamicFormsStateMachine-DJ1HGZff.esm.js → dynamicFormsStateMachine-D_3oLtOE.esm.js} +161 -34
- package/dist/ekyb.d.ts +5 -137
- package/dist/ekyb.esm.js +4 -179
- package/dist/ekybManager-BJVp2ahf.esm.js +178 -0
- package/dist/ekybManager-Dzswb_b8.d.ts +114 -0
- package/dist/{ekybStateMachine-D9GzA4MW.esm.js → ekybStateMachine-BYcc9VaR.esm.js} +16 -193
- package/dist/ekyc.d.ts +2 -79
- package/dist/ekyc.esm.js +4 -154
- package/dist/ekycManager-BFpHbBoT.d.ts +97 -0
- package/dist/ekycManager-oTstTJuL.esm.js +156 -0
- package/dist/{ekycStateMachine-DnVRiu3s.esm.js → ekycStateMachine-DHvksnrr.esm.js} +141 -423
- package/dist/ekycUtils-Dew1rBG0.esm.js +223 -0
- package/dist/electronic-signature.d.ts +3 -5
- package/dist/electronic-signature.esm.js +2 -10
- package/dist/{electronicSignatureManager-DESRgObX.esm.js → electronicSignatureManager-CApcBEQd.esm.js} +47 -33
- package/dist/{index-36QX_21w.d.ts → electronicSignatureManager-CcUXQZS7.d.ts} +220 -251
- package/dist/email.d.ts +1 -5
- package/dist/email.esm.js +3 -10
- package/dist/{emailManager-CMS4q_r6.d.ts → emailManager-CADXW_9X.d.ts} +4 -7
- package/dist/{emailManager-B9Vrv3Ma.esm.js → emailManager-tE-YvNtS.esm.js} +76 -12
- package/dist/{emailStateMachine-CbmKFVSi.esm.js → emailStateMachine-Bm894MHB.esm.js} +7 -9
- package/dist/{endpoints-CwrFQfW7.esm.js → endpoints-CCzL3XD_.esm.js} +55 -6
- package/dist/{events-1wxZ97yf.esm.js → events-CxfNJVZW.esm.js} +43 -176
- package/dist/events.d.ts +28 -10
- package/dist/events.esm.js +2 -4
- package/dist/extensibility.d.ts +37 -37
- package/dist/extensibility.esm.js +31 -80
- package/dist/{externalFetch-hvmz_npP.esm.js → externalFetch-BKBThAUC.esm.js} +2 -4
- package/dist/face-match.d.ts +2 -225
- package/dist/face-match.esm.js +3 -173
- package/dist/{faceCaptureManagerFactory-C9TiGbkA.esm.js → faceCaptureManagerFactory-4VejGOQX.esm.js} +52 -31
- package/dist/{faceCaptureManagerFactory-DiJ64oem.d.ts → faceCaptureManagerFactory-BxWPpxyd.d.ts} +63 -24
- package/dist/{faceCaptureSetup-BqhqfFHL.esm.js → faceCaptureSetup-BB5KEtbV.esm.js} +57 -36
- package/dist/faceMatchManager-BXp2WUT-.esm.js +201 -0
- package/dist/faceMatchManager-BnvrZM2F.d.ts +268 -0
- package/dist/{faceMatchStateMachine-MDb30gCm.esm.js → faceMatchStateMachine-CJiO2yLO.esm.js} +14 -10
- package/dist/feature-management-DS_Nj5Gg.esm.js +615 -0
- package/dist/feature-management.d.ts +173 -0
- package/dist/feature-management.esm.js +2 -0
- package/dist/field-comparison.d.ts +1 -4
- package/dist/field-comparison.esm.js +2 -7
- package/dist/{fieldComparisonManager-OLKVsG2Z.d.ts → fieldComparisonManager-CBvEGxFx.d.ts} +3 -5
- package/dist/{fieldComparisonManager-Cw4uzD7S.esm.js → fieldComparisonManager-DhnYdYZ2.esm.js} +6 -11
- package/dist/fiscal-qr.d.ts +1 -6
- package/dist/fiscal-qr.esm.js +14 -29
- package/dist/flow-events.d.ts +2 -9
- package/dist/flow.d.ts +59 -21
- package/dist/flow.esm.js +132 -49
- package/dist/{flowCompletionService-B6P6_EF3.esm.js → flowCompletionService-Bt3wD28k.esm.js} +4 -6
- package/dist/flowServices-b0Pd4F1K.esm.js +620 -0
- package/dist/geolocation.d.ts +1 -4
- package/dist/geolocation.esm.js +3 -9
- package/dist/geolocationManager-Cz744E5S.d.ts +506 -0
- package/dist/{geolocationManager-CF6-NizA.esm.js → geolocationManager-DGwnL5lg.esm.js} +44 -16
- package/dist/{geolocationStateMachine-CD2XJs1b.esm.js → geolocationStateMachine-il6jz5DZ.esm.js} +53 -28
- package/dist/{getBrowser-1yNcfFZR.esm.js → getBrowser-Cb8Zgrgp.esm.js} +1 -2
- package/dist/getBrowser-DNrQeL4T.esm.js +16 -0
- package/dist/getDeviceClass-9y-kbVDw.esm.js +19 -0
- package/dist/{getDeviceClass-C-Dg6IsJ.esm.js → getDeviceClass-CeBiEayS.esm.js} +1 -2
- package/dist/getParsedUserAgent-pJjATANs.esm.js +1622 -0
- package/dist/government-validation.d.ts +3 -6
- package/dist/government-validation.esm.js +7 -13
- package/dist/{governmentValidationStateMachine-BE5wiQ7Y.esm.js → governmentValidationStateMachine-BYKYUdza.esm.js} +8 -11
- package/dist/home.d.ts +14 -22
- package/dist/home.esm.js +3 -8
- package/dist/http.d.ts +0 -1
- package/dist/http.esm.js +2 -4
- package/dist/id-ocr.d.ts +8 -7
- package/dist/id-ocr.esm.js +20 -9
- package/dist/id-selfie-flow.d.ts +179 -0
- package/dist/id-selfie-flow.esm.js +917 -0
- package/dist/id-verification.d.ts +2 -191
- package/dist/id-verification.esm.js +3 -43
- package/dist/id.d.ts +7 -18
- package/dist/id.esm.js +47 -53
- package/dist/{idCaptureDefaults-CZajItdO.esm.js → idCaptureDefaults-WeHbQM7W.esm.js} +54 -17
- package/dist/idCaptureManager-BjU-Wyow.d.ts +429 -0
- package/dist/{idCaptureManager-DASPUMtC.esm.js → idCaptureManager-DgohUfUQ.esm.js} +173 -34
- package/dist/idCaptureServices-RDiDS9tg.esm.js +396 -0
- package/dist/{idCaptureStateMachine-DZ2ZTSxu.esm.js → idCaptureStateMachine-DWocZD_m.esm.js} +438 -585
- package/dist/{idOcrManager-Tm4LzKR0.esm.js → idOcrManager-CvJZhmBR.esm.js} +4 -7
- package/dist/{idOcrManager-DLfAjDZn.d.ts → idOcrManager-DXc_xRN7.d.ts} +62 -229
- package/dist/{idOcrStateMachine-BJxZCxwS.esm.js → idOcrStateMachine-Bq_e3l4E.esm.js} +15 -20
- package/dist/idVerificationManager-BB4Pj_N6.d.ts +197 -0
- package/dist/idVerificationManager-CduNXhWd.esm.js +51 -0
- package/dist/{idVerificationStateMachine-DXN9WcdM.esm.js → idVerificationStateMachine-GEQWUPU2.esm.js} +5 -7
- package/dist/identity-reuse.d.ts +1 -4
- package/dist/identity-reuse.esm.js +3 -8
- package/dist/{identityReuseManager-LjkPvSQN.esm.js → identityReuseManager-D5vXknnJ.esm.js} +24 -7
- package/dist/{identityReuseManager-CLVOYxcp.d.ts → identityReuseManager-v2TH5g7e.d.ts} +38 -43
- package/dist/{identityReuseStateMachine-Bp-zONoV.esm.js → identityReuseStateMachine-AubRPhIi.esm.js} +6 -8
- package/dist/index-B8weJxmL.d.ts +1 -0
- package/dist/index-BKOWUhxG.d.ts +258 -0
- package/dist/{index-DrpWp15Z.d.ts → index-CLMF0QLQ.d.ts} +3 -3
- package/dist/index.d.ts +1 -3
- package/dist/index.esm.js +2 -15
- package/dist/{invokeOnCaptureCallback-CCS2Ruzi.esm.js → invokeOnCaptureCallback-1m1VJ3Q4.esm.js} +2 -4
- package/dist/{lib-Bjd6nOLG.esm.js → lib-DAyUtOTj.esm.js} +1510 -1589
- package/dist/mandatory-consent.d.ts +2 -10
- package/dist/mandatory-consent.esm.js +3 -8
- package/dist/{mandatoryConsentManager-DeBmOHcQ.d.ts → mandatoryConsentManager-B29kR0XA.d.ts} +60 -85
- package/dist/{mandatoryConsentManager-DZ26sg4B.esm.js → mandatoryConsentManager-BeELm1zS.esm.js} +4 -7
- package/dist/{mandatoryConsentStateMachine-_44ZoDSh.esm.js → mandatoryConsentStateMachine-zroQGzwb.esm.js} +5 -7
- package/dist/manualReviewService-D4IkipnN.esm.js +15 -0
- package/dist/{mediaRecorderOptions-CClCKAiF.esm.js → mediaRecorderOptions-dALSV8af.esm.js} +2 -4
- package/dist/{mediapipeShared-Bcmkzs3x.esm.js → mediapipeShared-B6oNoXEQ.esm.js} +21 -9
- package/dist/{onDeviceFaceResults-DILtthks.esm.js → onDeviceFaceResults-C6IRJHQB.esm.js} +30 -87
- package/dist/openviduLazy-CCDpFWg1.esm.js +10 -0
- package/dist/{otp-B1YeyRXu.d.ts → otp-CEWfTj9v.d.ts} +0 -1
- package/dist/{otp-uaXiKt_R.esm.js → otp-D2k3PeSL.esm.js} +3 -14
- package/dist/{permissionGuards-BNOe4Tnu.esm.js → permissionGuards-KINpmKtI.esm.js} +2 -4
- package/dist/{permissionServices-C_kxhNeo.esm.js → permissionServices-UvUcOSRb.esm.js} +35 -28
- package/dist/personhood.d.ts +13 -20
- package/dist/personhood.esm.js +153 -85
- package/dist/phone.d.ts +1 -5
- package/dist/phone.esm.js +3 -10
- package/dist/{phoneManager-_KtitbUA.d.ts → phoneManager-BBU8Lq0O.d.ts} +4 -7
- package/dist/{phoneManager-CRblfdcI.esm.js → phoneManager-Cpiai2IM.esm.js} +82 -12
- package/dist/{phoneStateMachine-DjFGWMjQ.esm.js → phoneStateMachine-E1fUUcNM.esm.js} +7 -9
- package/dist/{platform-0Ot-bF_a.esm.js → platform-BJrm5nzZ.esm.js} +31 -11
- package/dist/privacyLensWorker-DI-Rg83h.esm.js +355 -0
- package/dist/qe-signature.d.ts +4 -6
- package/dist/qe-signature.esm.js +10 -11
- package/dist/{recordingService-CxaYkITO.esm.js → recordingService-N4RhdyiT.esm.js} +13 -31
- package/dist/redirect-to-mobile.d.ts +2 -6
- package/dist/redirect-to-mobile.esm.js +3 -10
- package/dist/{redirectToMobileManager-dv29o_LS.d.ts → redirectToMobileManager-BD2PvT5B.d.ts} +8 -44
- package/dist/{redirectToMobileManager-DbuNUlru.esm.js → redirectToMobileManager-C0dfc7f6.esm.js} +28 -8
- package/dist/{redirectToMobileStateMachine-BRaIJWOM.esm.js → redirectToMobileStateMachine-C9SYCJcH.esm.js} +74 -18
- package/dist/rolldown-runtime-FZ4Itg2g.esm.js +42 -0
- package/dist/{runChildModule-kojSv3MH.esm.js → runChildModule-DpRmKWV0.esm.js} +10 -9
- package/dist/{WasmUtilProvider-BgzcXBdl.esm.js → safeStorage-Ep56I-f_.esm.js} +98 -473
- package/dist/selfie.d.ts +8 -21
- package/dist/selfie.esm.js +40 -47
- package/dist/selfieErrorUtils-C2PYBVsp.esm.js +90 -0
- package/dist/{selfieManager-B1Px3GGa.esm.js → selfieManager-CmoNiluM.esm.js} +7 -10
- package/dist/{selfieManager-4juKfrHG.d.ts → selfieManager-DwlCppg0.d.ts} +3 -4
- package/dist/{selfieStateMachine-D0TS93Tu.esm.js → selfieStateMachine-L9pghTly.esm.js} +14 -29
- package/dist/{session-CLsU2Jnb.esm.js → session-DeR_I24J.esm.js} +16 -7
- package/dist/session.d.ts +12 -10
- package/dist/session.esm.js +5 -15
- package/dist/sessionInitializer-DNgRpf5Y.esm.js +1865 -0
- package/dist/{setup-CfNsYAeB.esm.js → setup-DuYKUt0r.esm.js} +319 -137
- package/dist/{setup-CmA2apmN.d.ts → setup-DywQeePQ.d.ts} +186 -4
- package/dist/signature.d.ts +2 -96
- package/dist/signature.esm.js +3 -108
- package/dist/signatureManager-DGBSWz2_.d.ts +106 -0
- package/dist/signatureManager-DdPgcmou.esm.js +113 -0
- package/dist/{signatureStateMachine-CdhlMih-.esm.js → signatureStateMachine-Cf73DGWO.esm.js} +5 -7
- package/dist/spawn-D9jgw9pW.d.ts +1441 -0
- package/dist/src-0Jurt29N.esm.js +4482 -0
- package/dist/{stats-BVy52wLy.esm.js → stats-B0nFKawG.esm.js} +3 -5
- package/dist/stats.esm.js +2 -5
- package/dist/topLevelStateName-B5i2avbh.esm.js +41 -0
- package/dist/{tri-CFAPtAUM.esm.js → tri-4RsGrIt6.esm.js} +3 -119
- package/dist/tri.d.ts +2 -2
- package/dist/tri.esm-BIjHhBJ2.esm.js +2620 -0
- package/dist/tri.esm.js +2 -4
- package/dist/trueSight-BTl_vvd3.esm.js +1 -0
- package/dist/trueSightService-s3T95geD.esm.js +1894 -0
- package/dist/trust-graph.d.ts +4 -5
- package/dist/trust-graph.esm.js +13 -9
- package/dist/types-BEwVKkLJ.d.ts +15 -0
- package/dist/{types-BKLb3C42.esm.js → types-BN5RPPIZ.esm.js} +1 -2
- package/dist/types-BSBzhHRH.d.ts +57 -0
- package/dist/types-BX_XkMsQ2.d.ts +21 -0
- package/dist/types-BfHiko5D.d.ts +48 -0
- package/dist/{types-D8Cl1N2Z.d.ts → types-BfgmV7s72.d.ts} +2 -2
- package/dist/types-CJ7Yl9K-2.d.ts +164 -0
- package/dist/types-DPIDuhut.d.ts +40 -0
- package/dist/types-DVmXIdzW.d.ts +82 -0
- package/dist/types-DelMqZLe.d.ts +105 -0
- package/dist/types-EELWyWpd.d.ts +6 -0
- package/dist/{types-fO6KIdol.d.ts → types-Hmd7U0JA.d.ts} +80 -6
- package/dist/{types-BUgeB2X6.d.ts → types-KPvmag_B.d.ts} +7 -7
- package/dist/types-M6eb82ra2.d.ts +589 -0
- package/dist/{types-DV3wkhQ4.d.ts → types-Vb4P9ovf.d.ts} +1 -3
- package/dist/{urlUtils-CpiYwn7w.esm.js → urlUtils-D6phjq1-.esm.js} +1 -2
- package/dist/{video-ZY92rkel.esm.js → video-BtSWtHy1.esm.js} +1 -2
- package/dist/video-selfie.d.ts +71 -117
- package/dist/video-selfie.esm.js +575 -643
- package/dist/videoSelfieCameraWarmer-DPx5Lm3d.esm.js +651 -0
- package/dist/videoSelfieStepDetector-D3oo2ofo.d.ts +123 -0
- package/dist/wasm.d.ts +2 -4
- package/dist/wasm.esm.js +4 -15
- package/dist/wasmDefaults-DTUrftxR.esm.js +125 -0
- package/dist/{wasmDsFlagSync-Ch0mFJNT.esm.js → wasmDsFlagSync-BqUCwLY8.esm.js} +2 -4
- package/dist/wasmWebClient-DM8lkb0z.esm.js +407 -0
- package/dist/watchlist-for-business.d.ts +1 -3
- package/dist/watchlist-for-business.esm.js +9 -9
- package/dist/watchlist.d.ts +1 -52
- package/dist/watchlist.esm.js +3 -70
- package/dist/{watchlistForBusinessStateMachine-R1Yp1g5A.esm.js → watchlistForBusinessStateMachine-BcBMkMvV.esm.js} +5 -7
- package/dist/watchlistManager-CjSMmbyq.esm.js +83 -0
- package/dist/watchlistManager-DLXef90v.d.ts +68 -0
- package/dist/{watchlistStateMachine-D07UVq1m.esm.js → watchlistStateMachine-Bl7Wy9Cm.esm.js} +5 -7
- package/dist/workflow.d.ts +239 -203
- package/dist/workflow.esm.js +156 -101
- package/dist/xstate-actors.esm-CtI5S0f4.esm.js +310 -0
- package/dist/{xstate.esm-nY3M5UYm.esm.js → xstate.esm-Cf4e0Cfd.esm.js} +136 -610
- package/package.json +14 -9
- package/dist/Actor-BwgmOPkb.d.ts +0 -2
- package/dist/Face2DProvider-CZU11g6r.esm.js +0 -824
- package/dist/FaceDetectionProvider-CPWg-PAH.d.ts +0 -119
- package/dist/IWasmUtilCapability-DaSNxgA8.d.ts +0 -150
- package/dist/PrivacyLensProvider-B_zrV25p.esm.js +0 -339
- package/dist/StateMachine-D5WO6lHS.d.ts +0 -2
- package/dist/StreamCanvasCapture-DHaWferF.d.ts +0 -42
- package/dist/ae-signature-Pp4oCAHD.esm.js +0 -12
- package/dist/api-DsbUi7TO.esm.js +0 -72
- package/dist/browser-DlFgHpoC-Br3G10gw.esm.js +0 -1425
- package/dist/browserSimulation-DZwEy9bu.esm.js +0 -2804
- package/dist/camera-CxxXV0VN.esm.js +0 -79
- package/dist/canvas-90BqS0NF.d.ts +0 -112
- package/dist/chunk-CIKcdghV.esm.js +0 -49
- package/dist/clientLifecycle-VyzRfALg.esm.js +0 -534
- package/dist/cpf-ocr.d.ts +0 -10
- package/dist/cpf-ocr.esm.js +0 -8
- package/dist/cpfOcrManager-9eM4z4o7.esm.js +0 -190
- package/dist/cpfOcrManager-C5U9E0hf.d.ts +0 -216
- package/dist/createFaceAvatar-BZSg2MNo.esm.js +0 -46
- package/dist/deepsightLoader-CU_tiLMx.esm.js +0 -62
- package/dist/flowServices-DkQmOkLV.esm.js +0 -208
- package/dist/geolocationManager-DaHYFkVO.d.ts +0 -156
- package/dist/getDeviceClass-DIjnTPjR.esm.js +0 -14
- package/dist/http-CnsKEaJY.esm.js +0 -0
- package/dist/idCaptureManager-CwuXtVu6.d.ts +0 -1013
- package/dist/index-BAyZ8_iI.d.ts +0 -93
- package/dist/openviduLazy-jPgABwrt.esm.js +0 -3
- package/dist/openviduLazy-wEojM41w.esm.js +0 -12
- package/dist/qe-signature-BnWIpR-O.esm.js +0 -12
- package/dist/sessionInitializer-Dj7-aJaP.esm.js +0 -547
- package/dist/tri.esm-DDJ1zOqG.esm.js +0 -2593
- package/dist/types-BcF-fii5.d.ts +0 -5
- package/dist/videoSelfieSteps-Djpv7cjb.esm.js +0 -58
- /package/dist/{IVisibilityObserverCapability-BZ1rE7ly.d.ts → IVisibilityObserverCapability-D4tvIB5v.d.ts} +0 -0
- /package/dist/{camera-CKU96nwJ.d.ts → camera-9wWD-pwg.d.ts} +0 -0
- /package/dist/{flowCompletionService-BOSTlAWo.d.ts → flowCompletionService-BlAHsKyv.d.ts} +0 -0
- /package/dist/{types-BgjMAEXl.d.ts → types-Bk_6dmDa.d.ts} +0 -0
- /package/dist/{warmup-Dd0iq6KF.d.ts → warmup-Dv2alr2-.d.ts} +0 -0
|
@@ -0,0 +1,620 @@
|
|
|
1
|
+
import { E as updateFeatureManagementUser } from "./feature-management-DS_Nj5Gg.esm.js";
|
|
2
|
+
import { r as getToken, t as api } from "./api-Bx3gKW_y.esm.js";
|
|
3
|
+
import { c as getStandaloneFlowPolicy, i as initializeSession, r as getSessionFingerprintResult } from "./sessionInitializer-DNgRpf5Y.esm.js";
|
|
4
|
+
import { t as endpoints } from "./endpoints-CCzL3XD_.esm.js";
|
|
5
|
+
import { r as toIncodeApiError } from "./apiError-oiEnJIlk.esm.js";
|
|
6
|
+
import "./session-DeR_I24J.esm.js";
|
|
7
|
+
import { i as toEkycConfig } from "./ekycUtils-Dew1rBG0.esm.js";
|
|
8
|
+
//#region src/modules/flow/dashboardConfig.ts
|
|
9
|
+
function isPlainObject(value) {
|
|
10
|
+
if (value === null || typeof value !== "object" || Array.isArray(value)) return false;
|
|
11
|
+
const prototype = Object.getPrototypeOf(value);
|
|
12
|
+
return prototype === Object.prototype || prototype === null;
|
|
13
|
+
}
|
|
14
|
+
function mergeDashboardConfig(dashboardConfig, localConfig) {
|
|
15
|
+
if (!isPlainObject(dashboardConfig) || !isPlainObject(localConfig)) return localConfig === void 0 ? dashboardConfig : localConfig;
|
|
16
|
+
const result = { ...dashboardConfig };
|
|
17
|
+
for (const [key, localValue] of Object.entries(localConfig)) {
|
|
18
|
+
if (localValue === void 0) continue;
|
|
19
|
+
const dashboardValue = result[key];
|
|
20
|
+
result[key] = isPlainObject(dashboardValue) && isPlainObject(localValue) ? mergeDashboardConfig(dashboardValue, localValue) : localValue;
|
|
21
|
+
}
|
|
22
|
+
return result;
|
|
23
|
+
}
|
|
24
|
+
//#endregion
|
|
25
|
+
//#region src/modules/ekyb/ekybConstants.ts
|
|
26
|
+
/**
|
|
27
|
+
* Countries available in all environments.
|
|
28
|
+
* Sorted alphabetically by display name.
|
|
29
|
+
*/
|
|
30
|
+
const SUPPORTED_COUNTRIES = [
|
|
31
|
+
"BR",
|
|
32
|
+
"CN",
|
|
33
|
+
"FR",
|
|
34
|
+
"DE",
|
|
35
|
+
"IL",
|
|
36
|
+
"IT",
|
|
37
|
+
"MX",
|
|
38
|
+
"ES",
|
|
39
|
+
"GB",
|
|
40
|
+
"US"
|
|
41
|
+
];
|
|
42
|
+
/**
|
|
43
|
+
* Additional countries available only in dev/staging environments.
|
|
44
|
+
*/
|
|
45
|
+
const DEV_ONLY_COUNTRIES = [
|
|
46
|
+
"CM",
|
|
47
|
+
"KE",
|
|
48
|
+
"NG"
|
|
49
|
+
];
|
|
50
|
+
/**
|
|
51
|
+
* Union of all recognized country codes (prod + dev).
|
|
52
|
+
*/
|
|
53
|
+
const ALL_COUNTRIES = [...SUPPORTED_COUNTRIES, ...DEV_ONLY_COUNTRIES];
|
|
54
|
+
const ALL_COUNTRIES_SET = new Set(ALL_COUNTRIES);
|
|
55
|
+
function isSupportedCountry(code) {
|
|
56
|
+
return ALL_COUNTRIES_SET.has(code);
|
|
57
|
+
}
|
|
58
|
+
const FIELD_ORDER = [
|
|
59
|
+
"name-user_input",
|
|
60
|
+
"taxId-user_input",
|
|
61
|
+
"street-user_input",
|
|
62
|
+
"houseNo-user_input",
|
|
63
|
+
"address2-user_input",
|
|
64
|
+
"city-user_input",
|
|
65
|
+
"state-user_input",
|
|
66
|
+
"postalCode-user_input"
|
|
67
|
+
];
|
|
68
|
+
const FIELD_NAME_MAPPING = {
|
|
69
|
+
"name-user_input": "businessName",
|
|
70
|
+
"street-user_input": "street",
|
|
71
|
+
"houseNo-user_input": "houseNo",
|
|
72
|
+
"address2-user_input": "addressLine2",
|
|
73
|
+
"city-user_input": "city",
|
|
74
|
+
"state-user_input": "state",
|
|
75
|
+
"postalCode-user_input": "postalCode",
|
|
76
|
+
"taxId-user_input": "taxId"
|
|
77
|
+
};
|
|
78
|
+
const COUNTRIES_WITH_CNPJ_VALIDATION = ["BR"];
|
|
79
|
+
const BUSINESS_NAME_OPTIONAL_COUNTRIES = [];
|
|
80
|
+
const ADDRESS_FULLY_OPTIONAL_COUNTRIES = [
|
|
81
|
+
"BR",
|
|
82
|
+
"GB",
|
|
83
|
+
"FR"
|
|
84
|
+
];
|
|
85
|
+
const ADDRESS_FIELDS = [
|
|
86
|
+
"street",
|
|
87
|
+
"houseNo",
|
|
88
|
+
"addressLine2",
|
|
89
|
+
"city",
|
|
90
|
+
"state",
|
|
91
|
+
"postalCode"
|
|
92
|
+
];
|
|
93
|
+
const ALL_COUNTRIES_OPTIONAL_FIELDS = ["ubo"];
|
|
94
|
+
const UBO_FIELD_LABELS = {
|
|
95
|
+
name: "ekyb.uboName",
|
|
96
|
+
surname: "ekyb.uboSurname"
|
|
97
|
+
};
|
|
98
|
+
const INVALID_CNPJ_PATTERNS = [
|
|
99
|
+
"00000000000000",
|
|
100
|
+
"11111111111111",
|
|
101
|
+
"22222222222222",
|
|
102
|
+
"33333333333333",
|
|
103
|
+
"44444444444444",
|
|
104
|
+
"55555555555555",
|
|
105
|
+
"66666666666666",
|
|
106
|
+
"77777777777777",
|
|
107
|
+
"88888888888888",
|
|
108
|
+
"99999999999999"
|
|
109
|
+
];
|
|
110
|
+
const CNPJ_FIRST_DIGIT_FACTORS = [
|
|
111
|
+
5,
|
|
112
|
+
4,
|
|
113
|
+
3,
|
|
114
|
+
2,
|
|
115
|
+
9,
|
|
116
|
+
8,
|
|
117
|
+
7,
|
|
118
|
+
6,
|
|
119
|
+
5,
|
|
120
|
+
4,
|
|
121
|
+
3,
|
|
122
|
+
2
|
|
123
|
+
];
|
|
124
|
+
const CNPJ_SECOND_DIGIT_FACTORS = [
|
|
125
|
+
6,
|
|
126
|
+
5,
|
|
127
|
+
4,
|
|
128
|
+
3,
|
|
129
|
+
2,
|
|
130
|
+
9,
|
|
131
|
+
8,
|
|
132
|
+
7,
|
|
133
|
+
6,
|
|
134
|
+
5,
|
|
135
|
+
4,
|
|
136
|
+
3,
|
|
137
|
+
2
|
|
138
|
+
];
|
|
139
|
+
//#endregion
|
|
140
|
+
//#region src/modules/ekyb/ekybUtils.ts
|
|
141
|
+
/**
|
|
142
|
+
* Normalizes any supported eKYB config input into a manager-ready `EkybConfig`.
|
|
143
|
+
*
|
|
144
|
+
* Accepts either:
|
|
145
|
+
* - A manager-ready `EkybConfig` (with `flowId` or `verificationFields`) →
|
|
146
|
+
* returned unchanged.
|
|
147
|
+
* - A raw backend `EkybFlowConfig` (with `*Source` companions) → stripped to
|
|
148
|
+
* the four `check*` fields the manager consumes.
|
|
149
|
+
*
|
|
150
|
+
* Idempotent: `toEkybConfig(toEkybConfig(x))` equals `toEkybConfig(x)`.
|
|
151
|
+
*/
|
|
152
|
+
function toEkybConfig(config) {
|
|
153
|
+
if (config.flowId || config.verificationFields) return config;
|
|
154
|
+
return {
|
|
155
|
+
checkBusinessName: config.checkBusinessName,
|
|
156
|
+
checkAddress: config.checkAddress,
|
|
157
|
+
checkTaxId: config.checkTaxId,
|
|
158
|
+
checkUniqueBeneficialOwner: config.checkUniqueBeneficialOwner
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
/** Sorts modules based on a custom order; items not in order maintain relative position */
|
|
162
|
+
function sortModulesByOrder(modules, customOrder) {
|
|
163
|
+
return [...modules].sort((a, b) => {
|
|
164
|
+
const indexA = customOrder.indexOf(a);
|
|
165
|
+
const indexB = customOrder.indexOf(b);
|
|
166
|
+
if (indexA !== -1 && indexB !== -1) return indexA - indexB;
|
|
167
|
+
if (indexA !== -1) return -1;
|
|
168
|
+
if (indexB !== -1) return 1;
|
|
169
|
+
return 0;
|
|
170
|
+
});
|
|
171
|
+
}
|
|
172
|
+
/** Determines if a field is optional for the given country */
|
|
173
|
+
function isFieldOptional(fieldName, countryCode) {
|
|
174
|
+
if (ALL_COUNTRIES_OPTIONAL_FIELDS.includes(fieldName)) return true;
|
|
175
|
+
if (fieldName === "businessName") return BUSINESS_NAME_OPTIONAL_COUNTRIES.includes(countryCode);
|
|
176
|
+
if (fieldName === "addressLine2") return true;
|
|
177
|
+
if (ADDRESS_FIELDS.includes(fieldName)) return false;
|
|
178
|
+
if (fieldName === "taxId") return false;
|
|
179
|
+
return false;
|
|
180
|
+
}
|
|
181
|
+
/** Checks if at least one address field has a non-empty value */
|
|
182
|
+
function hasAtLeastOneAddressField(formData) {
|
|
183
|
+
return ADDRESS_FIELDS.some((field) => {
|
|
184
|
+
const value = formData[field];
|
|
185
|
+
return value !== void 0 && value.trim() !== "";
|
|
186
|
+
});
|
|
187
|
+
}
|
|
188
|
+
/** Returns false for countries where address is fully optional */
|
|
189
|
+
function requiresAddressValidation(countryCode) {
|
|
190
|
+
return !ADDRESS_FULLY_OPTIONAL_COUNTRIES.includes(countryCode);
|
|
191
|
+
}
|
|
192
|
+
//#endregion
|
|
193
|
+
//#region src/modules/video-selfie/videoSelfieSteps.ts
|
|
194
|
+
/** Steps that use the rear (environment) camera; everything else uses the front (user) camera. */
|
|
195
|
+
const REAR_CAMERA_STEPS = [
|
|
196
|
+
"frontId",
|
|
197
|
+
"backId",
|
|
198
|
+
"poa"
|
|
199
|
+
];
|
|
200
|
+
/**
|
|
201
|
+
* The camera facing mode a given step should use. ID and proof-of-address steps
|
|
202
|
+
* use the rear camera; selfie / questions / speech use the front camera.
|
|
203
|
+
*/
|
|
204
|
+
function facingModeForStep(step) {
|
|
205
|
+
return REAR_CAMERA_STEPS.includes(step) ? "environment" : "user";
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Resolves the ordered list of active capture steps from the module config.
|
|
209
|
+
* The order mirrors V1 `getVideoSelfieModules`: the rear-camera document steps
|
|
210
|
+
* (`frontId` → `backId` → `poa`) run first, then the front-camera steps
|
|
211
|
+
* (`selfie` → `questions` → `speech`). This keeps the user from flipping the
|
|
212
|
+
* device between front and rear cameras mid-session. `selfie` is always present;
|
|
213
|
+
* the document and voice-consent steps are gated by their config flags.
|
|
214
|
+
*
|
|
215
|
+
* Both ID sides are captured whenever `checkIdScan` is on (a normal two-sided ID
|
|
216
|
+
* scan) — mirroring V1, which gated `back` on `checkIdScan`, not on the compare
|
|
217
|
+
* flags. `compareBackIdEnabled`/`compareBackOcrEnabled` only decide whether the
|
|
218
|
+
* captured back is *validated* against the backend (see `validateIdFrame` in
|
|
219
|
+
* `videoSelfieStepDetector`); with both off the back is captured passively on
|
|
220
|
+
* the first well-framed frame.
|
|
221
|
+
*/
|
|
222
|
+
function resolveVideoSelfieSteps(config) {
|
|
223
|
+
const steps = [];
|
|
224
|
+
if (config.checkIdScan) {
|
|
225
|
+
steps.push("frontId");
|
|
226
|
+
steps.push("backId");
|
|
227
|
+
}
|
|
228
|
+
if (config.checkDocumentScan) steps.push("poa");
|
|
229
|
+
steps.push("selfie");
|
|
230
|
+
if (config.checkVoiceConsent) {
|
|
231
|
+
if ((config.voiceConsentQuestions ?? 0) > 0) steps.push("questions");
|
|
232
|
+
steps.push("speech");
|
|
233
|
+
}
|
|
234
|
+
return steps;
|
|
235
|
+
}
|
|
236
|
+
/**
|
|
237
|
+
* The WASM pipelines a Video Selfie session loads. The selfie step always runs
|
|
238
|
+
* face detection (`videoSelfie`); the ID steps run the simplified ID-capture
|
|
239
|
+
* pipeline (`videoSelfieId`), gated by `checkIdScan`. Used both for the
|
|
240
|
+
* flow-level eager warmup ({@link getRequiredWasmPipelines}) and the
|
|
241
|
+
* tutorial-time lazy warmup (`warmupVideoSelfieWasm`).
|
|
242
|
+
*/
|
|
243
|
+
function videoSelfieWasmPipelines(config) {
|
|
244
|
+
const pipelines = ["videoSelfie"];
|
|
245
|
+
if (config.checkIdScan) pipelines.push("videoSelfieId");
|
|
246
|
+
return pipelines;
|
|
247
|
+
}
|
|
248
|
+
//#endregion
|
|
249
|
+
//#region src/modules/flow/flowUtils.ts
|
|
250
|
+
function enrichFlowModuleConfig(module, flow) {
|
|
251
|
+
const config = {
|
|
252
|
+
...module.configuration,
|
|
253
|
+
ds: flow.ds
|
|
254
|
+
};
|
|
255
|
+
if (module.key === "ID" || module.key === "TUTORIAL_ID" || module.key === "SECOND_ID" || module.key === "SELFIE") return {
|
|
256
|
+
...config,
|
|
257
|
+
ageAssurance: config.ageAssurance ?? flow.ageAssurance
|
|
258
|
+
};
|
|
259
|
+
return config;
|
|
260
|
+
}
|
|
261
|
+
function resolveFlowModuleConfig(module, flow) {
|
|
262
|
+
const config = enrichFlowModuleConfig(module, flow);
|
|
263
|
+
if (module.key === "EXTERNAL_VERIFICATION") return { ...toEkycConfig(module.configuration) };
|
|
264
|
+
if (module.key === "EKYB") return { ...toEkybConfig(module.configuration) };
|
|
265
|
+
if (module.key === "ID_OCR") return {
|
|
266
|
+
...config,
|
|
267
|
+
secondId: config.secondId ?? flow.flowModules.some((candidate) => candidate.key === "SECOND_ID"),
|
|
268
|
+
flowId: flow.flowId
|
|
269
|
+
};
|
|
270
|
+
if (module.key === "SECOND_ID") return {
|
|
271
|
+
...config,
|
|
272
|
+
isSecondId: true
|
|
273
|
+
};
|
|
274
|
+
if (module.key === "ADDRESS") return {
|
|
275
|
+
...config,
|
|
276
|
+
processingType: "addressStatement"
|
|
277
|
+
};
|
|
278
|
+
if (module.key === "MANDATORY_CONSENT" || module.key === "ML_CONSENT") return {
|
|
279
|
+
...config,
|
|
280
|
+
type: module.key === "ML_CONSENT" ? "ML" : "MANDATORY"
|
|
281
|
+
};
|
|
282
|
+
if (module.key === "AE_SIGNATURE" || module.key === "QE_SIGNATURE") return {
|
|
283
|
+
uploadDocument: module.configuration.uploadDocument,
|
|
284
|
+
downloadDocument: module.configuration.downloadDocument
|
|
285
|
+
};
|
|
286
|
+
if (module.key === "DYNAMIC_FORMS") return { screens: module.configuration.screens.map((formScreen) => ({
|
|
287
|
+
title: formScreen.title,
|
|
288
|
+
hideTitle: formScreen.hideTitle,
|
|
289
|
+
questions: formScreen.questions.map((question) => ({
|
|
290
|
+
questionId: question.questionId,
|
|
291
|
+
question: question.question,
|
|
292
|
+
inputType: question.inputType,
|
|
293
|
+
isOptional: question.isOptional,
|
|
294
|
+
overrides: question.overrides ?? void 0,
|
|
295
|
+
isPredefined: question.isPredefined,
|
|
296
|
+
options: question.options,
|
|
297
|
+
prefillSource: question.prefillSource,
|
|
298
|
+
editable: question.editable
|
|
299
|
+
}))
|
|
300
|
+
})) };
|
|
301
|
+
return config;
|
|
302
|
+
}
|
|
303
|
+
const WASM_MODULE_PIPELINES = {
|
|
304
|
+
SELFIE: "selfie",
|
|
305
|
+
AUTHENTICATION: "selfie",
|
|
306
|
+
FACE_MATCH: "selfie",
|
|
307
|
+
ID: "idCapture",
|
|
308
|
+
TUTORIAL_ID: "idCapture",
|
|
309
|
+
SECOND_ID: "idCapture"
|
|
310
|
+
};
|
|
311
|
+
const FACE_MODULES_WITH_ON_DEVICE_VARIANT = /* @__PURE__ */ new Set(["SELFIE", "AUTHENTICATION"]);
|
|
312
|
+
function isOnDeviceFaceModule(module) {
|
|
313
|
+
if (!FACE_MODULES_WITH_ON_DEVICE_VARIANT.has(module.key)) return false;
|
|
314
|
+
return module.configuration?.onDeviceFaceResultsSubmissionEnabled === true;
|
|
315
|
+
}
|
|
316
|
+
function isVideoOnboardingModule(module) {
|
|
317
|
+
return module.key === "VIDEO_ONBOARDING";
|
|
318
|
+
}
|
|
319
|
+
/**
|
|
320
|
+
* Analyzes a flow configuration and returns the WASM pipelines needed.
|
|
321
|
+
* Use this to conditionally warmup WASM only when required by the flow.
|
|
322
|
+
*
|
|
323
|
+
* Modules with `onDeviceFaceResultsSubmissionEnabled: true` (currently SELFIE
|
|
324
|
+
* and AUTHENTICATION) select the 6-model `'onDeviceSelfie'` bundle instead of
|
|
325
|
+
* the default 4-model `'selfie'` bundle.
|
|
326
|
+
*
|
|
327
|
+
* @param flow - The flow configuration from /omni/onboarding/flow
|
|
328
|
+
* @returns Array of WASM pipelines needed (e.g., ['selfie', 'idCapture'])
|
|
329
|
+
*
|
|
330
|
+
* @example
|
|
331
|
+
* ```typescript
|
|
332
|
+
* const pipelines = getRequiredWasmPipelines(flow);
|
|
333
|
+
* if (pipelines.length > 0) {
|
|
334
|
+
* warmupWasm({ ...wasmConfig, pipelines });
|
|
335
|
+
* }
|
|
336
|
+
* ```
|
|
337
|
+
*/
|
|
338
|
+
function getRequiredWasmPipelines(flow) {
|
|
339
|
+
const pipelines = /* @__PURE__ */ new Set();
|
|
340
|
+
for (const module of flow.flowModules) {
|
|
341
|
+
if (isOnDeviceFaceModule(module)) {
|
|
342
|
+
pipelines.add("onDeviceSelfie");
|
|
343
|
+
continue;
|
|
344
|
+
}
|
|
345
|
+
if (isVideoOnboardingModule(module)) {
|
|
346
|
+
for (const p of videoSelfieWasmPipelines(module.configuration)) pipelines.add(p);
|
|
347
|
+
continue;
|
|
348
|
+
}
|
|
349
|
+
const pipeline = WASM_MODULE_PIPELINES[module.key];
|
|
350
|
+
if (pipeline) pipelines.add(pipeline);
|
|
351
|
+
}
|
|
352
|
+
return [...pipelines];
|
|
353
|
+
}
|
|
354
|
+
/**
|
|
355
|
+
* Normalizes flow modules by expanding TUTORIAL_ID into ID + SECOND_ID
|
|
356
|
+
* based on configuration flags. Matches legacy flowService behavior.
|
|
357
|
+
*
|
|
358
|
+
* - TUTORIAL_ID becomes ID (with same config)
|
|
359
|
+
* - If secondId: true, adds SECOND_ID module with isSecondId: true
|
|
360
|
+
* - thirdId is deprecated and ignored; the flow continues to the next step
|
|
361
|
+
* - Bare ID following TUTORIAL_ID is dropped (already merged)
|
|
362
|
+
*/
|
|
363
|
+
function normalizeFlowModules(flow, options = {}) {
|
|
364
|
+
let modules = normalizeIdModules(flow.flowModules);
|
|
365
|
+
modules = normalizeCpfModules(modules, options);
|
|
366
|
+
modules = dropWatchlistBusinessIfEkyb(modules);
|
|
367
|
+
modules = dropSelfieIfVideoSelfieUsesAsSelfie(modules);
|
|
368
|
+
if (shouldInjectRedirect(flow, modules, options)) modules = addRedirect(flow, modules, options);
|
|
369
|
+
return modules;
|
|
370
|
+
}
|
|
371
|
+
/**
|
|
372
|
+
* Drops WATCHLIST_BUSINESS when EKYB is present in the same flow.
|
|
373
|
+
* The EKYB module performs a superset of the watchlist-for-business check,
|
|
374
|
+
* so running both would be redundant.
|
|
375
|
+
*/
|
|
376
|
+
function dropWatchlistBusinessIfEkyb(modules) {
|
|
377
|
+
if (!hasModule(modules, "EKYB")) return modules;
|
|
378
|
+
return modules.filter((m) => m.key !== "WATCHLIST_BUSINESS");
|
|
379
|
+
}
|
|
380
|
+
/**
|
|
381
|
+
* Drops standalone SELFIE modules when a VIDEO_ONBOARDING module has
|
|
382
|
+
* `useAsSelfie: true`. The video-selfie sequence captures the onboarding selfie
|
|
383
|
+
* itself (its own `selfie` step), so a separate SELFIE step would be redundant.
|
|
384
|
+
* Only SELFIE is removed (not AUTHENTICATION / FACE_MATCH). Mirrors legacy
|
|
385
|
+
* flowService `removeSelfie`.
|
|
386
|
+
*/
|
|
387
|
+
function dropSelfieIfVideoSelfieUsesAsSelfie(modules) {
|
|
388
|
+
if (!modules.some((m) => m.key === "VIDEO_ONBOARDING" && m.configuration.useAsSelfie === true)) return modules;
|
|
389
|
+
return modules.filter((m) => m.key !== "SELFIE");
|
|
390
|
+
}
|
|
391
|
+
function normalizeIdModules(modules) {
|
|
392
|
+
return modules.flatMap((module, idx, arr) => {
|
|
393
|
+
if (module.key === "TUTORIAL_ID") {
|
|
394
|
+
const idConfig = module.configuration;
|
|
395
|
+
const result = [{
|
|
396
|
+
key: "ID",
|
|
397
|
+
configuration: idConfig
|
|
398
|
+
}];
|
|
399
|
+
if (idConfig.secondId) result.push({
|
|
400
|
+
key: "SECOND_ID",
|
|
401
|
+
configuration: {
|
|
402
|
+
...idConfig,
|
|
403
|
+
isSecondId: true
|
|
404
|
+
}
|
|
405
|
+
});
|
|
406
|
+
return result;
|
|
407
|
+
}
|
|
408
|
+
const prev = arr[idx - 1];
|
|
409
|
+
if (module.key === "ID" && prev?.key === "TUTORIAL_ID") return [];
|
|
410
|
+
return [module];
|
|
411
|
+
});
|
|
412
|
+
}
|
|
413
|
+
function normalizeCpfModules(modules, options) {
|
|
414
|
+
if (options.useCPF !== true) return modules;
|
|
415
|
+
return modules.map((module) => {
|
|
416
|
+
if (module.key !== "ID_OCR") return module;
|
|
417
|
+
return {
|
|
418
|
+
key: "ID_OCR",
|
|
419
|
+
configuration: {
|
|
420
|
+
...module.configuration,
|
|
421
|
+
cpfOnly: true
|
|
422
|
+
}
|
|
423
|
+
};
|
|
424
|
+
});
|
|
425
|
+
}
|
|
426
|
+
function shouldInjectRedirect(flow, modules, options) {
|
|
427
|
+
return options.isDesktop === true && flow.redirectDesktopToMobile === true && !hasModule(modules, "REDIRECT_TO_MOBILE");
|
|
428
|
+
}
|
|
429
|
+
function addRedirect(flow, modules, options) {
|
|
430
|
+
return [{
|
|
431
|
+
key: "REDIRECT_TO_MOBILE",
|
|
432
|
+
configuration: {
|
|
433
|
+
flowId: flow.flowId,
|
|
434
|
+
disableSmsOption: flow.disableSmsOption ?? false,
|
|
435
|
+
addContinueToDesktop: flow.addContinueToDesktop ?? false,
|
|
436
|
+
qrPhishingResistance: flow.qrPhishingResistance ?? false,
|
|
437
|
+
authHint: options.authHint,
|
|
438
|
+
lang: options.lang
|
|
439
|
+
}
|
|
440
|
+
}, ...modules];
|
|
441
|
+
}
|
|
442
|
+
function hasModule(modules, key) {
|
|
443
|
+
return modules.some((module) => module.key === key);
|
|
444
|
+
}
|
|
445
|
+
//#endregion
|
|
446
|
+
//#region src/modules/flow/flowServices.ts
|
|
447
|
+
let dashboardFlowCache;
|
|
448
|
+
var FlowSessionFinishedError = class extends Error {
|
|
449
|
+
constructor() {
|
|
450
|
+
super("This verification session has already been completed and can no longer be reopened.");
|
|
451
|
+
this.moduleErrorCode = "SESSION_FINISHED";
|
|
452
|
+
this.name = "FlowSessionFinishedError";
|
|
453
|
+
}
|
|
454
|
+
};
|
|
455
|
+
const REGULATION_TYPES = [
|
|
456
|
+
"US",
|
|
457
|
+
"Worldwide",
|
|
458
|
+
"Other",
|
|
459
|
+
"US_Illinois",
|
|
460
|
+
"US_Texas",
|
|
461
|
+
"US_California",
|
|
462
|
+
"US_Washington"
|
|
463
|
+
];
|
|
464
|
+
const REGULATION_TYPE_ALIASES = {
|
|
465
|
+
us: "US",
|
|
466
|
+
worldwide: "Worldwide",
|
|
467
|
+
worldwide_consent: "Worldwide",
|
|
468
|
+
other: "Other",
|
|
469
|
+
us_illinois: "US_Illinois",
|
|
470
|
+
usillinois: "US_Illinois",
|
|
471
|
+
us_texas: "US_Texas",
|
|
472
|
+
ustexas: "US_Texas",
|
|
473
|
+
us_california: "US_California",
|
|
474
|
+
uscalifornia: "US_California",
|
|
475
|
+
us_washington: "US_Washington",
|
|
476
|
+
uswashington: "US_Washington"
|
|
477
|
+
};
|
|
478
|
+
function toRegulationType(value) {
|
|
479
|
+
if (!value) return "Other";
|
|
480
|
+
if (REGULATION_TYPES.includes(value)) return value;
|
|
481
|
+
const normalized = value.trim().toLowerCase().replace(/[\s-]+/g, "_");
|
|
482
|
+
return REGULATION_TYPE_ALIASES[normalized] ?? "Other";
|
|
483
|
+
}
|
|
484
|
+
function prependMandatoryConsent(flow) {
|
|
485
|
+
if (flow.mandatoryConsentCheck === false) return flow;
|
|
486
|
+
const fingerprintResult = getSessionFingerprintResult();
|
|
487
|
+
if (!fingerprintResult?.showMandatoryConsent) return flow;
|
|
488
|
+
if (flow.flowModules.find((module) => module.key === "MANDATORY_CONSENT")) return flow;
|
|
489
|
+
const mandatoryConsentModule = {
|
|
490
|
+
key: "MANDATORY_CONSENT",
|
|
491
|
+
configuration: { consentType: toRegulationType(fingerprintResult.regulationType) }
|
|
492
|
+
};
|
|
493
|
+
return {
|
|
494
|
+
...flow,
|
|
495
|
+
flowModules: [mandatoryConsentModule, ...flow.flowModules]
|
|
496
|
+
};
|
|
497
|
+
}
|
|
498
|
+
function requireActiveToken() {
|
|
499
|
+
const token = getToken();
|
|
500
|
+
if (!token) throw new Error("Standalone module configuration requires an active Flow session");
|
|
501
|
+
return token;
|
|
502
|
+
}
|
|
503
|
+
async function assertSessionCanStart(flow, signal) {
|
|
504
|
+
if (flow.enableMultipleOnboardings) return;
|
|
505
|
+
let data;
|
|
506
|
+
try {
|
|
507
|
+
data = (await api.get(endpoints.onboardingStatus, { signal })).data;
|
|
508
|
+
} catch (error) {
|
|
509
|
+
toIncodeApiError(endpoints.onboardingStatus, error);
|
|
510
|
+
}
|
|
511
|
+
if (data.onboardingStatus === "ONBOARDING_FINISHED") throw new FlowSessionFinishedError();
|
|
512
|
+
}
|
|
513
|
+
function validateRawFlow(data) {
|
|
514
|
+
if (!data || typeof data.flowId !== "string" || data.flowId.length === 0) throw new Error("No Flow is configured for the active session");
|
|
515
|
+
if (!Array.isArray(data.flowModules)) throw new Error("No Flow is configured for the active session");
|
|
516
|
+
return data;
|
|
517
|
+
}
|
|
518
|
+
async function fetchRawDashboardFlow() {
|
|
519
|
+
try {
|
|
520
|
+
return validateRawFlow((await api.get(endpoints.flow)).data);
|
|
521
|
+
} catch (error) {
|
|
522
|
+
toIncodeApiError(endpoints.flow, error);
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
function createAbortError() {
|
|
526
|
+
const error = /* @__PURE__ */ new Error("The operation was aborted");
|
|
527
|
+
error.name = "AbortError";
|
|
528
|
+
return error;
|
|
529
|
+
}
|
|
530
|
+
function throwIfAborted(signal) {
|
|
531
|
+
if (signal?.aborted) throw createAbortError();
|
|
532
|
+
}
|
|
533
|
+
function waitForSharedPromise(promise, signal) {
|
|
534
|
+
if (!signal) return promise;
|
|
535
|
+
if (signal.aborted) return Promise.reject(createAbortError());
|
|
536
|
+
return new Promise((resolve, reject) => {
|
|
537
|
+
const onAbort = () => reject(createAbortError());
|
|
538
|
+
signal.addEventListener("abort", onAbort, { once: true });
|
|
539
|
+
promise.then((value) => {
|
|
540
|
+
signal.removeEventListener("abort", onAbort);
|
|
541
|
+
resolve(value);
|
|
542
|
+
}, (error) => {
|
|
543
|
+
signal.removeEventListener("abort", onAbort);
|
|
544
|
+
reject(error);
|
|
545
|
+
});
|
|
546
|
+
});
|
|
547
|
+
}
|
|
548
|
+
function preloadDashboardFlow(signal) {
|
|
549
|
+
const token = requireActiveToken();
|
|
550
|
+
if (dashboardFlowCache?.token === token) return waitForSharedPromise(dashboardFlowCache.promise, signal);
|
|
551
|
+
const request = fetchRawDashboardFlow();
|
|
552
|
+
const cache = {
|
|
553
|
+
token,
|
|
554
|
+
promise: request
|
|
555
|
+
};
|
|
556
|
+
const promise = request.catch((error) => {
|
|
557
|
+
if (dashboardFlowCache === cache) dashboardFlowCache = void 0;
|
|
558
|
+
throw error;
|
|
559
|
+
});
|
|
560
|
+
cache.promise = promise;
|
|
561
|
+
dashboardFlowCache = cache;
|
|
562
|
+
return waitForSharedPromise(promise, signal);
|
|
563
|
+
}
|
|
564
|
+
function resetDashboardFlowCache() {
|
|
565
|
+
dashboardFlowCache = void 0;
|
|
566
|
+
}
|
|
567
|
+
async function normalizeDashboardFlow(rawFlow, options, signal) {
|
|
568
|
+
throwIfAborted(signal);
|
|
569
|
+
await initializeSession({ signal }).catch(() => void 0);
|
|
570
|
+
throwIfAborted(signal);
|
|
571
|
+
await updateFeatureManagementUser({ customIDs: { flow_id: rawFlow.flowId } });
|
|
572
|
+
throwIfAborted(signal);
|
|
573
|
+
const flow = prependMandatoryConsent(rawFlow);
|
|
574
|
+
const normalizedModules = normalizeFlowModules(flow, options);
|
|
575
|
+
throwIfAborted(signal);
|
|
576
|
+
return {
|
|
577
|
+
...flow,
|
|
578
|
+
flowModules: normalizedModules
|
|
579
|
+
};
|
|
580
|
+
}
|
|
581
|
+
const getFlow = async (signal, options = {}) => {
|
|
582
|
+
throwIfAborted(signal);
|
|
583
|
+
const rawFlow = await preloadDashboardFlow(signal);
|
|
584
|
+
throwIfAborted(signal);
|
|
585
|
+
await assertSessionCanStart(rawFlow, signal);
|
|
586
|
+
throwIfAborted(signal);
|
|
587
|
+
return normalizeDashboardFlow(rawFlow, options, signal);
|
|
588
|
+
};
|
|
589
|
+
function getResolverModuleKeys(moduleKey) {
|
|
590
|
+
if (moduleKey === "TUTORIAL_ID") return ["ID"];
|
|
591
|
+
if (moduleKey === "GOVT_VALIDATION_PROVISIONING") return ["GOVT_VALIDATION_PROVISIONING", "INE_VALIDATION"];
|
|
592
|
+
if (moduleKey === "DOCUMENT_CAPTURE") return ["DOCUMENT_CAPTURE", "ADDRESS"];
|
|
593
|
+
if (moduleKey === "MANDATORY_CONSENT") return ["MANDATORY_CONSENT", "ML_CONSENT"];
|
|
594
|
+
return [moduleKey];
|
|
595
|
+
}
|
|
596
|
+
async function resolveDashboardModuleConfig(options) {
|
|
597
|
+
const flowPolicy = getStandaloneFlowPolicy();
|
|
598
|
+
if (options.config !== void 0 && !flowPolicy.mergeConfig) return options.config;
|
|
599
|
+
if (!flowPolicy.enabled) throw new Error("Flow-backed module configuration is disabled; provide config or manager");
|
|
600
|
+
let flow;
|
|
601
|
+
try {
|
|
602
|
+
throwIfAborted(options.signal);
|
|
603
|
+
const rawFlow = await preloadDashboardFlow(options.signal);
|
|
604
|
+
throwIfAborted(options.signal);
|
|
605
|
+
flow = await normalizeDashboardFlow(rawFlow, { isDesktop: options.moduleKey === "REDIRECT_TO_MOBILE" }, options.signal);
|
|
606
|
+
throwIfAborted(options.signal);
|
|
607
|
+
} catch (error) {
|
|
608
|
+
if (error instanceof Error && error.name === "AbortError") throw error;
|
|
609
|
+
throw new Error("Standalone module configuration requires an active Flow session");
|
|
610
|
+
}
|
|
611
|
+
const moduleKeys = getResolverModuleKeys(options.moduleKey);
|
|
612
|
+
const occurrence = options.occurrence ?? 0;
|
|
613
|
+
const module = flow.flowModules.filter((module) => moduleKeys.includes(module.key))[occurrence];
|
|
614
|
+
if (!module) throw new Error(`Module "${options.moduleKey}" is not enabled in the active Flow`);
|
|
615
|
+
const flowConfig = resolveFlowModuleConfig(module, flow);
|
|
616
|
+
if (flowPolicy.mergeConfig) return mergeDashboardConfig(flowConfig, options.config);
|
|
617
|
+
return flowConfig;
|
|
618
|
+
}
|
|
619
|
+
//#endregion
|
|
620
|
+
export { FIELD_NAME_MAPPING as C, UBO_FIELD_LABELS as D, SUPPORTED_COUNTRIES as E, isSupportedCountry as O, DEV_ONLY_COUNTRIES as S, INVALID_CNPJ_PATTERNS as T, ADDRESS_FIELDS as _, enrichFlowModuleConfig as a, CNPJ_SECOND_DIGIT_FACTORS as b, resolveFlowModuleConfig as c, videoSelfieWasmPipelines as d, hasAtLeastOneAddressField as f, toEkybConfig as g, sortModulesByOrder as h, resolveDashboardModuleConfig as i, mergeDashboardConfig as k, facingModeForStep as l, requiresAddressValidation as m, preloadDashboardFlow as n, getRequiredWasmPipelines as o, isFieldOptional as p, resetDashboardFlowCache as r, normalizeFlowModules as s, getFlow as t, resolveVideoSelfieSteps as u, ALL_COUNTRIES as v, FIELD_ORDER as w, COUNTRIES_WITH_CNPJ_VALIDATION as x, CNPJ_FIRST_DIGIT_FACTORS as y };
|
package/dist/geolocation.d.ts
CHANGED
|
@@ -1,5 +1,2 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./Manager-goNPc_h_.js";
|
|
3
|
-
import "./Actor-BwgmOPkb.js";
|
|
4
|
-
import { n as GeolocationState, o as geolocationMachine, r as createGeolocationManager, s as GeolocationConfig, t as GeolocationManager } from "./geolocationManager-DaHYFkVO.js";
|
|
1
|
+
import { n as GeolocationState, o as geolocationMachine, r as createGeolocationManager, s as GeolocationConfig, t as GeolocationManager } from "./geolocationManager-Cz744E5S.js";
|
|
5
2
|
export { type GeolocationConfig, type GeolocationManager, type GeolocationState, createGeolocationManager, geolocationMachine };
|
package/dist/geolocation.esm.js
CHANGED
|
@@ -1,9 +1,3 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import "./
|
|
3
|
-
|
|
4
|
-
import "./platform-0Ot-bF_a.esm.js";
|
|
5
|
-
import "./xstate.esm-nY3M5UYm.esm.js";
|
|
6
|
-
import { t as createGeolocationManager } from "./geolocationManager-CF6-NizA.esm.js";
|
|
7
|
-
import { t as geolocationMachine } from "./geolocationStateMachine-CD2XJs1b.esm.js";
|
|
8
|
-
|
|
9
|
-
export { createGeolocationManager, geolocationMachine };
|
|
1
|
+
import { t as createGeolocationManager } from "./geolocationManager-DGwnL5lg.esm.js";
|
|
2
|
+
import { t as geolocationMachine } from "./geolocationStateMachine-il6jz5DZ.esm.js";
|
|
3
|
+
export { createGeolocationManager, geolocationMachine };
|