@incodetech/core 2.2.0-rc.8 → 2.3.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/THIRD_PARTY_NOTICES.txt +281 -0
- package/dist/BaseWasmProvider-Dyi6dKp1.d.ts +65 -0
- package/dist/{BrowserDiagnosticsCryptoProvider-DslcXorZ.esm.js → BrowserDiagnosticsCryptoProvider-C_9o3L2L.esm.js} +1 -1
- package/dist/{BrowserVisibilityObserverProvider-BX1BiLDK.esm.js → BrowserVisibilityObserverProvider-BrJN1B8A.esm.js} +2 -0
- package/dist/FaceDetectionProvider-DTetAE8H.esm.js +476 -0
- package/dist/FaceDetectionProvider-LdZ47bWy.d.ts +36 -0
- package/dist/{IIdCaptureCapability-DHTT3FC2.d.ts → IIdCaptureCapability-RNiFhvXR.d.ts} +7 -33
- package/dist/IWasmUtilCapability-CXXDA5l1.d.ts +159 -0
- package/dist/{MotionSensorProvider-DGiV77J_.esm.js → MotionSensorProvider-BgTYwg9L.esm.js} +1 -1
- package/dist/{deepsightService-DLVQS_RH.d.ts → StreamCanvasCapture-B3YT2Bt6.d.ts} +54 -41
- package/dist/{StreamCanvasCapture-D2XcXCZ4.esm.js → StreamCanvasCapture-C9jtgBdT.esm.js} +2 -2
- package/dist/{addressSearch-D1XpBdUS.esm.js → addressSearch-BRSu_aGA.esm.js} +1 -1
- package/dist/advanceableErrors-CpF2cBy6.esm.js +21 -0
- package/dist/ae-signature.d.ts +4 -2
- package/dist/ae-signature.esm.js +1 -1
- package/dist/antifraud.esm.js +2 -2
- package/dist/{antifraudManager-CQFNgSPt.esm.js → antifraudManager-Bg9ynGum.esm.js} +2 -2
- package/dist/{antifraudStateMachine-Bf_JVNwn.esm.js → antifraudStateMachine-BHxehiJZ.esm.js} +1 -1
- package/dist/{apiError-D4rZe9BR.esm.js → apiError-D0v5hFyN.esm.js} +14 -2
- package/dist/authentication.d.ts +3 -3
- package/dist/authentication.esm.js +2 -2
- package/dist/{authenticationManager-EfCuQy_Y.esm.js → authenticationManager-C4B4-29g.esm.js} +5 -5
- package/dist/{authenticationManager-BBMGTcwW.d.ts → authenticationManager-DXTIUcma.d.ts} +7 -1
- package/dist/{authenticationStateMachine-B9l3sHEg.esm.js → authenticationStateMachine-DJ0zUm-A.esm.js} +6 -62
- package/dist/avatar.d.ts +1 -2
- package/dist/avatar.esm.js +1 -1
- package/dist/{backCameraStream-CUeYm5eu.esm.js → backCameraStream-BOtyQowf.esm.js} +83 -22
- package/dist/{camera-_2sXMXiF.esm.js → camera-sIa9ceW2.esm.js} +19 -1
- package/dist/camera.esm.js +1 -1
- package/dist/{canvas-E1zGkel4.esm.js → canvas-BxFzWTt-.esm.js} +19 -0
- package/dist/certificate-issuance.d.ts +2 -302
- package/dist/certificate-issuance.esm.js +3 -66
- package/dist/certificateIssuanceManager-Bfvkq7Cy.esm.js +69 -0
- package/dist/certificateIssuanceManager-DCgEidHz.d.ts +312 -0
- package/dist/{certificateIssuanceStateMachine-D_R92TYu.esm.js → certificateIssuanceStateMachine-BBD5h8c4.esm.js} +1 -1
- package/dist/consent.d.ts +1 -1
- package/dist/consent.esm.js +2 -2
- package/dist/{consentManager-BxjpLZAG.esm.js → consentManager-B5Vqdez-.esm.js} +2 -2
- package/dist/{consentManager-3Pbtj-RV.d.ts → consentManager-uhDPdU6i.d.ts} +4 -4
- package/dist/{consentStateMachine-D9D4ON8Z.esm.js → consentStateMachine-DbUmqWgV.esm.js} +1 -1
- package/dist/createCameraCycleOwnership-DQ5-F2oW.esm.js +826 -0
- package/dist/{createFaceAvatar-DQKaRise.esm.js → createFaceAvatar-BNHdeFj8.esm.js} +2 -2
- package/dist/createFaceAvatar-BlcTYgJv.d.ts +497 -0
- package/dist/cross-document-data-match.esm.js +1 -1
- package/dist/{crossDocumentDataMatchManager-CGT0V6RV.esm.js → crossDocumentDataMatchManager-QMOGwHXR.esm.js} +2 -2
- package/dist/curp-validation.d.ts +1 -1
- package/dist/curp-validation.esm.js +2 -2
- package/dist/{curpValidationManager-6Nmkn5u1.esm.js → curpValidationManager-D1ppROcF.esm.js} +2 -2
- package/dist/{curpValidationManager-DVGr7Fq7.d.ts → curpValidationManager-SSKNrm5Z.d.ts} +1 -1
- package/dist/{curpValidationStateMachine-Ds7KMacK.esm.js → curpValidationStateMachine-DvUPC_8S.esm.js} +1 -1
- package/dist/custom-fields.d.ts +2 -114
- package/dist/custom-fields.esm.js +2 -232
- package/dist/custom-watchlist.d.ts +2 -51
- package/dist/custom-watchlist.esm.js +3 -70
- package/dist/customFieldsManager-2j_PBq4U.esm.js +264 -0
- package/dist/customFieldsManager-8-W2KY4n.d.ts +141 -0
- package/dist/customWatchlistManager-DUVrEdw9.esm.js +73 -0
- package/dist/customWatchlistManager-PBWHr_oM.d.ts +64 -0
- package/dist/{customWatchlistStateMachine-YWSgKLbF.esm.js → customWatchlistStateMachine-qZVgkKgP.esm.js} +1 -1
- package/dist/{deepsightLoader-DEcRUKfT.esm.js → deepsightLoader-Dm7ejW4v.esm.js} +27 -71
- package/dist/device.d.ts +25 -2
- package/dist/device.esm.js +69 -7
- package/dist/document-capture.d.ts +2 -2
- package/dist/document-capture.esm.js +2 -2
- package/dist/{documentCaptureManager-DsQQhWry.esm.js → documentCaptureManager-DR_Wv-3H.esm.js} +2 -2
- package/dist/{documentCaptureManager-B3t0ydtg.d.ts → documentCaptureManager-DensIj5F.d.ts} +83 -83
- package/dist/{documentCaptureStateMachine-BM4Ex_5x.esm.js → documentCaptureStateMachine-CWOATHfE.esm.js} +5 -5
- package/dist/dynamic-forms.d.ts +1 -1
- package/dist/dynamic-forms.esm.js +2 -2
- package/dist/{dynamicFormsManager-fhK0yINk.d.ts → dynamicFormsManager-D5R_uxLQ.d.ts} +25 -3
- package/dist/{dynamicFormsManager-CmvBSrzC.esm.js → dynamicFormsManager-Dt98SDfV.esm.js} +16 -5
- package/dist/{dynamicFormsStateMachine-C37Rtz1G.esm.js → dynamicFormsStateMachine-obKr4IIp.esm.js} +35 -3
- package/dist/ekyb.d.ts +1 -1
- package/dist/ekyb.esm.js +3 -3
- package/dist/{ekybManager-Bx6dG89U.esm.js → ekybManager-DNZKrKF3.esm.js} +2 -2
- package/dist/{ekybStateMachine-uscz9zIj.esm.js → ekybStateMachine-DjhHQXZ8.esm.js} +3 -3
- package/dist/ekyc.esm.js +2 -2
- package/dist/{ekycManager-DgT48ky6.esm.js → ekycManager-CmQBpeiI.esm.js} +2 -2
- package/dist/{ekycStateMachine-CQwqiR-R.esm.js → ekycStateMachine-CmdW2gVm.esm.js} +2 -2
- package/dist/electronic-signature.d.ts +3 -3
- package/dist/electronic-signature.esm.js +2 -2
- package/dist/electronicSignatureManager-Ds-KEVTq.d.ts +2786 -0
- package/dist/{electronicSignatureManager-_QiHi1U5.esm.js → electronicSignatureManager-DzulxM4_.esm.js} +357 -51
- package/dist/email.esm.js +2 -2
- package/dist/{emailManager-BY0jeYwR.esm.js → emailManager-B5ek_UfM.esm.js} +2 -2
- package/dist/{emailStateMachine-Crw8QVmc.esm.js → emailStateMachine-CyPFZ7dW.esm.js} +1 -1
- package/dist/{endpoints-CCzL3XD_.esm.js → endpoints-D3B9mUHh.esm.js} +24 -7
- package/dist/{events-DYiyoSlx.esm.js → events-ijlbX_Wx.esm.js} +2 -2
- package/dist/events.d.ts +1 -1
- package/dist/events.esm.js +1 -1
- package/dist/extensibility.d.ts +24 -64
- package/dist/extensibility.esm.js +35 -29
- package/dist/face-match.esm.js +2 -2
- package/dist/{faceCaptureManagerFactory-BxWPpxyd.d.ts → faceCaptureManagerFactory-CvtqcLxs.d.ts} +87 -54
- package/dist/{faceCaptureManagerFactory-Bkueb8mk.esm.js → faceCaptureManagerFactory-pCmG4MeF.esm.js} +68 -7
- package/dist/faceCaptureSetup-BSextack.esm.js +2106 -0
- package/dist/{faceMatchManager-Ri4UbNz0.esm.js → faceMatchManager-Caal2zyV.esm.js} +2 -2
- package/dist/{faceMatchStateMachine-20DdZ3jg.esm.js → faceMatchStateMachine-BUc5FXYy.esm.js} +1 -1
- package/dist/{feature-management-B3Uygq6K.esm.js → feature-management-B0sGlozZ.esm.js} +32 -7
- package/dist/feature-management.d.ts +1 -1
- package/dist/feature-management.esm.js +1 -1
- package/dist/field-comparison.esm.js +1 -1
- package/dist/{fieldComparisonManager-Cg6kPQQx.esm.js → fieldComparisonManager-BIs6HPJG.esm.js} +2 -2
- package/dist/fiscal-qr.d.ts +2 -56
- package/dist/fiscal-qr.esm.js +2 -308
- package/dist/fiscalQrManager-Bp_-3LJr.esm.js +34131 -0
- package/dist/fiscalQrManager-CHcBJwUM.d.ts +68 -0
- package/dist/flow-events.d.ts +1 -1
- package/dist/flow.d.ts +212 -185
- package/dist/flow.esm.js +119 -30
- package/dist/{flowCompletionService-UakxNaeg.esm.js → flowCompletionService-CLtbWhSK.esm.js} +2 -2
- package/dist/{flowServices-CD5m8HqZ.esm.js → flowServices-B5FwukTQ.esm.js} +91 -26
- package/dist/geolocation.esm.js +2 -2
- package/dist/{geolocationManager-Bz6wJrfI.esm.js → geolocationManager-DIw-xq9a.esm.js} +2 -2
- package/dist/{geolocationStateMachine-psEJIVjN.esm.js → geolocationStateMachine-DpG0TFOU.esm.js} +3 -3
- package/dist/getBrowser-CBiibsL-.esm.js +19 -0
- package/dist/{getBrowser-DNrQeL4T.esm.js → getBrowser-Cbe1C4Tn.esm.js} +2 -1
- package/dist/{getDeviceClass-9y-kbVDw.esm.js → getDeviceClass-5NYZg9s6.esm.js} +2 -2
- package/dist/getParsedUserAgent-B2iFDql1.esm.js +1278 -0
- package/dist/government-validation.d.ts +2 -85
- package/dist/government-validation.esm.js +3 -120
- package/dist/governmentValidationManager-D02vT4yY.d.ts +63 -0
- package/dist/governmentValidationManager-TjC9iVjH.esm.js +79 -0
- package/dist/governmentValidationStateMachine-D1ZnEqdd.esm.js +54 -0
- package/dist/home.d.ts +1 -1
- package/dist/home.esm.js +1 -1
- package/dist/id-ocr.d.ts +2 -2
- package/dist/id-ocr.esm.js +2 -2
- package/dist/id-selfie-flow.d.ts +3 -2
- package/dist/id-selfie-flow.esm.js +11 -10
- package/dist/id-verification.esm.js +2 -2
- package/dist/id.d.ts +29 -5
- package/dist/id.esm.js +48 -46
- package/dist/idCaptureDefaults-BcxjQDI3.esm.js +484 -0
- package/dist/{idCaptureManager-CqrqSjJV.d.ts → idCaptureManager-CvmHOWWd.d.ts} +227 -39
- package/dist/{idCaptureManager-BJAquKfp.esm.js → idCaptureManager-Vby8oYqh.esm.js} +259 -46
- package/dist/{idCaptureServices-CM6ki4IH.esm.js → idCaptureServices-CJIxD9ep.esm.js} +342 -31
- package/dist/idCaptureStateMachine-CmqihkUy.esm.js +5343 -0
- package/dist/{idOcrManager-DXc_xRN7.d.ts → idOcrManager-BF_cXZq8.d.ts} +1 -1
- package/dist/{idOcrManager-BIQYQXXj.esm.js → idOcrManager-DHU22hVn.esm.js} +2 -2
- package/dist/{idOcrStateMachine-cSxzHpHt.esm.js → idOcrStateMachine-33UvRAHE.esm.js} +1 -1
- package/dist/{idVerificationManager-JpV_SAsl.esm.js → idVerificationManager-CyaixD0D.esm.js} +2 -2
- package/dist/{idVerificationStateMachine-nPeUNyFq.esm.js → idVerificationStateMachine-BPGrQZEm.esm.js} +1 -1
- package/dist/identity-reuse.esm.js +2 -2
- package/dist/{identityReuseManager-kNCg9AbD.esm.js → identityReuseManager-CWaNHBO3.esm.js} +2 -2
- package/dist/{identityReuseStateMachine-DyulxDjP.esm.js → identityReuseStateMachine-CQgnATo5.esm.js} +1 -1
- package/dist/{index-CLMF0QLQ.d.ts → index-DLcJT5YP.d.ts} +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/{invokeOnCaptureCallback-GpvMuz9o.esm.js → invokeOnCaptureCallback-BjzPjJ_p.esm.js} +1 -1
- package/dist/mandatory-consent.d.ts +2 -2
- package/dist/mandatory-consent.esm.js +2 -2
- package/dist/{mandatoryConsentManager-DyPzUmsZ.d.ts → mandatoryConsentManager-CJSyhTpi.d.ts} +5 -5
- package/dist/{mandatoryConsentManager-B4Niyg_u.esm.js → mandatoryConsentManager-Du-m-tZ_.esm.js} +2 -2
- package/dist/{mandatoryConsentStateMachine-B4-1u-L8.esm.js → mandatoryConsentStateMachine-DSDAk7WZ.esm.js} +1 -1
- package/dist/multipartRecordingService-B3C_zlev.esm.js +594 -0
- package/dist/{permissionGuards-KINpmKtI.esm.js → permissionGuards-uYZYFu4J.esm.js} +1 -1
- package/dist/{permissionServices-UvUcOSRb.esm.js → permissionServices-Bj_fyWtv.esm.js} +5 -5
- package/dist/personhood.d.ts +6 -5
- package/dist/personhood.esm.js +10 -10
- package/dist/phone.esm.js +2 -2
- package/dist/{phoneManager-FsJ0W2Ei.esm.js → phoneManager-N1-sbrY4.esm.js} +2 -2
- package/dist/{phoneStateMachine-Ba0wKHyX.esm.js → phoneStateMachine-jl8LJKCo.esm.js} +1 -1
- package/dist/{platform-BJrm5nzZ.esm.js → platform-DkcRc9JV.esm.js} +29 -1
- package/dist/qe-signature.d.ts +5 -3
- package/dist/qe-signature.esm.js +2 -2
- package/dist/recordingsRepository-CCWy13M-.esm.js +72 -0
- package/dist/redirect-to-mobile.esm.js +2 -2
- package/dist/{redirectToMobileManager-y4VQB11M.esm.js → redirectToMobileManager-DsFzdTwA.esm.js} +2 -2
- package/dist/{redirectToMobileStateMachine-Cyv2x0PP.esm.js → redirectToMobileStateMachine-v3otpT-L.esm.js} +1 -1
- package/dist/{rolldown-runtime-FZ4Itg2g.esm.js → rolldown-runtime-FDOR9p9I.esm.js} +1 -19
- package/dist/{runChildModule-BR2RIfRg.esm.js → runChildModule-TuyGE00X.esm.js} +3 -21
- package/dist/safeStorage-B-trhxg6.esm.js +423 -0
- package/dist/{sdkVersion-BWOdgLZ1.esm.js → sdkVersion-CLxKvdyz.esm.js} +1 -1
- package/dist/selfie.d.ts +5 -5
- package/dist/selfie.esm.js +14 -76
- package/dist/{selfieErrorUtils-C2PYBVsp.esm.js → selfieErrorUtils-C77GXJH6.esm.js} +30 -4
- package/dist/{selfieManager-BlImAV-k.esm.js → selfieManager-CihVnODO.esm.js} +5 -5
- package/dist/{selfieManager-DwlCppg0.d.ts → selfieManager-D1KRJ39M.d.ts} +8 -11
- package/dist/selfieStateMachine-fwMmNtOi.esm.js +69 -0
- package/dist/{session-Bp17qJsu.esm.js → session-BHIeAamR.esm.js} +4 -5
- package/dist/session.d.ts +21 -11
- package/dist/session.esm.js +5 -5
- package/dist/{sessionInitializer-CcqQD9Q4.esm.js → sessionInitializer-BLoK7SP9.esm.js} +187 -68
- package/dist/{setup-BgoWtvIS.d.ts → setup-Cv-JM9QC.d.ts} +63 -69
- package/dist/{setup-CXj5ozZN.esm.js → setup-msLybMbC.esm.js} +226 -100
- package/dist/signature.esm.js +2 -2
- package/dist/{signatureManager-Ca43yhwk.esm.js → signatureManager-ChsB-nMD.esm.js} +2 -2
- package/dist/{signatureStateMachine-K1LMRrxG.esm.js → signatureStateMachine-BHPwkJZS.esm.js} +1 -1
- package/dist/{src-0Jurt29N.esm.js → src-35ekGRzK.esm.js} +1 -1
- package/dist/{stats-B0nFKawG.esm.js → stats-DkK-f8JT.esm.js} +1 -1
- package/dist/stats.esm.js +1 -1
- package/dist/{trueSightService-D05SY_Ij.esm.js → trueSightService-CKrrfV0Q.esm.js} +7 -7
- package/dist/trust-graph.esm.js +1 -1
- package/dist/{types-BX_XkMsQ2.d.ts → types-9_esGTPj.d.ts} +1 -1
- package/dist/types-BT_Oalip.d.ts +1 -0
- package/dist/{types-DelMqZLe.d.ts → types-BjSly8cp.d.ts} +1 -1
- package/dist/{types-Hmd7U0JA.d.ts → types-CM-jtjJ2.d.ts} +6 -81
- package/dist/{types-Bdf8_LYB2.d.ts → types-CjKBS37a2.d.ts} +303 -13
- package/dist/{types-DVmXIdzW.d.ts → types-D0gekt4U.d.ts} +38 -5
- package/dist/types-DgDvvzg0.d.ts +10 -0
- package/dist/{types-KPvmag_B.d.ts → types-Do5rEXij.d.ts} +7 -4
- package/dist/types-ZT1XFIJ8.d.ts +6 -0
- package/dist/video-selfie.d.ts +59 -35
- package/dist/video-selfie.esm.js +510 -601
- package/dist/{videoSelfieCameraWarmer-BhTWYfGn.esm.js → videoSelfieCameraWarmer-CB1IzZkt.esm.js} +14 -153
- package/dist/videoSelfieFlowModuleMachine-BUe2uACW.esm.js +32 -0
- package/dist/{videoSelfieStepDetector-D3oo2ofo.d.ts → videoSelfieStepDetector-5YHFe0Mq.d.ts} +21 -5
- package/dist/virtualCameraCheck-WOloJ-do.esm.js +48 -0
- package/dist/warmup-CUUnwYxe.esm.js +714 -0
- package/dist/warmup-Cis2p6O0.d.ts +128 -0
- package/dist/wasm.d.ts +30 -6
- package/dist/wasm.esm.js +36 -4
- package/dist/{wasmDsFlagSync-BqUCwLY8.esm.js → wasmDsFlagSync-B2e8p268.esm.js} +2 -2
- package/dist/{wasmWebClient-DM8lkb0z.esm.js → wasmWebClient-B7baE-Wf.esm.js} +358 -28
- package/dist/watchlist-for-business.d.ts +2 -78
- package/dist/watchlist-for-business.esm.js +3 -102
- package/dist/watchlist.esm.js +2 -2
- package/dist/watchlistForBusinessManager-CpuuB1J2.esm.js +107 -0
- package/dist/watchlistForBusinessManager-CsnJnG-C.d.ts +99 -0
- package/dist/{watchlistForBusinessStateMachine-CxFnlshm.esm.js → watchlistForBusinessStateMachine-DEzgjz7C.esm.js} +13 -6
- package/dist/{watchlistManager-LoNZH9qm.esm.js → watchlistManager-CI8BHFob.esm.js} +2 -2
- package/dist/{watchlistStateMachine-DIKQDoUT.esm.js → watchlistStateMachine-DvOby3a-.esm.js} +1 -1
- package/dist/workflow.d.ts +12 -8
- package/dist/workflow.esm.js +48 -39
- package/package.json +4 -10
- package/dist/BrowserStorageProvider-k-FDkC4W.esm.js +0 -67
- package/dist/FaceDetectionProvider-Mh6q3EbA.d.ts +0 -349
- package/dist/IFaceAvatarCapability-BrL19G0s.d.ts +0 -23
- package/dist/IStorageCapability-ORkQfK3F.d.ts +0 -242
- package/dist/OpenViduRecordingProvider-Du98qevC.esm.js +0 -85
- package/dist/createFaceAvatar-BEj18KXi.d.ts +0 -50
- package/dist/document-upload.d.ts +0 -325
- package/dist/document-upload.esm.js +0 -197
- package/dist/electronicSignatureManager-CcUXQZS7.d.ts +0 -1300
- package/dist/faceCaptureSetup-BECAis8R.esm.js +0 -863
- package/dist/getBrowser-Cb8Zgrgp.esm.js +0 -7
- package/dist/getParsedUserAgent-pJjATANs.esm.js +0 -1622
- package/dist/governmentValidationStateMachine-CK9DrZXX.esm.js +0 -226
- package/dist/idCaptureDefaults-WeHbQM7W.esm.js +0 -225
- package/dist/idCaptureStateMachine-fi-Gq1AH.esm.js +0 -3342
- package/dist/lib-DAyUtOTj.esm.js +0 -12420
- package/dist/manualReviewService-D4IkipnN.esm.js +0 -15
- package/dist/mediaRecorderOptions-dALSV8af.esm.js +0 -40
- package/dist/onDeviceFaceResults-CB62pUQf.esm.js +0 -646
- package/dist/openviduLazy-CCDpFWg1.esm.js +0 -10
- package/dist/recordingService-BRgmVnUT.esm.js +0 -329
- package/dist/safeStorage-Ep56I-f_.esm.js +0 -982
- package/dist/selfieStateMachine-CPXEC4wV.esm.js +0 -55
- package/dist/trueSight-CY0Ibfm9.esm.js +0 -1
- package/dist/types-EELWyWpd.d.ts +0 -6
- package/dist/types-Vb4P9ovf.d.ts +0 -22
- package/dist/warmup-Dv2alr2-.d.ts +0 -82
- package/dist/wasmDefaults-DTUrftxR.esm.js +0 -125
- package/dist/{Face2DProvider-UUQt_vRC.esm.js → Face2DProvider-BF48sz5c.esm.js} +1 -1
- package/dist/{PrivacyLensProvider-D8PS7AJa.esm.js → PrivacyLensProvider-EwnC_C5n.esm.js} +1 -1
- /package/dist/{types-BfgmV7s72.d.ts → types-BfgmV7s7.d.ts} +0 -0
- /package/dist/{types-CJ7Yl9K-2.d.ts → types-CJ7Yl9K-.d.ts} +0 -0
package/dist/{videoSelfieCameraWarmer-BhTWYfGn.esm.js → videoSelfieCameraWarmer-CB1IzZkt.esm.js}
RENAMED
|
@@ -1,16 +1,17 @@
|
|
|
1
1
|
import { t as BrowserTimerProvider } from "./BrowserTimerProvider-BXhgNxLt.esm.js";
|
|
2
2
|
import { t as api } from "./api-Bx3gKW_y.esm.js";
|
|
3
|
-
import { t as endpoints } from "./endpoints-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { t as checkPermission } from "./permissionServices-
|
|
7
|
-
import {
|
|
8
|
-
import { n as getBackCameraStream } from "./backCameraStream-CUeYm5eu.esm.js";
|
|
9
|
-
import { n as getWindowDimensions } from "./getDeviceClass-CeBiEayS.esm.js";
|
|
3
|
+
import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
|
|
4
|
+
import { d as facingModeForStep, f as resolveVideoSelfieSteps } from "./flowServices-B5FwukTQ.esm.js";
|
|
5
|
+
import { a as requestCameraWithFallback, i as requestCameraAccess } from "./camera-sIa9ceW2.esm.js";
|
|
6
|
+
import { t as checkPermission } from "./permissionServices-Bj_fyWtv.esm.js";
|
|
7
|
+
import { n as encryptSelfieImage, o as startDetection, t as FaceDetectionProvider } from "./FaceDetectionProvider-DTetAE8H.esm.js";
|
|
10
8
|
import { t as FACE_ERROR_CODES } from "./types-BN5RPPIZ.esm.js";
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import { n as
|
|
9
|
+
import { a as StreamCanvasProcessingSession } from "./recordingsRepository-CCWy13M-.esm.js";
|
|
10
|
+
import { n as getBackCameraStream } from "./backCameraStream-BOtyQowf.esm.js";
|
|
11
|
+
import { n as getWindowDimensions } from "./getDeviceClass-CeBiEayS.esm.js";
|
|
12
|
+
import { a as uploadSelfie, r as processFace, t as getFaceErrorCodeFromUnknown } from "./selfieErrorUtils-C77GXJH6.esm.js";
|
|
13
|
+
import { n as DEFAULT_ID_CAPTURE_THRESHOLDS, r as IdCaptureProvider, t as DEFAULT_ID_CAPTURE_GEOMETRY } from "./idCaptureDefaults-BcxjQDI3.esm.js";
|
|
14
|
+
import { t as StreamCanvasCapture } from "./StreamCanvasCapture-C9jtgBdT.esm.js";
|
|
14
15
|
//#region src/modules/video-selfie/videoSelfieCompareService.ts
|
|
15
16
|
async function postVideoSelfieCompare(endpoint, base64Image) {
|
|
16
17
|
return (await api.post(endpoint, { base64Image })).data;
|
|
@@ -434,146 +435,6 @@ async function validateIdFrame(step, config, base64Image) {
|
|
|
434
435
|
return { outcome: "success" };
|
|
435
436
|
}
|
|
436
437
|
//#endregion
|
|
437
|
-
//#region ../infra/src/media/CameraCompositor.ts
|
|
438
|
-
const MAX_COMPOSITE_LONG_EDGE = 1280;
|
|
439
|
-
const MAX_COMPOSITE_SHORT_EDGE = 720;
|
|
440
|
-
const FRAME_INTERVAL_TOLERANCE_RATIO = .9;
|
|
441
|
-
/**
|
|
442
|
-
* Composites the *active* camera into a canvas and exposes the canvas as a
|
|
443
|
-
* single, stable `MediaStream` to record. Switching cameras (front ↔ back)
|
|
444
|
-
* just repoints what the canvas draws — the output stream and its audio track
|
|
445
|
-
* are never replaced — so a single `MediaRecorder` produces one continuous
|
|
446
|
-
* video that follows the camera switches (V1 parity), instead of restarting
|
|
447
|
-
* per camera.
|
|
448
|
-
*
|
|
449
|
-
* The audio track from the initial stream is carried through unchanged across
|
|
450
|
-
* video switches, so there's no audio glitch when the camera flips.
|
|
451
|
-
*/
|
|
452
|
-
var CameraCompositor = class {
|
|
453
|
-
constructor(options = {}) {
|
|
454
|
-
this.canvas = null;
|
|
455
|
-
this.ctx = null;
|
|
456
|
-
this.video = null;
|
|
457
|
-
this.frameRequestId = null;
|
|
458
|
-
this.frameRequestKind = null;
|
|
459
|
-
this.lastDrawTimeMs = null;
|
|
460
|
-
this.lastVideoTimeSeconds = null;
|
|
461
|
-
this.audioTrack = null;
|
|
462
|
-
this.videoTrack = null;
|
|
463
|
-
this.composite = null;
|
|
464
|
-
this.fps = options.fps ?? 30;
|
|
465
|
-
this.frameIntervalMs = this.fps > 0 ? 1e3 / this.fps : 0;
|
|
466
|
-
}
|
|
467
|
-
/**
|
|
468
|
-
* Begin compositing `stream` and return the composite stream to record. The
|
|
469
|
-
* stream's audio track (if any) is carried through unchanged across later
|
|
470
|
-
* `switchVideo` calls.
|
|
471
|
-
*/
|
|
472
|
-
start(stream) {
|
|
473
|
-
this.canvas = document.createElement("canvas");
|
|
474
|
-
this.ctx = this.canvas.getContext("2d");
|
|
475
|
-
this.video = document.createElement("video");
|
|
476
|
-
this.video.muted = true;
|
|
477
|
-
this.video.playsInline = true;
|
|
478
|
-
this.audioTrack = stream.getAudioTracks()[0] ?? null;
|
|
479
|
-
this.setVideoSource(stream);
|
|
480
|
-
const composite = this.canvas.captureStream(this.fps);
|
|
481
|
-
if (this.audioTrack) composite.addTrack(this.audioTrack);
|
|
482
|
-
this.composite = composite;
|
|
483
|
-
this.startDrawLoop();
|
|
484
|
-
return composite;
|
|
485
|
-
}
|
|
486
|
-
/**
|
|
487
|
-
* Swap the camera feeding the canvas without interrupting the composite
|
|
488
|
-
* stream. Pass a video-only stream (audio is kept from `start`). The previous
|
|
489
|
-
* video track is stopped.
|
|
490
|
-
*/
|
|
491
|
-
switchVideo(stream) {
|
|
492
|
-
if (!this.composite) return;
|
|
493
|
-
const previousVideoTrack = this.videoTrack;
|
|
494
|
-
this.setVideoSource(stream);
|
|
495
|
-
this.startDrawLoop();
|
|
496
|
-
if (previousVideoTrack) previousVideoTrack.stop();
|
|
497
|
-
}
|
|
498
|
-
/** The composite stream being recorded, if compositing is active. */
|
|
499
|
-
get stream() {
|
|
500
|
-
return this.composite ?? void 0;
|
|
501
|
-
}
|
|
502
|
-
/** Stop compositing and release the canvas, audio, and video tracks. */
|
|
503
|
-
stop() {
|
|
504
|
-
this.cancelDrawLoop();
|
|
505
|
-
this.videoTrack?.stop();
|
|
506
|
-
this.audioTrack?.stop();
|
|
507
|
-
this.composite?.getTracks().forEach((track) => track.stop());
|
|
508
|
-
if (this.video) this.video.srcObject = null;
|
|
509
|
-
this.canvas = null;
|
|
510
|
-
this.ctx = null;
|
|
511
|
-
this.video = null;
|
|
512
|
-
this.videoTrack = null;
|
|
513
|
-
this.audioTrack = null;
|
|
514
|
-
this.composite = null;
|
|
515
|
-
}
|
|
516
|
-
setVideoSource(stream) {
|
|
517
|
-
this.videoTrack = stream.getVideoTracks()[0] ?? null;
|
|
518
|
-
const video = this.video;
|
|
519
|
-
if (!video) return;
|
|
520
|
-
video.srcObject = new MediaStream(stream.getVideoTracks());
|
|
521
|
-
video.play().catch(() => {});
|
|
522
|
-
}
|
|
523
|
-
startDrawLoop() {
|
|
524
|
-
this.cancelDrawLoop();
|
|
525
|
-
this.lastDrawTimeMs = null;
|
|
526
|
-
this.lastVideoTimeSeconds = null;
|
|
527
|
-
const draw = (timeMs) => {
|
|
528
|
-
const elapsed = this.lastDrawTimeMs === null ? Infinity : timeMs - this.lastDrawTimeMs;
|
|
529
|
-
if ((this.frameIntervalMs === 0 || elapsed >= this.frameIntervalMs * FRAME_INTERVAL_TOLERANCE_RATIO) && this.drawCurrentFrame()) this.lastDrawTimeMs = timeMs;
|
|
530
|
-
this.scheduleNextFrame(draw);
|
|
531
|
-
};
|
|
532
|
-
this.scheduleNextFrame(draw);
|
|
533
|
-
}
|
|
534
|
-
scheduleNextFrame(callback) {
|
|
535
|
-
const video = this.video;
|
|
536
|
-
if (video && typeof video.requestVideoFrameCallback === "function") {
|
|
537
|
-
this.frameRequestKind = "video";
|
|
538
|
-
this.frameRequestId = video.requestVideoFrameCallback(callback);
|
|
539
|
-
return;
|
|
540
|
-
}
|
|
541
|
-
this.frameRequestKind = "animation";
|
|
542
|
-
this.frameRequestId = requestAnimationFrame(callback);
|
|
543
|
-
}
|
|
544
|
-
cancelDrawLoop() {
|
|
545
|
-
if (this.frameRequestId === null) return;
|
|
546
|
-
if (this.frameRequestKind === "video" && this.video && typeof this.video.cancelVideoFrameCallback === "function") this.video.cancelVideoFrameCallback(this.frameRequestId);
|
|
547
|
-
else cancelAnimationFrame(this.frameRequestId);
|
|
548
|
-
this.frameRequestId = null;
|
|
549
|
-
this.frameRequestKind = null;
|
|
550
|
-
}
|
|
551
|
-
drawCurrentFrame() {
|
|
552
|
-
const video = this.video;
|
|
553
|
-
const canvas = this.canvas;
|
|
554
|
-
const ctx = this.ctx;
|
|
555
|
-
if (!video || !canvas || !ctx || video.videoWidth <= 0) return false;
|
|
556
|
-
if (this.lastVideoTimeSeconds === video.currentTime) return false;
|
|
557
|
-
const dimensions = this.getBoundedDimensions(video.videoWidth, video.videoHeight);
|
|
558
|
-
if (canvas.width !== dimensions.width || canvas.height !== dimensions.height) {
|
|
559
|
-
canvas.width = dimensions.width;
|
|
560
|
-
canvas.height = dimensions.height;
|
|
561
|
-
}
|
|
562
|
-
ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
|
|
563
|
-
this.lastVideoTimeSeconds = video.currentTime;
|
|
564
|
-
return true;
|
|
565
|
-
}
|
|
566
|
-
getBoundedDimensions(width, height) {
|
|
567
|
-
const longEdge = Math.max(width, height);
|
|
568
|
-
const shortEdge = Math.min(width, height);
|
|
569
|
-
const scale = Math.min(1, MAX_COMPOSITE_LONG_EDGE / longEdge, MAX_COMPOSITE_SHORT_EDGE / shortEdge);
|
|
570
|
-
return {
|
|
571
|
-
width: Math.max(1, Math.round(width * scale)),
|
|
572
|
-
height: Math.max(1, Math.round(height * scale))
|
|
573
|
-
};
|
|
574
|
-
}
|
|
575
|
-
};
|
|
576
|
-
//#endregion
|
|
577
438
|
//#region src/modules/video-selfie/videoSelfieCameraWarmer.ts
|
|
578
439
|
/**
|
|
579
440
|
* Acquire the camera for a Video Selfie step. The rear (`environment`) steps
|
|
@@ -609,8 +470,8 @@ function stopStream(stream) {
|
|
|
609
470
|
* camera (and whether it needs audio) is derived from the resolved step order —
|
|
610
471
|
* the same first acquire the recording machine performs on `START`.
|
|
611
472
|
*/
|
|
612
|
-
function createVideoSelfieCameraWarmer(config) {
|
|
613
|
-
const firstFacing = facingModeForStep(
|
|
473
|
+
function createVideoSelfieCameraWarmer(config, steps = resolveVideoSelfieSteps(config)) {
|
|
474
|
+
const firstFacing = facingModeForStep(steps[0] ?? "selfie");
|
|
614
475
|
let warming = null;
|
|
615
476
|
let warmed = null;
|
|
616
477
|
let consumed = false;
|
|
@@ -648,4 +509,4 @@ function createVideoSelfieCameraWarmer(config) {
|
|
|
648
509
|
};
|
|
649
510
|
}
|
|
650
511
|
//#endregion
|
|
651
|
-
export {
|
|
512
|
+
export { isConnectionError as a, delay as i, defaultAcquireCamera as n, isSelfieValidationError as o, createDefaultStepDetector as r, isWrongVideoSelfieIdSide as s, createVideoSelfieCameraWarmer as t };
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { t as setup } from "./xstate.esm-BuFLFuzz.esm.js";
|
|
2
|
+
//#region src/modules/video-selfie/videoSelfieFlowModuleMachine.ts
|
|
3
|
+
/**
|
|
4
|
+
* Parked flow-module machine for the `VIDEO_ONBOARDING` step.
|
|
5
|
+
*
|
|
6
|
+
* The video-selfie UI component owns the entire capture / streaming / upload
|
|
7
|
+
* lifecycle (it creates its own {@link createVideoSelfieRecordingManager}) and
|
|
8
|
+
* signals completion to the flow via `flowManager.completeModule()`
|
|
9
|
+
* (`MODULE_COMPLETE`). This machine therefore only needs to hold the step open:
|
|
10
|
+
* it starts in a non-final `running` state and never transitions, so the
|
|
11
|
+
* orchestrated flow stays in `runningModule` until the UI advances it.
|
|
12
|
+
*
|
|
13
|
+
* **Completion contract:** the L2 `incode-video-selfie` web component calls
|
|
14
|
+
* `flowManager.completeModule()` once the recording manager reaches `finished`.
|
|
15
|
+
* Recoverable errors stay inside the module until the user retries.
|
|
16
|
+
*
|
|
17
|
+
* **Abort / unmount:** if the user closes the module or the web component
|
|
18
|
+
* unmounts before completion, the orchestrated flow manager's existing close /
|
|
19
|
+
* abort path (`MODULE_CLOSE` / session teardown) is responsible for exiting the
|
|
20
|
+
* step. This parked machine does not model those paths itself.
|
|
21
|
+
*
|
|
22
|
+
* Contrast {@link noOpFlowModuleMachine}, whose initial state is `final` — that
|
|
23
|
+
* is used for headless steps (e.g. `IP_ADDRESS`) that must complete instantly
|
|
24
|
+
* with no UI. Using a no-op here would skip the video-selfie UI entirely.
|
|
25
|
+
*/
|
|
26
|
+
const videoSelfieFlowModuleMachine = setup({}).createMachine({
|
|
27
|
+
id: "videoSelfieFlowModule",
|
|
28
|
+
initial: "running",
|
|
29
|
+
states: { running: {} }
|
|
30
|
+
});
|
|
31
|
+
//#endregion
|
|
32
|
+
export { videoSelfieFlowModuleMachine as t };
|
package/dist/{videoSelfieStepDetector-D3oo2ofo.d.ts → videoSelfieStepDetector-5YHFe0Mq.d.ts}
RENAMED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
+
import { i as FlowModuleConfig } from "./types-Do5rEXij.js";
|
|
2
|
+
import "./IWasmUtilCapability-CXXDA5l1.js";
|
|
3
|
+
import { n as DetectionStatus } from "./types-CM-jtjJ2.js";
|
|
1
4
|
import { t as CameraStream } from "./camera-9wWD-pwg.js";
|
|
2
|
-
import {
|
|
3
|
-
import { n as DetectionStatus } from "./types-Hmd7U0JA.js";
|
|
4
|
-
import { t as DetectionOrientation } from "./IIdCaptureCapability-DHTT3FC2.js";
|
|
5
|
+
import { t as DetectionOrientation } from "./IIdCaptureCapability-RNiFhvXR.js";
|
|
5
6
|
//#region src/modules/video-selfie/types.d.ts
|
|
6
7
|
/**
|
|
7
8
|
* The capture steps a Video Selfie session can run, in flow order. Which steps
|
|
@@ -15,10 +16,12 @@ type VideoSelfieStep = 'selfie' | 'frontId' | 'backId' | 'poa' | 'questions' | '
|
|
|
15
16
|
*
|
|
16
17
|
* The whole session is recorded on-device and streamed to the backend via S3
|
|
17
18
|
* multipart upload (`internal/recordings/multipartRecordingService`) — the
|
|
18
|
-
* client-side replacement for V1's server-side
|
|
19
|
+
* client-side replacement for V1's server-side recording. See
|
|
19
20
|
* `docs/features/VIDEO_SELFIE.md`.
|
|
20
21
|
*/
|
|
21
|
-
type VideoSelfieConfig = FlowModuleConfig['VIDEO_ONBOARDING']
|
|
22
|
+
type VideoSelfieConfig = FlowModuleConfig['VIDEO_ONBOARDING'] & {
|
|
23
|
+
steps?: VideoSelfieStep[];
|
|
24
|
+
};
|
|
22
25
|
//#endregion
|
|
23
26
|
//#region ../infra/src/capabilities/ICameraCapability.d.ts
|
|
24
27
|
type FacingMode = 'user' | 'environment';
|
|
@@ -26,7 +29,9 @@ type FacingMode = 'user' | 'environment';
|
|
|
26
29
|
//#region ../infra/src/media/CameraCompositor.d.ts
|
|
27
30
|
type CameraCompositorOptions = {
|
|
28
31
|
fps?: number;
|
|
32
|
+
resumeTimeoutMs?: number;
|
|
29
33
|
};
|
|
34
|
+
type CameraCompositorResumeResult = 'resumed' | 'video-ended' | 'audio-ended' | 'timed-out';
|
|
30
35
|
/**
|
|
31
36
|
* Composites the *active* camera into a canvas and exposes the canvas as a
|
|
32
37
|
* single, stable `MediaStream` to record. Switching cameras (front ↔ back)
|
|
@@ -41,6 +46,7 @@ type CameraCompositorOptions = {
|
|
|
41
46
|
declare class CameraCompositor {
|
|
42
47
|
private readonly fps;
|
|
43
48
|
private readonly frameIntervalMs;
|
|
49
|
+
private readonly resumeTimeoutMs;
|
|
44
50
|
private canvas;
|
|
45
51
|
private ctx;
|
|
46
52
|
private video;
|
|
@@ -51,6 +57,7 @@ declare class CameraCompositor {
|
|
|
51
57
|
private audioTrack;
|
|
52
58
|
private videoTrack;
|
|
53
59
|
private composite;
|
|
60
|
+
private resumeWaiter;
|
|
54
61
|
constructor(options?: CameraCompositorOptions);
|
|
55
62
|
/**
|
|
56
63
|
* Begin compositing `stream` and return the composite stream to record. The
|
|
@@ -66,10 +73,19 @@ declare class CameraCompositor {
|
|
|
66
73
|
switchVideo(stream: CameraStream): void;
|
|
67
74
|
/** The composite stream being recorded, if compositing is active. */
|
|
68
75
|
get stream(): MediaStream | undefined;
|
|
76
|
+
/** Pause source playback and drawing while the page is backgrounded. */
|
|
77
|
+
pause(): void;
|
|
78
|
+
/**
|
|
79
|
+
* Restart source playback and wait for a genuinely new camera frame to be
|
|
80
|
+
* drawn into the stable canvas stream. The caller must not resume encoding
|
|
81
|
+
* until this resolves with `resumed`.
|
|
82
|
+
*/
|
|
83
|
+
resume(signal?: AbortSignal): Promise<CameraCompositorResumeResult>;
|
|
69
84
|
/** Stop compositing and release the canvas, audio, and video tracks. */
|
|
70
85
|
stop(): void;
|
|
71
86
|
private setVideoSource;
|
|
72
87
|
private startDrawLoop;
|
|
88
|
+
private finishResume;
|
|
73
89
|
private scheduleNextFrame;
|
|
74
90
|
private cancelDrawLoop;
|
|
75
91
|
private drawCurrentFrame;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { t as api } from "./api-Bx3gKW_y.esm.js";
|
|
2
|
+
import { t as addDeviceStats } from "./stats-DkK-f8JT.esm.js";
|
|
3
|
+
import { t as IncodeCanvas } from "./canvas-BxFzWTt-.esm.js";
|
|
4
|
+
//#region src/internal/virtualCameraCheck.ts
|
|
5
|
+
const frameSources = {
|
|
6
|
+
front: "FRONT_ID",
|
|
7
|
+
back: "BACK_ID",
|
|
8
|
+
selfie: "SELFIE"
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Sends the analyzed frame image to the backend for logging.
|
|
12
|
+
*/
|
|
13
|
+
async function logFrame({ source, base64Image, token }) {
|
|
14
|
+
try {
|
|
15
|
+
return (await api.post("/omni/log/frame/v2", { base64Image }, {
|
|
16
|
+
query: { source },
|
|
17
|
+
headers: { "X-Incode-Hardware-Id": token }
|
|
18
|
+
})).data;
|
|
19
|
+
} catch {
|
|
20
|
+
return;
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Runs the WASM virtual camera check and handles logging and stats.
|
|
25
|
+
*/
|
|
26
|
+
async function runVirtualCameraCheck({ wasmUtil, source, token }) {
|
|
27
|
+
const output = {
|
|
28
|
+
canvas: null,
|
|
29
|
+
itr: null,
|
|
30
|
+
skipped: null
|
|
31
|
+
};
|
|
32
|
+
await wasmUtil.poc(output);
|
|
33
|
+
if (output.skipped !== false) return;
|
|
34
|
+
if (output.canvas && token) {
|
|
35
|
+
const base64Image = new IncodeCanvas(output.canvas).getBase64Image();
|
|
36
|
+
if (base64Image) logFrame({
|
|
37
|
+
source,
|
|
38
|
+
base64Image,
|
|
39
|
+
token
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
if (output.itr === true) {
|
|
43
|
+
addDeviceStats({ virtualCameraDetected: true });
|
|
44
|
+
wasmUtil.setZc("FAIL");
|
|
45
|
+
} else if (output.itr === false) wasmUtil.setZc("PASS");
|
|
46
|
+
}
|
|
47
|
+
//#endregion
|
|
48
|
+
export { runVirtualCameraCheck as n, frameSources as t };
|