@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/index-BAyZ8_iI.d.ts
DELETED
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { IncodeTRIConfig, IncodeTRIState, Session } from "@incodetech/tri-sdk";
|
|
2
|
-
|
|
3
|
-
//#region ../infra/src/tri/TransactionalRiskIntelligence.d.ts
|
|
4
|
-
|
|
5
|
-
/**
|
|
6
|
-
* Runtime TRI configuration passed to `IncodeTRI.setup`.
|
|
7
|
-
* Mirrors the upstream `IncodeTRIConfig` (a `TRIConfigBase` intersected with a
|
|
8
|
-
* layer-/collector-based selector union).
|
|
9
|
-
*/
|
|
10
|
-
type TransactionalRiskIntelligenceConfig = IncodeTRIConfig;
|
|
11
|
-
type TransactionalRiskIntelligenceState = IncodeTRIState;
|
|
12
|
-
/**
|
|
13
|
-
* Result of exchanging an organization API key for a short-lived TRI SDK token.
|
|
14
|
-
* Mirrors the upstream `Session` shape: `{ token, eventsCollectionEnabled, error? }`.
|
|
15
|
-
*/
|
|
16
|
-
type TransactionalRiskIntelligenceSession = Session;
|
|
17
|
-
/**
|
|
18
|
-
* Options accepted by the TRI `createSession` exchange. The upstream SDK does
|
|
19
|
-
* not export this shape, so it is mirrored here.
|
|
20
|
-
*/
|
|
21
|
-
type TransactionalRiskIntelligenceSessionOptions = {
|
|
22
|
-
apiURL?: string;
|
|
23
|
-
signal?: AbortSignal;
|
|
24
|
-
timeout?: number;
|
|
25
|
-
};
|
|
26
|
-
//#endregion
|
|
27
|
-
//#region src/integrations/tri/types.d.ts
|
|
28
|
-
/**
|
|
29
|
-
* Setup-time TRI configuration supplied as `SetupOptions.tri`.
|
|
30
|
-
*
|
|
31
|
-
* Alias for `TransactionalRiskIntelligenceConfig`. `autostart` is defined on
|
|
32
|
-
* the base config (`IncodeTRIConfig.autostart`) — when `true` (the default),
|
|
33
|
-
* `setupTRI()` also starts collection automatically. Pass `autostart: false`
|
|
34
|
-
* to defer collection to an explicit `startTRI()` call (e.g. after a consent
|
|
35
|
-
* gate).
|
|
36
|
-
*
|
|
37
|
-
* `token` and `apiURL` are both required. TRI will not start unless both are
|
|
38
|
-
* present — omitting either is the implicit opt-out.
|
|
39
|
-
*/
|
|
40
|
-
type TransactionalRiskIntelligenceSetupConfig = TransactionalRiskIntelligenceConfig;
|
|
41
|
-
//#endregion
|
|
42
|
-
//#region src/integrations/tri/tri.d.ts
|
|
43
|
-
/**
|
|
44
|
-
* Returns `true` when TRI collectors are currently running (a successful
|
|
45
|
-
* `setupTRI()` autostart or explicit `startTRI()`, with no subsequent
|
|
46
|
-
* `stopTRI()`/`resetTRI()`). Returns `false` before setup or after teardown.
|
|
47
|
-
*/
|
|
48
|
-
declare function isTRIStarted(): boolean;
|
|
49
|
-
/**
|
|
50
|
-
* Exchanges an organization API key for a short-lived TRI SDK token. This is
|
|
51
|
-
* the entry point that triggers the lazy-load of `@incodetech/tri-sdk` (via the
|
|
52
|
-
* provider's dynamic `import()`); the cached lazy handle is reused by a
|
|
53
|
-
* subsequent `setupTRI()`.
|
|
54
|
-
*
|
|
55
|
-
* In production the exchange should happen server-side. On a load timeout or
|
|
56
|
-
* failure the returned session carries `token: null` and an `error`, rather
|
|
57
|
-
* than throwing.
|
|
58
|
-
*
|
|
59
|
-
* @param apiKey - Organization API key.
|
|
60
|
-
* @param options - Optional `apiURL`, `signal`, and `timeout` overrides.
|
|
61
|
-
*/
|
|
62
|
-
declare function createTRISession(apiKey: string, options?: TransactionalRiskIntelligenceSessionOptions): Promise<TransactionalRiskIntelligenceSession>;
|
|
63
|
-
/**
|
|
64
|
-
* Calls the provider's `setup()` with the given config. This is the step that
|
|
65
|
-
* lazy-loads `@incodetech/tri-sdk`, validates the config, and checks the
|
|
66
|
-
* backend collection-status endpoint. When `config.autostart` is `true` (the
|
|
67
|
-
* default), also calls `start()` internally and returns `'started'` on
|
|
68
|
-
* success. Pass `autostart: false` to receive `'ready'` and start explicitly.
|
|
69
|
-
*
|
|
70
|
-
* @param config - Resolved TRI config (`token` and `apiURL` required).
|
|
71
|
-
* @returns The resulting {@link TransactionalRiskIntelligenceState}.
|
|
72
|
-
*/
|
|
73
|
-
declare function setupTRI(config: TransactionalRiskIntelligenceConfig): Promise<TransactionalRiskIntelligenceState>;
|
|
74
|
-
/**
|
|
75
|
-
* Begins behavioral data collection. Requires a prior successful `setupTRI()`
|
|
76
|
-
* call with `autostart: false`. Returns `'init-failed'` without starting if
|
|
77
|
-
* called before setup, or is a no-op if already started.
|
|
78
|
-
*
|
|
79
|
-
* @returns The resulting {@link TransactionalRiskIntelligenceState}.
|
|
80
|
-
*/
|
|
81
|
-
declare function startTRI(): Promise<TransactionalRiskIntelligenceState>;
|
|
82
|
-
/**
|
|
83
|
-
* Stops all TRI collectors and managers. Idempotent. No-op if TRI was never
|
|
84
|
-
* set up.
|
|
85
|
-
*/
|
|
86
|
-
declare function stopTRI(): Promise<TransactionalRiskIntelligenceState>;
|
|
87
|
-
/**
|
|
88
|
-
* Resets the TRI SDK to its initial state. Call this from the SDK's `reset()`
|
|
89
|
-
* so that a subsequent `setupTRI` / `startTRI` can begin fresh.
|
|
90
|
-
*/
|
|
91
|
-
declare function resetTRI(): Promise<TransactionalRiskIntelligenceState>;
|
|
92
|
-
//#endregion
|
|
93
|
-
export { startTRI as a, setupTRI as i, isTRIStarted as n, stopTRI as o, resetTRI as r, TransactionalRiskIntelligenceSetupConfig as s, createTRISession as t };
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { a as __toDynamicImportESM } from "./chunk-CIKcdghV.esm.js";
|
|
2
|
-
|
|
3
|
-
//#region ../infra/src/providers/browser/openviduLazy.ts
|
|
4
|
-
let openViduImport;
|
|
5
|
-
async function loadOpenVidu() {
|
|
6
|
-
if (openViduImport) return openViduImport;
|
|
7
|
-
openViduImport = import("./lib-Bjd6nOLG.esm.js").then(__toDynamicImportESM(1));
|
|
8
|
-
return openViduImport;
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
//#endregion
|
|
12
|
-
export { loadOpenVidu as t };
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { t as createElectronicSignatureManager } from "./electronicSignatureManager-DESRgObX.esm.js";
|
|
2
|
-
|
|
3
|
-
//#region src/modules/qe-signature/index.ts
|
|
4
|
-
function createQeSignatureManager(options) {
|
|
5
|
-
return createElectronicSignatureManager({ config: {
|
|
6
|
-
...options.config,
|
|
7
|
-
variant: "qe"
|
|
8
|
-
} });
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
//#endregion
|
|
12
|
-
export { createQeSignatureManager as t };
|
|
@@ -1,547 +0,0 @@
|
|
|
1
|
-
import { r as getToken, s as setToken, t as api } from "./api-DsbUi7TO.esm.js";
|
|
2
|
-
import { _ as getAnalyticsBatcher, g as addEvent } from "./events-1wxZ97yf.esm.js";
|
|
3
|
-
import { t as endpoints } from "./endpoints-CwrFQfW7.esm.js";
|
|
4
|
-
import { n as flushDeviceStatsQueue, r as resetDeviceStatsQueue } from "./stats-BVy52wLy.esm.js";
|
|
5
|
-
import { i as UAParser, n as getThumbmarkId, r as getParsedUserAgent, t as isBrowserSimulation } from "./browserSimulation-DZwEy9bu.esm.js";
|
|
6
|
-
import { i as linkSessionWithTRI, r as isTRIStarted } from "./tri-CFAPtAUM.esm.js";
|
|
7
|
-
|
|
8
|
-
//#region ../infra/src/providers/browser/BrowserEnvironmentProvider.ts
|
|
9
|
-
var BrowserEnvironmentProvider = class {
|
|
10
|
-
getScreenDimensions() {
|
|
11
|
-
if (typeof screen === "undefined") return {
|
|
12
|
-
width: 0,
|
|
13
|
-
height: 0
|
|
14
|
-
};
|
|
15
|
-
return {
|
|
16
|
-
width: screen.width,
|
|
17
|
-
height: screen.height
|
|
18
|
-
};
|
|
19
|
-
}
|
|
20
|
-
generateCanvasFingerprint() {
|
|
21
|
-
try {
|
|
22
|
-
if (typeof document === "undefined") return "";
|
|
23
|
-
const canvas = document.createElement("canvas");
|
|
24
|
-
const ctx = canvas.getContext("2d");
|
|
25
|
-
if (!ctx) return "";
|
|
26
|
-
ctx.textBaseline = "top";
|
|
27
|
-
ctx.font = "14px Arial";
|
|
28
|
-
ctx.fillText("fingerprint", 2, 2);
|
|
29
|
-
return canvas.toDataURL().slice(-50);
|
|
30
|
-
} catch {
|
|
31
|
-
return "";
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
getWebGLRenderer() {
|
|
35
|
-
try {
|
|
36
|
-
if (typeof document === "undefined") return "";
|
|
37
|
-
const canvas = document.createElement("canvas");
|
|
38
|
-
const gl = canvas.getContext("webgl") || canvas.getContext("experimental-webgl");
|
|
39
|
-
if (!gl) return "";
|
|
40
|
-
const debugInfo = gl.getExtension("WEBGL_debug_renderer_info");
|
|
41
|
-
if (!debugInfo) return "";
|
|
42
|
-
return gl.getParameter(debugInfo.UNMASKED_RENDERER_WEBGL) || "";
|
|
43
|
-
} catch {
|
|
44
|
-
return "";
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
getWindowProperty(prop) {
|
|
48
|
-
if (typeof window === "undefined") return;
|
|
49
|
-
return window[prop];
|
|
50
|
-
}
|
|
51
|
-
getNavigatorProperty(prop) {
|
|
52
|
-
if (typeof navigator === "undefined") return;
|
|
53
|
-
return navigator[prop];
|
|
54
|
-
}
|
|
55
|
-
getNavigatorPrefixes() {
|
|
56
|
-
if (typeof navigator === "undefined") return {
|
|
57
|
-
webkit: false,
|
|
58
|
-
moz: false,
|
|
59
|
-
o: false,
|
|
60
|
-
ms: false
|
|
61
|
-
};
|
|
62
|
-
const nav = navigator;
|
|
63
|
-
return {
|
|
64
|
-
webkit: nav.webkitGetUserMedia !== void 0,
|
|
65
|
-
moz: nav.mozGetUserMedia !== void 0,
|
|
66
|
-
o: nav.oGetUserMedia !== void 0,
|
|
67
|
-
ms: nav.msGetUserMedia !== void 0
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
getMaxTouchPoints() {
|
|
71
|
-
if (typeof navigator === "undefined") return 0;
|
|
72
|
-
return navigator.maxTouchPoints;
|
|
73
|
-
}
|
|
74
|
-
hasOnTouchStart() {
|
|
75
|
-
if (typeof window !== "undefined" && "ontouchstart" in window) return true;
|
|
76
|
-
if (typeof document !== "undefined") return "ontouchstart" in document.documentElement;
|
|
77
|
-
return false;
|
|
78
|
-
}
|
|
79
|
-
getNavigatorProductSub() {
|
|
80
|
-
if (typeof navigator === "undefined") return;
|
|
81
|
-
return navigator.productSub;
|
|
82
|
-
}
|
|
83
|
-
getEvalToStringLength() {
|
|
84
|
-
return eval.toString().length;
|
|
85
|
-
}
|
|
86
|
-
tryFirefoxToSource() {
|
|
87
|
-
try {
|
|
88
|
-
throw "a";
|
|
89
|
-
} catch (err) {
|
|
90
|
-
try {
|
|
91
|
-
err.toSource();
|
|
92
|
-
return true;
|
|
93
|
-
} catch {
|
|
94
|
-
return false;
|
|
95
|
-
}
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
async fetchJson(url, timeoutMs = 3e3) {
|
|
99
|
-
try {
|
|
100
|
-
if (typeof fetch === "undefined") return null;
|
|
101
|
-
const controller = new AbortController();
|
|
102
|
-
const timeoutId = setTimeout(() => controller.abort(), timeoutMs);
|
|
103
|
-
const response = await fetch(url, { signal: controller.signal });
|
|
104
|
-
clearTimeout(timeoutId);
|
|
105
|
-
return await response.json();
|
|
106
|
-
} catch {
|
|
107
|
-
return null;
|
|
108
|
-
}
|
|
109
|
-
}
|
|
110
|
-
async enumerateVideoDeviceLabels() {
|
|
111
|
-
try {
|
|
112
|
-
if (typeof navigator === "undefined" || !navigator.mediaDevices?.enumerateDevices) return [];
|
|
113
|
-
return (await navigator.mediaDevices.enumerateDevices()).filter((device) => device.kind === "videoinput").map((device) => device.label);
|
|
114
|
-
} catch {
|
|
115
|
-
return [];
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
getTimestamp() {
|
|
119
|
-
return Date.now();
|
|
120
|
-
}
|
|
121
|
-
};
|
|
122
|
-
|
|
123
|
-
//#endregion
|
|
124
|
-
//#region ../infra/src/providers/browser/BrowserInfoProvider.ts
|
|
125
|
-
var BrowserInfoProvider = class {
|
|
126
|
-
checkWebRtcSupport() {
|
|
127
|
-
if (typeof window === "undefined") return false;
|
|
128
|
-
const hasRTCPeerConnection = "RTCPeerConnection" in window || "webkitRTCPeerConnection" in window || "mozRTCPeerConnection" in window;
|
|
129
|
-
const hasGetUserMedia = typeof navigator !== "undefined" && navigator.mediaDevices?.getUserMedia !== void 0;
|
|
130
|
-
return hasRTCPeerConnection && hasGetUserMedia;
|
|
131
|
-
}
|
|
132
|
-
getBrowserInfo() {
|
|
133
|
-
const userAgent = typeof navigator !== "undefined" ? navigator.userAgent : "";
|
|
134
|
-
const result = new UAParser(userAgent).getResult();
|
|
135
|
-
return {
|
|
136
|
-
userAgent,
|
|
137
|
-
isWebRtcSupported: this.checkWebRtcSupport(),
|
|
138
|
-
browser: {
|
|
139
|
-
name: result.browser.name,
|
|
140
|
-
version: result.browser.version
|
|
141
|
-
},
|
|
142
|
-
os: {
|
|
143
|
-
name: result.os.name,
|
|
144
|
-
version: result.os.version
|
|
145
|
-
},
|
|
146
|
-
device: {
|
|
147
|
-
model: result.device.model,
|
|
148
|
-
type: result.device.type,
|
|
149
|
-
vendor: result.device.vendor
|
|
150
|
-
},
|
|
151
|
-
engine: {
|
|
152
|
-
name: result.engine.name,
|
|
153
|
-
version: result.engine.version
|
|
154
|
-
},
|
|
155
|
-
cpu: { architecture: result.cpu.architecture }
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
};
|
|
159
|
-
|
|
160
|
-
//#endregion
|
|
161
|
-
//#region ../infra/src/device/getDeviceData.ts
|
|
162
|
-
const HIGH_ENTROPY_HINTS = new Set([
|
|
163
|
-
"model",
|
|
164
|
-
"platformVersion",
|
|
165
|
-
"fullVersionList",
|
|
166
|
-
"brands",
|
|
167
|
-
"platform"
|
|
168
|
-
]);
|
|
169
|
-
function getFallbackDeviceInfo() {
|
|
170
|
-
const parsed = getParsedUserAgent();
|
|
171
|
-
return {
|
|
172
|
-
device: { model: parsed.device.model },
|
|
173
|
-
os: {
|
|
174
|
-
name: parsed.os.name,
|
|
175
|
-
version: parsed.os.version
|
|
176
|
-
},
|
|
177
|
-
browser: {
|
|
178
|
-
name: parsed.browser.name,
|
|
179
|
-
version: parsed.browser.version
|
|
180
|
-
}
|
|
181
|
-
};
|
|
182
|
-
}
|
|
183
|
-
function sanitizeString(value) {
|
|
184
|
-
return value?.trim() || void 0;
|
|
185
|
-
}
|
|
186
|
-
function extractPrimaryBrandInfo(fullVersionList, brands) {
|
|
187
|
-
const primaryBrand = fullVersionList?.[0] || brands?.[0];
|
|
188
|
-
return {
|
|
189
|
-
name: sanitizeString(primaryBrand?.brand),
|
|
190
|
-
version: sanitizeString(primaryBrand?.version)
|
|
191
|
-
};
|
|
192
|
-
}
|
|
193
|
-
async function getHighEntropyDeviceInfo(userAgentData) {
|
|
194
|
-
const highEntropyValues = await userAgentData.getHighEntropyValues(Array.from(HIGH_ENTROPY_HINTS));
|
|
195
|
-
const { name: browserName, version: browserVersion } = extractPrimaryBrandInfo(highEntropyValues.fullVersionList, userAgentData.brands);
|
|
196
|
-
return {
|
|
197
|
-
device: { model: sanitizeString(highEntropyValues.model) },
|
|
198
|
-
os: {
|
|
199
|
-
name: sanitizeString(highEntropyValues.platform),
|
|
200
|
-
version: sanitizeString(highEntropyValues.platformVersion)
|
|
201
|
-
},
|
|
202
|
-
browser: {
|
|
203
|
-
name: browserName,
|
|
204
|
-
version: browserVersion
|
|
205
|
-
}
|
|
206
|
-
};
|
|
207
|
-
}
|
|
208
|
-
const checkForUnbrandedBrowser = (browser) => {
|
|
209
|
-
const userAgent = typeof navigator !== "undefined" ? navigator.userAgent : "";
|
|
210
|
-
const fallback = getFallbackDeviceInfo();
|
|
211
|
-
if (!userAgent) return browser;
|
|
212
|
-
try {
|
|
213
|
-
return {
|
|
214
|
-
...browser,
|
|
215
|
-
name: fallback.browser.name,
|
|
216
|
-
version: fallback.browser.version
|
|
217
|
-
};
|
|
218
|
-
} catch {
|
|
219
|
-
return {
|
|
220
|
-
...browser,
|
|
221
|
-
name: "Unknown",
|
|
222
|
-
version: "Unknown"
|
|
223
|
-
};
|
|
224
|
-
}
|
|
225
|
-
};
|
|
226
|
-
function mergeDeviceInfo(fallback, enhanced) {
|
|
227
|
-
return {
|
|
228
|
-
device: { model: enhanced.device?.model || fallback.device.model },
|
|
229
|
-
os: {
|
|
230
|
-
name: enhanced.os?.name || fallback.os.name,
|
|
231
|
-
version: enhanced.os?.version || fallback.os.version
|
|
232
|
-
},
|
|
233
|
-
browser: checkForUnbrandedBrowser({
|
|
234
|
-
name: enhanced.browser?.name || fallback.browser.name,
|
|
235
|
-
version: enhanced.browser?.version || fallback.browser.version
|
|
236
|
-
})
|
|
237
|
-
};
|
|
238
|
-
}
|
|
239
|
-
function isUserAgentClientHintsSupported(navigator$1) {
|
|
240
|
-
return Boolean(navigator$1.userAgentData?.getHighEntropyValues && typeof navigator$1.userAgentData.getHighEntropyValues === "function");
|
|
241
|
-
}
|
|
242
|
-
async function getDeviceFingerprintInfo() {
|
|
243
|
-
if (typeof navigator === "undefined") return {
|
|
244
|
-
device: {},
|
|
245
|
-
os: {},
|
|
246
|
-
browser: {}
|
|
247
|
-
};
|
|
248
|
-
const customNavigator = navigator;
|
|
249
|
-
const fallbackInfo = getFallbackDeviceInfo();
|
|
250
|
-
if (!isUserAgentClientHintsSupported(customNavigator)) return fallbackInfo;
|
|
251
|
-
try {
|
|
252
|
-
return mergeDeviceInfo(fallbackInfo, await getHighEntropyDeviceInfo(customNavigator.userAgentData));
|
|
253
|
-
} catch {
|
|
254
|
-
return fallbackInfo;
|
|
255
|
-
}
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
//#endregion
|
|
259
|
-
//#region ../infra/src/providers/browser/FingerprintProvider.ts
|
|
260
|
-
var FingerprintProvider = class {
|
|
261
|
-
constructor(ipLookup) {
|
|
262
|
-
this.ipLookup = ipLookup;
|
|
263
|
-
}
|
|
264
|
-
async getFingerprint(disableIpify = false) {
|
|
265
|
-
const visitorId = await getThumbmarkId();
|
|
266
|
-
const [deviceInfo, ip] = await Promise.all([getDeviceFingerprintInfo(), disableIpify ? Promise.resolve("") : this.ipLookup.getIp()]);
|
|
267
|
-
return {
|
|
268
|
-
visitorId,
|
|
269
|
-
ip,
|
|
270
|
-
deviceInfo
|
|
271
|
-
};
|
|
272
|
-
}
|
|
273
|
-
};
|
|
274
|
-
|
|
275
|
-
//#endregion
|
|
276
|
-
//#region ../infra/src/providers/browser/IpifyProvider.ts
|
|
277
|
-
let cachedIp;
|
|
278
|
-
let inFlightLookup;
|
|
279
|
-
/**
|
|
280
|
-
* Resets the module-level IP cache. Intended for tests and full session resets.
|
|
281
|
-
*/
|
|
282
|
-
function resetIpifyCache() {
|
|
283
|
-
cachedIp = void 0;
|
|
284
|
-
inFlightLookup = void 0;
|
|
285
|
-
}
|
|
286
|
-
async function fetchIpFromIpify() {
|
|
287
|
-
if (typeof fetch === "undefined") return "";
|
|
288
|
-
let timeoutId = 0;
|
|
289
|
-
const controller = new AbortController();
|
|
290
|
-
if (AbortSignal.timeout) {
|
|
291
|
-
const signal = AbortSignal.timeout(3e3);
|
|
292
|
-
return (await (await fetch("https://api.ipify.org?format=json", { signal })).json()).ip;
|
|
293
|
-
}
|
|
294
|
-
const timeoutPromise = new Promise((_, reject) => {
|
|
295
|
-
timeoutId = setTimeout(() => {
|
|
296
|
-
controller.abort();
|
|
297
|
-
reject(/* @__PURE__ */ new Error("Request timeout"));
|
|
298
|
-
}, 3e3);
|
|
299
|
-
});
|
|
300
|
-
const fetchPromise = fetch("https://api.ipify.org?format=json", { signal: controller.signal }).then((res) => res.json()).then((data) => data.ip);
|
|
301
|
-
const result = await Promise.race([fetchPromise, timeoutPromise]);
|
|
302
|
-
clearTimeout(timeoutId);
|
|
303
|
-
return result;
|
|
304
|
-
}
|
|
305
|
-
var IpifyProvider = class {
|
|
306
|
-
async getIp() {
|
|
307
|
-
if (cachedIp !== void 0) return cachedIp;
|
|
308
|
-
if (inFlightLookup) return inFlightLookup;
|
|
309
|
-
inFlightLookup = (async () => {
|
|
310
|
-
try {
|
|
311
|
-
const ip = await fetchIpFromIpify();
|
|
312
|
-
cachedIp = ip;
|
|
313
|
-
return ip;
|
|
314
|
-
} catch {
|
|
315
|
-
cachedIp = "";
|
|
316
|
-
return "";
|
|
317
|
-
} finally {
|
|
318
|
-
inFlightLookup = void 0;
|
|
319
|
-
}
|
|
320
|
-
})();
|
|
321
|
-
return inFlightLookup;
|
|
322
|
-
}
|
|
323
|
-
};
|
|
324
|
-
|
|
325
|
-
//#endregion
|
|
326
|
-
//#region src/internal/featureConfig/featureConfigService.ts
|
|
327
|
-
let cachedFeatures$1 = null;
|
|
328
|
-
/**
|
|
329
|
-
* Checks if a feature is enabled in the feature config.
|
|
330
|
-
*/
|
|
331
|
-
function isFeatureEnabled(feature, features) {
|
|
332
|
-
return features?.find((f) => f.feature === feature)?.enabled ?? false;
|
|
333
|
-
}
|
|
334
|
-
/**
|
|
335
|
-
* Fetches feature configuration from the backend.
|
|
336
|
-
* Results are cached for the session lifetime.
|
|
337
|
-
*/
|
|
338
|
-
async function fetchFeatureConfig(signal) {
|
|
339
|
-
if (cachedFeatures$1) return cachedFeatures$1;
|
|
340
|
-
const response = await api.get(endpoints.featureConfig, { signal });
|
|
341
|
-
if (!response.ok) throw new Error(`Failed to fetch feature config: ${response.status} ${response.statusText}`);
|
|
342
|
-
cachedFeatures$1 = response.data;
|
|
343
|
-
return cachedFeatures$1;
|
|
344
|
-
}
|
|
345
|
-
/**
|
|
346
|
-
* Resets the cached feature config (useful for testing).
|
|
347
|
-
*/
|
|
348
|
-
function resetFeatureConfigCache() {
|
|
349
|
-
cachedFeatures$1 = null;
|
|
350
|
-
}
|
|
351
|
-
|
|
352
|
-
//#endregion
|
|
353
|
-
//#region src/internal/version/sdkVersion.ts
|
|
354
|
-
const SDK_VERSION = "2.1.1";
|
|
355
|
-
|
|
356
|
-
//#endregion
|
|
357
|
-
//#region src/internal/fingerprint/fingerprintService.ts
|
|
358
|
-
function formatOsVersion(os) {
|
|
359
|
-
return `${os.name || "Unknown"} ${os.version || ""}`.trim();
|
|
360
|
-
}
|
|
361
|
-
function formatBrowser(browser) {
|
|
362
|
-
if (!browser.name || !browser.version) return "Unknown";
|
|
363
|
-
return `${browser.name} ${browser.version}`;
|
|
364
|
-
}
|
|
365
|
-
async function submitDeviceFingerprint(options = {}, dependencies) {
|
|
366
|
-
const { disableIpify = false, hostingApp, signal } = options;
|
|
367
|
-
const fingerprint = await dependencies.fingerprintProvider.getFingerprint(disableIpify);
|
|
368
|
-
const hasLiedBrowser = isBrowserSimulation(dependencies.browserEnv);
|
|
369
|
-
const payload = {
|
|
370
|
-
hash: fingerprint.visitorId || "",
|
|
371
|
-
ip: fingerprint.ip || "",
|
|
372
|
-
deviceType: "WEBAPP",
|
|
373
|
-
data: JSON.stringify(fingerprint),
|
|
374
|
-
osVersion: formatOsVersion(fingerprint.deviceInfo.os),
|
|
375
|
-
deviceModel: fingerprint.deviceInfo.device.model || "",
|
|
376
|
-
browser: formatBrowser(fingerprint.deviceInfo.browser),
|
|
377
|
-
hasLiedBrowser,
|
|
378
|
-
sdkVersion: SDK_VERSION,
|
|
379
|
-
hostingApp: hostingApp ?? "Web SDK"
|
|
380
|
-
};
|
|
381
|
-
const response = await api.post(endpoints.deviceFingerprint, payload, { signal });
|
|
382
|
-
if (!response.ok) throw new Error(`Failed to submit fingerprint: ${response.status} ${response.statusText}`);
|
|
383
|
-
return response.data;
|
|
384
|
-
}
|
|
385
|
-
|
|
386
|
-
//#endregion
|
|
387
|
-
//#region src/internal/session/sessionInitializer.ts
|
|
388
|
-
let sessionInitialized = false;
|
|
389
|
-
let cachedFeatures = null;
|
|
390
|
-
let cachedDisableIpify = false;
|
|
391
|
-
let clientIpLookupEnabled = true;
|
|
392
|
-
let clientFingerprintEnabled = true;
|
|
393
|
-
function setClientIpLookupEnabled(enabled) {
|
|
394
|
-
clientIpLookupEnabled = enabled;
|
|
395
|
-
}
|
|
396
|
-
function setClientFingerprintEnabled(enabled) {
|
|
397
|
-
clientFingerprintEnabled = enabled;
|
|
398
|
-
}
|
|
399
|
-
function resolveDisableIpify(serverDisableIpify) {
|
|
400
|
-
return !clientIpLookupEnabled || serverDisableIpify;
|
|
401
|
-
}
|
|
402
|
-
let cachedFingerprintSuccess = false;
|
|
403
|
-
let cachedFingerprintResult;
|
|
404
|
-
let sessionInitPromise = null;
|
|
405
|
-
/**
|
|
406
|
-
* Activates a session by setting the auth token on the HTTP client and
|
|
407
|
-
* preloading session-scoped state.
|
|
408
|
-
*
|
|
409
|
-
* Performs:
|
|
410
|
-
* 1. Sets the token (and clears stale session-init cache if the token changed)
|
|
411
|
-
* 2. Links the session with the TRI activity if TRI is enabled
|
|
412
|
-
* 3. Fetches feature configuration from backend
|
|
413
|
-
* 4. Submits device fingerprint
|
|
414
|
-
* 5. Starts the analytics batcher so buffered events are flushed
|
|
415
|
-
*
|
|
416
|
-
* Results are cached per token. Calling again with the same token returns the
|
|
417
|
-
* cached result; calling with a different token re-initializes from scratch.
|
|
418
|
-
*
|
|
419
|
-
* @param options - Session activation options (`token` required)
|
|
420
|
-
* @returns Session initialization result with feature config
|
|
421
|
-
*
|
|
422
|
-
* @example
|
|
423
|
-
* ```ts
|
|
424
|
-
* await setup({ apiURL: 'https://api.incode.com' });
|
|
425
|
-
* const session = await createSession('api-key', options);
|
|
426
|
-
* const { features } = await initializeSession({ token: session.token });
|
|
427
|
-
*
|
|
428
|
-
* // Check feature flags
|
|
429
|
-
* if (isFeatureEnabled('DISABLE_IPIFY', features.features)) {
|
|
430
|
-
* // Handle disabled ipify
|
|
431
|
-
* }
|
|
432
|
-
* ```
|
|
433
|
-
*/
|
|
434
|
-
async function initializeSession(options = {}) {
|
|
435
|
-
const { token, hostingApp, signal } = options;
|
|
436
|
-
if (token !== void 0 && token !== getToken()) {
|
|
437
|
-
setToken(token);
|
|
438
|
-
resetSessionInit();
|
|
439
|
-
if (isTRIStarted()) await linkSessionWithTRI(token);
|
|
440
|
-
}
|
|
441
|
-
if (sessionInitialized && cachedFeatures) return {
|
|
442
|
-
features: cachedFeatures,
|
|
443
|
-
disableIpify: cachedDisableIpify,
|
|
444
|
-
fingerprintSuccess: cachedFingerprintSuccess,
|
|
445
|
-
fingerprintResult: cachedFingerprintResult
|
|
446
|
-
};
|
|
447
|
-
if (sessionInitPromise) return sessionInitPromise;
|
|
448
|
-
sessionInitPromise = (async () => {
|
|
449
|
-
let features;
|
|
450
|
-
let serverDisableIpify = false;
|
|
451
|
-
try {
|
|
452
|
-
features = await fetchFeatureConfig(signal);
|
|
453
|
-
serverDisableIpify = isFeatureEnabled("DISABLE_IPIFY", features.features);
|
|
454
|
-
} catch {
|
|
455
|
-
features = { sessionIdentifier: "" };
|
|
456
|
-
}
|
|
457
|
-
const disableIpify = resolveDisableIpify(serverDisableIpify);
|
|
458
|
-
let fingerprintSuccess = false;
|
|
459
|
-
let fingerprintResult;
|
|
460
|
-
if (clientFingerprintEnabled) try {
|
|
461
|
-
const fingerprintProvider = new FingerprintProvider(new IpifyProvider());
|
|
462
|
-
const browserEnv = new BrowserEnvironmentProvider();
|
|
463
|
-
fingerprintResult = await submitDeviceFingerprint({
|
|
464
|
-
disableIpify,
|
|
465
|
-
hostingApp,
|
|
466
|
-
signal
|
|
467
|
-
}, {
|
|
468
|
-
fingerprintProvider,
|
|
469
|
-
browserEnv
|
|
470
|
-
});
|
|
471
|
-
fingerprintSuccess = true;
|
|
472
|
-
flushDeviceStatsQueue();
|
|
473
|
-
} catch (error) {
|
|
474
|
-
console.warn("Failed to submit device fingerprint:", error);
|
|
475
|
-
}
|
|
476
|
-
else flushDeviceStatsQueue();
|
|
477
|
-
try {
|
|
478
|
-
const browserInfo = new BrowserInfoProvider().getBrowserInfo();
|
|
479
|
-
addEvent({
|
|
480
|
-
code: "browser",
|
|
481
|
-
payload: {
|
|
482
|
-
userAgent: browserInfo.userAgent,
|
|
483
|
-
isWebRtcSupported: browserInfo.isWebRtcSupported,
|
|
484
|
-
browser: browserInfo.browser,
|
|
485
|
-
os: browserInfo.os,
|
|
486
|
-
device: browserInfo.device,
|
|
487
|
-
engine: browserInfo.engine,
|
|
488
|
-
cpu: browserInfo.cpu
|
|
489
|
-
}
|
|
490
|
-
});
|
|
491
|
-
} catch (error) {
|
|
492
|
-
console.warn("Failed to send browser info event:", error);
|
|
493
|
-
}
|
|
494
|
-
sessionInitialized = true;
|
|
495
|
-
cachedFeatures = features;
|
|
496
|
-
cachedDisableIpify = disableIpify;
|
|
497
|
-
cachedFingerprintSuccess = fingerprintSuccess;
|
|
498
|
-
cachedFingerprintResult = fingerprintResult;
|
|
499
|
-
return {
|
|
500
|
-
features,
|
|
501
|
-
disableIpify,
|
|
502
|
-
fingerprintSuccess,
|
|
503
|
-
fingerprintResult
|
|
504
|
-
};
|
|
505
|
-
})().finally(() => {
|
|
506
|
-
sessionInitPromise = null;
|
|
507
|
-
getAnalyticsBatcher()?.start();
|
|
508
|
-
});
|
|
509
|
-
return sessionInitPromise;
|
|
510
|
-
}
|
|
511
|
-
/**
|
|
512
|
-
* Gets the cached disableIpify flag.
|
|
513
|
-
* Returns false if session hasn't been initialized.
|
|
514
|
-
*/
|
|
515
|
-
function getDisableIpify() {
|
|
516
|
-
if (!clientIpLookupEnabled) return true;
|
|
517
|
-
return cachedDisableIpify;
|
|
518
|
-
}
|
|
519
|
-
function getSessionFingerprintResult() {
|
|
520
|
-
return cachedFingerprintResult;
|
|
521
|
-
}
|
|
522
|
-
/**
|
|
523
|
-
* Gets whether client-side device-fingerprint submission is enabled.
|
|
524
|
-
* Consumed by `loadDeepsightSession` to resolve `disableFingerprint`
|
|
525
|
-
* (mirrors how `getDisableIpify` is used).
|
|
526
|
-
*/
|
|
527
|
-
function getFingerprintEnabled() {
|
|
528
|
-
return clientFingerprintEnabled;
|
|
529
|
-
}
|
|
530
|
-
/**
|
|
531
|
-
* Resets session initialization state.
|
|
532
|
-
* Useful for testing or when starting a new session.
|
|
533
|
-
*/
|
|
534
|
-
function resetSessionInit() {
|
|
535
|
-
sessionInitialized = false;
|
|
536
|
-
cachedFeatures = null;
|
|
537
|
-
cachedDisableIpify = false;
|
|
538
|
-
cachedFingerprintSuccess = false;
|
|
539
|
-
cachedFingerprintResult = void 0;
|
|
540
|
-
sessionInitPromise = null;
|
|
541
|
-
resetFeatureConfigCache();
|
|
542
|
-
resetIpifyCache();
|
|
543
|
-
resetDeviceStatsQueue();
|
|
544
|
-
}
|
|
545
|
-
|
|
546
|
-
//#endregion
|
|
547
|
-
export { resetSessionInit as a, IpifyProvider as c, BrowserEnvironmentProvider as d, initializeSession as i, FingerprintProvider as l, getFingerprintEnabled as n, setClientFingerprintEnabled as o, getSessionFingerprintResult as r, setClientIpLookupEnabled as s, getDisableIpify as t, getDeviceFingerprintInfo as u };
|