@incodetech/core 2.1.0-rc.3 → 2.1.0-rc.5
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-ChciZmjE.esm.js → 3dAvatarProvider-9zb-7MLE.esm.js} +2 -2
- package/dist/{Face2DProvider-BeLlYBbB.esm.js → Face2DProvider-DqFSo9Ls.esm.js} +2 -2
- package/dist/{FaceDetectionProvider-B78455D4.d.ts → FaceDetectionProvider-BcPv1ruX.d.ts} +2 -2
- package/dist/{IWasmUtilCapability-d2XvzaCk.d.ts → IWasmUtilCapability-Bf91iomn.d.ts} +2 -2
- package/dist/{OpenViduRecordingProvider-B_0GKkzc.esm.js → OpenViduRecordingProvider-DmA__QfK.esm.js} +1 -1
- package/dist/{PrivacyLensProvider-hDzaDzZ6.esm.js → PrivacyLensProvider-CfmaSQy3.esm.js} +1 -1
- package/dist/{StreamCanvasCapture-Bz17q4FP.esm.js → StreamCanvasCapture-CRk7c7u7.esm.js} +1 -1
- package/dist/{StreamCanvasCapture-DS1TOoiH.d.ts → StreamCanvasCapture-DHDxv6hH.d.ts} +2 -2
- package/dist/{addressSearch-DJyNTg5S.esm.js → addressSearch-B9iJdbn8.esm.js} +2 -2
- package/dist/{ae-signature-DlElqFrZ.esm.js → ae-signature-Pp4oCAHD.esm.js} +1 -1
- package/dist/ae-signature.d.ts +4 -4
- package/dist/ae-signature.esm.js +8 -9
- package/dist/antifraud.d.ts +4 -4
- package/dist/antifraud.esm.js +5 -6
- package/dist/{antifraudManager-BKdQoMFf.esm.js → antifraudManager-5KA84wtF.esm.js} +3 -4
- package/dist/{antifraudManager-DpIvbrZP.d.ts → antifraudManager-D-nGY1T9.d.ts} +2 -2
- package/dist/{antifraudStateMachine-C0NGnP9W.esm.js → antifraudStateMachine-BQVw46N5.esm.js} +2 -2
- package/dist/authentication.d.ts +19 -19
- package/dist/authentication.esm.js +30 -31
- package/dist/{authenticationManager-Dtl1vcET.esm.js → authenticationManager-BN5MY-hj.esm.js} +5 -5
- package/dist/{authenticationManager-CdPbNS2H.d.ts → authenticationManager-BnAY9lOO.d.ts} +3 -3
- package/dist/{authenticationStateMachine-D-hOlg8p.esm.js → authenticationStateMachine-C9Ie077T.esm.js} +7 -7
- package/dist/avatar.d.ts +2 -2
- package/dist/avatar.esm.js +1 -1
- package/dist/{backCameraStream-ZyqrFyjO.esm.js → backCameraStream-uixCSgiq.esm.js} +3 -3
- package/dist/{browserSimulation-TsSoavQv.esm.js → browserSimulation-CWJhFPZ2.esm.js} +1216 -153
- package/dist/camera.d.ts +1 -1
- package/dist/camera.esm.js +3 -3
- package/dist/certificate-issuance.d.ts +31 -31
- package/dist/certificate-issuance.esm.js +6 -7
- package/dist/{certificateIssuanceStateMachine-C07m7qtP.esm.js → certificateIssuanceStateMachine-CpewPqas.esm.js} +3 -3
- package/dist/consent.d.ts +4 -4
- package/dist/consent.esm.js +5 -6
- package/dist/{consentManager-DufVo9D9.d.ts → consentManager-Ccwh6xMM.d.ts} +52 -52
- package/dist/{consentManager-BtnPZUW4.esm.js → consentManager-DL93cPSU.esm.js} +3 -4
- package/dist/{consentStateMachine-DO2JqoZW.esm.js → consentStateMachine-DnqwsZ7o.esm.js} +2 -2
- package/dist/cpf-ocr.d.ts +4 -4
- package/dist/cpf-ocr.esm.js +5 -6
- package/dist/{cpfOcrManager-C4rLgKsu.esm.js → cpfOcrManager-BW8wlEU_.esm.js} +4 -5
- package/dist/{cpfOcrManager-DqZZ94Gt.d.ts → cpfOcrManager-CXf5PhZ6.d.ts} +19 -19
- package/dist/{createFaceAvatar-BOHDKQRq.esm.js → createFaceAvatar-CpmQJA8E.esm.js} +3 -3
- package/dist/{createFaceAvatar-B8pFpy6o.d.ts → createFaceAvatar-DNMSIcRb.d.ts} +1 -1
- package/dist/cross-document-data-match.d.ts +2 -2
- package/dist/cross-document-data-match.esm.js +4 -5
- package/dist/curp-validation.d.ts +10 -10
- package/dist/curp-validation.esm.js +5 -6
- package/dist/{curpValidationManager-Co6LZAHT.d.ts → curpValidationManager-CJdVrCex.d.ts} +3 -3
- package/dist/{curpValidationManager-BafobPXC.esm.js → curpValidationManager-u2FkvveY.esm.js} +3 -4
- package/dist/{curpValidationStateMachine-DXTPK6vI.esm.js → curpValidationStateMachine-CeqDh2V5.esm.js} +2 -2
- package/dist/custom-fields.d.ts +3 -3
- package/dist/custom-fields.esm.js +4 -5
- package/dist/custom-watchlist.d.ts +2 -2
- package/dist/custom-watchlist.esm.js +4 -5
- package/dist/{customWatchlistStateMachine-B4G3Chkx.esm.js → customWatchlistStateMachine-dovMwTLv.esm.js} +2 -2
- package/dist/{deepsightLoader-DHSVD776.esm.js → deepsightLoader-mHrOfFNb.esm.js} +18 -13
- package/dist/{deepsightService-CMB9XjES.d.ts → deepsightService-CbaqT7bP.d.ts} +2 -2
- package/dist/{deepsightService-CDahSjGP.esm.js → deepsightService-DU9yBWg_.esm.js} +11 -11
- package/dist/device.d.ts +1 -9
- package/dist/device.esm.js +5 -5
- package/dist/document-capture.d.ts +175 -175
- package/dist/document-capture.esm.js +11 -12
- package/dist/document-upload.d.ts +45 -45
- package/dist/document-upload.esm.js +7 -8
- package/dist/{documentCaptureStateMachine-DSOX2epf.esm.js → documentCaptureStateMachine-4p5MuzfS.esm.js} +6 -6
- package/dist/dynamic-forms.d.ts +4 -4
- package/dist/dynamic-forms.esm.js +6 -7
- package/dist/{dynamicFormsManager-CUYLOj9g.d.ts → dynamicFormsManager-B_4qA_CB.d.ts} +2 -2
- package/dist/{dynamicFormsManager-BOefZbyF.esm.js → dynamicFormsManager-CNg60mlv.esm.js} +3 -4
- package/dist/{dynamicFormsStateMachine-BXHcaocI.esm.js → dynamicFormsStateMachine-BfLLcxua.esm.js} +3 -3
- package/dist/ekyb.d.ts +9 -9
- package/dist/ekyb.esm.js +15 -18
- package/dist/{ekybStateMachine-CCSeqjCt.esm.js → ekybStateMachine-BVsSys9P.esm.js} +4 -4
- package/dist/ekyc.d.ts +4 -4
- package/dist/ekyc.esm.js +6 -7
- package/dist/{ekycStateMachine-DkLVTOyA.esm.js → ekycStateMachine-BcPEEqMA.esm.js} +4 -4
- package/dist/electronic-signature.d.ts +4 -4
- package/dist/electronic-signature.esm.js +7 -8
- package/dist/{electronicSignatureManager-DjzUzqZj.esm.js → electronicSignatureManager-DESRgObX.esm.js} +5 -6
- package/dist/email.d.ts +5 -5
- package/dist/email.esm.js +6 -7
- package/dist/{emailManager-B_XzEsXH.esm.js → emailManager-C9O7k0-m.esm.js} +4 -5
- package/dist/{emailManager-fHASH6uo.d.ts → emailManager-CTOXMlVd.d.ts} +3 -3
- package/dist/{emailStateMachine-fqJ42b19.esm.js → emailStateMachine-Bk4pkysV.esm.js} +3 -3
- package/dist/{events-CqGY1yMq.esm.js → events-1wxZ97yf.esm.js} +189 -1
- package/dist/events.esm.js +1 -2
- package/dist/extensibility.d.ts +35 -35
- package/dist/extensibility.esm.js +67 -70
- package/dist/{externalFetch-CyhBfD-n.esm.js → externalFetch-hvmz_npP.esm.js} +1 -1
- package/dist/face-match.d.ts +2 -2
- package/dist/face-match.esm.js +4 -5
- package/dist/{faceCaptureManagerFactory-2brKTzMb.esm.js → faceCaptureManagerFactory-BjtXPUp3.esm.js} +5 -6
- package/dist/{faceCaptureManagerFactory-CGKbf7zt.d.ts → faceCaptureManagerFactory-DKBvmRxO.d.ts} +13 -13
- package/dist/{faceCaptureSetup-CDUVU1nl.esm.js → faceCaptureSetup-DMUHOk1F.esm.js} +8 -8
- package/dist/{faceMatchStateMachine-DUeUjEPx.esm.js → faceMatchStateMachine-C6J09ygk.esm.js} +2 -2
- package/dist/field-comparison.d.ts +4 -4
- package/dist/field-comparison.esm.js +4 -5
- package/dist/{fieldComparisonManager-DdLqDeB2.d.ts → fieldComparisonManager-BOEgiOw_.d.ts} +2 -2
- package/dist/{fieldComparisonManager-B9W0a9A5.esm.js → fieldComparisonManager-kk2RkWeb.esm.js} +3 -4
- package/dist/fiscal-qr.d.ts +5 -5
- package/dist/fiscal-qr.esm.js +10 -11
- package/dist/flow-events.d.ts +8 -8
- package/dist/flow.d.ts +14 -14
- package/dist/flow.esm.js +16 -19
- package/dist/{flowCompletionService-qEqh_g14.esm.js → flowCompletionService-BDcDfyoA.esm.js} +2 -2
- package/dist/{flowServices-C4piblgx.esm.js → flowServices-nnIjcwZD.esm.js} +4 -4
- package/dist/geolocation.d.ts +4 -4
- package/dist/geolocation.esm.js +6 -7
- package/dist/{geolocationManager-Cs50eRlC.d.ts → geolocationManager-B3lahU1a.d.ts} +2 -2
- package/dist/{geolocationManager-BP2Do9O-.esm.js → geolocationManager-Dmbh6TXA.esm.js} +3 -4
- package/dist/{geolocationStateMachine-BYfOOOG0.esm.js → geolocationStateMachine-BRLIXR1x.esm.js} +3 -3
- package/dist/getBrowser-1yNcfFZR.esm.js +8 -0
- package/dist/{getDeviceClass-DGGzzfqm.esm.js → getDeviceClass-QxbJwsOO.esm.js} +1 -1
- package/dist/government-validation.d.ts +4 -4
- package/dist/government-validation.esm.js +5 -6
- package/dist/{governmentValidationStateMachine-CwoPPO8b.esm.js → governmentValidationStateMachine-CjCs0_fG.esm.js} +3 -3
- package/dist/home.d.ts +18 -18
- package/dist/home.esm.js +2 -3
- package/dist/http.esm.js +1 -1
- package/dist/id-ocr.d.ts +4 -4
- package/dist/id-ocr.esm.js +6 -7
- package/dist/id-verification.d.ts +28 -28
- package/dist/id-verification.esm.js +4 -5
- package/dist/id.d.ts +16 -16
- package/dist/id.esm.js +33 -36
- package/dist/{idCaptureDefaults-DNJON8Xo.esm.js → idCaptureDefaults-DJmo-U3D.esm.js} +1 -1
- package/dist/{idCaptureManager-BVdvfJys.d.ts → idCaptureManager-58R91WU3.d.ts} +12 -12
- package/dist/{idCaptureManager-Bo9DCQSU.esm.js → idCaptureManager-DgwTu2Ad.esm.js} +6 -7
- package/dist/{idCaptureStateMachine-BeDidMLU.esm.js → idCaptureStateMachine-C_LkJ5Cv.esm.js} +18 -18
- package/dist/{idOcrManager-CJzrmM91.d.ts → idOcrManager-4y4ch6fe.d.ts} +54 -54
- package/dist/{idOcrManager-BkRDrpZu.esm.js → idOcrManager-CiEzYor8.esm.js} +3 -4
- package/dist/{idOcrStateMachine-DRZc4FBl.esm.js → idOcrStateMachine-CGeY01rX.esm.js} +4 -4
- package/dist/{idVerificationStateMachine-oqiERKpg.esm.js → idVerificationStateMachine-B6Ccvut4.esm.js} +2 -2
- package/dist/identity-reuse.d.ts +4 -4
- package/dist/identity-reuse.esm.js +5 -6
- package/dist/{identityReuseManager-TWKbXuvY.d.ts → identityReuseManager-CBcBvR0M.d.ts} +33 -33
- package/dist/{identityReuseManager-Bu62LToE.esm.js → identityReuseManager-CrbjKac7.esm.js} +3 -4
- package/dist/{identityReuseStateMachine-BmONeF6B.esm.js → identityReuseStateMachine-Do_M-z6z.esm.js} +2 -2
- package/dist/{index-DtUlD-bz.d.ts → index-CVgIGwUy.d.ts} +2 -2
- package/dist/{index-Icld-cKW.d.ts → index-DFYycWvJ.d.ts} +151 -151
- package/dist/index.d.ts +3 -3
- package/dist/index.esm.js +9 -12
- package/dist/{invokeOnCaptureCallback-v_PV_IJz.esm.js → invokeOnCaptureCallback-gKRaO24Q.esm.js} +1 -1
- package/dist/mandatory-consent.d.ts +10 -10
- package/dist/mandatory-consent.esm.js +5 -6
- package/dist/{mandatoryConsentManager-Bmdjo14S.d.ts → mandatoryConsentManager-D4EeVURE.d.ts} +50 -50
- package/dist/{mandatoryConsentManager-CQ3jirlZ.esm.js → mandatoryConsentManager-b1QKgIKi.esm.js} +3 -4
- package/dist/{mandatoryConsentStateMachine-DkJJLHqC.esm.js → mandatoryConsentStateMachine-VPbrLLfo.esm.js} +2 -2
- package/dist/{mediaRecorderOptions-C3NAkVgK.esm.js → mediaRecorderOptions-DuYelylE.esm.js} +1 -1
- package/dist/{onDeviceFaceResults-DVBggeq8.esm.js → onDeviceFaceResults-BFhwH1Ba.esm.js} +11 -11
- package/dist/{openviduLazy-BTOIauGP.esm.js → openviduLazy-BXDnVFe2.esm.js} +1 -1
- package/dist/openviduLazy-lAZzee_g.esm.js +3 -0
- package/dist/{permissionGuards-BR2oN573.esm.js → permissionGuards-CaZl9t7f.esm.js} +1 -1
- package/dist/{permissionServices-BJhGL13R.esm.js → permissionServices-D9lmzFYc.esm.js} +2 -2
- package/dist/personhood.d.ts +16 -16
- package/dist/personhood.esm.js +29 -23
- package/dist/phone.d.ts +5 -5
- package/dist/phone.esm.js +6 -7
- package/dist/{phoneManager-BOTcjXgs.d.ts → phoneManager-CG1vTJiG.d.ts} +3 -3
- package/dist/{phoneManager-BWlxqbyD.esm.js → phoneManager-DNTrIq-D.esm.js} +4 -5
- package/dist/{phoneStateMachine-B_V9nODs.esm.js → phoneStateMachine-MqNDf1Nh.esm.js} +3 -3
- package/dist/{qe-signature-BhFnI9pT.esm.js → qe-signature-CVnJ4RaW.esm.js} +1 -1
- package/dist/qe-signature.d.ts +4 -4
- package/dist/qe-signature.esm.js +8 -9
- package/dist/{recordingService-m_1xCthr.esm.js → recordingService-CflL9aAS.esm.js} +6 -6
- package/dist/redirect-to-mobile.d.ts +4 -4
- package/dist/redirect-to-mobile.esm.js +6 -7
- package/dist/{redirectToMobileManager-Br0KZK1G.d.ts → redirectToMobileManager-D7U9k-Xs.d.ts} +2 -2
- package/dist/{redirectToMobileManager-BaAo9rgi.esm.js → redirectToMobileManager-DuD03ggR.esm.js} +3 -4
- package/dist/{redirectToMobileStateMachine-DoAnf2ql.esm.js → redirectToMobileStateMachine-WVg-n2is.esm.js} +3 -3
- package/dist/{runChildModule-0nQfjVVo.esm.js → runChildModule-XHWWqs39.esm.js} +3 -3
- package/dist/selfie.d.ts +19 -19
- package/dist/selfie.esm.js +31 -32
- package/dist/{selfieManager-R0Jw5sjb.d.ts → selfieManager-CXmUuCSV.d.ts} +3 -3
- package/dist/{selfieManager-D_ZFERsE.esm.js → selfieManager-vgJaCuGq.esm.js} +5 -5
- package/dist/{selfieStateMachine-CIgeeiN9.esm.js → selfieStateMachine-BrxBZpXx.esm.js} +4 -4
- package/dist/{session-9jIfKFCc.esm.js → session-BWCjVIr6.esm.js} +2 -2
- package/dist/session.d.ts +7 -7
- package/dist/session.esm.js +11 -14
- package/dist/sessionInitializer-IghS6XM8.esm.js +547 -0
- package/dist/{setup-CpRnXxn8.d.ts → setup-BbAMk9Rg.d.ts} +17 -2
- package/dist/{setup-DHc6OaHm.esm.js → setup-BvUZozWd.esm.js} +7 -5
- package/dist/signature.d.ts +3 -3
- package/dist/signature.esm.js +4 -5
- package/dist/{signatureStateMachine-DtoiPzys.esm.js → signatureStateMachine-iT9BhNUf.esm.js} +2 -2
- package/dist/{stats-CYcScXcO.esm.js → stats-BVy52wLy.esm.js} +1 -1
- package/dist/stats.esm.js +2 -2
- package/dist/{tri-BG1iJsr4.esm.js → tri-CFBjqf5E.esm.js} +1 -1
- package/dist/tri.d.ts +1 -1
- package/dist/{tri.esm-DUC01NgO.esm.js → tri.esm-BzYyqlPa.esm.js} +1 -1
- package/dist/tri.esm.js +1 -1
- package/dist/trust-graph.d.ts +4 -4
- package/dist/trust-graph.esm.js +2 -3
- package/dist/{types-DgGlgyZT.d.ts → types-B_YCuHZx.d.ts} +1 -1
- package/dist/{types-BklZ_Wne.d.ts → types-CRPns2d9.d.ts} +1 -1
- package/dist/{types-BsYXnC5s.d.ts → types-Cyi3gwPK.d.ts} +2 -2
- package/dist/{types-CxW2e0Ar.d.ts → types-DWmubDie.d.ts} +3 -3
- package/dist/video-selfie.d.ts +14 -14
- package/dist/video-selfie.esm.js +26 -29
- package/dist/wasm.d.ts +3 -3
- package/dist/wasm.esm.js +9 -12
- package/dist/watchlist-for-business.d.ts +2 -2
- package/dist/watchlist-for-business.esm.js +4 -5
- package/dist/watchlist.d.ts +2 -2
- package/dist/watchlist.esm.js +4 -5
- package/dist/{watchlistForBusinessStateMachine-DvEunDxs.esm.js → watchlistForBusinessStateMachine-CyhTEi3N.esm.js} +2 -2
- package/dist/{watchlistStateMachine-AHXVf-TB.esm.js → watchlistStateMachine-CgKG-KSf.esm.js} +2 -2
- package/dist/workflow.d.ts +113 -113
- package/dist/workflow.esm.js +68 -71
- package/package.json +3 -3
- package/dist/IpifyProvider-BRW14_uo.esm.js +0 -51
- package/dist/getDeviceData-TrKM8NPh.esm.js +0 -101
- package/dist/openviduLazy-Dov8oKfL.esm.js +0 -3
- package/dist/sessionInitializer-C_TYIgyk.esm.js +0 -273
- package/dist/thumbmarkAdapter-fHBUDlAP.esm.js +0 -1194
- package/dist/types-ElOJAGaM.esm.js +0 -189
- /package/dist/{Actor-CGEelYtQ.d.ts → Actor-DYjXVMQm.d.ts} +0 -0
- /package/dist/{BrowserStorageProvider-CrrN540a.esm.js → BrowserStorageProvider-CBXGCHnK.esm.js} +0 -0
- /package/dist/{BrowserVisibilityObserverProvider-rim9Jrz-.esm.js → BrowserVisibilityObserverProvider-B04zvOXW.esm.js} +0 -0
- /package/dist/{ITimerCapability-pltuG1E8.esm.js → ITimerCapability-G7lQg-be.esm.js} +0 -0
- /package/dist/{IVisibilityObserverCapability-BbWjgpiF.d.ts → IVisibilityObserverCapability-BxPj7hsu.d.ts} +0 -0
- /package/dist/{Manager-CJ3G2zqi.d.ts → Manager-BfBOhrjh.d.ts} +0 -0
- /package/dist/{MotionSensorProvider-DCbId4De.esm.js → MotionSensorProvider-BkHKMCPE.esm.js} +0 -0
- /package/dist/{StateMachine-C_AY4cs7.d.ts → StateMachine-20ahmASR.d.ts} +0 -0
- /package/dist/{apiError-DNS2OCEX.esm.js → apiError-DkOXfFBu.esm.js} +0 -0
- /package/dist/{browser-DlFgHpoC-qLKs75Qp.esm.js → browser-DlFgHpoC-CR6x7ypG.esm.js} +0 -0
- /package/dist/{camera-DUkgmYMo.esm.js → camera-B0yWS33x.esm.js} +0 -0
- /package/dist/{camera-CNVUo-bC.d.ts → camera-CWO06Lu5.d.ts} +0 -0
- /package/dist/{canvas-_I95hkPg.esm.js → canvas-DsJa51yU.esm.js} +0 -0
- /package/dist/{canvas-CJUmoXSD.d.ts → canvas-pLrXU1id.d.ts} +0 -0
- /package/dist/{cpf-BKaho0j_.esm.js → cpf-B9htWzDt.esm.js} +0 -0
- /package/dist/{dateUtils-7-tQYRNN.esm.js → dateUtils-PXB_WRYL.esm.js} +0 -0
- /package/dist/{endpoints-BzMJFAPV.esm.js → endpoints-CwrFQfW7.esm.js} +0 -0
- /package/dist/{flowCompletionService-BIqSTZcd.d.ts → flowCompletionService-nF7e8At0.d.ts} +0 -0
- /package/dist/{getDeviceClass-DavNdcxh.esm.js → getDeviceClass-BdgmyOOu.esm.js} +0 -0
- /package/dist/{http-BkiUT7EB.esm.js → http-CBbBcnBa.esm.js} +0 -0
- /package/dist/{index-XTtxaahe.d.ts → index-CCG6MnCO.d.ts} +0 -0
- /package/dist/{lib-B050WTth.esm.js → lib-TRTXfron.esm.js} +0 -0
- /package/dist/{mediapipeShared-CRAKVElv.esm.js → mediapipeShared-yKDdOf_V.esm.js} +0 -0
- /package/dist/{otp-M4iy57XY.d.ts → otp-CETbFjXH.d.ts} +0 -0
- /package/dist/{otp-Bfnzf7I3.esm.js → otp-DepQPUIA.esm.js} +0 -0
- /package/dist/{platform-uIVQUnJP.esm.js → platform-0Ot-bF_a.esm.js} +0 -0
- /package/dist/{types-Duy2rDxF.d.ts → types-BOiKESZY.d.ts} +0 -0
- /package/dist/{types-D_IceWxT.d.ts → types-CTnn7kUK.d.ts} +0 -0
- /package/dist/{types-CMcxlSmH.esm.js → types-Db2ooXIu.esm.js} +0 -0
- /package/dist/{urlUtils-BZqFU9rR.esm.js → urlUtils-CpiYwn7w.esm.js} +0 -0
- /package/dist/{video-C2WIj6TS.esm.js → video-DXf5H9rY.esm.js} +0 -0
- /package/dist/{videoSelfieSteps-7M5vxKn-.esm.js → videoSelfieSteps-C6E7mKFt.esm.js} +0 -0
- /package/dist/{warmup-BJZPQIiX.d.ts → warmup-DzJ0I4Kv.d.ts} +0 -0
- /package/dist/{xstate.esm-Bomq1a0z.esm.js → xstate.esm-nY3M5UYm.esm.js} +0 -0
|
@@ -0,0 +1,547 @@
|
|
|
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-CWJhFPZ2.esm.js";
|
|
6
|
+
import { i as linkSessionWithTRI, r as isTRIStarted } from "./tri-CFBjqf5E.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.0-rc.5";
|
|
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 };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as WasmPipeline } from "./warmup-
|
|
2
|
-
import { s as TransactionalRiskIntelligenceSetupConfig } from "./index-
|
|
1
|
+
import { n as WasmPipeline } from "./warmup-DzJ0I4Kv.js";
|
|
2
|
+
import { s as TransactionalRiskIntelligenceSetupConfig } from "./index-CCG6MnCO.js";
|
|
3
3
|
|
|
4
4
|
//#region src/setup.d.ts
|
|
5
5
|
|
|
@@ -163,6 +163,21 @@ type SetupOptions = {
|
|
|
163
163
|
* (lookup enabled).
|
|
164
164
|
*/
|
|
165
165
|
ipLookup?: boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Disables client-side device-fingerprint submission
|
|
168
|
+
* (`POST /omni/add/device-fingerprint`). When `false`, the SDK skips that
|
|
169
|
+
* request entirely — `initializeSession` still runs, but
|
|
170
|
+
* `getSessionFingerprintResult()` resolves to `undefined`, so
|
|
171
|
+
* `showMandatoryConsent`/`regulationType` are not available and mandatory
|
|
172
|
+
* consent will not be auto-injected into `flow`/`workflow`.
|
|
173
|
+
*
|
|
174
|
+
* Also blanks the `fingerprintHash` field of the Deepsight metadata bundle
|
|
175
|
+
* collected during face capture (selfie/authentication/id/personhood) — the
|
|
176
|
+
* descriptive device fields and `webglFingerprint` are unaffected.
|
|
177
|
+
*
|
|
178
|
+
* Default: `true` (fingerprint submission enabled).
|
|
179
|
+
*/
|
|
180
|
+
fingerprint?: boolean;
|
|
166
181
|
/**
|
|
167
182
|
* Disables the browser devtools detector for local development. When `true`,
|
|
168
183
|
* the detector is **not** started, so devtools no longer gets repeatedly
|
|
@@ -2,11 +2,11 @@ import { f as deriveSiblingJsPath, r as warmupWasm, t as WasmUtilProvider } from
|
|
|
2
2
|
import { t as BrowserTimerProvider } from "./BrowserTimerProvider-CHloo0eQ.esm.js";
|
|
3
3
|
import { a as resetApi, i as isApiConfigured, n as getApi, r as getToken, t as api } from "./api-DsbUi7TO.esm.js";
|
|
4
4
|
import { i as upgradeToWasmHttpClient, n as installFreshHttpClient, r as resetHttpClientState, t as getStoredHttpConfig } from "./clientLifecycle-Ct7h9uxx.esm.js";
|
|
5
|
-
import {
|
|
6
|
-
import { t as endpoints } from "./endpoints-
|
|
7
|
-
import { r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-
|
|
8
|
-
import { a as
|
|
9
|
-
import { a as resetTRI, n as initializeTRI, o as resetTRIProviderInstance } from "./tri-
|
|
5
|
+
import { _ as getAnalyticsBatcher, h as createAnalyticsBatchingService, v as resetAnalyticsBatcher, y as setAnalyticsBatcher } from "./events-1wxZ97yf.esm.js";
|
|
6
|
+
import { t as endpoints } from "./endpoints-CwrFQfW7.esm.js";
|
|
7
|
+
import { r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-BVy52wLy.esm.js";
|
|
8
|
+
import { a as resetSessionInit, i as initializeSession, o as setClientFingerprintEnabled, s as setClientIpLookupEnabled } from "./sessionInitializer-IghS6XM8.esm.js";
|
|
9
|
+
import { a as resetTRI, n as initializeTRI, o as resetTRIProviderInstance } from "./tri-CFBjqf5E.esm.js";
|
|
10
10
|
|
|
11
11
|
//#region ../infra/src/wasm/wasmDefaults.ts
|
|
12
12
|
const WASM_CDN_BASE_URL = "https://cdn.incodesmile.com/ml-wasm-kit-release";
|
|
@@ -424,6 +424,7 @@ let configured = false;
|
|
|
424
424
|
*/
|
|
425
425
|
async function setup(options) {
|
|
426
426
|
if (options.ipLookup !== void 0) setClientIpLookupEnabled(options.ipLookup);
|
|
427
|
+
if (options.fingerprint !== void 0) setClientFingerprintEnabled(options.fingerprint);
|
|
427
428
|
if (!getAnalyticsBatcher()) setAnalyticsBatcher(createAnalyticsBatchingService({
|
|
428
429
|
endpoint: endpoints.events,
|
|
429
430
|
authToken: () => getToken(),
|
|
@@ -549,6 +550,7 @@ function reset() {
|
|
|
549
550
|
resetApi();
|
|
550
551
|
resetSessionInit();
|
|
551
552
|
setClientIpLookupEnabled(true);
|
|
553
|
+
setClientFingerprintEnabled(true);
|
|
552
554
|
resetAnalyticsBatcher();
|
|
553
555
|
resetHttpClientState();
|
|
554
556
|
resetTRI();
|
package/dist/signature.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import "./StateMachine-
|
|
2
|
-
import { t as Manager } from "./Manager-
|
|
3
|
-
import "./Actor-
|
|
1
|
+
import "./StateMachine-20ahmASR.js";
|
|
2
|
+
import { t as Manager } from "./Manager-BfBOhrjh.js";
|
|
3
|
+
import "./Actor-DYjXVMQm.js";
|
|
4
4
|
|
|
5
5
|
//#region src/modules/signature/types.d.ts
|
|
6
6
|
/**
|
package/dist/signature.esm.js
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import "./api-DsbUi7TO.esm.js";
|
|
2
|
-
import { n as
|
|
3
|
-
import
|
|
4
|
-
import "./
|
|
5
|
-
import {
|
|
6
|
-
import { t as signatureMachine } from "./signatureStateMachine-DtoiPzys.esm.js";
|
|
2
|
+
import { n as eventModuleNames, o as topLevelStateName, s as createManagerInstrumentation } from "./events-1wxZ97yf.esm.js";
|
|
3
|
+
import "./endpoints-CwrFQfW7.esm.js";
|
|
4
|
+
import { l as createManager, s as createActor } from "./xstate.esm-nY3M5UYm.esm.js";
|
|
5
|
+
import { t as signatureMachine } from "./signatureStateMachine-iT9BhNUf.esm.js";
|
|
7
6
|
|
|
8
7
|
//#region src/modules/signature/signatureActor.ts
|
|
9
8
|
function createSignatureActor(options) {
|
package/dist/{signatureStateMachine-DtoiPzys.esm.js → signatureStateMachine-iT9BhNUf.esm.js}
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as api } from "./api-DsbUi7TO.esm.js";
|
|
2
|
-
import { t as endpoints } from "./endpoints-
|
|
3
|
-
import { a as fromPromise, r as assign, t as setup } from "./xstate.esm-
|
|
2
|
+
import { t as endpoints } from "./endpoints-CwrFQfW7.esm.js";
|
|
3
|
+
import { a as fromPromise, r as assign, t as setup } from "./xstate.esm-nY3M5UYm.esm.js";
|
|
4
4
|
|
|
5
5
|
//#region src/modules/signature/signatureServices.ts
|
|
6
6
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as getToken, t as api } from "./api-DsbUi7TO.esm.js";
|
|
2
|
-
import { t as endpoints } from "./endpoints-
|
|
2
|
+
import { t as endpoints } from "./endpoints-CwrFQfW7.esm.js";
|
|
3
3
|
|
|
4
4
|
//#region src/modules/stats/statsServices.ts
|
|
5
5
|
const deviceStatsQueue = [];
|
package/dist/stats.esm.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import "./api-DsbUi7TO.esm.js";
|
|
2
|
-
import "./endpoints-
|
|
3
|
-
import { n as flushDeviceStatsQueue, r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-
|
|
2
|
+
import "./endpoints-CwrFQfW7.esm.js";
|
|
3
|
+
import { n as flushDeviceStatsQueue, r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-BVy52wLy.esm.js";
|
|
4
4
|
|
|
5
5
|
export { addDeviceStats, flushDeviceStatsQueue, resetDeviceStatsQueue };
|
|
@@ -120,7 +120,7 @@ const LAZY_IMPORT_OPTIONS = {
|
|
|
120
120
|
timeoutMs: 1e4,
|
|
121
121
|
disabledMessage: "TRI will be disabled for this session."
|
|
122
122
|
};
|
|
123
|
-
const importSdk = () => import("./tri.esm-
|
|
123
|
+
const importSdk = () => import("./tri.esm-BzYyqlPa.esm.js");
|
|
124
124
|
/**
|
|
125
125
|
* Concrete implementation of {@link ITransactionalRiskIntelligenceCapability}.
|
|
126
126
|
*
|
package/dist/tri.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as startTRI, i as setupTRI, n as isTRIStarted, o as stopTRI, r as resetTRI, s as TransactionalRiskIntelligenceSetupConfig, t as createTRISession } from "./index-
|
|
1
|
+
import { a as startTRI, i as setupTRI, n as isTRIStarted, o as stopTRI, r as resetTRI, s as TransactionalRiskIntelligenceSetupConfig, t as createTRISession } from "./index-CCG6MnCO.js";
|
|
2
2
|
export { TransactionalRiskIntelligenceSetupConfig, createTRISession, isTRIStarted, resetTRI, setupTRI, startTRI, stopTRI };
|
|
@@ -1702,7 +1702,7 @@ async function Ht(t$1) {
|
|
|
1702
1702
|
return Promise.race([r$1, o$2]).finally(() => {
|
|
1703
1703
|
d(i$2);
|
|
1704
1704
|
});
|
|
1705
|
-
}(() => import("./browser-DlFgHpoC-
|
|
1705
|
+
}(() => import("./browser-DlFgHpoC-CR6x7ypG.esm.js"), 1e4);
|
|
1706
1706
|
jt = t$3, t$3.then((n$1) => {
|
|
1707
1707
|
null === n$1 && u(() => {
|
|
1708
1708
|
jt === t$3 && (jt = null);
|