@incodetech/core 0.0.0-dev-20260914-656e6757 → 0.0.0-dev-20260915-eedd82d4

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.
Files changed (66) hide show
  1. package/dist/{BrowserDiagnosticsCryptoProvider-CCQvC6Je.esm.js → BrowserDiagnosticsCryptoProvider-Ns6-JLzE.esm.js} +1 -1
  2. package/dist/{FaceDetectionProvider-Dz_zxzth.esm.js → FaceDetectionProvider-wJitf58B.esm.js} +4 -4
  3. package/dist/ae-signature.esm.js +1 -1
  4. package/dist/{apiError-dPoZmip-.esm.js → apiError-CC5v1ZI1.esm.js} +1 -1
  5. package/dist/authentication.esm.js +2 -2
  6. package/dist/{authenticationManager-kx--UIcD.esm.js → authenticationManager-9Ndo3B9-.esm.js} +3 -3
  7. package/dist/{authenticationStateMachine-GgtmM697.esm.js → authenticationStateMachine-BCIcBGE-.esm.js} +2 -2
  8. package/dist/consent.d.ts +1 -1
  9. package/dist/{consentManager-5HWbGwOa.d.ts → consentManager-uhDPdU6i.d.ts} +9 -9
  10. package/dist/{deepsightLoader-CLFrwfgX.esm.js → deepsightLoader-DywI_Cln.esm.js} +3 -3
  11. package/dist/document-capture.d.ts +1 -1
  12. package/dist/{documentCaptureManager-DD0qtFdE.d.ts → documentCaptureManager-DensIj5F.d.ts} +1 -1
  13. package/dist/dynamic-forms.esm.js +2 -2
  14. package/dist/{dynamicFormsManager-v80yAqNy.esm.js → dynamicFormsManager-CZD4HaZY.esm.js} +1 -1
  15. package/dist/{dynamicFormsStateMachine-C2YYaamd.esm.js → dynamicFormsStateMachine-50ilSDiK.esm.js} +1 -1
  16. package/dist/ekyb.esm.js +3 -3
  17. package/dist/{ekybManager-BJOCBpFZ.esm.js → ekybManager-BPT_VGSQ.esm.js} +1 -1
  18. package/dist/{ekybStateMachine-BP9BqHVy.esm.js → ekybStateMachine-CNIA7d6-.esm.js} +1 -1
  19. package/dist/electronic-signature.esm.js +1 -1
  20. package/dist/{electronicSignatureManager-B85WICzC.esm.js → electronicSignatureManager-pgoS8NvX.esm.js} +1 -1
  21. package/dist/extensibility.d.ts +5 -5
  22. package/dist/extensibility.esm.js +10 -10
  23. package/dist/{faceCaptureManagerFactory-CbIMYS4-.esm.js → faceCaptureManagerFactory-DM00JM7H.esm.js} +1 -1
  24. package/dist/{faceCaptureSetup-BlUhLA18.esm.js → faceCaptureSetup-CVYCvUSc.esm.js} +4 -4
  25. package/dist/{feature-management-DFmsuX0f.esm.js → feature-management-XAltcaKL.esm.js} +1 -1
  26. package/dist/feature-management.esm.js +1 -1
  27. package/dist/flow.esm.js +3 -3
  28. package/dist/{flowCompletionService-CGROnLOn.esm.js → flowCompletionService-BnU3Yo4k.esm.js} +1 -1
  29. package/dist/{flowServices-B5FPMSB_.esm.js → flowServices-BdQkcWNs.esm.js} +4 -4
  30. package/dist/geolocation.esm.js +2 -2
  31. package/dist/{geolocationManager-COnUDd3H.esm.js → geolocationManager-CEAdL6w_.esm.js} +1 -1
  32. package/dist/{geolocationStateMachine-DLb2L18_.esm.js → geolocationStateMachine-ClMoFwKO.esm.js} +1 -1
  33. package/dist/id-ocr.d.ts +1 -1
  34. package/dist/id-selfie-flow.d.ts +1 -1
  35. package/dist/id-selfie-flow.esm.js +7 -7
  36. package/dist/id.esm.js +3 -3
  37. package/dist/{idCaptureDefaults-Cj1elqAi.esm.js → idCaptureDefaults-D34NYQ4a.esm.js} +272 -29
  38. package/dist/{idCaptureManager-ssRJRsGQ.esm.js → idCaptureManager-CjWevOsf.esm.js} +3 -3
  39. package/dist/{idCaptureServices-BRq1TB4U.esm.js → idCaptureServices-bJRNhMEH.esm.js} +4 -4
  40. package/dist/{idCaptureStateMachine-DS6fNfwz.esm.js → idCaptureStateMachine-BAssHKV8.esm.js} +9 -9
  41. package/dist/{idOcrManager-CFlDwUvN.d.ts → idOcrManager-BF_cXZq8.d.ts} +1 -1
  42. package/dist/identity-reuse.d.ts +1 -1
  43. package/dist/{identityReuseManager-D6pD4hcZ.d.ts → identityReuseManager-v2TH5g7e.d.ts} +1 -1
  44. package/dist/index.esm.js +1 -1
  45. package/dist/mandatory-consent.d.ts +1 -1
  46. package/dist/{mandatoryConsentManager-CkK0Qzue.d.ts → mandatoryConsentManager-CJSyhTpi.d.ts} +5 -5
  47. package/dist/{multipartRecordingService-B3C_zlev.esm.js → multipartRecordingService-CWxZ5mTi.esm.js} +13 -2
  48. package/dist/personhood.esm.js +4 -4
  49. package/dist/qe-signature.esm.js +1 -1
  50. package/dist/{runChildModule-0wMdwznt.esm.js → runChildModule-DkWLwaAz.esm.js} +1 -1
  51. package/dist/{sdkVersion-CIExIk-y.esm.js → sdkVersion-tlFW91ji.esm.js} +1 -1
  52. package/dist/selfie.esm.js +5 -5
  53. package/dist/{selfieManager-BVK8Yo__.esm.js → selfieManager-BzzaKDle.esm.js} +3 -3
  54. package/dist/{selfieStateMachine-CnrxNcRk.esm.js → selfieStateMachine-BetnORsZ.esm.js} +2 -2
  55. package/dist/{session-c5Zk9ScZ.esm.js → session-S9zc4a1K.esm.js} +3 -3
  56. package/dist/session.esm.js +4 -4
  57. package/dist/{sessionInitializer-HuJ4OYs0.esm.js → sessionInitializer-DDsk97UB.esm.js} +3 -3
  58. package/dist/{setup-ItT0ngv1.esm.js → setup-DcVN2srO.esm.js} +4 -4
  59. package/dist/{trueSightService-Cmein6eU.esm.js → trueSightService-CD0T81YQ.esm.js} +2 -2
  60. package/dist/video-selfie.d.ts +1 -1
  61. package/dist/video-selfie.esm.js +5 -5
  62. package/dist/{videoSelfieCameraWarmer-Djel_Uco.esm.js → videoSelfieCameraWarmer-mEqG_xP8.esm.js} +3 -3
  63. package/dist/{videoSelfieStepDetector-5YHFe0Mq.d.ts → videoSelfieStepDetector-Ct2y9wZo.d.ts} +41 -11
  64. package/dist/wasm.esm.js +1 -1
  65. package/dist/workflow.esm.js +14 -14
  66. package/package.json +1 -1
