@incodetech/core 2.3.2 → 2.4.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/THIRD_PARTY_NOTICES.txt +1243 -3
- package/dist/Actor-DpTj5PFb.d.ts +1 -0
- package/dist/{BaseWasmProvider-Dyi6dKp1.d.ts → BaseWasmProvider-Bq3OHo7P.d.ts} +2 -2
- package/dist/BrowserDiagnosticsEnvelopeProvider-BQca6KPG.esm.js +43 -0
- package/dist/{FaceDetectionProvider-DtmtCKa9.esm.js → FaceDetectionProvider-BIImDZrc.esm.js} +125 -10
- package/dist/HttpRequestError-Bh0pNGSC.esm.js +35 -0
- package/dist/{IIdCaptureCapability-RNiFhvXR.d.ts → IIdCaptureCapability-CGcEt2Cw.d.ts} +2 -2
- package/dist/{IWasmUtilCapability-CNWRl7jr.d.ts → IWasmUtilCapability-GF2n7sfm.d.ts} +28 -5
- package/dist/{Manager-CQQ99QOI.d.ts → Manager-C9T5amUN.d.ts} +7 -1
- package/dist/{MotionSensorProvider-DyhbM4Si.esm.js → MotionSensorProvider-DYxh8TjR.esm.js} +1 -1
- package/dist/{ekycStateMachine-UeJRO8_p.esm.js → PhoneValidationProvider-SZiOS0jB.esm.js} +232 -827
- package/dist/{StreamCanvasCapture-_8gdW5Lk.d.ts → StreamCanvasCapture-7JRf-2ck.d.ts} +2 -2
- package/dist/{safeStorage-BdU9_m2E.esm.js → WasmUtilProvider-DtJuBdt-.esm.js} +111 -49
- package/dist/{addressSearch-DyHGgeX8.esm.js → addressSearch-DPjIKJrX.esm.js} +142 -4
- package/dist/{advanceableErrors-CpF2cBy6.esm.js → advanceableErrors-q_pfU3Cn.esm.js} +5 -4
- package/dist/ae-signature.d.ts +2 -2
- package/dist/ae-signature.esm.js +1 -1
- package/dist/antifraud.d.ts +1 -1
- package/dist/antifraud.esm.js +2 -2
- package/dist/{antifraudManager-DNkw66oW.esm.js → antifraudManager-CaweCYnY.esm.js} +3 -3
- package/dist/{antifraudManager-BY36bS12.d.ts → antifraudManager-DbGCvlJs.d.ts} +2 -2
- package/dist/{antifraudStateMachine-DBeq47D2.esm.js → antifraudStateMachine-DRl0UVyA.esm.js} +3 -4
- package/dist/{endpoints-B-3Q-LUw.esm.js → api-Cz90EHyu.esm.js} +151 -1
- package/dist/{apiError-CmGEmaGU.esm.js → apiError-D5u6HIDG.esm.js} +2 -1
- package/dist/authentication.d.ts +3 -3
- package/dist/authentication.esm.js +2 -2
- package/dist/{authenticationManager-CboRCl_N.d.ts → authenticationManager-BIZC55Bi.d.ts} +2 -8
- package/dist/{authenticationManager-BFjSjtQ_.esm.js → authenticationManager-CB3YW6EK.esm.js} +6 -6
- package/dist/{authenticationStateMachine-Dfo34ZiI.esm.js → authenticationStateMachine-BJJhLmdH.esm.js} +5 -6
- package/dist/avatar.d.ts +1 -1
- package/dist/{backCameraStream-B0-YgP_y.esm.js → backCameraStream-CMvXj4X4.esm.js} +1 -1
- package/dist/camera.esm.js +1 -1
- package/dist/certificate-issuance.d.ts +1 -1
- package/dist/certificate-issuance.esm.js +2 -2
- package/dist/{certificateIssuanceManager-C3-CI0_s.esm.js → certificateIssuanceManager-BfeMv2PU.esm.js} +3 -3
- package/dist/{certificateIssuanceManager-DCgEidHz.d.ts → certificateIssuanceManager-Dr8A4Lgr.d.ts} +2 -3
- package/dist/{certificateIssuanceStateMachine-CxqS_nD-.esm.js → certificateIssuanceStateMachine-Frgjbjw8.esm.js} +4 -5
- package/dist/consent.d.ts +1 -1
- package/dist/consent.esm.js +2 -2
- package/dist/{consentManager-B6E1XJDw.esm.js → consentManager-CvEu8h_W.esm.js} +3 -3
- package/dist/{consentManager-2h_w6wFc.d.ts → consentManager-Cv_0QKLD.d.ts} +7 -8
- package/dist/{consentStateMachine-DTSfdGiW.esm.js → consentStateMachine-DJTgN_-1.esm.js} +3 -4
- package/dist/{createCameraCycleOwnership-DnwTl1ad.esm.js → createCameraCycleOwnership-Dj_LHUvN.esm.js} +71 -66
- package/dist/{createFaceAvatar-BlcTYgJv.d.ts → createFaceAvatar-lYX0VTYs.d.ts} +1 -1
- package/dist/cross-document-data-match.d.ts +1 -1
- package/dist/cross-document-data-match.esm.js +1 -1
- package/dist/{crossDocumentDataMatchManager-9XhFVZ5S.esm.js → crossDocumentDataMatchManager-Cu141CE8.esm.js} +4 -5
- package/dist/{crossDocumentDataMatchManager-Dq8Z3SOg.d.ts → crossDocumentDataMatchManager-yCWCOzcU.d.ts} +2 -2
- package/dist/curp-validation.d.ts +1 -1
- package/dist/curp-validation.esm.js +2 -2
- package/dist/{curpValidationManager-DbIMYFcJ.esm.js → curpValidationManager-B-z9q5V3.esm.js} +15 -22
- package/dist/{curpValidationManager-DNuZn9fn.d.ts → curpValidationManager-C9sqoh9n.d.ts} +3 -3
- package/dist/{curpValidationStateMachine-g5kMfuLj.esm.js → curpValidationStateMachine-vDEFLMPw.esm.js} +4 -5
- package/dist/custom-fields.d.ts +1 -1
- package/dist/custom-fields.esm.js +1 -1
- package/dist/custom-watchlist.d.ts +1 -1
- package/dist/custom-watchlist.esm.js +2 -2
- package/dist/{customFieldsManager-8-W2KY4n.d.ts → customFieldsManager-CF-cO8ap.d.ts} +2 -2
- package/dist/{customFieldsManager-CzWZTkW-.esm.js → customFieldsManager-D1ex2cFM.esm.js} +4 -5
- package/dist/{customWatchlistManager-DWTED5Ur.esm.js → customWatchlistManager-CTI-SGk0.esm.js} +3 -3
- package/dist/{customWatchlistManager-PBWHr_oM.d.ts → customWatchlistManager-DolUswyR.d.ts} +2 -2
- package/dist/{customWatchlistStateMachine-DOQou6TW.esm.js → customWatchlistStateMachine-hmRd0f2I.esm.js} +3 -4
- package/dist/deepsightLoader-DZMdYSl-.esm.js +55 -0
- package/dist/{deepsightLoader-v-dLejS-.esm.js → deepsightService-tGP53cSS.esm.js} +51 -56
- package/dist/device.esm.js +1 -1
- package/dist/document-capture.d.ts +2 -2
- package/dist/document-capture.esm.js +2 -2
- package/dist/{documentCaptureManager-BRPxqYD2.esm.js → documentCaptureManager-DUJwpKC5.esm.js} +17 -18
- package/dist/{documentCaptureManager-lEtCM320.d.ts → documentCaptureManager-DkyDtm3Y.d.ts} +11 -34
- package/dist/{documentCaptureStateMachine-D312sSIu.esm.js → documentCaptureStateMachine-B8i7GnLh.esm.js} +55 -59
- package/dist/dynamic-forms.d.ts +2 -2
- package/dist/dynamic-forms.esm.js +2 -2
- package/dist/{dynamicFormsManager-C-9Jhnd3.esm.js → dynamicFormsManager-Bxmv_9PB.esm.js} +3 -3
- package/dist/{dynamicFormsManager-D5R_uxLQ.d.ts → dynamicFormsManager-C0dHs1ty.d.ts} +3 -3
- package/dist/{dynamicFormsStateMachine-DGI_F2PP.esm.js → dynamicFormsStateMachine-CoOWTzyM.esm.js} +4 -5
- package/dist/ekyb.d.ts +5 -5
- package/dist/ekyb.esm.js +3 -3
- package/dist/{ekybManager-DeoMcZEz.esm.js → ekybManager-BBkdPxUY.esm.js} +23 -27
- package/dist/{ekybManager-BwRuGAwt.d.ts → ekybManager-BaZ_7CEu.d.ts} +4 -4
- package/dist/{ekybStateMachine-D1IJ1Z72.esm.js → ekybStateMachine-n4Iz9iLc.esm.js} +338 -14
- package/dist/ekyc.d.ts +2 -2
- package/dist/ekyc.esm.js +3 -3
- package/dist/{ekycManager-BX2d46FY.esm.js → ekycManager-BO-Lui3t.esm.js} +29 -36
- package/dist/{ekycManager-DLzDuBzI.d.ts → ekycManager-DW-ynodd.d.ts} +3 -3
- package/dist/ekycStateMachine-CDnI_NRq.esm.js +1443 -0
- package/dist/{ekycUtils-D6wfSpPN.esm.js → ekycUtils-zY8CdKJL.esm.js} +53 -3
- package/dist/electronic-signature.d.ts +1 -1
- package/dist/electronic-signature.esm.js +1 -1
- package/dist/{electronicSignatureManager-yYUc30na.esm.js → electronicSignatureManager-BtWCrz5_.esm.js} +10 -11
- package/dist/{electronicSignatureManager-Ds-KEVTq.d.ts → electronicSignatureManager-DTSLOvKR.d.ts} +2 -3
- package/dist/email.d.ts +1 -1
- package/dist/email.esm.js +2 -2
- package/dist/{emailManager-bR1N5rV_.esm.js → emailManager-ButFktRm.esm.js} +20 -26
- package/dist/{emailManager-CADXW_9X.d.ts → emailManager-Dy6omJVp.d.ts} +2 -2
- package/dist/{emailStateMachine-Bc_6oIYw.esm.js → emailStateMachine-BXtlC0NV.esm.js} +3 -4
- package/dist/{events-ijlbX_Wx.esm.js → events-Du2A4-Qr.esm.js} +203 -8
- package/dist/events.d.ts +3 -2
- package/dist/events.esm.js +1 -1
- package/dist/extensibility.d.ts +38 -38
- package/dist/extensibility.esm.js +36 -36
- package/dist/{externalFetch-BKBThAUC.esm.js → externalFetch-DrR9xshk.esm.js} +3 -2
- package/dist/face-match.d.ts +1 -1
- package/dist/face-match.esm.js +2 -2
- package/dist/{faceCaptureManagerFactory-m-7ae67q.d.ts → faceCaptureManagerFactory-1hzeS_rB.d.ts} +11 -51
- package/dist/{faceCaptureManagerFactory-B6i9QcAk.esm.js → faceCaptureManagerFactory-CwZUeYfq.esm.js} +19 -54
- package/dist/{faceCaptureSetup-DU1mjRr6.esm.js → faceCaptureSetup-CYbdKNlI.esm.js} +104 -396
- package/dist/{faceMatchManager-BnvrZM2F.d.ts → faceMatchManager-DIgG-UFS.d.ts} +1 -2
- package/dist/{faceMatchManager-Bmv0HzuY.esm.js → faceMatchManager-DWFUQjMQ.esm.js} +3 -3
- package/dist/{faceMatchStateMachine-mRIHQ3dA.esm.js → faceMatchStateMachine-CUCvlydD.esm.js} +6 -5
- package/dist/{feature-management-C8CuN0os.esm.js → feature-management-rTfjzdDa.esm.js} +3 -3
- package/dist/feature-management.esm.js +1 -1
- package/dist/field-comparison.d.ts +2 -2
- package/dist/field-comparison.esm.js +1 -1
- package/dist/{fieldComparisonManager-CBvEGxFx.d.ts → fieldComparisonManager-CUX4gza2.d.ts} +6 -3
- package/dist/{fieldComparisonManager-CC-klG0h.esm.js → fieldComparisonManager-v3knTYV_.esm.js} +35 -18
- package/dist/fiscal-qr.d.ts +1 -1
- package/dist/fiscal-qr.esm.js +1 -1
- package/dist/{fiscalQrManager-B1STmT6z.d.ts → fiscalQrManager-D0Iy7EKR.d.ts} +2 -2
- package/dist/fiscalQrManager-Dt9fHG7h.esm.js +6798 -0
- package/dist/flow-events.d.ts +1 -1
- package/dist/flow.d.ts +14 -13
- package/dist/flow.esm.js +14 -14
- package/dist/{flowCompletionService-DccgtDnm.esm.js → flowCompletionService-oiK1PjPr.esm.js} +2 -3
- package/dist/{flowServices-CdsWsppG.esm.js → flowServices-CTc-zqfN.esm.js} +11 -8
- package/dist/geolocation.d.ts +1 -1
- package/dist/geolocation.esm.js +2 -2
- package/dist/{geolocationManager-CGHBxtMb.esm.js → geolocationManager-BOdtVuR8.esm.js} +6 -7
- package/dist/{geolocationManager-Cz744E5S.d.ts → geolocationManager-Dn24g1fl.d.ts} +2 -3
- package/dist/{geolocationStateMachine-CdEb1Gn0.esm.js → geolocationStateMachine-BnGuZ3hn.esm.js} +4 -5
- package/dist/{getDeviceClass-5NYZg9s6.esm.js → getDeviceClass-bsWdEDxP.esm.js} +1 -1
- package/dist/{getParsedUserAgent-B2iFDql1.esm.js → getParsedUserAgent-DhQPeKqw.esm.js} +1 -1
- package/dist/government-validation.d.ts +1 -1
- package/dist/government-validation.esm.js +2 -2
- package/dist/{governmentValidationManager-D02vT4yY.d.ts → governmentValidationManager-B82zOut8.d.ts} +3 -3
- package/dist/{governmentValidationManager-CacFOtKO.esm.js → governmentValidationManager-BtXWHICu.esm.js} +3 -3
- package/dist/{governmentValidationStateMachine-CoaZOSTP.esm.js → governmentValidationStateMachine-COL-Vs48.esm.js} +3 -4
- package/dist/home.d.ts +3 -26
- package/dist/home.esm.js +2 -2
- package/dist/http.esm.js +1 -1
- package/dist/id-ocr.d.ts +1 -1
- package/dist/id-ocr.esm.js +2 -2
- package/dist/id-selfie-flow.d.ts +6 -9
- package/dist/id-selfie-flow.esm.js +23 -28
- package/dist/id-verification.d.ts +1 -1
- package/dist/id-verification.esm.js +2 -2
- package/dist/id.d.ts +4 -4
- package/dist/id.esm.js +4 -205
- package/dist/{idCaptureDefaults-Dl64Trv5.esm.js → idCaptureDefaults-BGsG2OAs.esm.js} +7 -5
- package/dist/{idCaptureManager-BHwL2Z0V.d.ts → idCaptureManager-0M02hSuC.d.ts} +242 -98
- package/dist/{idCaptureManager-BNmVJQkd.esm.js → idCaptureManager-BKedt48Y.esm.js} +276 -210
- package/dist/{idCaptureServices-dtDG2HXS.esm.js → idCaptureServices-D0p_RFqk.esm.js} +21 -40
- package/dist/{idCaptureStateMachine-BbiZD3uf.esm.js → idCaptureStateMachine-CxwoN5ff.esm.js} +992 -872
- package/dist/{idOcrManager-ByWuQ4ej.esm.js → idOcrManager-D3-HNMXP.esm.js} +3 -3
- package/dist/{idOcrManager-CFlDwUvN.d.ts → idOcrManager-DT3kPIB3.d.ts} +3 -4
- package/dist/{idOcrStateMachine-Bt_abXQQ.esm.js → idOcrStateMachine-DyENX6Ki.esm.js} +3 -4
- package/dist/{idVerificationManager-BB4Pj_N6.d.ts → idVerificationManager-BJapZfpy.d.ts} +2 -3
- package/dist/{idVerificationManager-DT42c77H.esm.js → idVerificationManager-iWz7Avkr.esm.js} +3 -3
- package/dist/{idVerificationStateMachine-DbDVIh9t.esm.js → idVerificationStateMachine-CL1kUdBe.esm.js} +3 -4
- package/dist/identity-reuse.d.ts +2 -2
- package/dist/identity-reuse.esm.js +2 -2
- package/dist/{identityReuseManager-BXEBBI3N.d.ts → identityReuseManager-B1birg5X.d.ts} +162 -44
- package/dist/{identityReuseManager-yG3acUrQ.esm.js → identityReuseManager-CD1ucp1d.esm.js} +26 -13
- package/dist/{identityReuseStateMachine-BhAkuIra.esm.js → identityReuseStateMachine-DfV81wQC.esm.js} +89 -24
- package/dist/{index-CeaC32qI.d.ts → index-CKQ9QBZP.d.ts} +2 -2
- package/dist/index-DpTj5PFb.d.ts +1 -0
- package/dist/index.d.ts +1 -1
- package/dist/index.esm.js +1 -1
- package/dist/{invokeOnCaptureCallback-BjzPjJ_p.esm.js → invokeOnCaptureCallback-DYrkOXO6.esm.js} +1 -1
- package/dist/lamejs-B6TzhU5q.esm.js +10 -0
- package/dist/mandatory-consent.d.ts +2 -2
- package/dist/mandatory-consent.esm.js +2 -2
- package/dist/{mandatoryConsentManager-7dI0D08q.esm.js → mandatoryConsentManager-Cwqx1nK7.esm.js} +3 -3
- package/dist/{mandatoryConsentManager-DFVm_i2B.d.ts → mandatoryConsentManager-okPILEru.d.ts} +8 -9
- package/dist/{mandatoryConsentStateMachine-DC5Mo6M1.esm.js → mandatoryConsentStateMachine-pXWqAHo_.esm.js} +3 -4
- package/dist/{multipartRecordingService-mwKFTlhR.esm.js → multipartRecordingService-CLwrF5wD.esm.js} +1 -2
- package/dist/{permissionGuards-D6TfVop2.esm.js → permissionGuards-gcy3U0SL.esm.js} +1 -1
- package/dist/{permissionServices-EY3_Vx6c.esm.js → permissionServices-Ca-tSNhT.esm.js} +34 -3
- package/dist/phone-number.d.ts +24 -0
- package/dist/phone-number.esm.js +1922 -0
- package/dist/phone.d.ts +1 -1
- package/dist/phone.esm.js +2 -2
- package/dist/{phoneManager-BBU8Lq0O.d.ts → phoneManager-BO-LTih5.d.ts} +16 -3
- package/dist/{phoneManager-IjhSv5XS.esm.js → phoneManager-KKUq-Vgo.esm.js} +31 -22
- package/dist/{phoneStateMachine-CXdXufKg.esm.js → phoneStateMachine-D2QWS2cu.esm.js} +38 -20
- package/dist/phoneValidation-DnBcNUNh.esm.js +48 -0
- package/dist/qe-signature.d.ts +2 -2
- package/dist/qe-signature.esm.js +1 -1
- package/dist/redirect-to-mobile.d.ts +1 -1
- package/dist/redirect-to-mobile.esm.js +2 -2
- package/dist/{redirectToMobileManager-BD2PvT5B.d.ts → redirectToMobileManager-CVsvpVbQ.d.ts} +2 -2
- package/dist/{redirectToMobileManager-FLEWJtv8.esm.js → redirectToMobileManager-uHW3dyuQ.esm.js} +4 -4
- package/dist/{redirectToMobileStateMachine-CSWWgUTO.esm.js → redirectToMobileStateMachine-b-H-ipGM.esm.js} +4 -5
- package/dist/{rolldown-runtime-FDOR9p9I.esm.js → rolldown-runtime-B-1-B7_t.esm.js} +10 -1
- package/dist/{runChildModule-B2Y_hlix.esm.js → runChildModule-CPa0i2_C.esm.js} +13 -12
- package/dist/safeStorage-UxDrnjwa.esm.js +35 -0
- package/dist/{sdkVersion-N1UiyFiY.esm.js → sdkVersion-BtROs6OA.esm.js} +1 -1
- package/dist/selfie.d.ts +4 -4
- package/dist/selfie.esm.js +12 -12
- package/dist/selfieErrorUtils-sMc0MaNh.esm.js +21 -0
- package/dist/{selfieManager-BSZG891S.d.ts → selfieManager-BJdNu_nd.d.ts} +2 -8
- package/dist/{selfieManager-AS6wfUvZ.esm.js → selfieManager-Ch9xJbWJ.esm.js} +6 -6
- package/dist/selfieStateMachine-DT8QCfKR.esm.js +41 -0
- package/dist/{session-BESZc05k.esm.js → session-CNNTckUS.esm.js} +5 -6
- package/dist/session.d.ts +15 -3
- package/dist/session.esm.js +30 -5
- package/dist/sessionInitializer-DVWMJh25.esm.js +973 -0
- package/dist/{setup-BuPbxpwF.esm.js → setup-B7ehQ-lf.esm.js} +155 -140
- package/dist/{setup-Cyko6cAn.d.ts → setup-YPKTUCY5.d.ts} +42 -15
- package/dist/signature.d.ts +1 -1
- package/dist/signature.esm.js +2 -2
- package/dist/{signatureManager-DGBSWz2_.d.ts → signatureManager-BpVt_Jv7.d.ts} +2 -2
- package/dist/{signatureManager-B72np4ZO.esm.js → signatureManager-f_dPAGXn.esm.js} +7 -11
- package/dist/{signatureStateMachine-ce_XMA3l.esm.js → signatureStateMachine-C-nUq_oq.esm.js} +3 -4
- package/dist/splitTrackedName-3zJRd2RD.esm.js +19 -0
- package/dist/{src-35ekGRzK.esm.js → src-DJAJjRYQ.esm.js} +1 -1
- package/dist/{stats-CZcy2J53.esm.js → stats-BEvexnKC.esm.js} +1 -2
- package/dist/stats.esm.js +1 -1
- package/dist/{sessionInitializer-CnhAkMUN.esm.js → thumbmark.esm-CRc0cYvz.esm.js} +33 -776
- package/dist/{trueSightService-M5VpCo96.esm.js → trueSightService-BzLdXpmJ.esm.js} +1391 -709
- package/dist/trust-graph.d.ts +1 -2
- package/dist/trust-graph.esm.js +2 -2
- package/dist/{types-C0oWGUzg.d.ts → types-0L-eFDmr.d.ts} +1 -1
- package/dist/{types-C1g9itHE.d.ts → types-B6HsSzpk.d.ts} +6 -7
- package/dist/{types-DEGVXwsk2.d.ts → types-BAxn7MpY.d.ts} +110 -62
- package/dist/{types-BfgmV7s7.d.ts → types-BQA7lRDV.d.ts} +1 -1
- package/dist/{types-Cx-1zo-i.d.ts → types-BvLo3U4u.d.ts} +1 -1
- package/dist/{types-Bx-BWveD.d.ts → types-CK8Jbjkp.d.ts} +1 -1
- package/dist/{types-CxGdmzxa.d.ts → types-Ckir_BEs.d.ts} +1 -1
- package/dist/{types-BjSly8cp.d.ts → types-DUnFZ08M.d.ts} +1 -1
- package/dist/{types-ESdtnHtg.d.ts → types-yPH8lAH-.d.ts} +3 -4
- package/dist/types-zOgZqMni.d.ts +6 -0
- package/dist/{urlUtils-D6phjq1-.esm.js → urlUtils-6jsE6rKp.esm.js} +9 -1
- package/dist/video-selfie.d.ts +6 -9
- package/dist/video-selfie.esm.js +1390 -1349
- package/dist/{videoSelfieCameraWarmer-q9ZjvXu9.esm.js → videoSelfieCameraWarmer-DWoFBJAn.esm.js} +10 -11
- package/dist/{videoSelfieFlowModuleMachine-BUe2uACW.esm.js → videoSelfieFlowModuleMachine-BCFVHBQ1.esm.js} +1 -1
- package/dist/{videoSelfieStepDetector-ChYgFM15.d.ts → videoSelfieStepDetector-CGsTltqB.d.ts} +4 -4
- package/dist/videoTrimByCopy-BFfAiNpv.esm.js +15901 -0
- package/dist/{warmup-ChDwHSel.esm.js → warmup-BElYWRh7.esm.js} +348 -11
- package/dist/{warmup-Cis2p6O0.d.ts → warmup-BO57syF6.d.ts} +8 -0
- package/dist/wasm.d.ts +2 -2
- package/dist/wasm.esm.js +3 -4
- package/dist/{wasmDsFlagSync-DYrLUEII.esm.js → wasmDsFlagSync-CYj5LL9z.esm.js} +1 -1
- package/dist/{wasmWebClient-B7baE-Wf.esm.js → wasmWebClient-BjZw_7OB.esm.js} +570 -33
- package/dist/watchlist-for-business.d.ts +1 -1
- package/dist/watchlist-for-business.esm.js +2 -2
- package/dist/watchlist.d.ts +1 -1
- package/dist/watchlist.esm.js +2 -2
- package/dist/{watchlistForBusinessManager-CsnJnG-C.d.ts → watchlistForBusinessManager-B3GDPZrr.d.ts} +2 -2
- package/dist/{watchlistForBusinessManager-CIMkpEhu.esm.js → watchlistForBusinessManager-CZZOFkGl.esm.js} +7 -5
- package/dist/{watchlistForBusinessStateMachine-CJ-MvUre.esm.js → watchlistForBusinessStateMachine-B66E7jud.esm.js} +3 -4
- package/dist/{watchlistManager-DLXef90v.d.ts → watchlistManager-DJQOd8Pw.d.ts} +2 -2
- package/dist/{watchlistManager-CixcLNDT.esm.js → watchlistManager-DXtX94SN.esm.js} +3 -3
- package/dist/{watchlistStateMachine-CBqk2w-h.esm.js → watchlistStateMachine-McALifag.esm.js} +3 -4
- package/dist/workflow.d.ts +34 -5
- package/dist/workflow.esm.js +64 -47
- package/dist/{xstate-actors.esm-BXeQ-Ucz.esm.js → xstate-actors.esm-8Gzepa_A.esm.js} +1 -1
- package/dist/{xstate.esm-BuFLFuzz.esm.js → xstate.esm-DSajW7CJ.esm.js} +24 -10
- package/package.json +13 -5
- package/dist/Actor-iTq7YY48.d.ts +0 -1
- package/dist/BrowserDiagnosticsCryptoProvider-BuzqvbhN.esm.js +0 -77
- package/dist/StateMachine-EDpYWy0i.d.ts +0 -6
- package/dist/api-Bx3gKW_y.esm.js +0 -129
- package/dist/fiscalQrManager-DbCVMIBx.esm.js +0 -34143
- package/dist/index-B8weJxmL.d.ts +0 -1
- package/dist/selfieErrorUtils-UiQ46EBa.esm.js +0 -116
- package/dist/selfieStateMachine-DY7vJVNY.esm.js +0 -71
- package/dist/types-BN5RPPIZ.esm.js +0 -34
- package/dist/types-Bt9RuRqt.d.ts +0 -6
- package/dist/virtualCameraCheck-Cjab7FTI.esm.js +0 -48
- /package/dist/{types-BSBzhHRH.d.ts → types-BSBzhHRH2.d.ts} +0 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { A as buildModelVariantSources, C as isDefaultCdnWasmConfig, D as WASM_PIPELINE_MODELS, M as resolveWasmSource, N as reportWasmIntegritySummary, T as WASM_MODEL_FILES, f as rearmWasmCallDiagnostics, g as emitWasmDiagnostic, h as acquireWasmStorageFallback, j as missingWasmModelError, k as WASM_PIPELINE_OPTIONAL_MODEL_NAMES, l as notePipelineStatePulled, m as loadWasmModule, n as createWebApiHostAdapter, p as resetWasmCallDiagnostics, v as SemaphoreProvider, y as DEFAULT_WASM_VERSION } from "./wasmWebClient-BjZw_7OB.esm.js";
|
|
2
|
+
import { t as getTimestamp } from "./IBrowserEnvironmentCapability-DEaRRk-R.esm.js";
|
|
2
3
|
//#region ../infra/src/wasm/wasmEnumMaps.ts
|
|
3
4
|
function pipelineTypeToWasmEnum(wasmModule, type) {
|
|
4
5
|
switch (type) {
|
|
@@ -45,6 +46,280 @@ function idCaptureModelTypeFromWasmEnum(wasmModule, type) {
|
|
|
45
46
|
}
|
|
46
47
|
}
|
|
47
48
|
//#endregion
|
|
49
|
+
//#region ../infra/src/wasm/diagnosticsSink.ts
|
|
50
|
+
/**
|
|
51
|
+
* Receiver for the in-binary TrueSight diagnostics sensor (ENG-48677 WS2,
|
|
52
|
+
* ml-wasm-kit #569, shipped in v2.14.52).
|
|
53
|
+
*
|
|
54
|
+
* Seam contract v1: the kit calls the sink SYNCHRONOUSLY from C++ call sites
|
|
55
|
+
* with a JSON string
|
|
56
|
+
* `{"v":1,"tLast":<elapsedMs>,"entries":[{t,l,c,sub,msg,n}]}`
|
|
57
|
+
* where `t`/`tLast` share the kit logger's start-time anchor, `l` is
|
|
58
|
+
* `"E"|"W"|"I"`, and the tag is split into `c`/`sub` on its first dot. The
|
|
59
|
+
* handler is enqueue-only: it never calls back into WASM and never throws
|
|
60
|
+
* into the kit (the SDK registers on the raw embind handle, so the kit's own
|
|
61
|
+
* JS wrapper guard does not apply).
|
|
62
|
+
*
|
|
63
|
+
* The mode is a property of the binary, detected at install:
|
|
64
|
+
* - `sink` — `setDiagnosticsSink` exists (v2.14.52+): batches are pushed,
|
|
65
|
+
* and finalize drains the unsent tail via `drainDiagnostics`.
|
|
66
|
+
* - `fallback` — only `getAppLogs` exists (the pinned v2.14.50-post1): the
|
|
67
|
+
* plain-text `ClientLogger::render()` grammar (optional leading
|
|
68
|
+
* `... <k> dropped`, then `+<elapsedMs> <E|W|I> <tag>: <msg>[ (xN)]`) is
|
|
69
|
+
* parsed at finalize. Nothing in v2.14.50-post1 writes that logger, so in
|
|
70
|
+
* practice it is empty until the bump.
|
|
71
|
+
* - `none` — neither binding.
|
|
72
|
+
* No TrueSight change is needed when `DEFAULT_WASM_VERSION` moves past the
|
|
73
|
+
* sensor release: the next install simply detects `sink`.
|
|
74
|
+
*/
|
|
75
|
+
const SUBSYSTEM_MAX_CHARS = 40;
|
|
76
|
+
const LAST_ERROR_CLAMP_CHARS = 300;
|
|
77
|
+
/** Below this parsed/candidate ratio the fallback degrades to count + last error. */
|
|
78
|
+
const FALLBACK_MIN_PARSE_RATIO = .7;
|
|
79
|
+
/** Anchor sanity bound: computed times further out than this use receipt time. */
|
|
80
|
+
const MAX_CLOCK_SKEW_MS = 1440 * 60 * 1e3;
|
|
81
|
+
const APP_LOGS_DROPPED_RE = /^\.\.\. (\d+) dropped$/;
|
|
82
|
+
const APP_LOGS_LINE_RE = /^\+(\d+) ([EWI]) (.+?): (.*)$/;
|
|
83
|
+
const DEDUP_SUFFIX_RE = / \(x(\d+)\)$/;
|
|
84
|
+
/**
|
|
85
|
+
* Kit tag (`c.sub`) → TrueSight category. The kit's tag vocabulary is its
|
|
86
|
+
* own (`camera.cycle`, `pipeline.core`, `bridge`, …), so only the
|
|
87
|
+
* capture-pipeline tags map to a scan category; everything else is `other`.
|
|
88
|
+
*/
|
|
89
|
+
const KIT_TAG_CATEGORIES = {
|
|
90
|
+
"pipeline.id": "idScan",
|
|
91
|
+
"pipeline.barcode": "idScan",
|
|
92
|
+
"pipeline.face": "faceScan",
|
|
93
|
+
"pipeline.selfie": "faceScan",
|
|
94
|
+
"pipeline.liveness": "faceScan"
|
|
95
|
+
};
|
|
96
|
+
/** The kit's eviction marker: `{c:"diag",sub:"logger",msg:"dropped",n:k}`. */
|
|
97
|
+
const DROPPED_SUBSYSTEM = "diag.logger";
|
|
98
|
+
let mode = null;
|
|
99
|
+
let boundApi = null;
|
|
100
|
+
let sessionEpochMs = null;
|
|
101
|
+
let lastSeenRelativeMs = 0;
|
|
102
|
+
/** Fallback: `getAppLogs` re-renders the whole ring, so emit only newer lines. */
|
|
103
|
+
let fallbackWatermarkMs = -1;
|
|
104
|
+
let unsupportedVersionNoted = false;
|
|
105
|
+
let batchParseFailureNoted = false;
|
|
106
|
+
/** Drains run at every snapshot rebuild, so the degraded note is per session. */
|
|
107
|
+
let fallbackDegradedNoted = false;
|
|
108
|
+
function toCategory(category, sub) {
|
|
109
|
+
return KIT_TAG_CATEGORIES[`${category}.${sub}`] ?? "other";
|
|
110
|
+
}
|
|
111
|
+
function toLevel(value) {
|
|
112
|
+
switch (value) {
|
|
113
|
+
case "E": return "error";
|
|
114
|
+
case "W": return "warning";
|
|
115
|
+
case "I": return "info";
|
|
116
|
+
default: return "debug";
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
/** The `wasm.` prefix comes from the core handler; this builds the dotted tail. */
|
|
120
|
+
function toSubsystem(category, sub) {
|
|
121
|
+
const cleaned = `${category}${sub !== "" ? `.${sub}` : ""}`.replace(/[^\w.-]/g, "").slice(0, SUBSYSTEM_MAX_CHARS);
|
|
122
|
+
return cleaned === "" ? "kit" : cleaned;
|
|
123
|
+
}
|
|
124
|
+
function absoluteTimestampMs(relativeMs, receivedAtMs) {
|
|
125
|
+
if (sessionEpochMs === null || !Number.isFinite(relativeMs)) return receivedAtMs;
|
|
126
|
+
const computed = sessionEpochMs + relativeMs;
|
|
127
|
+
if (computed > receivedAtMs || receivedAtMs - computed > MAX_CLOCK_SKEW_MS) return receivedAtMs;
|
|
128
|
+
return computed;
|
|
129
|
+
}
|
|
130
|
+
function emitKitEntry(level, category, sub, message, count, timestampMs) {
|
|
131
|
+
const subsystem = toSubsystem(category, sub);
|
|
132
|
+
const dropped = subsystem === DROPPED_SUBSYSTEM && message === "dropped";
|
|
133
|
+
emitWasmDiagnostic({
|
|
134
|
+
level,
|
|
135
|
+
subsystem,
|
|
136
|
+
category: toCategory(category, sub),
|
|
137
|
+
message: dropped ? `dropped entries=${count}` : count > 1 ? `${message} (x${count})` : message,
|
|
138
|
+
timestampMs
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
function processBatch(batch, receivedAtMs) {
|
|
142
|
+
if (typeof batch !== "string" || batch === "") return;
|
|
143
|
+
let decoded;
|
|
144
|
+
try {
|
|
145
|
+
decoded = JSON.parse(batch);
|
|
146
|
+
} catch {
|
|
147
|
+
if (!batchParseFailureNoted) {
|
|
148
|
+
batchParseFailureNoted = true;
|
|
149
|
+
emitWasmDiagnostic({
|
|
150
|
+
level: "warning",
|
|
151
|
+
subsystem: "sink",
|
|
152
|
+
category: "other",
|
|
153
|
+
message: `batch parse failed len=${batch.length}`
|
|
154
|
+
});
|
|
155
|
+
}
|
|
156
|
+
return;
|
|
157
|
+
}
|
|
158
|
+
if (decoded === null || typeof decoded !== "object") return;
|
|
159
|
+
const record = decoded;
|
|
160
|
+
if (record.v !== 1) {
|
|
161
|
+
if (!unsupportedVersionNoted) {
|
|
162
|
+
unsupportedVersionNoted = true;
|
|
163
|
+
emitWasmDiagnostic({
|
|
164
|
+
level: "warning",
|
|
165
|
+
subsystem: "sink",
|
|
166
|
+
category: "other",
|
|
167
|
+
message: `unsupported batch v=${String(record.v)}`
|
|
168
|
+
});
|
|
169
|
+
}
|
|
170
|
+
return;
|
|
171
|
+
}
|
|
172
|
+
const tLast = typeof record.tLast === "number" ? record.tLast : 0;
|
|
173
|
+
if (sessionEpochMs === null) sessionEpochMs = receivedAtMs - tLast;
|
|
174
|
+
else if (tLast < lastSeenRelativeMs) {
|
|
175
|
+
sessionEpochMs = receivedAtMs - tLast;
|
|
176
|
+
emitWasmDiagnostic({
|
|
177
|
+
level: "info",
|
|
178
|
+
subsystem: "sink",
|
|
179
|
+
category: "other",
|
|
180
|
+
message: "re-anchored"
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
lastSeenRelativeMs = tLast;
|
|
184
|
+
if (!Array.isArray(record.entries)) return;
|
|
185
|
+
for (const raw of record.entries) {
|
|
186
|
+
if (raw === null || typeof raw !== "object") continue;
|
|
187
|
+
const entry = raw;
|
|
188
|
+
const message = typeof entry.msg === "string" ? entry.msg : "";
|
|
189
|
+
if (message === "") continue;
|
|
190
|
+
emitKitEntry(toLevel(entry.l), typeof entry.c === "string" ? entry.c : "", typeof entry.sub === "string" ? entry.sub : "", message, typeof entry.n === "number" && entry.n > 1 ? entry.n : 1, absoluteTimestampMs(typeof entry.t === "number" ? entry.t : NaN, receivedAtMs));
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/** The value handed to the kit's `setDiagnosticsSink` — never throws. */
|
|
194
|
+
function receiveBatch(batch) {
|
|
195
|
+
try {
|
|
196
|
+
processBatch(batch, getTimestamp());
|
|
197
|
+
} catch {}
|
|
198
|
+
}
|
|
199
|
+
function parseAppLogsText(text, receivedAtMs) {
|
|
200
|
+
if (text === "") return;
|
|
201
|
+
const lines = text.split("\n");
|
|
202
|
+
const dropped = lines[0]?.match(APP_LOGS_DROPPED_RE);
|
|
203
|
+
if (dropped) lines.shift();
|
|
204
|
+
const candidates = lines.filter((line) => line !== "");
|
|
205
|
+
const parsed = [];
|
|
206
|
+
for (const line of candidates) {
|
|
207
|
+
const match = line.match(APP_LOGS_LINE_RE);
|
|
208
|
+
if (!match) continue;
|
|
209
|
+
const dedup = match[4].match(DEDUP_SUFFIX_RE);
|
|
210
|
+
parsed.push({
|
|
211
|
+
elapsedMs: Number(match[1]),
|
|
212
|
+
level: toLevel(match[2]),
|
|
213
|
+
tag: match[3],
|
|
214
|
+
message: dedup ? match[4].slice(0, -dedup[0].length) : match[4],
|
|
215
|
+
count: dedup ? Number(dedup[1]) : 1
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
const maxElapsedMs = parsed.reduce((max, line) => Math.max(max, line.elapsedMs), 0);
|
|
219
|
+
if (maxElapsedMs < fallbackWatermarkMs) fallbackWatermarkMs = -1;
|
|
220
|
+
const fresh = parsed.filter((line) => line.elapsedMs > fallbackWatermarkMs);
|
|
221
|
+
if (dropped && fresh.length > 0) emitKitEntry("warning", "diag", "logger", "dropped", Number(dropped[1]), receivedAtMs);
|
|
222
|
+
if (candidates.length > 0 && parsed.length / candidates.length < FALLBACK_MIN_PARSE_RATIO) {
|
|
223
|
+
if (fallbackDegradedNoted) return;
|
|
224
|
+
fallbackDegradedNoted = true;
|
|
225
|
+
emitWasmDiagnostic({
|
|
226
|
+
level: "warning",
|
|
227
|
+
subsystem: "sink",
|
|
228
|
+
category: "other",
|
|
229
|
+
message: `fallback drain unparsed lines=${candidates.length} parsed=${parsed.length}`
|
|
230
|
+
});
|
|
231
|
+
const lastError = candidates.filter((line) => /^\+\d+ E /.test(line)).pop();
|
|
232
|
+
if (lastError !== void 0) emitWasmDiagnostic({
|
|
233
|
+
level: "error",
|
|
234
|
+
subsystem: "sink",
|
|
235
|
+
category: "other",
|
|
236
|
+
message: `last error: ${lastError.slice(0, LAST_ERROR_CLAMP_CHARS)}`
|
|
237
|
+
});
|
|
238
|
+
return;
|
|
239
|
+
}
|
|
240
|
+
const drainT0 = receivedAtMs - maxElapsedMs;
|
|
241
|
+
for (const line of fresh) {
|
|
242
|
+
const dotIndex = line.tag.indexOf(".");
|
|
243
|
+
emitKitEntry(line.level, dotIndex === -1 ? line.tag : line.tag.slice(0, dotIndex), dotIndex === -1 ? "" : line.tag.slice(dotIndex + 1), line.message, line.count, drainT0 + line.elapsedMs);
|
|
244
|
+
}
|
|
245
|
+
fallbackWatermarkMs = Math.max(fallbackWatermarkMs, maxElapsedMs);
|
|
246
|
+
}
|
|
247
|
+
function emitModeLine() {
|
|
248
|
+
emitWasmDiagnostic({
|
|
249
|
+
level: "info",
|
|
250
|
+
subsystem: "sink",
|
|
251
|
+
category: "other",
|
|
252
|
+
message: `diagnostics mode=${mode ?? "none"} pinnedVersion=${DEFAULT_WASM_VERSION}`
|
|
253
|
+
});
|
|
254
|
+
}
|
|
255
|
+
/**
|
|
256
|
+
* Feature-detects the binary's diagnostics surface and, in sink mode,
|
|
257
|
+
* registers the push callback. Called from `WasmRuntime.initialize()` right
|
|
258
|
+
* after the UtilityApi exists, so even startup errors are pushed.
|
|
259
|
+
* Re-registering is idempotent on the kit side (a process-wide bridge).
|
|
260
|
+
*/
|
|
261
|
+
function installWasmDiagnosticsSink(utilityApi) {
|
|
262
|
+
boundApi = utilityApi;
|
|
263
|
+
if (typeof utilityApi.setDiagnosticsSink === "function") {
|
|
264
|
+
mode = "sink";
|
|
265
|
+
try {
|
|
266
|
+
utilityApi.setDiagnosticsSink(receiveBatch);
|
|
267
|
+
} catch {}
|
|
268
|
+
} else if (typeof utilityApi.getAppLogs === "function") mode = "fallback";
|
|
269
|
+
else mode = "none";
|
|
270
|
+
emitModeLine();
|
|
271
|
+
return mode;
|
|
272
|
+
}
|
|
273
|
+
/**
|
|
274
|
+
* Pulls whatever the kit has not delivered yet into the record. Invoked
|
|
275
|
+
* synchronously by TrueSight before it builds any record — the terminal and
|
|
276
|
+
* every interrupted snapshot — so it runs many times per session and stays
|
|
277
|
+
* idempotent: a drain with nothing new emits nothing. The runtime outlives
|
|
278
|
+
* `reset()`, so it keeps running for every later session on the page.
|
|
279
|
+
*
|
|
280
|
+
* Delivery is at most once. The kit marks entries sent as it hands them
|
|
281
|
+
* over, so nothing is ever duplicated, but a batch the kit pushes while no
|
|
282
|
+
* session collects (between `reset()` and the next `setup()`) is lost, and
|
|
283
|
+
* kit lines logged after a session finalized ride the next session's record.
|
|
284
|
+
*/
|
|
285
|
+
function drainWasmDiagnostics() {
|
|
286
|
+
if (boundApi === null) return;
|
|
287
|
+
try {
|
|
288
|
+
if (mode === "sink" && typeof boundApi.drainDiagnostics === "function") processBatch(boundApi.drainDiagnostics(), getTimestamp());
|
|
289
|
+
else if (mode === "fallback" && typeof boundApi.getAppLogs === "function") parseAppLogsText(boundApi.getAppLogs(), getTimestamp());
|
|
290
|
+
} catch {}
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Starts a new SDK session's view of an already-running runtime: per-session
|
|
294
|
+
* budgets re-arm, and the mode line is repeated so each record states it.
|
|
295
|
+
* Called from `setup()`; a no-op for the mode line before the first install.
|
|
296
|
+
*/
|
|
297
|
+
function rearmWasmDiagnostics() {
|
|
298
|
+
rearmWasmCallDiagnostics();
|
|
299
|
+
unsupportedVersionNoted = false;
|
|
300
|
+
batchParseFailureNoted = false;
|
|
301
|
+
fallbackDegradedNoted = false;
|
|
302
|
+
if (mode !== null) emitModeLine();
|
|
303
|
+
}
|
|
304
|
+
/**
|
|
305
|
+
* Runtime teardown (`WasmRuntime.freeResources()`). The kit's sink stays
|
|
306
|
+
* registered in its process-wide bridge; the next install re-registers it.
|
|
307
|
+
*/
|
|
308
|
+
function resetWasmDiagnosticsSink() {
|
|
309
|
+
mode = null;
|
|
310
|
+
boundApi = null;
|
|
311
|
+
sessionEpochMs = null;
|
|
312
|
+
lastSeenRelativeMs = 0;
|
|
313
|
+
fallbackWatermarkMs = -1;
|
|
314
|
+
unsupportedVersionNoted = false;
|
|
315
|
+
batchParseFailureNoted = false;
|
|
316
|
+
fallbackDegradedNoted = false;
|
|
317
|
+
}
|
|
318
|
+
/** The detected mode, or `null` before the runtime installed the receiver. */
|
|
319
|
+
function getWasmDiagnosticsMode() {
|
|
320
|
+
return mode;
|
|
321
|
+
}
|
|
322
|
+
//#endregion
|
|
48
323
|
//#region ../infra/src/wasm/CameraCycleOwnershipDomain.ts
|
|
49
324
|
const CAMERA_CYCLE_OWNERSHIP_DOMAIN = Symbol("cameraCycleOwnershipDomain");
|
|
50
325
|
var CameraCycleOwnershipDomain = class {
|
|
@@ -120,6 +395,9 @@ function deleteWasmHandle(firstFailure, handle) {
|
|
|
120
395
|
function releaseCameraCycleResources(stream, cameraCycleApi) {
|
|
121
396
|
return attemptCleanup(stopStreamTracks(stream), () => cameraCycleApi?.rcc());
|
|
122
397
|
}
|
|
398
|
+
function isWasmModelEntry(source) {
|
|
399
|
+
return typeof source === "object" && !(source instanceof ArrayBuffer) && !(source instanceof Uint8Array) && "file" in source;
|
|
400
|
+
}
|
|
123
401
|
var WasmRuntime = class WasmRuntime {
|
|
124
402
|
constructor(loadModule = loadWasmModule) {
|
|
125
403
|
this.loadModule = loadModule;
|
|
@@ -153,6 +431,8 @@ var WasmRuntime = class WasmRuntime {
|
|
|
153
431
|
this.usedSimd_ = simdUsed;
|
|
154
432
|
this.workflowApiUtilities = new this.wasmModule.WorkflowApiUtilities();
|
|
155
433
|
this.utilityApi = new this.wasmModule.UtilityApi();
|
|
434
|
+
this.utilityApi.setProductionMode(module.showLogs !== true);
|
|
435
|
+
installWasmDiagnosticsSink(this.utilityApi);
|
|
156
436
|
this.idCaptureWasmApi = new this.wasmModule.IdCaptureApi();
|
|
157
437
|
this.faceProcessingWasmApi = new this.wasmModule.FaceProcessingApi();
|
|
158
438
|
this.cameraCycleApi = new this.wasmModule.CameraCycleApi();
|
|
@@ -237,6 +517,8 @@ var WasmRuntime = class WasmRuntime {
|
|
|
237
517
|
this.pipelines_ = null;
|
|
238
518
|
this.isInitialized_ = false;
|
|
239
519
|
if (typeof window !== "undefined") window.wasmArrayBuffer = null;
|
|
520
|
+
resetWasmCallDiagnostics();
|
|
521
|
+
resetWasmDiagnosticsSink();
|
|
240
522
|
let firstFailure = releaseCameraCycleResources(stream, cameraCycleApi);
|
|
241
523
|
firstFailure = deleteWasmHandle(firstFailure, modelsBuffers);
|
|
242
524
|
firstFailure = deleteWasmHandle(firstFailure, workflowApiUtilities);
|
|
@@ -301,10 +583,14 @@ var WasmRuntime = class WasmRuntime {
|
|
|
301
583
|
const sizes = new (this.requireWasmModule(message)).VectorInt();
|
|
302
584
|
sizeVectors.push(sizes);
|
|
303
585
|
for (const path of modelsPaths) {
|
|
304
|
-
const
|
|
586
|
+
const file = isWasmModelEntry(path) ? path.file : void 0;
|
|
587
|
+
const resolvedSource = this.resolveModelSource(isWasmModelEntry(path) ? path.source : path);
|
|
305
588
|
let model = this.loadedModels.get(resolvedSource);
|
|
306
589
|
if (!model) {
|
|
307
|
-
model = await resolveWasmSource(resolvedSource,
|
|
590
|
+
model = await resolveWasmSource(resolvedSource, {
|
|
591
|
+
kind: "model",
|
|
592
|
+
file
|
|
593
|
+
});
|
|
308
594
|
this.loadedModels.set(resolvedSource, model);
|
|
309
595
|
}
|
|
310
596
|
sizes.push_back(model.byteLength);
|
|
@@ -346,7 +632,9 @@ var WasmRuntime = class WasmRuntime {
|
|
|
346
632
|
this.requireWorkflowApiUtilities(message).initializeWorkflows();
|
|
347
633
|
}
|
|
348
634
|
getPipelineState() {
|
|
349
|
-
|
|
635
|
+
const state = this.requireWorkflowApiUtilities("Unable to get pipeline state, cpp API hasn't been initialized").getWorkflowState();
|
|
636
|
+
notePipelineStatePulled();
|
|
637
|
+
return state;
|
|
350
638
|
}
|
|
351
639
|
getCurrentPipeline() {
|
|
352
640
|
const workflowApiUtilities = this.requireWorkflowApiUtilities("Unable to get current pipeline, cpp API hasn't been initialized");
|
|
@@ -477,6 +765,7 @@ let wasmError = null;
|
|
|
477
765
|
let loadedPipelines = [];
|
|
478
766
|
let lastConfig = null;
|
|
479
767
|
let lastModelVariant = null;
|
|
768
|
+
let warmupFacts = null;
|
|
480
769
|
let pipelinesInFlight = [];
|
|
481
770
|
function mapPipelineToWasmType(pipeline) {
|
|
482
771
|
switch (pipeline) {
|
|
@@ -526,16 +815,22 @@ function resolveConfiguredModelSource(config, modelFile, pipeline, modelsBasePat
|
|
|
526
815
|
if (current === void 0) {
|
|
527
816
|
if (config.selfHosted) throw missingWasmModelError(modelFile, pipeline);
|
|
528
817
|
if (!modelsBasePath) throw new Error("[Incode SDK] modelsBasePath is required when wasmPath is a byte source.");
|
|
529
|
-
return
|
|
818
|
+
return {
|
|
819
|
+
file: modelFile,
|
|
820
|
+
source: buildModelVariantSources(modelsBasePath, modelFile)
|
|
821
|
+
};
|
|
530
822
|
}
|
|
531
823
|
const legacy = config.legacyModelUrls?.[modelFile];
|
|
532
|
-
return
|
|
533
|
-
|
|
534
|
-
legacy
|
|
824
|
+
return {
|
|
825
|
+
file: modelFile,
|
|
826
|
+
source: legacy === void 0 ? current : {
|
|
827
|
+
current,
|
|
828
|
+
legacy
|
|
829
|
+
}
|
|
535
830
|
};
|
|
536
831
|
}
|
|
537
832
|
/**
|
|
538
|
-
*
|
|
833
|
+
* When logging is enabled, warns once per warmup that an optional model listed in
|
|
539
834
|
* {@link WASM_PIPELINE_OPTIONAL_MODEL_NAMES} was not supplied, so the Core
|
|
540
835
|
* profile that needs it is skipped instead of failing the whole warmup.
|
|
541
836
|
*/
|
|
@@ -565,13 +860,31 @@ function buildPipelinesMap(pipelines, config) {
|
|
|
565
860
|
WASM_MODEL_FILES.idFiqa,
|
|
566
861
|
WASM_MODEL_FILES.idFaceDetector
|
|
567
862
|
]));
|
|
568
|
-
else warnMissingOptionalModel(pipeline, missingOptional);
|
|
863
|
+
else if (config.showLogs) warnMissingOptionalModel(pipeline, missingOptional);
|
|
569
864
|
}
|
|
570
865
|
}
|
|
571
866
|
}
|
|
572
867
|
return pipelinesMap;
|
|
573
868
|
}
|
|
574
869
|
/**
|
|
870
|
+
* Row 31 taps (ENG-48677 WS2): every warmup origin — `setup()` pre-warm and
|
|
871
|
+
* the lazy UI init paths — funnels through `warmupWasm`, so start / complete /
|
|
872
|
+
* fail lines here also surface the UI-side `.catch(console.error)` swallows.
|
|
873
|
+
* The pinned version rides in the message: the record has no wire field for
|
|
874
|
+
* it outside `webProfile.wasm`.
|
|
875
|
+
*/
|
|
876
|
+
function describeWarmupTarget(pipelines, config) {
|
|
877
|
+
return `pipelines=[${pipelines.join(",")}] basePathPinned=${!isDefaultCdnWasmConfig(config)} pinnedVersion=${DEFAULT_WASM_VERSION}`;
|
|
878
|
+
}
|
|
879
|
+
function emitWarmupLine(level, message) {
|
|
880
|
+
emitWasmDiagnostic({
|
|
881
|
+
level,
|
|
882
|
+
subsystem: "warmup",
|
|
883
|
+
category: "other",
|
|
884
|
+
message
|
|
885
|
+
});
|
|
886
|
+
}
|
|
887
|
+
/**
|
|
575
888
|
* Preloads WASM binary and ML models at app startup.
|
|
576
889
|
* Runs asynchronously - app can continue while WASM loads in background.
|
|
577
890
|
*
|
|
@@ -616,6 +929,9 @@ async function warmupWasm(config) {
|
|
|
616
929
|
state = "loading";
|
|
617
930
|
pipelinesInFlight = combinedPipelines;
|
|
618
931
|
wasmError = null;
|
|
932
|
+
const addTarget = describeWarmupTarget(missingPipelines, lastConfig);
|
|
933
|
+
const addStartedAtMs = getTimestamp();
|
|
934
|
+
emitWarmupLine("debug", `warmup started ${addTarget} mode=add`);
|
|
619
935
|
loadingPromise = (async () => {
|
|
620
936
|
try {
|
|
621
937
|
const pipelinesMap = buildPipelinesMap(missingPipelines, lastConfig);
|
|
@@ -628,12 +944,16 @@ async function warmupWasm(config) {
|
|
|
628
944
|
pipelines: combinedPipelines
|
|
629
945
|
};
|
|
630
946
|
loadingPromise = null;
|
|
947
|
+
emitWarmupLine("debug", `warmup completed ${addTarget} mode=add durationMs=${getTimestamp() - addStartedAtMs}`);
|
|
631
948
|
} catch (error) {
|
|
632
949
|
state = "ready";
|
|
633
950
|
wasmError = error instanceof Error ? error : new Error(String(error));
|
|
634
951
|
loadingPromise = null;
|
|
635
952
|
pipelinesInFlight = [];
|
|
953
|
+
emitWarmupLine("error", `warmup failed ${addTarget} mode=add durationMs=${getTimestamp() - addStartedAtMs} error=${String(error)}`);
|
|
636
954
|
throw wasmError;
|
|
955
|
+
} finally {
|
|
956
|
+
reportWasmIntegritySummary();
|
|
637
957
|
}
|
|
638
958
|
})();
|
|
639
959
|
return loadingPromise;
|
|
@@ -641,6 +961,9 @@ async function warmupWasm(config) {
|
|
|
641
961
|
state = "loading";
|
|
642
962
|
pipelinesInFlight = [...pipelines];
|
|
643
963
|
wasmError = null;
|
|
964
|
+
const target = describeWarmupTarget(pipelines, config);
|
|
965
|
+
const startedAtMs = getTimestamp();
|
|
966
|
+
emitWarmupLine("debug", `warmup started ${target}`);
|
|
644
967
|
loadingPromise = (async () => {
|
|
645
968
|
try {
|
|
646
969
|
const pipelinesMap = buildPipelinesMap(pipelines, config);
|
|
@@ -659,17 +982,31 @@ async function warmupWasm(config) {
|
|
|
659
982
|
pipelines
|
|
660
983
|
};
|
|
661
984
|
loadingPromise = null;
|
|
985
|
+
const durationMs = getTimestamp() - startedAtMs;
|
|
986
|
+
warmupFacts = {
|
|
987
|
+
basePathPinned: !isDefaultCdnWasmConfig(config),
|
|
988
|
+
simd: simdUsed,
|
|
989
|
+
durationMs
|
|
990
|
+
};
|
|
991
|
+
emitWarmupLine("debug", `warmup completed ${target} simd=${simdUsed} durationMs=${durationMs}`);
|
|
662
992
|
} catch (error) {
|
|
663
993
|
state = "error";
|
|
664
994
|
lastModelVariant = null;
|
|
665
995
|
wasmError = error instanceof Error ? error : new Error(String(error));
|
|
666
996
|
loadingPromise = null;
|
|
667
997
|
pipelinesInFlight = [];
|
|
998
|
+
emitWarmupLine("severe", `warmup failed ${target} durationMs=${getTimestamp() - startedAtMs} error=${String(error)}`);
|
|
668
999
|
throw wasmError;
|
|
1000
|
+
} finally {
|
|
1001
|
+
reportWasmIntegritySummary();
|
|
669
1002
|
}
|
|
670
1003
|
})();
|
|
671
1004
|
return loadingPromise;
|
|
672
1005
|
}
|
|
1006
|
+
/** The last successful fresh warmup, or `null` before one completed. */
|
|
1007
|
+
function getWarmupFacts() {
|
|
1008
|
+
return warmupFacts;
|
|
1009
|
+
}
|
|
673
1010
|
/**
|
|
674
1011
|
* Returns the current warmup status.
|
|
675
1012
|
* Useful for showing loading indicators.
|
|
@@ -716,4 +1053,4 @@ function setWasmOnDeviceMode(enabled) {
|
|
|
716
1053
|
wasmRuntime.setOnDeviceMode(enabled);
|
|
717
1054
|
}
|
|
718
1055
|
//#endregion
|
|
719
|
-
export {
|
|
1056
|
+
export { setWasmOnDeviceMode as a, wasmRuntime as c, drainWasmDiagnostics as d, getWasmDiagnosticsMode as f, isWasmReady as i, CAMERA_CYCLE_OWNERSHIP_DOMAIN as l, getWarmupFacts as n, waitForWasm as o, rearmWasmDiagnostics as p, getWasmStatus as r, warmupWasm as s, getResolvedModelSource as t, getCameraCycleOwnershipDomain as u };
|
|
@@ -30,6 +30,9 @@ declare global {
|
|
|
30
30
|
type WasmModule = Record<string, unknown>;
|
|
31
31
|
type WasmGlueFactory = (options?: Readonly<{
|
|
32
32
|
wasmBinary?: Uint8Array;
|
|
33
|
+
print?: (text: string) => void;
|
|
34
|
+
printErr?: (text: string) => void;
|
|
35
|
+
onAbort?: (what: unknown) => void;
|
|
33
36
|
}>) => Promise<WasmModule>;
|
|
34
37
|
/**
|
|
35
38
|
* Binary and glue configuration for one WASM module instance.
|
|
@@ -38,6 +41,11 @@ type WasmGlueFactory = (options?: Readonly<{
|
|
|
38
41
|
* use the same memoized module.
|
|
39
42
|
*/
|
|
40
43
|
type WasmModuleConfig = {
|
|
44
|
+
/**
|
|
45
|
+
* Enables WASM console output, including native errors. Default: false.
|
|
46
|
+
* Set before the first load; shared instances retain their output sinks.
|
|
47
|
+
*/
|
|
48
|
+
showLogs?: boolean;
|
|
41
49
|
/** URL or bytes for the standard WASM binary. */
|
|
42
50
|
wasmPath: WasmSource;
|
|
43
51
|
/**
|
package/dist/wasm.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { a as WASM_MODEL_FILES, c as WasmPipeline, l as WasmSource, o as WasmGlueLoader, r as warmupWasm, s as WasmModelName, t as WarmupConfig } from "./warmup-
|
|
2
|
-
import { c as setWasmConfig, i as initializeWasmUtil, n as WasmConfig, r as ensureWasmPipelines, s as resolveWasmConfigForPipelines, u as upgradeToWasmHttpClient } from "./setup-
|
|
1
|
+
import { a as WASM_MODEL_FILES, c as WasmPipeline, l as WasmSource, o as WasmGlueLoader, r as warmupWasm, s as WasmModelName, t as WarmupConfig } from "./warmup-BO57syF6.js";
|
|
2
|
+
import { c as setWasmConfig, i as initializeWasmUtil, n as WasmConfig, r as ensureWasmPipelines, s as resolveWasmConfigForPipelines, u as upgradeToWasmHttpClient } from "./setup-YPKTUCY5.js";
|
|
3
3
|
//#region ../infra/src/wasm/wasmDefaults.d.ts
|
|
4
4
|
/** The WASM version bundled and tested with this SDK release. */
|
|
5
5
|
declare const DEFAULT_WASM_VERSION = "v2.14.50-post1";
|
package/dist/wasm.esm.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { o as
|
|
4
|
-
import { a as resolveWasmConfigForPipelines, c as upgradeToWasmHttpClient, n as initializeWasmUtil, o as setWasmConfig, t as ensureWasmPipelines } from "./setup-BuPbxpwF.esm.js";
|
|
1
|
+
import { E as WASM_PIPELINE_LAZY_MODEL_NAMES, O as WASM_PIPELINE_MODEL_NAMES, T as WASM_MODEL_FILES, b as buildDefaultWasmConfig, w as resolveWasmConfig, x as buildWasmConfigFromBasePath, y as DEFAULT_WASM_VERSION } from "./wasmWebClient-BjZw_7OB.esm.js";
|
|
2
|
+
import { s as warmupWasm } from "./warmup-BElYWRh7.esm.js";
|
|
3
|
+
import { a as resolveWasmConfigForPipelines, c as upgradeToWasmHttpClient, n as initializeWasmUtil, o as setWasmConfig, t as ensureWasmPipelines } from "./setup-B7ehQ-lf.esm.js";
|
|
5
4
|
//#region src/defineWasm.ts
|
|
6
5
|
function requiredModels(pipelines) {
|
|
7
6
|
const models = /* @__PURE__ */ new Set();
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { i as utilityWasmApi } from "./WasmUtilProvider-DtJuBdt-.esm.js";
|
|
2
2
|
//#region ../infra/src/wasm/wasmDsFlagSync.ts
|
|
3
3
|
/**
|
|
4
4
|
* Sets the Deepsight (ds) flag that the WASM utility API receives on every
|