@incodetech/core 2.1.1 → 2.2.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{3dAvatarProvider-BwOmTMOy.esm.js → 3dAvatarProvider-g02DTFqT.esm.js} +811 -880
- package/dist/Actor-iTq7YY48.d.ts +1 -0
- package/dist/BrowserDiagnosticsCryptoProvider-CriIh1Gt.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-DZfAyExM.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-DscbQwIl.esm.js} +7 -10
- package/dist/{authenticationStateMachine-DbdxfGHx.esm.js → authenticationStateMachine-SyuM00Fa.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-DcWjMC6A.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-B4Kivr8_.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-BoZ2-OUI.esm.js} +48 -9
- package/dist/{dynamicFormsManager-CKZkE7Wo.d.ts → dynamicFormsManager-fhK0yINk.d.ts} +22 -46
- package/dist/{dynamicFormsStateMachine-DJ1HGZff.esm.js → dynamicFormsStateMachine-D0RzkoEV.esm.js} +161 -34
- package/dist/ekyb.d.ts +5 -137
- package/dist/ekyb.esm.js +4 -179
- package/dist/ekybManager-DTvfxAOZ.esm.js +178 -0
- package/dist/ekybManager-Dzswb_b8.d.ts +114 -0
- package/dist/{ekybStateMachine-D9GzA4MW.esm.js → ekybStateMachine-BlTIozb6.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/{index-36QX_21w.d.ts → electronicSignatureManager-CcUXQZS7.d.ts} +220 -251
- package/dist/{electronicSignatureManager-DESRgObX.esm.js → electronicSignatureManager-DRYlHPjT.esm.js} +47 -33
- 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-BDAsBCkh.esm.js} +52 -31
- package/dist/{faceCaptureManagerFactory-DiJ64oem.d.ts → faceCaptureManagerFactory-BxWPpxyd.d.ts} +63 -24
- package/dist/{faceCaptureSetup-BqhqfFHL.esm.js → faceCaptureSetup-C7Qv79fA.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-BSe3p7pg.esm.js} +4 -6
- package/dist/flowServices-unhF9V9F.esm.js +620 -0
- package/dist/geolocation.d.ts +1 -4
- package/dist/geolocation.esm.js +3 -9
- package/dist/{geolocationManager-CF6-NizA.esm.js → geolocationManager-Bv9MSVNr.esm.js} +44 -16
- package/dist/geolocationManager-Cz744E5S.d.ts +506 -0
- package/dist/{geolocationStateMachine-CD2XJs1b.esm.js → geolocationStateMachine-BxD6JK1M.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-BjiBSrHm.esm.js} +173 -34
- package/dist/idCaptureServices-CFDwqTtQ.esm.js +396 -0
- package/dist/{idCaptureStateMachine-DZ2ZTSxu.esm.js → idCaptureStateMachine-CRwQh8jc.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-f81FVdQs.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-CFpfdXSS.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-DpvgAGFA.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-Br4onIMy.esm.js} +7 -10
- package/dist/{selfieManager-4juKfrHG.d.ts → selfieManager-DwlCppg0.d.ts} +3 -4
- package/dist/{selfieStateMachine-D0TS93Tu.esm.js → selfieStateMachine-CNGs8vFK.esm.js} +14 -29
- package/dist/{session-CLsU2Jnb.esm.js → session-CX2H3tmI.esm.js} +16 -7
- package/dist/session.d.ts +12 -10
- package/dist/session.esm.js +5 -15
- package/dist/sessionInitializer-CV6Rj_dn.esm.js +1865 -0
- package/dist/{setup-CfNsYAeB.esm.js → setup-CYdVacqv.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-B8G85W4z.esm.js +1 -0
- package/dist/trueSightService-6dTpiaTh.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-h_VUk5Vu.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,396 @@
|
|
|
1
|
+
import { i as numberParam, n as defineExperimentParams, t as booleanParam, u as resolveExperimentOnce } from "./feature-management-DS_Nj5Gg.esm.js";
|
|
2
|
+
import { t as api } from "./api-Bx3gKW_y.esm.js";
|
|
3
|
+
import { t as endpoints } from "./endpoints-CCzL3XD_.esm.js";
|
|
4
|
+
import { r as isDesktop } from "./platform-BJrm5nzZ.esm.js";
|
|
5
|
+
import { h as stopRecording$1, m as startRecording, p as createRecordingSession } from "./onDeviceFaceResults-f81FVdQs.esm.js";
|
|
6
|
+
import { n as getBackCameraStream } from "./backCameraStream-CUeYm5eu.esm.js";
|
|
7
|
+
import { t as getDeviceClass } from "./getDeviceClass-9y-kbVDw.esm.js";
|
|
8
|
+
import { n as preloadOpenViduProvider } from "./recordingService-CFpfdXSS.esm.js";
|
|
9
|
+
import { n as DEFAULT_ID_CAPTURE_THRESHOLDS, r as IdCaptureProvider } from "./idCaptureDefaults-WeHbQM7W.esm.js";
|
|
10
|
+
//#region src/modules/id/idCameraStream.ts
|
|
11
|
+
async function getIdCameraStream(deviceId) {
|
|
12
|
+
return getBackCameraStream(deviceId);
|
|
13
|
+
}
|
|
14
|
+
//#endregion
|
|
15
|
+
//#region src/modules/id/idCaptureExperiments.ts
|
|
16
|
+
/**
|
|
17
|
+
* IDC-05 — resolved by core because `framesAggregationInterval` feeds
|
|
18
|
+
* `setThresholds` before detection can run.
|
|
19
|
+
*/
|
|
20
|
+
const CAPTURE_RESULT_PREVIEW = {
|
|
21
|
+
storeParam: "captureResultPreview",
|
|
22
|
+
...defineExperimentParams({
|
|
23
|
+
showCaptureResultPreview: booleanParam(false),
|
|
24
|
+
framesAggregationInterval: numberParam(DEFAULT_ID_CAPTURE_THRESHOLDS.framesAggregationInterval)
|
|
25
|
+
})
|
|
26
|
+
};
|
|
27
|
+
//#endregion
|
|
28
|
+
//#region src/modules/id/idCaptureThresholds.ts
|
|
29
|
+
function resolveCaptureResultPreviewTreatment(config) {
|
|
30
|
+
if (config.supportsCaptureResultPreview !== true) return void 0;
|
|
31
|
+
const { params } = resolveExperimentOnce(CAPTURE_RESULT_PREVIEW);
|
|
32
|
+
return {
|
|
33
|
+
mode: params.showCaptureResultPreview ? "result-preview" : "countdown",
|
|
34
|
+
framesAggregationInterval: params.framesAggregationInterval
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Single source of truth for the WASM ID-capture thresholds passed to
|
|
39
|
+
* `IIdCaptureCapability.setThresholds`. Resolves `framesAggregationInterval`
|
|
40
|
+
* — the countdown / best-frame aggregation window (canonical default
|
|
41
|
+
* 3000ms) — with precedence:
|
|
42
|
+
*
|
|
43
|
+
* 1. An explicit `config.thresholds.framesAggregationInterval` (host/headless
|
|
44
|
+
* override) always wins — including when allocated to the treatment arm,
|
|
45
|
+
* which then runs the treatment UI on the host's aggregation window.
|
|
46
|
+
* 2. Otherwise, the IDC-05 experiment's `framesAggregationInterval`.
|
|
47
|
+
* 3. Otherwise, the canonical default.
|
|
48
|
+
*
|
|
49
|
+
* `idDetectedTimeout`/`autocaptureTimeout` are derived here too (from
|
|
50
|
+
* `deviceIdleTimeout`/`autoCaptureTimeout`, seconds -> ms), same as before —
|
|
51
|
+
* centralizing the whole threshold shape avoids the two former call sites
|
|
52
|
+
* (`initializeIdCapture`, `runDetectionActor`) each rebuilding it slightly
|
|
53
|
+
* differently.
|
|
54
|
+
*
|
|
55
|
+
* Call this once per capture session, at actor creation
|
|
56
|
+
* (`createIdCaptureActor` / `createIdCaptureOnlyActor`), and store the
|
|
57
|
+
* result back onto `config.thresholds` — so the parameter store is read at
|
|
58
|
+
* most once per session and every downstream consumer sees the same
|
|
59
|
+
* fully-resolved thresholds instead of re-deriving them.
|
|
60
|
+
*/
|
|
61
|
+
function resolveIdCaptureThresholds(config, experimentInterval) {
|
|
62
|
+
return {
|
|
63
|
+
...DEFAULT_ID_CAPTURE_THRESHOLDS,
|
|
64
|
+
...config.thresholds,
|
|
65
|
+
framesAggregationInterval: config.thresholds?.framesAggregationInterval ?? experimentInterval ?? DEFAULT_ID_CAPTURE_THRESHOLDS.framesAggregationInterval,
|
|
66
|
+
idDetectedTimeout: config.thresholds?.idDetectedTimeout ?? (config.deviceIdleTimeout ?? 10) * 1e3,
|
|
67
|
+
autocaptureTimeout: config.thresholds?.autocaptureTimeout ?? (config.autoCaptureTimeout ?? 5) * 1e3
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
//#endregion
|
|
71
|
+
//#region src/modules/id/types.ts
|
|
72
|
+
const ID_ERROR_CODES = {
|
|
73
|
+
UPLOAD_ERROR: "UPLOAD_ERROR",
|
|
74
|
+
CLASSIFICATION_FAILED: "CLASSIFICATION_FAILED",
|
|
75
|
+
LOW_SHARPNESS: "LOW_SHARPNESS",
|
|
76
|
+
GLARE_DETECTED: "GLARE_DETECTED",
|
|
77
|
+
WRONG_DOCUMENT_SIDE: "WRONG_DOCUMENT_SIDE",
|
|
78
|
+
ID_TYPE_UNACCEPTABLE: "ID_TYPE_UNACCEPTABLE",
|
|
79
|
+
READABILITY_ISSUE: "READABILITY_ISSUE",
|
|
80
|
+
RETRY_EXHAUSTED_CONTINUE_TO_BACK: "RETRY_EXHAUSTED_CONTINUE_TO_BACK",
|
|
81
|
+
RETRY_EXHAUSTED_SKIP_BACK: "RETRY_EXHAUSTED_SKIP_BACK",
|
|
82
|
+
NO_MORE_TRIES: "NO_MORE_TRIES",
|
|
83
|
+
UNEXPECTED_ERROR: "UNEXPECTED_ERROR",
|
|
84
|
+
NO_TOKEN: "NO_TOKEN",
|
|
85
|
+
PERMISSION_DENIED: "PERMISSION_DENIED",
|
|
86
|
+
USER_CANCELLED: "USER_CANCELLED",
|
|
87
|
+
SERVER: "SERVER_ERROR"
|
|
88
|
+
};
|
|
89
|
+
//#endregion
|
|
90
|
+
//#region src/modules/id/idCaptureServices.ts
|
|
91
|
+
/**
|
|
92
|
+
* Camera constraints used for PRC warmup before ID capture.
|
|
93
|
+
* Uses environment-facing camera on mobile devices (for back camera ID capture)
|
|
94
|
+
* and user-facing camera on desktop.
|
|
95
|
+
*/
|
|
96
|
+
function getPrcCameraConstraints() {
|
|
97
|
+
if (isDesktop()) return { video: {
|
|
98
|
+
facingMode: "user",
|
|
99
|
+
height: { ideal: 480 },
|
|
100
|
+
width: { ideal: 640 }
|
|
101
|
+
} };
|
|
102
|
+
return { video: {
|
|
103
|
+
facingMode: "environment",
|
|
104
|
+
height: { ideal: 720 }
|
|
105
|
+
} };
|
|
106
|
+
}
|
|
107
|
+
function getUploadEndpoint(type, isSecondId) {
|
|
108
|
+
if (isSecondId) return type === "front" ? endpoints.frontSecondId : endpoints.backSecondId;
|
|
109
|
+
return type === "front" ? endpoints.frontId : endpoints.backId;
|
|
110
|
+
}
|
|
111
|
+
const SHARPNESS_THRESHOLD = 10;
|
|
112
|
+
const GLARE_THRESHOLD = 10;
|
|
113
|
+
const DEFAULT_ID_CAPTURE_SETTINGS = {
|
|
114
|
+
isFixedMask: false,
|
|
115
|
+
isIPhone14OrHigher: false,
|
|
116
|
+
idType: "",
|
|
117
|
+
blurCheckEnabled: false,
|
|
118
|
+
glareCheckEnabled: false,
|
|
119
|
+
faceQualityCheckEnabled: true,
|
|
120
|
+
iouCheckEnabled: true,
|
|
121
|
+
fpsLimitEnabled: false
|
|
122
|
+
};
|
|
123
|
+
async function initializeIdCapture(params) {
|
|
124
|
+
const { config, deepsightService } = params;
|
|
125
|
+
const provider = new IdCaptureProvider();
|
|
126
|
+
await provider.initialize({});
|
|
127
|
+
provider.setThresholds(resolveIdCaptureThresholds(config));
|
|
128
|
+
if (config.settings) provider.setSettings({
|
|
129
|
+
...DEFAULT_ID_CAPTURE_SETTINGS,
|
|
130
|
+
...config.settings
|
|
131
|
+
});
|
|
132
|
+
if (deepsightService && !params.stream) try {
|
|
133
|
+
await deepsightService.performPrcCheck({ constraints: getPrcCameraConstraints() });
|
|
134
|
+
} catch {}
|
|
135
|
+
const { stream, fallbackLevel } = params.stream ? {
|
|
136
|
+
stream: params.stream,
|
|
137
|
+
fallbackLevel: params.cameraFallbackLevel
|
|
138
|
+
} : await getIdCameraStream();
|
|
139
|
+
const videoTrack = stream.getVideoTracks()[0];
|
|
140
|
+
let captureResolution;
|
|
141
|
+
if (videoTrack) {
|
|
142
|
+
const settings = videoTrack.getSettings();
|
|
143
|
+
if (typeof settings.width === "number" && typeof settings.height === "number") captureResolution = `${settings.width}x${settings.height}`;
|
|
144
|
+
}
|
|
145
|
+
if (deepsightService && videoTrack) deepsightService.metadata.updateCameraInfo(videoTrack);
|
|
146
|
+
return {
|
|
147
|
+
stream,
|
|
148
|
+
provider,
|
|
149
|
+
captureResolution,
|
|
150
|
+
cameraFallbackLevel: fallbackLevel
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
function stopStream(stream) {
|
|
154
|
+
for (const track of stream.getTracks()) track.stop();
|
|
155
|
+
}
|
|
156
|
+
function validateUploadResponse(response, sessionState) {
|
|
157
|
+
if (response.failReason === "ID_TYPE_UNACCEPTABLE") return {
|
|
158
|
+
error: true,
|
|
159
|
+
message: "ID type is not acceptable",
|
|
160
|
+
messageDescription: "Please use a valid ID type",
|
|
161
|
+
errorKey: ID_ERROR_CODES.ID_TYPE_UNACCEPTABLE
|
|
162
|
+
};
|
|
163
|
+
if (response.failReason === "WRONG_DOCUMENT_SIDE") return {
|
|
164
|
+
error: true,
|
|
165
|
+
message: "Wrong side of document",
|
|
166
|
+
messageDescription: response.side === "back" ? "Please show the back side of your ID" : "Please show the front side of your ID",
|
|
167
|
+
errorKey: ID_ERROR_CODES.WRONG_DOCUMENT_SIDE
|
|
168
|
+
};
|
|
169
|
+
if (!response.classification) return {
|
|
170
|
+
error: true,
|
|
171
|
+
message: "ID classification failed",
|
|
172
|
+
errorKey: ID_ERROR_CODES.CLASSIFICATION_FAILED
|
|
173
|
+
};
|
|
174
|
+
const sharpnessThreshold = getDeviceClass() === "desktop" ? -1 : SHARPNESS_THRESHOLD;
|
|
175
|
+
if (response.sharpness !== void 0 && sharpnessThreshold >= 0 && response.sharpness < sharpnessThreshold) return {
|
|
176
|
+
error: true,
|
|
177
|
+
message: "Image is not sharp enough",
|
|
178
|
+
messageDescription: "Please ensure the image is clear and well-focused",
|
|
179
|
+
errorKey: ID_ERROR_CODES.LOW_SHARPNESS
|
|
180
|
+
};
|
|
181
|
+
if (response.glare !== void 0 && response.glare < GLARE_THRESHOLD && !sessionState?.skipGlareFront && !sessionState?.skipGlareBack) return {
|
|
182
|
+
error: true,
|
|
183
|
+
message: "Glare detected on ID",
|
|
184
|
+
messageDescription: "Please avoid bright reflections on your ID",
|
|
185
|
+
errorKey: ID_ERROR_CODES.GLARE_DETECTED
|
|
186
|
+
};
|
|
187
|
+
}
|
|
188
|
+
async function getExtraImages(params) {
|
|
189
|
+
const extraImages = params.ageAssurance ? [params.type === "back" ? "croppedBackID" : "croppedFrontID"] : [];
|
|
190
|
+
try {
|
|
191
|
+
const res = await api.post(endpoints.getImages, { images: ["croppedIDFace", ...extraImages] }, { signal: params.signal });
|
|
192
|
+
if (!res.ok) throw new Error(`Failed to get extra images: ${res.status}`);
|
|
193
|
+
return res.data ?? {
|
|
194
|
+
croppedIDFace: "",
|
|
195
|
+
croppedFrontID: "",
|
|
196
|
+
croppedBackID: ""
|
|
197
|
+
};
|
|
198
|
+
} catch {
|
|
199
|
+
return {
|
|
200
|
+
croppedIDFace: "",
|
|
201
|
+
croppedFrontID: "",
|
|
202
|
+
croppedBackID: ""
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
const getRealQualityValue = (value) => (1 - value) * 100;
|
|
207
|
+
async function uploadIdImage(params) {
|
|
208
|
+
const { type, image, onProgress, signal, metadata, ageAssurance, glare, sharpness, shouldSkipGlareBack, analyticsProvider, imageData, isSecondId, onlyFront, extractIdFace } = params;
|
|
209
|
+
let finalMetadata = metadata;
|
|
210
|
+
if (analyticsProvider && imageData) try {
|
|
211
|
+
await analyticsProvider.analyzeFrame(imageData);
|
|
212
|
+
analyticsProvider.update();
|
|
213
|
+
finalMetadata = analyticsProvider.getMetadata();
|
|
214
|
+
} catch (error) {
|
|
215
|
+
console.warn("[IdCapture] Analytics failed:", error);
|
|
216
|
+
}
|
|
217
|
+
const endpoint = getUploadEndpoint(type, isSecondId);
|
|
218
|
+
const body = {
|
|
219
|
+
base64Image: image,
|
|
220
|
+
metadata: finalMetadata
|
|
221
|
+
};
|
|
222
|
+
const queryParams = { imageType: "id" };
|
|
223
|
+
if (onlyFront && type === "front") queryParams.onlyFront = true;
|
|
224
|
+
if (shouldSkipGlareBack && type === "back") queryParams.glare = 0;
|
|
225
|
+
else if (glare !== void 0) queryParams.glare = getRealQualityValue(glare);
|
|
226
|
+
if (sharpness !== void 0) queryParams.sharpness = getRealQualityValue(sharpness);
|
|
227
|
+
if (extractIdFace === false && type === "front") queryParams.extractIdFace = false;
|
|
228
|
+
try {
|
|
229
|
+
const res = await api.post(endpoint, body, {
|
|
230
|
+
signal,
|
|
231
|
+
query: queryParams,
|
|
232
|
+
onUploadProgress: onProgress
|
|
233
|
+
});
|
|
234
|
+
if (!res.ok) throw new Error(`POST ${endpoint} failed: ${res.status} ${res.statusText}`);
|
|
235
|
+
const response = res.data;
|
|
236
|
+
const extraImages = await getExtraImages({
|
|
237
|
+
type,
|
|
238
|
+
ageAssurance,
|
|
239
|
+
signal
|
|
240
|
+
});
|
|
241
|
+
const fullResponse = {
|
|
242
|
+
...response,
|
|
243
|
+
originalImage: image,
|
|
244
|
+
frontIdImage: type === "front" ? image : void 0,
|
|
245
|
+
backIdImage: extraImages.croppedBackID,
|
|
246
|
+
...extraImages
|
|
247
|
+
};
|
|
248
|
+
onProgress?.(100);
|
|
249
|
+
return fullResponse;
|
|
250
|
+
} catch (error) {
|
|
251
|
+
const errorMessage = error instanceof Error ? error.message : "Unknown error";
|
|
252
|
+
throw new Error(`${ID_ERROR_CODES.UPLOAD_ERROR}: ${errorMessage}`);
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
function buildStandardResolution(width, height) {
|
|
256
|
+
return height > width ? {
|
|
257
|
+
width: 1080,
|
|
258
|
+
height: 1920
|
|
259
|
+
} : {
|
|
260
|
+
width: 1920,
|
|
261
|
+
height: 1080
|
|
262
|
+
};
|
|
263
|
+
}
|
|
264
|
+
function buildResolutionFromStream(stream) {
|
|
265
|
+
const track = stream.getVideoTracks()[0];
|
|
266
|
+
if (!track) return "1080x1920";
|
|
267
|
+
const settings = track.getSettings();
|
|
268
|
+
const width = settings.width;
|
|
269
|
+
const height = settings.height;
|
|
270
|
+
if (typeof width === "number" && typeof height === "number") {
|
|
271
|
+
const standard = buildStandardResolution(width, height);
|
|
272
|
+
return `${standard.width}x${standard.height}`;
|
|
273
|
+
}
|
|
274
|
+
return "1080x1920";
|
|
275
|
+
}
|
|
276
|
+
function preloadIdRecordingProvider(config) {
|
|
277
|
+
if (config.enableIdRecording !== true) return;
|
|
278
|
+
preloadOpenViduProvider();
|
|
279
|
+
}
|
|
280
|
+
async function createOpenViduRecordingProvider() {
|
|
281
|
+
const { OpenViduRecordingProvider } = await import("./OpenViduRecordingProvider-Du98qevC.esm.js");
|
|
282
|
+
return new OpenViduRecordingProvider();
|
|
283
|
+
}
|
|
284
|
+
async function startRecordingSession(params) {
|
|
285
|
+
if (params.config.enableIdRecording !== true) return;
|
|
286
|
+
if (params.existing) return params.existing;
|
|
287
|
+
const provider = params.config.recording?.capability ?? await createOpenViduRecordingProvider();
|
|
288
|
+
const clonedStream = params.stream.clone();
|
|
289
|
+
const hasAudio = clonedStream.getAudioTracks().length > 0;
|
|
290
|
+
const resolution = buildResolutionFromStream(clonedStream);
|
|
291
|
+
const session = await createRecordingSession(params.type);
|
|
292
|
+
const connection = await provider.connect({
|
|
293
|
+
sessionToken: session.token,
|
|
294
|
+
stream: clonedStream,
|
|
295
|
+
events: {}
|
|
296
|
+
});
|
|
297
|
+
await startRecording({
|
|
298
|
+
videoRecordingId: session.videoRecordingId,
|
|
299
|
+
type: params.type,
|
|
300
|
+
resolution,
|
|
301
|
+
hasAudio
|
|
302
|
+
});
|
|
303
|
+
return {
|
|
304
|
+
token: session.token,
|
|
305
|
+
sessionId: session.sessionId,
|
|
306
|
+
videoRecordingId: session.videoRecordingId,
|
|
307
|
+
connection,
|
|
308
|
+
resolution,
|
|
309
|
+
hasAudio
|
|
310
|
+
};
|
|
311
|
+
}
|
|
312
|
+
function stopRecording(session) {
|
|
313
|
+
(async () => {
|
|
314
|
+
try {
|
|
315
|
+
await stopRecording$1(session.videoRecordingId);
|
|
316
|
+
} finally {
|
|
317
|
+
await session.connection.disconnect();
|
|
318
|
+
}
|
|
319
|
+
})();
|
|
320
|
+
}
|
|
321
|
+
async function processId(isSecondId = false, queueName = "", signal) {
|
|
322
|
+
const endpoint = isSecondId ? endpoints.processSecondId : endpoints.processId;
|
|
323
|
+
const url = queueName ? `${endpoint}?queueName=${queueName}` : endpoint;
|
|
324
|
+
return { isDocumentExpired: (await api.post(url, {}, { signal })).data?.isDocumentExpired ?? false };
|
|
325
|
+
}
|
|
326
|
+
/**
|
|
327
|
+
* Upload a user-selected image as front / back / passport ID.
|
|
328
|
+
*
|
|
329
|
+
* Uses the same request shape as the live-camera path (`uploadIdImage`):
|
|
330
|
+
* JSON body `{ base64Image }` with default application/json Content-Type,
|
|
331
|
+
* `captureType=UPLOAD` query param, `retry=true` when retrying.
|
|
332
|
+
* Back is POSTed to `/omni/add/back-id/v2` (or `/omni/add/back-second-id/v2`
|
|
333
|
+
* when `isSecondId`); front and passport go to `/omni/add/front-id/v2` (or
|
|
334
|
+
* `/omni/add/front-second-id/v2` when `isSecondId`).
|
|
335
|
+
*
|
|
336
|
+
* The v2 endpoints reject raw `image/jpeg` bodies with 415, so the caller
|
|
337
|
+
* must convert the File to base64 before calling this service.
|
|
338
|
+
*/
|
|
339
|
+
async function uploadManualIdFile(params) {
|
|
340
|
+
const { side, base64Image, retry, onlyFront, signal, isSecondId, extractIdFace } = params;
|
|
341
|
+
const endpoint = getUploadEndpoint(side === "back" ? "back" : "front", isSecondId);
|
|
342
|
+
const queryParams = { captureType: "UPLOAD" };
|
|
343
|
+
if (retry) queryParams.retry = true;
|
|
344
|
+
if (onlyFront && side === "front") queryParams.onlyFront = true;
|
|
345
|
+
if (extractIdFace === false && side !== "back") queryParams.extractIdFace = false;
|
|
346
|
+
const res = await api.post(endpoint, { base64Image }, {
|
|
347
|
+
signal,
|
|
348
|
+
query: queryParams
|
|
349
|
+
});
|
|
350
|
+
if (!res.ok) throw new Error(`POST ${endpoint} failed: ${res.status} ${res.statusText}`);
|
|
351
|
+
return res.data;
|
|
352
|
+
}
|
|
353
|
+
/**
|
|
354
|
+
* UTF-8-safe base64 encoding of a decoded barcode payload. Uses the browser
|
|
355
|
+
* `TextEncoder` + `btoa` (always available in the SDK's target environment) so
|
|
356
|
+
* non-ASCII payloads survive `btoa`, which only accepts Latin-1.
|
|
357
|
+
*/
|
|
358
|
+
function barcodeToBase64(raw) {
|
|
359
|
+
const bytes = new TextEncoder().encode(raw);
|
|
360
|
+
let binary = "";
|
|
361
|
+
bytes.forEach((byte) => {
|
|
362
|
+
binary += String.fromCharCode(byte);
|
|
363
|
+
});
|
|
364
|
+
return btoa(binary);
|
|
365
|
+
}
|
|
366
|
+
/**
|
|
367
|
+
* US Smart Capture: submits a decoded PDF417 barcode to
|
|
368
|
+
* `POST /omni/add/barcode/v3`. The response drives the downstream front-capture
|
|
369
|
+
* and Process ID skips (`forceFrontIdCapture` / `idValidationCompleted`).
|
|
370
|
+
* Mirrors SDK 1's `addBarcode`. Throws (carrying `status`/`data`) on a non-OK
|
|
371
|
+
* response so the caller can fall back to a full-frame upload. The
|
|
372
|
+
* hardware-id token is injected by the shared `api` layer, as in `uploadIdImage`.
|
|
373
|
+
*/
|
|
374
|
+
async function addBarcode(params) {
|
|
375
|
+
const { rawBarcode, processId = true, metrics, signal } = params;
|
|
376
|
+
const body = { base64Barcode: barcodeToBase64(rawBarcode) };
|
|
377
|
+
if (metrics) {
|
|
378
|
+
body.pdf417RowNumber = metrics.rowNumber;
|
|
379
|
+
body.pdf417ColumnNumber = metrics.columnNumber;
|
|
380
|
+
body.pdf417CodewordLengthInPixelsMin = metrics.codewordLengthInPixelsMin;
|
|
381
|
+
body.pdf417CodewordLengthInPixelsMax = metrics.codewordLengthInPixelsMax;
|
|
382
|
+
body.pdf417CorrectedErrorsCount = metrics.correctedErrorsCount;
|
|
383
|
+
body.ecLevel = metrics.ecLevel;
|
|
384
|
+
}
|
|
385
|
+
const res = await api.post(endpoints.addBarcode, body, {
|
|
386
|
+
query: { processId },
|
|
387
|
+
signal
|
|
388
|
+
});
|
|
389
|
+
if (!res.ok) throw Object.assign(/* @__PURE__ */ new Error(`POST ${endpoints.addBarcode} failed: ${res.status} ${res.statusText}`), {
|
|
390
|
+
status: res.status,
|
|
391
|
+
data: res.data
|
|
392
|
+
});
|
|
393
|
+
return res.data;
|
|
394
|
+
}
|
|
395
|
+
//#endregion
|
|
396
|
+
export { processId as a, stopStream as c, validateUploadResponse as d, ID_ERROR_CODES as f, getIdCameraStream as g, CAPTURE_RESULT_PREVIEW as h, preloadIdRecordingProvider as i, uploadIdImage as l, resolveIdCaptureThresholds as m, barcodeToBase64 as n, startRecordingSession as o, resolveCaptureResultPreviewTreatment as p, initializeIdCapture as r, stopRecording as s, addBarcode as t, uploadManualIdFile as u };
|