@@ -1,9 +1,9 @@
1
- import { l as BrowserStorageProvider } from "./setup-ItT0ngv1.esm.js";
1
+ import { l as BrowserStorageProvider } from "./setup-DcVN2srO.esm.js";
2
2
  import { r as WasmUtilProvider } from "./safeStorage-B-trhxg6.esm.js";
3
3
  import { n as eventModuleNames } from "./events-ijlbX_Wx.esm.js";
4
4
  import { s as createActor } from "./xstate.esm-BuFLFuzz.esm.js";
5
- import { t as createFaceCaptureManagerFromActor } from "./faceCaptureManagerFactory-CbIMYS4-.esm.js";
6
- import { t as selfieMachine } from "./selfieStateMachine-CnrxNcRk.esm.js";
5
+ import { t as createFaceCaptureManagerFromActor } from "./faceCaptureManagerFactory-DM00JM7H.esm.js";
6
+ import { t as selfieMachine } from "./selfieStateMachine-BetnORsZ.esm.js";
7
7
  //#region src/modules/selfie/selfieActor.ts
8
8
  function createSelfieActor(options) {
9
9
  const dependencies = options.dependencies ?? {
@@ -1,7 +1,7 @@
1
1
  import { i as assign } from "./xstate.esm-BuFLFuzz.esm.js";
2
2
  import { n as fromPromise } from "./xstate-actors.esm-BXeQ-Ucz.esm.js";
3
- import { n as createDefaultProtectedFaceControllerActor, r as manualFaceUploadMachine, t as faceCaptureMachine } from "./faceCaptureSetup-BlUhLA18.esm.js";
4
- import { u as isOnDeviceMode } from "./FaceDetectionProvider-Dz_zxzth.esm.js";
3
+ import { n as createDefaultProtectedFaceControllerActor, r as manualFaceUploadMachine, t as faceCaptureMachine } from "./faceCaptureSetup-CVYCvUSc.esm.js";
4
+ import { u as isOnDeviceMode } from "./FaceDetectionProvider-wJitf58B.esm.js";
5
5
  import { t as FACE_ERROR_CODES } from "./types-BN5RPPIZ.esm.js";
6
6
  import { s as PROTECTED_CAPTURE_TARGET } from "./createCameraCycleOwnership-DQ5-F2oW.esm.js";
7
7
  import { i as uploadManualSelfie, n as validateUploadResponse, r as processFace } from "./selfieErrorUtils-C77GXJH6.esm.js";
@@ -1,8 +1,8 @@
1
1
  import { n as getApi } from "./api-Bx3gKW_y.esm.js";
2
- import { g as noteSessionCreated, l as trueSightLog } from "./trueSightService-Cmein6eU.esm.js";
3
- import "./sessionInitializer-HuJ4OYs0.esm.js";
2
+ import { g as noteSessionCreated, l as trueSightLog } from "./trueSightService-CD0T81YQ.esm.js";
3
+ import "./sessionInitializer-DDsk97UB.esm.js";
4
4
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
5
- import { i as toIncodeApiError } from "./apiError-dPoZmip-.esm.js";
5
+ import { i as toIncodeApiError } from "./apiError-CC5v1ZI1.esm.js";
6
6
  //#region src/internal/session/sessionService.ts
7
7
  /**
8
8
  * HTTP status codes the QR validation endpoint emits, keyed by their semantic
@@ -1,5 +1,5 @@
1
- import { i as initializeSession, l as whenSessionFingerprintSettled } from "./sessionInitializer-HuJ4OYs0.esm.js";
2
- import { t as IncodeApiError } from "./apiError-dPoZmip-.esm.js";
3
- import { a as refreshQrUrlUuid, i as createSession, n as QrValidationError, o as validateQrUuid, r as bootstrapSession, t as QR_VALIDATION_ERROR_CODES } from "./session-c5Zk9ScZ.esm.js";
4
- import { n as getFinishStatus } from "./flowCompletionService-CGROnLOn.esm.js";
1
+ import { i as initializeSession, l as whenSessionFingerprintSettled } from "./sessionInitializer-DDsk97UB.esm.js";
2
+ import { t as IncodeApiError } from "./apiError-CC5v1ZI1.esm.js";
3
+ import { a as refreshQrUrlUuid, i as createSession, n as QrValidationError, o as validateQrUuid, r as bootstrapSession, t as QR_VALIDATION_ERROR_CODES } from "./session-S9zc4a1K.esm.js";
4
+ import { n as getFinishStatus } from "./flowCompletionService-BnU3Yo4k.esm.js";
5
5
  export { IncodeApiError, QR_VALIDATION_ERROR_CODES, QrValidationError, bootstrapSession, createSession, getFinishStatus, initializeSession, refreshQrUrlUuid, validateQrUuid, whenSessionFingerprintSettled };
@@ -1,8 +1,8 @@
1
- import { E as updateFeatureManagementUser } from "./feature-management-DFmsuX0f.esm.js";
1
+ import { E as updateFeatureManagementUser } from "./feature-management-XAltcaKL.esm.js";
2
2
  import { c as setToken, r as getToken, t as api } from "./api-Bx3gKW_y.esm.js";
3
- import { d as fetchFeatureConfig, f as isFeatureEnabled, h as noteEnvironment, l as trueSightLog, p as resetFeatureConfigCache, s as startTrueSightCollection, v as noteTokenActivated } from "./trueSightService-Cmein6eU.esm.js";
3
+ import { d as fetchFeatureConfig, f as isFeatureEnabled, h as noteEnvironment, l as trueSightLog, p as resetFeatureConfigCache, s as startTrueSightCollection, v as noteTokenActivated } from "./trueSightService-CD0T81YQ.esm.js";
4
4
  import { v as addEvent, y as getAnalyticsBatcher } from "./events-ijlbX_Wx.esm.js";
5
- import { t as SDK_VERSION } from "./sdkVersion-CIExIk-y.esm.js";
5
+ import { t as SDK_VERSION } from "./sdkVersion-tlFW91ji.esm.js";
6
6
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
7
7
  import { n as flushDeviceStatsQueue, r as resetDeviceStatsQueue } from "./stats-DkK-f8JT.esm.js";
8
8
  import { t as getParsedUserAgent } from "./getParsedUserAgent-B2iFDql1.esm.js";
@@ -2,16 +2,16 @@ import { f as deriveSiblingJsPath, p as WASM_MODEL_FILES, v as buildModelVariant
2
2
  import { i as setWasmOnDeviceMode, o as warmupWasm } from "./warmup-CUUnwYxe.esm.js";
3
3
  import { r as WasmUtilProvider, t as resolveLocalStorage } from "./safeStorage-B-trhxg6.esm.js";
4
4
  import { t as BrowserTimerProvider } from "./BrowserTimerProvider-BXhgNxLt.esm.js";
5
- import { C as resetFeatureManagement, D as applyEnvironment, O as getEnvironment, S as optOutFeatureManagement, b as initializeFeatureManagement, c as resetResolvedExperiments, k as resetEnvironment, v as getIsFeatureManagementLocked, w as resetFeatureManagementProviderInstance } from "./feature-management-DFmsuX0f.esm.js";
5
+ import { C as resetFeatureManagement, D as applyEnvironment, O as getEnvironment, S as optOutFeatureManagement, b as initializeFeatureManagement, c as resetResolvedExperiments, k as resetEnvironment, v as getIsFeatureManagementLocked, w as resetFeatureManagementProviderInstance } from "./feature-management-XAltcaKL.esm.js";
6
6
  import { t as getTimestamp } from "./IBrowserEnvironmentCapability-DEaRRk-R.esm.js";
7
7
  import { a as resetApi, i as isApiConfigured, n as getApi, r as getToken, s as setHttpRequestObserver, t as api } from "./api-Bx3gKW_y.esm.js";
8
- import { C as upgradeToWasmHttpClient$1, S as resetHttpClientState, _ as noteTestingSignals, b as getStoredHttpConfig, l as trueSightLog, n as initializeTrueSightDiagnostics, o as resetTrueSight, t as finalizeTrueSight, u as categoryForEndpoint, x as installFreshHttpClient } from "./trueSightService-Cmein6eU.esm.js";
8
+ import { C as upgradeToWasmHttpClient$1, S as resetHttpClientState, _ as noteTestingSignals, b as getStoredHttpConfig, l as trueSightLog, n as initializeTrueSightDiagnostics, o as resetTrueSight, t as finalizeTrueSight, u as categoryForEndpoint, x as installFreshHttpClient } from "./trueSightService-CD0T81YQ.esm.js";
9
9
  import { b as resetAnalyticsBatcher, c as resetExperimentAssignments, x as setAnalyticsBatcher, y as getAnalyticsBatcher } from "./events-ijlbX_Wx.esm.js";
10
- import { a as resetSessionInit, b as BrowserEnvironmentProvider, c as setClientIpLookupEnabled, d as registerFlowPreloader, f as resetStandaloneFlowPolicy, i as initializeSession, m as setStandaloneFlowPolicy, o as setClientFingerprintEnabled, p as resolveStandaloneFlowPolicy, s as setClientHostingApp } from "./sessionInitializer-HuJ4OYs0.esm.js";
10
+ import { a as resetSessionInit, b as BrowserEnvironmentProvider, c as setClientIpLookupEnabled, d as registerFlowPreloader, f as resetStandaloneFlowPolicy, i as initializeSession, m as setStandaloneFlowPolicy, o as setClientFingerprintEnabled, p as resolveStandaloneFlowPolicy, s as setClientHostingApp } from "./sessionInitializer-DDsk97UB.esm.js";
11
11
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
12
12
  import { r as resetDeviceStatsQueue, t as addDeviceStats } from "./stats-DkK-f8JT.esm.js";
13
13
  import { a as resetTRI, n as initializeTRI, o as resetTRIProviderInstance } from "./tri-4RsGrIt6.esm.js";
14
- import { i as resetDashboardFlowCache, r as preloadDashboardFlow } from "./flowServices-B5FPMSB_.esm.js";
14
+ import { i as resetDashboardFlowCache, r as preloadDashboardFlow } from "./flowServices-BdQkcWNs.esm.js";
15
15
  //#region ../infra/src/wasm/wasmDefaults.ts
16
16
  const WASM_CDN_BASE_URL = "https://cdn.incodesmile.com/ml-wasm-kit-release";
17
17
  /** The WASM version bundled and tested with this SDK release. */
@@ -2,7 +2,7 @@ import { a as setWebApiHttpTransport, i as initializeWasmWebClient, o as setupWa
2
2
  import { t as getTimestamp } from "./IBrowserEnvironmentCapability-DEaRRk-R.esm.js";
3
3
  import { i as isApiConfigured, n as getApi, o as setClient, r as getToken, t as api } from "./api-Bx3gKW_y.esm.js";
4
4
  import { S as subscribeEvent, n as eventModuleNames } from "./events-ijlbX_Wx.esm.js";
5
- import { t as SDK_VERSION } from "./sdkVersion-CIExIk-y.esm.js";
5
+ import { t as SDK_VERSION } from "./sdkVersion-tlFW91ji.esm.js";
6
6
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
7
7
  //#region ../infra/src/http/createApi.ts
8
8
  var FetchHttpError = class extends Error {
@@ -1320,7 +1320,7 @@ let cryptoProviderPromise = null;
1320
1320
  * the service's prewarm).
1321
1321
  */
1322
1322
  function loadDiagnosticsCryptoProvider() {
1323
- cryptoProviderPromise ??= import("./BrowserDiagnosticsCryptoProvider-CCQvC6Je.esm.js").then((module) => new module.BrowserDiagnosticsCryptoProvider());
1323
+ cryptoProviderPromise ??= import("./BrowserDiagnosticsCryptoProvider-Ns6-JLzE.esm.js").then((module) => new module.BrowserDiagnosticsCryptoProvider());
1324
1324
  return cryptoProviderPromise;
1325
1325
  }
1326
1326
  /**
@@ -5,7 +5,7 @@ import "./Actor-iTq7YY48.js";
5
5
  import { t as IVisibilityObserverCapability } from "./IVisibilityObserverCapability-D4tvIB5v.js";
6
6
  import { t as CameraStream } from "./camera-9wWD-pwg.js";
7
7
  import { t as DetectionOrientation } from "./IIdCaptureCapability-RNiFhvXR.js";
8
- import { a as FacingMode, i as CameraCompositor, n as VideoSelfieDetectionStatus, o as VideoSelfieConfig, r as VideoSelfieValidationFailure, s as VideoSelfieStep, t as StepDetector } from "./videoSelfieStepDetector-5YHFe0Mq.js";
8
+ import { a as FacingMode, i as CameraCompositor, n as VideoSelfieDetectionStatus, o as VideoSelfieConfig, r as VideoSelfieValidationFailure, s as VideoSelfieStep, t as StepDetector } from "./videoSelfieStepDetector-Ct2y9wZo.js";
9
9
  //#region ../infra/src/capabilities/ITimerCapability.d.ts
10
10
  type TimerHandle = ReturnType<typeof setTimeout>;
11
11
  type ITimerCapability = {
@@ -1,16 +1,16 @@
1
- import { t as ensureWasmPipelines } from "./setup-ItT0ngv1.esm.js";
1
+ import { t as ensureWasmPipelines } from "./setup-DcVN2srO.esm.js";
2
2
  import { r as WasmUtilProvider } from "./safeStorage-B-trhxg6.esm.js";
3
3
  import { t as BrowserTimerProvider } from "./BrowserTimerProvider-BXhgNxLt.esm.js";
4
4
  import { t as api } from "./api-Bx3gKW_y.esm.js";
5
5
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
6
- import { d as facingModeForStep, f as resolveVideoSelfieSteps, p as videoSelfieWasmPipelines } from "./flowServices-B5FPMSB_.esm.js";
6
+ import { d as facingModeForStep, f as resolveVideoSelfieSteps, p as videoSelfieWasmPipelines } from "./flowServices-BdQkcWNs.esm.js";
7
7
  import { i as assign, r as sendTo, s as createActor, t as setup, u as createManager } from "./xstate.esm-BuFLFuzz.esm.js";
8
8
  import { n as fromPromise, t as fromCallback } from "./xstate-actors.esm-BXeQ-Ucz.esm.js";
9
9
  import { t as BrowserVisibilityObserverProvider } from "./BrowserVisibilityObserverProvider-BrJN1B8A.esm.js";
10
- import { t as MultipartRecordingService } from "./multipartRecordingService-B3C_zlev.esm.js";
11
- import { i as CameraCompositor } from "./idCaptureDefaults-Cj1elqAi.esm.js";
10
+ import { t as MultipartRecordingService } from "./multipartRecordingService-CWxZ5mTi.esm.js";
11
+ import { i as CameraCompositor } from "./idCaptureDefaults-D34NYQ4a.esm.js";
12
12
  import { t as VIDEO_SELFIE_VALIDATION_ATTEMPTS_EXHAUSTED_CODE } from "./advanceableErrors-CpF2cBy6.esm.js";
13
- import { a as isConnectionError, n as defaultAcquireCamera, r as createDefaultStepDetector, t as createVideoSelfieCameraWarmer } from "./videoSelfieCameraWarmer-Djel_Uco.esm.js";
13
+ import { a as isConnectionError, n as defaultAcquireCamera, r as createDefaultStepDetector, t as createVideoSelfieCameraWarmer } from "./videoSelfieCameraWarmer-mEqG_xP8.esm.js";
14
14
  import { t as videoSelfieFlowModuleMachine } from "./videoSelfieFlowModuleMachine-BUe2uACW.esm.js";
15
15
  //#region src/modules/video-selfie/videoSelfieWasm.ts
16
16
  function warmupVideoSelfieWasm(config, steps = resolveVideoSelfieSteps(config)) {
@@ -1,16 +1,16 @@
1
1
  import { t as BrowserTimerProvider } from "./BrowserTimerProvider-BXhgNxLt.esm.js";
2
2
  import { t as api } from "./api-Bx3gKW_y.esm.js";
3
3
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
4
- import { d as facingModeForStep, f as resolveVideoSelfieSteps } from "./flowServices-B5FPMSB_.esm.js";
4
+ import { d as facingModeForStep, f as resolveVideoSelfieSteps } from "./flowServices-BdQkcWNs.esm.js";
5
5
  import { a as requestCameraWithFallback, i as requestCameraAccess } from "./camera-sIa9ceW2.esm.js";
6
6
  import { t as checkPermission } from "./permissionServices-Bj_fyWtv.esm.js";
7
- import { n as encryptSelfieImage, o as startDetection, t as FaceDetectionProvider } from "./FaceDetectionProvider-Dz_zxzth.esm.js";
7
+ import { n as encryptSelfieImage, o as startDetection, t as FaceDetectionProvider } from "./FaceDetectionProvider-wJitf58B.esm.js";
8
8
  import { t as FACE_ERROR_CODES } from "./types-BN5RPPIZ.esm.js";
9
9
  import { a as StreamCanvasProcessingSession } from "./recordingsRepository-CCWy13M-.esm.js";
10
10
  import { n as getBackCameraStream } from "./backCameraStream-BOtyQowf.esm.js";
11
11
  import { n as getWindowDimensions } from "./getDeviceClass-CeBiEayS.esm.js";
12
12
  import { a as uploadSelfie, r as processFace, t as getFaceErrorCodeFromUnknown } from "./selfieErrorUtils-C77GXJH6.esm.js";
13
- import { n as DEFAULT_ID_CAPTURE_THRESHOLDS, r as IdCaptureProvider, t as DEFAULT_ID_CAPTURE_GEOMETRY } from "./idCaptureDefaults-Cj1elqAi.esm.js";
13
+ import { n as DEFAULT_ID_CAPTURE_THRESHOLDS, r as IdCaptureProvider, t as DEFAULT_ID_CAPTURE_GEOMETRY } from "./idCaptureDefaults-D34NYQ4a.esm.js";
14
14
  import { t as StreamCanvasCapture } from "./StreamCanvasCapture-C9jtgBdT.esm.js";
15
15
  //#region src/modules/video-selfie/videoSelfieCompareService.ts
16
16
  async function postVideoSelfieCompare(endpoint, base64Image) {
@@ -33,12 +33,27 @@ type CameraCompositorOptions = {
33
33
  };
34
34
  type CameraCompositorResumeResult = 'resumed' | 'video-ended' | 'audio-ended' | 'timed-out';
35
35
  /**
36
- * Composites the *active* camera into a canvas and exposes the canvas as a
37
- * single, stable `MediaStream` to record. Switching cameras (front ↔ back)
38
- * just repoints what the canvas draws — the output stream and its audio track
39
- * are never replaced — so a single `MediaRecorder` produces one continuous
40
- * video that follows the camera switches (V1 parity), instead of restarting
41
- * per camera.
36
+ * Composites the *active* camera into a single, stable `MediaStream` to
37
+ * record. Switching cameras (front ↔ back) just repoints the source — the
38
+ * output stream and its audio track are never replaced — so a single
39
+ * `MediaRecorder` produces one continuous video that follows the camera
40
+ * switches (V1 parity), instead of restarting per camera.
41
+ *
42
+ * Two transports (ENG-55397):
43
+ * - **Worker (preferred, Chromium 94+):** camera track →
44
+ * `MediaStreamTrackProcessor` → worker scales on an `OffscreenCanvas` →
45
+ * `MediaStreamTrackGenerator`. The main thread is not in the frame path, so
46
+ * the recording stays at camera rate while the synchronous ID detection
47
+ * tick saturates the main thread (measured: 4–9 fps main-thread vs 30 fps
48
+ * worker on a Galaxy S21 under the same load).
49
+ * - **Main thread (fallback):** hidden `<video>` → rVFC/rAF → canvas →
50
+ * `captureStream`, for Safari, Firefox and strict-CSP hosts that block blob
51
+ * workers.
52
+ *
53
+ * A worker that dies mid-recording (GPU-process crash, OOM) is released at
54
+ * once; the composite track stays valid but receives no further frames, and
55
+ * the next `resume()` reports `timed-out` so the caller reacquires the camera
56
+ * instead of talking to a dead worker.
42
57
  *
43
58
  * The audio track from the initial stream is carried through unchanged across
44
59
  * video switches, so there's no audio glitch when the camera flips.
@@ -50,8 +65,12 @@ declare class CameraCompositor {
50
65
  private canvas;
51
66
  private ctx;
52
67
  private video;
68
+ private transport;
69
+ /** Worker-transport output track; outlives a crashed worker until stop(). */
70
+ private generator;
53
71
  private frameRequestId;
54
72
  private frameRequestKind;
73
+ private sourceExceedsTargetFps;
55
74
  private lastDrawTimeMs;
56
75
  private lastVideoTimeSeconds;
57
76
  private audioTrack;
@@ -66,7 +85,7 @@ declare class CameraCompositor {
66
85
  */
67
86
  start(stream: CameraStream): MediaStream;
68
87
  /**
69
- * Swap the camera feeding the canvas without interrupting the composite
88
+ * Swap the camera feeding the composite without interrupting the composite
70
89
  * stream. Pass a video-only stream (audio is kept from `start`). The previous
71
90
  * video track is stopped.
72
91
  */
@@ -76,13 +95,24 @@ declare class CameraCompositor {
76
95
  /** Pause source playback and drawing while the page is backgrounded. */
77
96
  pause(): void;
78
97
  /**
79
- * Restart source playback and wait for a genuinely new camera frame to be
80
- * drawn into the stable canvas stream. The caller must not resume encoding
81
- * until this resolves with `resumed`.
98
+ * Restart source playback and wait for a genuinely new camera frame to reach
99
+ * the stable composite stream. The caller must not resume encoding until
100
+ * this resolves with `resumed`.
82
101
  */
83
102
  resume(signal?: AbortSignal): Promise<CameraCompositorResumeResult>;
84
- /** Stop compositing and release the canvas, audio, and video tracks. */
103
+ /** Stop compositing and release the worker, canvas, audio and video tracks. */
85
104
  stop(): void;
105
+ /**
106
+ * Worker transport. Returns `null` — and leaves nothing behind — when the
107
+ * browser lacks insertable streams or a strict `worker-src` CSP blocks blob
108
+ * workers, so `start` falls through to the main-thread path. Never throws.
109
+ */
110
+ private startWorkerTransport;
111
+ /** Terminates the worker and frees its blob; idempotent. */
112
+ private releaseWorker;
113
+ private startMainThread;
114
+ private postToWorker;
115
+ private onWorkerMessage;
86
116
  private setVideoSource;
87
117
  private startDrawLoop;
88
118
  private finishResume;
package/dist/wasm.esm.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { g as WASM_PIPELINE_MODEL_NAMES, m as WASM_PIPELINE_LAZY_MODEL_NAMES, p as WASM_MODEL_FILES } from "./wasmWebClient-B7baE-Wf.esm.js";
2
- import { a as resolveWasmConfigForPipelines, c as upgradeToWasmHttpClient, d as buildDefaultWasmConfig, f as buildWasmConfigFromBasePath, m as resolveWasmConfig, n as initializeWasmUtil, o as setWasmConfig, t as ensureWasmPipelines, u as DEFAULT_WASM_VERSION } from "./setup-ItT0ngv1.esm.js";
2
+ import { a as resolveWasmConfigForPipelines, c as upgradeToWasmHttpClient, d as buildDefaultWasmConfig, f as buildWasmConfigFromBasePath, m as resolveWasmConfig, n as initializeWasmUtil, o as setWasmConfig, t as ensureWasmPipelines, u as DEFAULT_WASM_VERSION } from "./setup-DcVN2srO.esm.js";
3
3
  import { o as warmupWasm } from "./warmup-CUUnwYxe.esm.js";
4
4
  //#region src/defineWasm.ts
5
5
  function requiredModels(pipelines) {
@@ -1,29 +1,29 @@
1
- import { E as updateFeatureManagementUser } from "./feature-management-DFmsuX0f.esm.js";
1
+ import { E as updateFeatureManagementUser } from "./feature-management-XAltcaKL.esm.js";
2
2
  import { t as api } from "./api-Bx3gKW_y.esm.js";
3
- import { l as trueSightLog } from "./trueSightService-Cmein6eU.esm.js";
3
+ import { l as trueSightLog } from "./trueSightService-CD0T81YQ.esm.js";
4
4
  import { n as eventModuleNames, o as createManagerInstrumentation, v as addEvent } from "./events-ijlbX_Wx.esm.js";
5
- import { i as initializeSession, r as getSessionFingerprintResult } from "./sessionInitializer-HuJ4OYs0.esm.js";
5
+ import { i as initializeSession, r as getSessionFingerprintResult } from "./sessionInitializer-DDsk97UB.esm.js";
6
6
  import { t as endpoints } from "./endpoints-D3B9mUHh.esm.js";
7
- import { i as toIncodeApiError } from "./apiError-dPoZmip-.esm.js";
8
- import { v as toEkybConfig } from "./flowServices-B5FPMSB_.esm.js";
7
+ import { i as toIncodeApiError } from "./apiError-CC5v1ZI1.esm.js";
8
+ import { v as toEkybConfig } from "./flowServices-BdQkcWNs.esm.js";
9
9
  import { i as toEkycConfig } from "./ekycUtils-Dew1rBG0.esm.js";
10
10
  import { i as assign, s as createActor, t as setup, u as createManager } from "./xstate.esm-BuFLFuzz.esm.js";
11
11
  import { n as fromPromise } from "./xstate-actors.esm-BXeQ-Ucz.esm.js";
12
- import { r as electronicSignatureMachine } from "./electronicSignatureManager-B85WICzC.esm.js";
12
+ import { r as electronicSignatureMachine } from "./electronicSignatureManager-pgoS8NvX.esm.js";
13
13
  import "./ae-signature.esm.js";
14
14
  import { t as antifraudMachine } from "./antifraudStateMachine-BHxehiJZ.esm.js";
15
- import { t as authenticationMachine } from "./authenticationStateMachine-GgtmM697.esm.js";
15
+ import { t as authenticationMachine } from "./authenticationStateMachine-BCIcBGE-.esm.js";
16
16
  import { t as certificateIssuanceMachine } from "./certificateIssuanceStateMachine-BBD5h8c4.esm.js";
17
17
  import { t as consentMachine } from "./consentStateMachine-DbUmqWgV.esm.js";
18
18
  import { t as curpValidationMachine } from "./curpValidationStateMachine-DvUPC_8S.esm.js";
19
19
  import { t as customWatchlistMachine } from "./customWatchlistStateMachine-qZVgkKgP.esm.js";
20
20
  import { t as documentCaptureMachine } from "./documentCaptureStateMachine-CWOATHfE.esm.js";
21
- import { t as dynamicFormsMachine } from "./dynamicFormsStateMachine-C2YYaamd.esm.js";
22
- import { t as ekybMachine } from "./ekybStateMachine-BP9BqHVy.esm.js";
21
+ import { t as dynamicFormsMachine } from "./dynamicFormsStateMachine-50ilSDiK.esm.js";
22
+ import { t as ekybMachine } from "./ekybStateMachine-CNIA7d6-.esm.js";
23
23
  import { t as ekycMachine } from "./ekycStateMachine-CmdW2gVm.esm.js";
24
24
  import { t as emailMachine } from "./emailStateMachine-CyPFZ7dW.esm.js";
25
- import { t as selfieMachine } from "./selfieStateMachine-CnrxNcRk.esm.js";
26
- import { t as idCaptureMachine } from "./idCaptureStateMachine-DS6fNfwz.esm.js";
25
+ import { t as selfieMachine } from "./selfieStateMachine-BetnORsZ.esm.js";
26
+ import { t as idCaptureMachine } from "./idCaptureStateMachine-BAssHKV8.esm.js";
27
27
  import { t as phoneMachine } from "./phoneStateMachine-jl8LJKCo.esm.js";
28
28
  import { t as watchlistMachine } from "./watchlistStateMachine-DvOby3a-.esm.js";
29
29
  import { t as watchlistForBusinessMachine } from "./watchlistForBusinessStateMachine-DEzgjz7C.esm.js";
@@ -32,12 +32,12 @@ import { t as mandatoryConsentMachine } from "./mandatoryConsentStateMachine-DSD
32
32
  import { t as idOcrStateMachine } from "./idOcrStateMachine-33UvRAHE.esm.js";
33
33
  import { n as redirectToMobileMachine } from "./redirectToMobileStateMachine-v3otpT-L.esm.js";
34
34
  import { t as signatureMachine } from "./signatureStateMachine-BHPwkJZS.esm.js";
35
- import { t as geolocationMachine } from "./geolocationStateMachine-DLb2L18_.esm.js";
35
+ import { t as geolocationMachine } from "./geolocationStateMachine-ClMoFwKO.esm.js";
36
36
  import { t as governmentValidationMachine } from "./governmentValidationStateMachine-D1ZnEqdd.esm.js";
37
37
  import { t as idVerificationMachine } from "./idVerificationStateMachine-BPGrQZEm.esm.js";
38
38
  import { t as faceMatchMachine } from "./faceMatchStateMachine-BUc5FXYy.esm.js";
39
- import { n as getFinishStatus, r as getTotalScoreStatus } from "./flowCompletionService-CGROnLOn.esm.js";
40
- import { n as attachFlowEventEmitter, t as runChildModule } from "./runChildModule-0wMdwznt.esm.js";
39
+ import { n as getFinishStatus, r as getTotalScoreStatus } from "./flowCompletionService-BnU3Yo4k.esm.js";
40
+ import { n as attachFlowEventEmitter, t as runChildModule } from "./runChildModule-DkWLwaAz.esm.js";
41
41
  import { n as isAdvanceableError } from "./advanceableErrors-CpF2cBy6.esm.js";
42
42
  import "./qe-signature.esm.js";
43
43
  import { t as videoSelfieFlowModuleMachine } from "./videoSelfieFlowModuleMachine-BUe2uACW.esm.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@incodetech/core",
3
- "version": "0.0.0-dev-20260914-656e6757",
3
+ "version": "0.0.0-dev-20260915-eedd82d4",
4
4
  "license": "ISC",
5
5
  "repository": {
6
6
  "type": "git",