@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
package/dist/face-match.d.ts
CHANGED
|
@@ -1,227 +1,4 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import { t as Manager } from "./Manager-goNPc_h_.js";
|
|
3
|
-
|
|
4
|
-
//#region src/modules/face-match/types.d.ts
|
|
5
|
-
/**
|
|
6
|
-
* Face match comparison variant.
|
|
7
|
-
* Determines which images are compared in the face match flow.
|
|
8
|
-
*/
|
|
9
|
-
type FaceMatchVariant = 'selfieVsId' | 'selfieVsNfc' | 'idVsNfc' | 'nfc3Way' | 'secondId';
|
|
10
|
-
/**
|
|
11
|
-
* Configuration options for face match module.
|
|
12
|
-
*
|
|
13
|
-
* @example Standard face match with animation
|
|
14
|
-
* ```typescript
|
|
15
|
-
* const config: FaceMatchConfig = {
|
|
16
|
-
* matchingType: 'selfieVsId',
|
|
17
|
-
* disableFaceMatchAnimation: false,
|
|
18
|
-
* };
|
|
19
|
-
* ```
|
|
20
|
-
*
|
|
21
|
-
* @example Auto-skip mode (headless)
|
|
22
|
-
* ```typescript
|
|
23
|
-
* const config: FaceMatchConfig = {
|
|
24
|
-
* matchingType: 'selfieVsId',
|
|
25
|
-
* disableFaceMatchAnimation: true,
|
|
26
|
-
* };
|
|
27
|
-
* ```
|
|
28
|
-
*/
|
|
29
|
-
type FaceMatchConfig = {
|
|
30
|
-
/**
|
|
31
|
-
* Which images to compare in the face match flow.
|
|
32
|
-
* Backend field name: `matchingType`.
|
|
33
|
-
* @default 'selfieVsId'
|
|
34
|
-
*/
|
|
35
|
-
matchingType?: FaceMatchVariant;
|
|
36
|
-
/**
|
|
37
|
-
* When true, skips the animation UI and auto-completes immediately after fetching data.
|
|
38
|
-
* Useful for headless integrations or silent verification flows.
|
|
39
|
-
* @default false
|
|
40
|
-
*/
|
|
41
|
-
disableFaceMatchAnimation?: boolean;
|
|
42
|
-
};
|
|
43
|
-
/**
|
|
44
|
-
* Cropped face images fetched from the backend.
|
|
45
|
-
*/
|
|
46
|
-
type FaceMatchImages = {
|
|
47
|
-
/**
|
|
48
|
-
* Cropped face from ID document.
|
|
49
|
-
*/
|
|
50
|
-
idFace: string | null;
|
|
51
|
-
/**
|
|
52
|
-
* Cropped selfie image (from face capture).
|
|
53
|
-
*/
|
|
54
|
-
selfie: string | null;
|
|
55
|
-
/**
|
|
56
|
-
* Cropped face from second ID document (only for 'secondId' variant).
|
|
57
|
-
*/
|
|
58
|
-
secondIdFace?: string | null;
|
|
59
|
-
};
|
|
60
|
-
/**
|
|
61
|
-
* Face match result parsed from score response.
|
|
62
|
-
*/
|
|
63
|
-
type FaceMatchResult = {
|
|
64
|
-
/**
|
|
65
|
-
* Whether faces matched (OK = true, FAIL = false, null = unknown).
|
|
66
|
-
*/
|
|
67
|
-
matched: boolean | null;
|
|
68
|
-
/**
|
|
69
|
-
* Whether liveness check passed.
|
|
70
|
-
*/
|
|
71
|
-
liveness: boolean | null;
|
|
72
|
-
};
|
|
73
|
-
//#endregion
|
|
74
|
-
//#region src/modules/face-match/faceMatchActor.d.ts
|
|
75
|
-
type CreateFaceMatchActorOptions = {
|
|
76
|
-
config: FaceMatchConfig;
|
|
77
|
-
};
|
|
78
|
-
//#endregion
|
|
79
|
-
//#region src/modules/face-match/faceMatchManager.d.ts
|
|
80
|
-
/** Face match manager is in initial state, waiting for `load()` to be called */
|
|
81
|
-
type FaceMatchIdleState = {
|
|
82
|
-
status: 'idle';
|
|
83
|
-
};
|
|
84
|
-
/** Fetching images and score from backend */
|
|
85
|
-
type FaceMatchLoadingState = {
|
|
86
|
-
status: 'loading';
|
|
87
|
-
};
|
|
88
|
-
/**
|
|
89
|
-
* Animation is playing - images are animating.
|
|
90
|
-
* @property images - Cropped face images fetched from backend
|
|
91
|
-
* @property result - Face match result (matched, liveness)
|
|
92
|
-
*/
|
|
93
|
-
type FaceMatchAnimatingState = {
|
|
94
|
-
status: 'animating';
|
|
95
|
-
images: {
|
|
96
|
-
idFace: string | null;
|
|
97
|
-
selfie: string | null;
|
|
98
|
-
secondIdFace?: string | null;
|
|
99
|
-
};
|
|
100
|
-
result: {
|
|
101
|
-
matched: boolean | null;
|
|
102
|
-
liveness: boolean | null;
|
|
103
|
-
};
|
|
104
|
-
};
|
|
105
|
-
/**
|
|
106
|
-
* Showing match result - waiting for user to click continue.
|
|
107
|
-
* @property images - Cropped face images
|
|
108
|
-
* @property result - Face match result
|
|
109
|
-
* @property matched - Whether faces matched (true/false/null)
|
|
110
|
-
*/
|
|
111
|
-
type FaceMatchResultState = {
|
|
112
|
-
status: 'result';
|
|
113
|
-
images: {
|
|
114
|
-
idFace: string | null;
|
|
115
|
-
selfie: string | null;
|
|
116
|
-
secondIdFace?: string | null;
|
|
117
|
-
};
|
|
118
|
-
result: {
|
|
119
|
-
matched: boolean | null;
|
|
120
|
-
liveness: boolean | null;
|
|
121
|
-
};
|
|
122
|
-
matched: boolean | null;
|
|
123
|
-
};
|
|
124
|
-
/** Face match completed successfully */
|
|
125
|
-
type FaceMatchFinishedState = {
|
|
126
|
-
status: 'finished';
|
|
127
|
-
matched: boolean | null;
|
|
128
|
-
};
|
|
129
|
-
/**
|
|
130
|
-
* Fatal error occurred - call `reset()` to start over
|
|
131
|
-
* @property error - Error message describing what went wrong
|
|
132
|
-
*/
|
|
133
|
-
type FaceMatchErrorState = {
|
|
134
|
-
status: 'error';
|
|
135
|
-
error: string;
|
|
136
|
-
};
|
|
137
|
-
/**
|
|
138
|
-
* Union of all possible face match manager states.
|
|
139
|
-
* Use discriminated union pattern to narrow the type:
|
|
140
|
-
*
|
|
141
|
-
* @example
|
|
142
|
-
* ```typescript
|
|
143
|
-
* const state = faceMatchManager.getState();
|
|
144
|
-
* if (state.status === 'animating') {
|
|
145
|
-
* // TypeScript knows state has images and result
|
|
146
|
-
* console.log(state.images.idFace);
|
|
147
|
-
* }
|
|
148
|
-
* ```
|
|
149
|
-
*/
|
|
150
|
-
type FaceMatchState = FaceMatchIdleState | FaceMatchLoadingState | FaceMatchAnimatingState | FaceMatchResultState | FaceMatchFinishedState | FaceMatchErrorState;
|
|
151
|
-
/**
|
|
152
|
-
* Creates a face match manager for headless or UI-driven usage.
|
|
153
|
-
*
|
|
154
|
-
* The manager provides a state machine-based API for face comparison
|
|
155
|
-
* with optional animation display.
|
|
156
|
-
*
|
|
157
|
-
* @param options - Configuration options
|
|
158
|
-
* @param options.config - Face match configuration
|
|
159
|
-
* @param options.config.matchingType - Which images to compare (default: 'selfieVsId')
|
|
160
|
-
* @param options.config.disableFaceMatchAnimation - Skip animation and auto-complete (default: false)
|
|
161
|
-
*
|
|
162
|
-
* @returns Face match manager with state, API methods, and subscription
|
|
163
|
-
*
|
|
164
|
-
* @example Headless usage
|
|
165
|
-
* ```typescript
|
|
166
|
-
* const manager = createFaceMatchManager({
|
|
167
|
-
* config: { matchingType: 'selfieVsId', disableFaceMatchAnimation: true },
|
|
168
|
-
* });
|
|
169
|
-
*
|
|
170
|
-
* manager.subscribe((state) => console.log(state.status));
|
|
171
|
-
* manager.load();
|
|
172
|
-
* // Auto-completes when disableFaceMatchAnimation is true
|
|
173
|
-
* manager.stop();
|
|
174
|
-
* ```
|
|
175
|
-
*
|
|
176
|
-
* @example With React/Preact UI hook
|
|
177
|
-
* ```tsx
|
|
178
|
-
* const [state, manager] = useManager(() => createFaceMatchManager({ config }));
|
|
179
|
-
*
|
|
180
|
-
* if (state.status === 'animating') {
|
|
181
|
-
* return <Animation images={state.images} />;
|
|
182
|
-
* }
|
|
183
|
-
* ```
|
|
184
|
-
*/
|
|
185
|
-
declare function createFaceMatchManager(options: CreateFaceMatchActorOptions): Manager<FaceMatchState> & {
|
|
186
|
-
/**
|
|
187
|
-
* Initializes the face match flow.
|
|
188
|
-
* Transitions from 'idle' to 'loading'.
|
|
189
|
-
* Must be called before any other method.
|
|
190
|
-
*/
|
|
191
|
-
load(): void;
|
|
192
|
-
/**
|
|
193
|
-
* Signals that the animation has completed.
|
|
194
|
-
* Should be called when state is 'animating' and your UI animation finishes.
|
|
195
|
-
* Transitions to 'result' state.
|
|
196
|
-
*/
|
|
197
|
-
animationComplete(): void;
|
|
198
|
-
/**
|
|
199
|
-
* User clicked continue button.
|
|
200
|
-
* Should be called when state is 'result'.
|
|
201
|
-
* Transitions to 'finished' state.
|
|
202
|
-
*/
|
|
203
|
-
continue(): void;
|
|
204
|
-
/**
|
|
205
|
-
* Resets the manager to initial state.
|
|
206
|
-
* Can be called from 'error' state to start over.
|
|
207
|
-
* Clears all stored data including images and result.
|
|
208
|
-
*/
|
|
209
|
-
reset(): void;
|
|
210
|
-
};
|
|
211
|
-
/**
|
|
212
|
-
* Type representing a face match manager instance.
|
|
213
|
-
* Includes state access, API methods, and lifecycle management.
|
|
214
|
-
*
|
|
215
|
-
* @property getState - Returns the current FaceMatchState
|
|
216
|
-
* @property subscribe - Subscribes to state changes, returns unsubscribe function
|
|
217
|
-
* @property stop - Stops the manager and cleans up resources
|
|
218
|
-
* @property load - Initializes the face match flow
|
|
219
|
-
* @property animationComplete - Signals animation finished
|
|
220
|
-
* @property continue - User clicked continue button
|
|
221
|
-
* @property reset - Resets to initial state
|
|
222
|
-
*/
|
|
223
|
-
type FaceMatchManager = ReturnType<typeof createFaceMatchManager>;
|
|
224
|
-
//#endregion
|
|
1
|
+
import { a as FaceMatchActor, c as FaceMatchResult, i as createFaceMatchManagerFromActor, l as FaceMatchVariant, n as FaceMatchState, o as FaceMatchConfig, r as createFaceMatchManager, s as FaceMatchImages, t as FaceMatchManager } from "./faceMatchManager-BnvrZM2F.js";
|
|
225
2
|
//#region src/modules/face-match/faceMatchStateMachine.d.ts
|
|
226
3
|
declare const faceMatchMachine: any;
|
|
227
4
|
//#endregion
|
|
@@ -244,4 +21,4 @@ declare const ID_FACE_EXTRACTION_SKIPPED_CODE = 4084;
|
|
|
244
21
|
*/
|
|
245
22
|
declare function isFaceExtractionSkippedError(error: unknown): boolean;
|
|
246
23
|
//#endregion
|
|
247
|
-
export { type FaceMatchConfig, type FaceMatchImages, type FaceMatchManager, type FaceMatchResult, type FaceMatchState, type FaceMatchVariant, ID_FACE_EXTRACTION_SKIPPED_CODE, createFaceMatchManager, faceMatchMachine, isFaceExtractionSkippedError };
|
|
24
|
+
export { type FaceMatchActor, type FaceMatchConfig, type FaceMatchImages, type FaceMatchManager, type FaceMatchResult, type FaceMatchState, type FaceMatchVariant, ID_FACE_EXTRACTION_SKIPPED_CODE, createFaceMatchManager, createFaceMatchManagerFromActor, faceMatchMachine, isFaceExtractionSkippedError };
|
package/dist/face-match.esm.js
CHANGED
|
@@ -1,173 +1,3 @@
|
|
|
1
|
-
import "./
|
|
2
|
-
import { n as
|
|
3
|
-
|
|
4
|
-
import { l as createManager, s as createActor } from "./xstate.esm-nY3M5UYm.esm.js";
|
|
5
|
-
import { n as ID_FACE_EXTRACTION_SKIPPED_CODE, r as isFaceExtractionSkippedError, t as faceMatchMachine } from "./faceMatchStateMachine-MDb30gCm.esm.js";
|
|
6
|
-
|
|
7
|
-
//#region src/modules/face-match/faceMatchActor.ts
|
|
8
|
-
function createFaceMatchActor(options) {
|
|
9
|
-
return createActor(faceMatchMachine, { input: { config: options.config } }).start();
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
//#endregion
|
|
13
|
-
//#region src/modules/face-match/faceMatchManager.ts
|
|
14
|
-
/**
|
|
15
|
-
* @module @incodetech/core/face-match
|
|
16
|
-
*
|
|
17
|
-
* Face match module for the Incode Web SDK.
|
|
18
|
-
* Supports both headless (programmatic) and UI-driven usage patterns.
|
|
19
|
-
*
|
|
20
|
-
* ## Headless Usage
|
|
21
|
-
*
|
|
22
|
-
* The face match manager can be used entirely without UI for backend integrations,
|
|
23
|
-
* custom UI implementations, or automated workflows.
|
|
24
|
-
*
|
|
25
|
-
* @example Basic headless face match with auto-skip
|
|
26
|
-
* ```typescript
|
|
27
|
-
* import { createFaceMatchManager } from '@incodetech/core/face-match';
|
|
28
|
-
* import { setup } from '@incodetech/core';
|
|
29
|
-
*
|
|
30
|
-
* // 1. Configure the SDK (required before using any module)
|
|
31
|
-
* setup({ apiURL: 'https://api.example.com', token: 'your-token' });
|
|
32
|
-
*
|
|
33
|
-
* // 2. Create the face match manager
|
|
34
|
-
* const faceMatchManager = createFaceMatchManager({
|
|
35
|
-
* config: {
|
|
36
|
-
* matchingType: 'selfieVsId',
|
|
37
|
-
* disableFaceMatchAnimation: true,
|
|
38
|
-
* },
|
|
39
|
-
* });
|
|
40
|
-
*
|
|
41
|
-
* // 3. Subscribe to state changes (optional but recommended)
|
|
42
|
-
* faceMatchManager.subscribe((state) => {
|
|
43
|
-
* console.log('Face match state:', state.status);
|
|
44
|
-
* if (state.status === 'finished') {
|
|
45
|
-
* console.log('Face match complete!', state.matched);
|
|
46
|
-
* }
|
|
47
|
-
* if (state.status === 'error') {
|
|
48
|
-
* console.error('Error:', state.error);
|
|
49
|
-
* }
|
|
50
|
-
* });
|
|
51
|
-
*
|
|
52
|
-
* // 4. Start the flow
|
|
53
|
-
* faceMatchManager.load();
|
|
54
|
-
*
|
|
55
|
-
* // 5. Auto-completes when disableFaceMatchAnimation is true
|
|
56
|
-
* // Or call faceMatchManager.continue() after animation in custom UI
|
|
57
|
-
*
|
|
58
|
-
* // 6. Clean up when done
|
|
59
|
-
* faceMatchManager.stop();
|
|
60
|
-
* ```
|
|
61
|
-
*
|
|
62
|
-
* @example Headless face match with custom UI
|
|
63
|
-
* ```typescript
|
|
64
|
-
* const faceMatchManager = createFaceMatchManager({
|
|
65
|
-
* config: { matchingType: 'selfieVsId', disableFaceMatchAnimation: false },
|
|
66
|
-
* });
|
|
67
|
-
*
|
|
68
|
-
* faceMatchManager.subscribe((state) => {
|
|
69
|
-
* if (state.status === 'animating') {
|
|
70
|
-
* // Render your custom animation
|
|
71
|
-
* renderAnimation(state.images, state.result);
|
|
72
|
-
* }
|
|
73
|
-
* if (state.status === 'result') {
|
|
74
|
-
* // Show result and wait for user to click continue
|
|
75
|
-
* showResult(state.matched);
|
|
76
|
-
* }
|
|
77
|
-
* });
|
|
78
|
-
*
|
|
79
|
-
* faceMatchManager.load();
|
|
80
|
-
* // When animation completes in your UI:
|
|
81
|
-
* faceMatchManager.animationComplete();
|
|
82
|
-
* // When user clicks continue:
|
|
83
|
-
* faceMatchManager.continue();
|
|
84
|
-
* ```
|
|
85
|
-
*/
|
|
86
|
-
function mapState(snapshot) {
|
|
87
|
-
const typedSnapshot = snapshot;
|
|
88
|
-
const { context } = typedSnapshot;
|
|
89
|
-
if (typedSnapshot.matches("idle")) return { status: "idle" };
|
|
90
|
-
if (typedSnapshot.matches("loading")) return { status: "loading" };
|
|
91
|
-
if (typedSnapshot.matches("animating")) return {
|
|
92
|
-
status: "animating",
|
|
93
|
-
images: context.images,
|
|
94
|
-
result: context.result
|
|
95
|
-
};
|
|
96
|
-
if (typedSnapshot.matches("result")) return {
|
|
97
|
-
status: "result",
|
|
98
|
-
images: context.images,
|
|
99
|
-
result: context.result,
|
|
100
|
-
matched: context.result.matched
|
|
101
|
-
};
|
|
102
|
-
if (typedSnapshot.matches("finished")) return {
|
|
103
|
-
status: "finished",
|
|
104
|
-
matched: context.result?.matched ?? null
|
|
105
|
-
};
|
|
106
|
-
if (typedSnapshot.matches("error")) return {
|
|
107
|
-
status: "error",
|
|
108
|
-
error: context.error ?? "An error occurred"
|
|
109
|
-
};
|
|
110
|
-
return { status: "idle" };
|
|
111
|
-
}
|
|
112
|
-
function createApi({ actor, trackElementClicked }) {
|
|
113
|
-
return {
|
|
114
|
-
load() {
|
|
115
|
-
actor.send({ type: "LOAD" });
|
|
116
|
-
},
|
|
117
|
-
animationComplete() {
|
|
118
|
-
actor.send({ type: "ANIMATION_COMPLETE" });
|
|
119
|
-
},
|
|
120
|
-
continue() {
|
|
121
|
-
trackElementClicked?.("continue");
|
|
122
|
-
actor.send({ type: "CONTINUE" });
|
|
123
|
-
},
|
|
124
|
-
reset() {
|
|
125
|
-
actor.send({ type: "RESET" });
|
|
126
|
-
}
|
|
127
|
-
};
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Creates a face match manager for headless or UI-driven usage.
|
|
131
|
-
*
|
|
132
|
-
* The manager provides a state machine-based API for face comparison
|
|
133
|
-
* with optional animation display.
|
|
134
|
-
*
|
|
135
|
-
* @param options - Configuration options
|
|
136
|
-
* @param options.config - Face match configuration
|
|
137
|
-
* @param options.config.matchingType - Which images to compare (default: 'selfieVsId')
|
|
138
|
-
* @param options.config.disableFaceMatchAnimation - Skip animation and auto-complete (default: false)
|
|
139
|
-
*
|
|
140
|
-
* @returns Face match manager with state, API methods, and subscription
|
|
141
|
-
*
|
|
142
|
-
* @example Headless usage
|
|
143
|
-
* ```typescript
|
|
144
|
-
* const manager = createFaceMatchManager({
|
|
145
|
-
* config: { matchingType: 'selfieVsId', disableFaceMatchAnimation: true },
|
|
146
|
-
* });
|
|
147
|
-
*
|
|
148
|
-
* manager.subscribe((state) => console.log(state.status));
|
|
149
|
-
* manager.load();
|
|
150
|
-
* // Auto-completes when disableFaceMatchAnimation is true
|
|
151
|
-
* manager.stop();
|
|
152
|
-
* ```
|
|
153
|
-
*
|
|
154
|
-
* @example With React/Preact UI hook
|
|
155
|
-
* ```tsx
|
|
156
|
-
* const [state, manager] = useManager(() => createFaceMatchManager({ config }));
|
|
157
|
-
*
|
|
158
|
-
* if (state.status === 'animating') {
|
|
159
|
-
* return <Animation images={state.images} />;
|
|
160
|
-
* }
|
|
161
|
-
* ```
|
|
162
|
-
*/
|
|
163
|
-
function createFaceMatchManager(options) {
|
|
164
|
-
return createManager({
|
|
165
|
-
actor: createFaceMatchActor(options),
|
|
166
|
-
mapState,
|
|
167
|
-
createApi,
|
|
168
|
-
instrumentation: createManagerInstrumentation(eventModuleNames.faceMatch)
|
|
169
|
-
});
|
|
170
|
-
}
|
|
171
|
-
|
|
172
|
-
//#endregion
|
|
173
|
-
export { ID_FACE_EXTRACTION_SKIPPED_CODE, createFaceMatchManager, faceMatchMachine, isFaceExtractionSkippedError };
|
|
1
|
+
import { n as ID_FACE_EXTRACTION_SKIPPED_CODE, r as isFaceExtractionSkippedError, t as faceMatchMachine } from "./faceMatchStateMachine-CJiO2yLO.esm.js";
|
|
2
|
+
import { n as createFaceMatchManagerFromActor, t as createFaceMatchManager } from "./faceMatchManager-BXp2WUT-.esm.js";
|
|
3
|
+
export { ID_FACE_EXTRACTION_SKIPPED_CODE, createFaceMatchManager, createFaceMatchManagerFromActor, faceMatchMachine, isFaceExtractionSkippedError };
|
package/dist/{faceCaptureManagerFactory-C9TiGbkA.esm.js → faceCaptureManagerFactory-BDAsBCkh.esm.js}
RENAMED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { n as eventModuleNames, o as
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { t as
|
|
6
|
-
import {
|
|
7
|
-
|
|
1
|
+
import { n as eventModuleNames, o as createManagerInstrumentation, r as eventScreenNames } from "./events-CxfNJVZW.esm.js";
|
|
2
|
+
import { t as topLevelStateName } from "./topLevelStateName-B5i2avbh.esm.js";
|
|
3
|
+
import { c as createManager } from "./xstate.esm-Cf4e0Cfd.esm.js";
|
|
4
|
+
import { n as concealmentToAvatar } from "./faceCaptureSetup-C7Qv79fA.esm.js";
|
|
5
|
+
import { t as setWasmDsFlagSync } from "./wasmDsFlagSync-BqUCwLY8.esm.js";
|
|
6
|
+
import { t as BrowserVisibilityObserverProvider } from "./BrowserVisibilityObserverProvider-BX1BiLDK.esm.js";
|
|
7
|
+
import { r as primeMotionFromUserGestureIfNeeded } from "./permissionServices-UvUcOSRb.esm.js";
|
|
8
8
|
//#region src/internal/faceCapture/faceCaptureManagerFactory.ts
|
|
9
9
|
function getPermissionStatus(snapshot) {
|
|
10
10
|
if (!snapshot.matches("permissions")) return;
|
|
11
|
-
if (snapshot.matches({ permissions: "idle" })) return "
|
|
11
|
+
if (snapshot.matches({ permissions: "idle" })) return "checking";
|
|
12
12
|
if (snapshot.matches({ permissions: "waitingForUser" })) return "idle";
|
|
13
13
|
if (snapshot.matches({ permissions: "learnMore" })) return "learnMore";
|
|
14
14
|
if (snapshot.matches({ permissions: "requesting" })) return "requesting";
|
|
@@ -54,10 +54,10 @@ function mapState(snapshot) {
|
|
|
54
54
|
captureStatus: captureStatus ?? "initializing",
|
|
55
55
|
stream: context.stream,
|
|
56
56
|
detectionStatus: context.detectionStatus ?? "idle",
|
|
57
|
-
debugFrame: context.debugFrame,
|
|
58
57
|
attemptsRemaining: context.attemptsRemaining ?? 0,
|
|
59
58
|
uploadError: context.uploadError,
|
|
60
59
|
assistedOnboarding: context.config?.assistedOnboarding ?? false,
|
|
60
|
+
usingBackCamera: context.usingBackCamera ?? false,
|
|
61
61
|
ageAssurance: context.config?.ageAssurance === true,
|
|
62
62
|
onDeviceMode: context.config?.onDeviceFaceResultsSubmissionEnabled === true,
|
|
63
63
|
obfuscateWithAvatar,
|
|
@@ -114,8 +114,6 @@ function getCapturingScreen(detectionStatus) {
|
|
|
114
114
|
case "detecting":
|
|
115
115
|
case "idle":
|
|
116
116
|
case "offline": return "faceCapture.genericErrors.noConnection";
|
|
117
|
-
case "success":
|
|
118
|
-
case "error":
|
|
119
117
|
default: return "faceCapture.capturing.initiatingState";
|
|
120
118
|
}
|
|
121
119
|
}
|
|
@@ -141,11 +139,6 @@ function getResultErrorScreen(errorCode, attemptsRemaining) {
|
|
|
141
139
|
case "SERVER_ERROR":
|
|
142
140
|
case "PROCESSING_ERROR":
|
|
143
141
|
case "BAD_REQUEST": return `faceCapture.resultError.processingFailed${exhaustedSuffix}`;
|
|
144
|
-
case "FACE_NOT_FOUND":
|
|
145
|
-
case "MULTIPLE_FACES":
|
|
146
|
-
case "FACE_CROPPING_FAILED":
|
|
147
|
-
case "FACE_TOO_SMALL":
|
|
148
|
-
case "LIVENESS_ERROR":
|
|
149
142
|
default: return `faceCapture.resultError.faceNotAligned${exhaustedSuffix}`;
|
|
150
143
|
}
|
|
151
144
|
}
|
|
@@ -213,11 +206,6 @@ function getAuthFaceScreenName(snapshot) {
|
|
|
213
206
|
case "capture": return getAuthFaceCaptureSubstateScreen(snapshot);
|
|
214
207
|
case "finished": return eventScreenNames.authFaceUploadSuccess;
|
|
215
208
|
case "error": return eventScreenNames.authFaceUploadFailed;
|
|
216
|
-
case "idle":
|
|
217
|
-
case "loading":
|
|
218
|
-
case "permissions":
|
|
219
|
-
case "processing":
|
|
220
|
-
case "closed":
|
|
221
209
|
default: return eventScreenNames.authFace;
|
|
222
210
|
}
|
|
223
211
|
}
|
|
@@ -244,16 +232,26 @@ function createApi({ actor, trackElementClicked, trackCaptureAttemptFinished })
|
|
|
244
232
|
const snapshot = actor.getSnapshot();
|
|
245
233
|
snapshot.context.dependencies.trackCaptureAttemptFinished = trackCaptureAttemptFinished;
|
|
246
234
|
return {
|
|
235
|
+
/**
|
|
236
|
+
* Starts the face capture flow.
|
|
237
|
+
* Goes to `tutorial` if showTutorial is true, otherwise to `loading`.
|
|
238
|
+
* Requires setup() to have been called with a token first.
|
|
239
|
+
*/
|
|
247
240
|
load() {
|
|
248
241
|
const { config } = actor.getSnapshot().context;
|
|
249
242
|
if (config.ds === true) setWasmDsFlagSync(true);
|
|
250
243
|
actor.send({ type: "LOAD" });
|
|
251
244
|
},
|
|
245
|
+
/**
|
|
246
|
+
* Advances to the next step.
|
|
247
|
+
* From `tutorial` → permissions or capture (based on permission status).
|
|
248
|
+
* From `capture` → finished.
|
|
249
|
+
*/
|
|
252
250
|
async nextStep() {
|
|
253
251
|
trackElementClicked?.("nextStep");
|
|
254
|
-
const snapshot
|
|
255
|
-
if (snapshot
|
|
256
|
-
const { config, permissionResult } = snapshot
|
|
252
|
+
const snapshot = actor.getSnapshot();
|
|
253
|
+
if (snapshot.matches("tutorial")) {
|
|
254
|
+
const { config, permissionResult } = snapshot.context;
|
|
257
255
|
await primeMotionFromUserGestureIfNeeded({
|
|
258
256
|
ds: config.ds,
|
|
259
257
|
cameraGranted: permissionResult === "granted"
|
|
@@ -261,29 +259,58 @@ function createApi({ actor, trackElementClicked, trackCaptureAttemptFinished })
|
|
|
261
259
|
}
|
|
262
260
|
actor.send({ type: "NEXT_STEP" });
|
|
263
261
|
},
|
|
262
|
+
/**
|
|
263
|
+
* Requests camera permission via getUserMedia.
|
|
264
|
+
* Only effective when in `permissions.idle` or `permissions.learnMore` state.
|
|
265
|
+
*/
|
|
264
266
|
requestPermission() {
|
|
265
267
|
trackElementClicked?.("requestPermission");
|
|
266
268
|
actor.send({ type: "REQUEST_PERMISSION" });
|
|
267
269
|
},
|
|
270
|
+
/**
|
|
271
|
+
* Navigates to the "learn more" permission screen.
|
|
272
|
+
* Only effective when in `permissions.idle` state.
|
|
273
|
+
*/
|
|
268
274
|
goToLearnMore() {
|
|
269
275
|
trackElementClicked?.("goToLearnMore");
|
|
270
276
|
actor.send({ type: "GO_TO_LEARN_MORE" });
|
|
271
277
|
},
|
|
278
|
+
/**
|
|
279
|
+
* Goes back from "learn more" to the initial permission screen.
|
|
280
|
+
* Only effective when in `permissions.learnMore` state.
|
|
281
|
+
*/
|
|
272
282
|
back() {
|
|
273
283
|
trackElementClicked?.("back");
|
|
274
284
|
actor.send({ type: "BACK" });
|
|
275
285
|
},
|
|
286
|
+
/**
|
|
287
|
+
* Closes the face capture flow and transitions to `closed` state.
|
|
288
|
+
* Can be called from any state.
|
|
289
|
+
*/
|
|
276
290
|
close() {
|
|
277
291
|
trackElementClicked?.("close");
|
|
278
292
|
actor.send({ type: "QUIT" });
|
|
279
293
|
},
|
|
294
|
+
/**
|
|
295
|
+
* Resets the face capture manager to its initial `idle` state.
|
|
296
|
+
* Can be called from `error` state. Not available from `finished` (final state).
|
|
297
|
+
*/
|
|
280
298
|
reset() {
|
|
281
299
|
actor.send({ type: "RESET" });
|
|
282
300
|
},
|
|
301
|
+
/**
|
|
302
|
+
* Retries the capture after an upload error.
|
|
303
|
+
* Only effective when in `capture.uploadError` state and `attemptsRemaining > 0`.
|
|
304
|
+
* If no attempts remaining, the transition is blocked.
|
|
305
|
+
*/
|
|
283
306
|
retryCapture() {
|
|
284
307
|
trackElementClicked?.("retryCapture");
|
|
285
308
|
actor.send({ type: "RETRY_CAPTURE" });
|
|
286
309
|
},
|
|
310
|
+
/**
|
|
311
|
+
* Captures a face in manual capture mode.
|
|
312
|
+
* Only effective when in `capture.detecting` state and `detectionStatus === 'manualCapture'`.
|
|
313
|
+
*/
|
|
287
314
|
capture() {
|
|
288
315
|
trackElementClicked?.("capture");
|
|
289
316
|
actor.send({ type: "MANUAL_CAPTURE" });
|
|
@@ -317,11 +344,6 @@ function getFaceErrorReason(errorCode) {
|
|
|
317
344
|
case "SERVER_ERROR":
|
|
318
345
|
case "PROCESSING_ERROR":
|
|
319
346
|
case "BAD_REQUEST": return "processingFailed";
|
|
320
|
-
case "FACE_NOT_FOUND":
|
|
321
|
-
case "MULTIPLE_FACES":
|
|
322
|
-
case "FACE_CROPPING_FAILED":
|
|
323
|
-
case "FACE_TOO_SMALL":
|
|
324
|
-
case "LIVENESS_ERROR":
|
|
325
347
|
default: return "faceNotAligned";
|
|
326
348
|
}
|
|
327
349
|
}
|
|
@@ -391,6 +413,5 @@ function createFaceCaptureManagerFromActor(actor, moduleName, visibilityObserver
|
|
|
391
413
|
})
|
|
392
414
|
});
|
|
393
415
|
}
|
|
394
|
-
|
|
395
416
|
//#endregion
|
|
396
|
-
export { createFaceCaptureManagerFromActor as t };
|
|
417
|
+
export { createFaceCaptureManagerFromActor as t };
|