@privateid/ultrapass-web-sdk 1.3.1 → 1.3.2-1300478
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/README.md +75 -75
- package/dist/apiUtils.d.ts +46 -46
- package/dist/apiUtils.js +922 -922
- package/dist/application/index.d.ts +7 -7
- package/dist/application/index.js +27 -27
- package/dist/application/modules/core/document/DocumentService.d.ts +22 -22
- package/dist/application/modules/core/document/DocumentService.js +254 -254
- package/dist/application/modules/core/document/document.constants.d.ts +15 -15
- package/dist/application/modules/core/document/document.constants.js +21 -21
- package/dist/application/modules/core/document/document.domain.d.ts +7 -7
- package/dist/application/modules/core/document/document.domain.js +1 -1
- package/dist/application/modules/core/document/document.types.d.ts +17 -17
- package/dist/application/modules/core/document/document.types.js +1 -1
- package/dist/application/modules/core/document/document.utils.d.ts +3 -3
- package/dist/application/modules/core/document/document.utils.js +58 -58
- package/dist/application/modules/core/document/index.d.ts +3 -3
- package/dist/application/modules/core/document/index.js +1 -1
- package/dist/application/modules/core/face/FaceService.d.ts +33 -33
- package/dist/application/modules/core/face/FaceService.js +228 -221
- package/dist/application/modules/core/face/FaceService.js.map +1 -1
- package/dist/application/modules/core/face/face.constants.d.ts +53 -53
- package/dist/application/modules/core/face/face.constants.js +53 -53
- package/dist/application/modules/core/face/face.domain.d.ts +10 -10
- package/dist/application/modules/core/face/face.domain.js +1 -1
- package/dist/application/modules/core/face/face.types.d.ts +41 -38
- package/dist/application/modules/core/face/face.types.js +1 -1
- package/dist/application/modules/core/face/face.utils.d.ts +15 -15
- package/dist/application/modules/core/face/face.utils.js +101 -101
- package/dist/application/modules/core/face/index.d.ts +3 -3
- package/dist/application/modules/core/face/index.js +1 -1
- package/dist/application/modules/global/shared.constants.d.ts +2 -2
- package/dist/application/modules/global/shared.constants.js +2 -2
- package/dist/application/modules/global/shared.utils.d.ts +25 -25
- package/dist/application/modules/global/shared.utils.js +100 -100
- package/dist/application/modules/global/shared.utils.js.map +1 -1
- package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.d.ts +9 -0
- package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.js +32 -0
- package/dist/application/modules/internal/feature-flag/LDFeatureFlagService.js.map +1 -0
- package/dist/application/modules/internal/feature-flag/feature-flag-init.d.ts +11 -0
- package/dist/application/modules/internal/feature-flag/feature-flag-init.js +24 -0
- package/dist/application/modules/internal/feature-flag/feature-flag-init.js.map +1 -0
- package/dist/application/modules/internal/feature-flag/feature-flag.domain.d.ts +10 -0
- package/dist/application/modules/internal/feature-flag/feature-flag.domain.js +7 -0
- package/dist/application/modules/internal/feature-flag/feature-flag.domain.js.map +1 -0
- package/dist/application/modules/internal/feature-flag/featureFlagInit.d.ts +11 -0
- package/dist/application/modules/internal/feature-flag/featureFlagInit.js +44 -0
- package/dist/application/modules/internal/feature-flag/featureFlagInit.js.map +1 -0
- package/dist/application/modules/internal/feature-flag/index.d.ts +2 -0
- package/dist/application/modules/internal/feature-flag/index.js +3 -0
- package/dist/application/modules/internal/feature-flag/index.js.map +1 -0
- package/dist/application/modules/internal/shared/index.d.ts +2 -0
- package/dist/application/modules/internal/shared/index.js +3 -0
- package/dist/application/modules/internal/shared/index.js.map +1 -0
- package/dist/application/modules/internal/shared/shared.constants.d.ts +2 -0
- package/dist/application/modules/internal/shared/shared.constants.js +3 -0
- package/dist/application/modules/internal/shared/shared.constants.js.map +1 -0
- package/dist/application/modules/internal/shared/shared.utils.d.ts +44 -0
- package/dist/application/modules/internal/shared/shared.utils.js +204 -0
- package/dist/application/modules/internal/shared/shared.utils.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.d.ts +28 -0
- package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.js +380 -0
- package/dist/application/modules/internal/wasm-orchestrator/WasmOrchestratorService.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/index.d.ts +6 -0
- package/dist/application/modules/internal/wasm-orchestrator/index.js +9 -0
- package/dist/application/modules/internal/wasm-orchestrator/index.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.d.ts +28 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.js +35 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.constants.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.d.ts +51 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.js +2 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.domain.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.d.ts +142 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.js +2 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.types.js.map +1 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.d.ts +86 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.js +201 -0
- package/dist/application/modules/internal/wasm-orchestrator/wasm-orchestrator.utils.js.map +1 -0
- package/dist/application/modules/support/camera/CameraServiceFactory.d.ts +10 -10
- package/dist/application/modules/support/camera/CameraServiceFactory.js +33 -33
- package/dist/application/modules/support/camera/CameraServiceFactory.js.map +1 -1
- package/dist/application/modules/support/camera/camera.constants.d.ts +9 -9
- package/dist/application/modules/support/camera/camera.constants.js +48 -48
- package/dist/application/modules/support/camera/camera.domain.d.ts +15 -15
- package/dist/application/modules/support/camera/camera.domain.js +1 -1
- package/dist/application/modules/support/camera/camera.types.d.ts +42 -42
- package/dist/application/modules/support/camera/camera.types.js +10 -10
- package/dist/application/modules/support/camera/camera.utils.d.ts +157 -157
- package/dist/application/modules/support/camera/camera.utils.js +623 -623
- package/dist/application/modules/support/camera/index.d.ts +24 -24
- package/dist/application/modules/support/camera/index.js +27 -27
- package/dist/application/modules/support/camera/services/BaseCameraService.d.ts +41 -41
- package/dist/application/modules/support/camera/services/BaseCameraService.js +278 -278
- package/dist/application/modules/support/camera/services/DesktopCameraService.d.ts +5 -5
- package/dist/application/modules/support/camera/services/DesktopCameraService.js +46 -46
- package/dist/application/modules/support/camera/services/FirefoxCameraService.d.ts +5 -5
- package/dist/application/modules/support/camera/services/FirefoxCameraService.js +46 -46
- package/dist/application/modules/support/camera/services/MacSafariCameraService.d.ts +5 -5
- package/dist/application/modules/support/camera/services/MacSafariCameraService.js +47 -47
- package/dist/application/modules/support/camera/services/MobileCameraService.d.ts +5 -5
- package/dist/application/modules/support/camera/services/MobileCameraService.js +133 -133
- package/dist/application/modules/support/engine/EngineService.d.ts +15 -0
- package/dist/application/modules/support/engine/EngineService.js +106 -0
- package/dist/application/modules/support/engine/EngineService.js.map +1 -0
- package/dist/application/modules/support/engine/engine.constants.d.ts +33 -0
- package/dist/application/modules/support/engine/engine.constants.js +35 -0
- package/dist/application/modules/support/engine/engine.constants.js.map +1 -0
- package/dist/application/modules/support/engine/engine.domain.d.ts +23 -0
- package/dist/application/modules/support/engine/engine.domain.js +2 -0
- package/dist/application/modules/support/engine/engine.domain.js.map +1 -0
- package/dist/application/modules/support/engine/engine.types.d.ts +32 -0
- package/dist/application/modules/support/engine/engine.types.js +2 -0
- package/dist/application/modules/support/engine/engine.types.js.map +1 -0
- package/dist/application/modules/support/engine/engine.utils.d.ts +65 -0
- package/dist/application/modules/support/engine/engine.utils.js +135 -0
- package/dist/application/modules/support/engine/engine.utils.js.map +1 -0
- package/dist/application/modules/support/engine/index.d.ts +3 -0
- package/dist/application/modules/support/engine/index.js +2 -0
- package/dist/application/modules/support/engine/index.js.map +1 -0
- package/dist/application/modules/support/permissions/PermissionsService.d.ts +55 -55
- package/dist/application/modules/support/permissions/PermissionsService.js +183 -183
- package/dist/application/modules/support/permissions/index.d.ts +4 -4
- package/dist/application/modules/support/permissions/index.js +2 -2
- package/dist/application/modules/support/permissions/permission.utils.d.ts +6 -6
- package/dist/application/modules/support/permissions/permission.utils.js +33 -33
- package/dist/application/modules/support/permissions/permissions.domain.d.ts +6 -6
- package/dist/application/modules/support/permissions/permissions.domain.js +1 -1
- package/dist/application/modules/support/permissions/permissions.types.d.ts +9 -9
- package/dist/application/modules/support/permissions/permissions.types.js +1 -1
- package/dist/application/modules/support/wasm/WasmService.d.ts +25 -25
- package/dist/application/modules/support/wasm/WasmService.js +156 -155
- package/dist/application/modules/support/wasm/WasmService.js.map +1 -1
- package/dist/application/modules/support/wasm/index.d.ts +6 -6
- package/dist/application/modules/support/wasm/index.js +8 -8
- package/dist/application/modules/support/wasm/wasm.constants.d.ts +78 -78
- package/dist/application/modules/support/wasm/wasm.constants.js +86 -86
- package/dist/application/modules/support/wasm/wasm.domain.d.ts +52 -52
- package/dist/application/modules/support/wasm/wasm.domain.js +1 -1
- package/dist/application/modules/support/wasm/wasm.types.d.ts +119 -118
- package/dist/application/modules/support/wasm/wasm.types.js +1 -1
- package/dist/application/modules/support/wasm/wasm.utils.d.ts +88 -88
- package/dist/application/modules/support/wasm/wasm.utils.js +243 -243
- package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.d.ts +28 -0
- package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.js +324 -0
- package/dist/application/modules/support/wasm-orchestrator/WasmOrchestratorService.js.map +1 -0
- package/dist/application/modules/support/wasm-orchestrator/index.d.ts +6 -0
- package/dist/application/modules/support/wasm-orchestrator/index.js +9 -0
- package/dist/application/modules/support/wasm-orchestrator/index.js.map +1 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.d.ts +36 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.js +44 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.constants.js.map +1 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.d.ts +47 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.js +2 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.domain.js.map +1 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.d.ts +136 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.js +2 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.types.js.map +1 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.d.ts +91 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.js +250 -0
- package/dist/application/modules/support/wasm-orchestrator/wasm-orchestrator.utils.js.map +1 -0
- package/dist/application/workers/index.d.ts +42 -42
- package/dist/application/workers/index.js +8 -8
- package/dist/application/workers/wasm/WasmWorkerService.d.ts +66 -0
- package/dist/application/workers/wasm/WasmWorkerService.js +801 -0
- package/dist/application/workers/wasm/WasmWorkerService.js.map +1 -0
- package/dist/application/workers/wasm/index.d.ts +4 -0
- package/dist/application/workers/wasm/index.js +9 -0
- package/dist/application/workers/wasm/index.js.map +1 -0
- package/dist/application/workers/wasm/wasm-worker.constants.d.ts +5 -0
- package/dist/application/workers/wasm/wasm-worker.constants.js +6 -0
- package/dist/application/workers/wasm/wasm-worker.constants.js.map +1 -0
- package/dist/application/workers/wasm/wasm-worker.domain.d.ts +99 -0
- package/dist/application/workers/wasm/wasm-worker.domain.js +2 -0
- package/dist/application/workers/wasm/wasm-worker.domain.js.map +1 -0
- package/dist/application/workers/wasm/wasm-worker.types.d.ts +88 -0
- package/dist/application/workers/wasm/wasm-worker.types.js +2 -0
- package/dist/application/workers/wasm/wasm-worker.types.js.map +1 -0
- package/dist/application/workers/wasm/wasm-worker.utils.d.ts +10 -0
- package/dist/application/workers/wasm/wasm-worker.utils.js +130 -0
- package/dist/application/workers/wasm/wasm-worker.utils.js.map +1 -0
- package/dist/buildConfig.d.ts +3 -0
- package/dist/buildConfig.js +7 -0
- package/dist/buildConfig.js.map +1 -0
- package/dist/cameraUtils.d.ts +77 -77
- package/dist/cameraUtils.js +361 -361
- package/dist/constants.d.ts +9 -9
- package/dist/constants.js +13 -13
- package/dist/createCallback.d.ts +56 -56
- package/dist/createCallback.js +332 -331
- package/dist/createCallback.js.map +1 -1
- package/dist/dbUtils.d.ts +14 -14
- package/dist/dbUtils.js +148 -148
- package/dist/envUtils.d.ts +4 -4
- package/dist/envUtils.js +16 -16
- package/dist/faceModule.d.ts +196 -196
- package/dist/faceModule.js +978 -978
- package/dist/featureFlagInit.d.ts +11 -0
- package/dist/featureFlagInit.js +44 -0
- package/dist/featureFlagInit.js.map +1 -0
- package/dist/index.d.ts +38 -38
- package/dist/index.js +82 -82
- package/dist/main.d.ts +30 -30
- package/dist/main.js +84 -84
- package/dist/types.d.ts +139 -139
- package/dist/types.js +77 -77
- package/dist/utils.d.ts +84 -84
- package/dist/utils.js +580 -580
- package/package.json +102 -102
- package/wasm/ultra/nosimd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.js +18 -18
- package/wasm/ultra/nosimd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.wasm +0 -0
- package/wasm/ultra/nosimd/version.json +2 -2
- package/wasm/ultra/simd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.js +18 -18
- package/wasm/ultra/simd/{25.11.13-1357710 → 26.01.08-1300478}/privid_fhe_uber.wasm +0 -0
- package/wasm/ultra/simd/version.json +2 -2
- package/workers/comlink.min.js +7 -7
- package/workers/comlink.min.js.map +1 -1
- package/workers/wasm.worker.js +936 -924
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WasmWorkerService.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/WasmWorkerService.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { WasmWorkerService as WasmWorkerServiceClass } from './WasmWorkerService';
|
|
2
|
+
import { WasmWorker, RemoteWasmWorker } from './wasm-worker.domain';
|
|
3
|
+
export declare const WasmWorkerService: import("comlink").Remote<typeof WasmWorkerServiceClass>;
|
|
4
|
+
export type { RemoteWasmWorker, WasmWorker };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var _a;
|
|
2
|
+
import { wrap } from 'comlink';
|
|
3
|
+
// Construct worker URL relative to window origin
|
|
4
|
+
const windowOrigin = (_a = window === null || window === void 0 ? void 0 : window.location) === null || _a === void 0 ? void 0 : _a.origin;
|
|
5
|
+
const workerUrl = `${windowOrigin}/workers/wasm-new.worker.js`;
|
|
6
|
+
// Create worker instance and wrap it
|
|
7
|
+
// When exposing a class, wrap returns a constructor that creates Remote instances
|
|
8
|
+
export const WasmWorkerService = wrap(new Worker(workerUrl));
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAI/B,iDAAiD;AACjD,MAAM,YAAY,GAAG,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,0CAAE,MAAM,CAAC;AAC9C,MAAM,SAAS,GAAG,GAAG,YAAY,6BAA6B,CAAC;AAG/D,qCAAqC;AACrC,kFAAkF;AAClF,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,CAAwB,IAAI,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const WASM_ULTRA_FOLDER_NAME = "ultra";
|
|
2
|
+
export declare const WASM_MODULE_NAME = "privid_fhe_ultra";
|
|
3
|
+
export declare const INDEXED_DB_NAME = "/privid-wasm";
|
|
4
|
+
export declare const INDEXED_STORE_NAME = "/privid-wasm";
|
|
5
|
+
export declare const INDEXED_DB_VERSION = 21;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export const WASM_ULTRA_FOLDER_NAME = 'ultra';
|
|
2
|
+
export const WASM_MODULE_NAME = 'privid_fhe_ultra';
|
|
3
|
+
export const INDEXED_DB_NAME = '/privid-wasm';
|
|
4
|
+
export const INDEXED_STORE_NAME = '/privid-wasm';
|
|
5
|
+
export const INDEXED_DB_VERSION = 21;
|
|
6
|
+
//# sourceMappingURL=wasm-worker.constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm-worker.constants.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/wasm-worker.constants.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AAC9C,MAAM,CAAC,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAEnD,MAAM,CAAC,MAAM,eAAe,GAAG,cAAc,CAAC;AAC9C,MAAM,CAAC,MAAM,kBAAkB,GAAG,cAAc,CAAC;AACjD,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,CAAC"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
import { Remote } from 'comlink';
|
|
2
|
+
import { AgeEstimateParams, CompareEmbeddingsParams, DocumentOcrParams, EnrollParams, LoadParams, PkiEncryptParams, PredictParams, ScanBackDocumentParams, ScanFrontDocumentParams, ProxiedCallback, RegularCallback } from './wasm-worker.types';
|
|
3
|
+
export interface WasmWorker {
|
|
4
|
+
/**
|
|
5
|
+
* Loads the WASM modules
|
|
6
|
+
* @param params - Load parameters including API configuration
|
|
7
|
+
* @param errorCallback - Error callback that MUST be wrapped with proxy() from Comlink
|
|
8
|
+
* @param progressCallback - Optional progress callback that MUST be wrapped with proxy() from Comlink
|
|
9
|
+
* @example
|
|
10
|
+
* ```typescript
|
|
11
|
+
* import { proxy } from 'comlink';
|
|
12
|
+
* const errorCallback = proxy((error) => console.error(error));
|
|
13
|
+
* const progressCallback = proxy((progress) => console.log(progress));
|
|
14
|
+
* await worker.loadModules(params, errorCallback, progressCallback);
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
loadModules(params: LoadParams, errorCallback: ProxiedCallback, progressCallback?: ProxiedCallback): Promise<string>;
|
|
18
|
+
/**
|
|
19
|
+
* Enrolls an image for facial recognition
|
|
20
|
+
* @param params
|
|
21
|
+
*/
|
|
22
|
+
ultraEnroll(params: EnrollParams, resultCallback: (...args: unknown[]) => void, onAntiSpoofProgress?: (...args: unknown[]) => void): Promise<boolean>;
|
|
23
|
+
/**
|
|
24
|
+
* Predicts facial features from an image
|
|
25
|
+
* @param params
|
|
26
|
+
*/
|
|
27
|
+
ultraPredict(params: PredictParams, resultCallback: RegularCallback, onAntiSpoofProgress?: RegularCallback): Promise<boolean>;
|
|
28
|
+
/**
|
|
29
|
+
* Estimates the age from an image
|
|
30
|
+
* @param params
|
|
31
|
+
*/
|
|
32
|
+
ultraAgeEstimate(params: AgeEstimateParams, resultCallback: (...args: unknown[]) => void, onAntiSpoofProgress?: (...args: unknown[]) => void, onWasmCroppingCallback?: (base64Image: string) => void): Promise<boolean>;
|
|
33
|
+
/**
|
|
34
|
+
* Compares facial embeddings
|
|
35
|
+
* @param params
|
|
36
|
+
*/
|
|
37
|
+
ultraCompareEmbeddings(params: CompareEmbeddingsParams, resultCallback: RegularCallback): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Encrypts data using PKI
|
|
40
|
+
* @param params
|
|
41
|
+
*/
|
|
42
|
+
pkiEncrypt(params: PkiEncryptParams): string | {
|
|
43
|
+
error: boolean;
|
|
44
|
+
};
|
|
45
|
+
/**
|
|
46
|
+
* Scans the back of a document
|
|
47
|
+
* @param params
|
|
48
|
+
*/
|
|
49
|
+
ultraScanBackDocument(params: ScanBackDocumentParams, resultCallback: RegularCallback): Promise<boolean>;
|
|
50
|
+
/**
|
|
51
|
+
* Scans the front of a document
|
|
52
|
+
* @param params
|
|
53
|
+
*/
|
|
54
|
+
ultraScanFrontDocument(params: ScanFrontDocumentParams, resultCallback: RegularCallback): Promise<boolean>;
|
|
55
|
+
/**
|
|
56
|
+
* Performs OCR on a document
|
|
57
|
+
* @param params
|
|
58
|
+
*/
|
|
59
|
+
ultraDocumentOcr(params: DocumentOcrParams, resultCallback: RegularCallback): Promise<boolean>;
|
|
60
|
+
/**
|
|
61
|
+
* Checks if the models are loaded
|
|
62
|
+
*/
|
|
63
|
+
checkModelsAreLoaded(): Promise<boolean>;
|
|
64
|
+
/**
|
|
65
|
+
* Frees up memory on the engine (WASM)
|
|
66
|
+
*/
|
|
67
|
+
freeMemory(): Promise<boolean>;
|
|
68
|
+
}
|
|
69
|
+
export interface WasmPrividModules {
|
|
70
|
+
_malloc(size: number): number;
|
|
71
|
+
_free(ptr: number): void;
|
|
72
|
+
HEAP8: Int8Array;
|
|
73
|
+
HEAPU8: Uint8Array;
|
|
74
|
+
_privid_initialize_lib(working_directory: number, working_directory_length: number): void;
|
|
75
|
+
_privid_initialize_session(settings: number, settings_length: number, session_ptr: number): boolean;
|
|
76
|
+
_privid_deinitialize_session(session_ptr: number): void;
|
|
77
|
+
_privid_free_char_buffer(buffer: number): void;
|
|
78
|
+
_privid_free_buffer(buffer: number): void;
|
|
79
|
+
_privid_set_configuration(session_ptr: number, user_config: number, user_config_length: number): boolean;
|
|
80
|
+
_privid_validate_face(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
81
|
+
_privid_user_enroll(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
82
|
+
_privid_user_predict(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
83
|
+
_privid_user_delete(session_ptr: number, user_config: number, user_config_length: number, uuid: number, uuid_length: number, result_out: number, result_out_length: number): number;
|
|
84
|
+
_privid_estimate_age(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
85
|
+
_privid_compare_embeddings(session_ptr: number, user_config: number, user_config_length: number, embedding_one: number, embedding_one_length: number, embedding_two: number, embedding_two_length: number, result_out: number, result_out_length: number): number;
|
|
86
|
+
_privid_enroll_by_embedding(session_ptr: number, user_config: number, user_config_length: number, embedding: number, embedding_length: number, result_out: number, result_out_length: number): number;
|
|
87
|
+
_privid_predict_by_embedding(session_ptr: number, user_config: number, user_config_length: number, embedding: number, embedding_length: number, result_out: number, result_out_length: number): number;
|
|
88
|
+
_privid_doc_scan_front(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
89
|
+
_privid_doc_scan_back(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
90
|
+
_privid_doc_ocr_front(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, result_out: number, result_out_length: number): number;
|
|
91
|
+
_privid_doc_ocr_front_enc(session_ptr: number, user_config: number, user_config_length: number, jpg_image_bytes: number, jpg_image_bytes_length: number, result_out: number, result_out_length: number): number;
|
|
92
|
+
_privid_encrypt_payload(session_ptr: number, user_config: number, user_config_length: number, payload: number, payload_length: number, result_out: number, result_out_length: number): number;
|
|
93
|
+
_privid_remove_background(session_ptr: number, user_config: number, user_config_length: number, image_bytes: number, image_width: number, image_height: number, output_image: number, output_image_length: number, result_out: number, result_out_length: number): number;
|
|
94
|
+
_privid_check_models(): boolean;
|
|
95
|
+
_privid_free_memory(): boolean;
|
|
96
|
+
_privid_get_version(): number;
|
|
97
|
+
UTF8ToString(ptr: number): string;
|
|
98
|
+
}
|
|
99
|
+
export type RemoteWasmWorker = Remote<WasmWorker>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm-worker.domain.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/wasm-worker.domain.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import { ProxyMarked } from 'comlink';
|
|
2
|
+
/**
|
|
3
|
+
* A callback function that must be wrapped with Comlink's proxy() before passing to worker methods.
|
|
4
|
+
* This ensures the function can be properly transferred across the worker boundary without
|
|
5
|
+
* causing DataCloneError issues.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```typescript
|
|
9
|
+
* import { proxy } from 'comlink';
|
|
10
|
+
* const callback = proxy((result) => console.log(result));
|
|
11
|
+
* await worker.loadModules(params, callback);
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export type ProxiedCallback = ((...args: unknown[]) => void) & ProxyMarked;
|
|
15
|
+
export type RegularCallback = (...args: unknown[]) => void;
|
|
16
|
+
export type ApiUrl = {
|
|
17
|
+
collections: {
|
|
18
|
+
default: {
|
|
19
|
+
named_urls: {
|
|
20
|
+
base_url: string;
|
|
21
|
+
predict?: string;
|
|
22
|
+
enroll?: string;
|
|
23
|
+
validate_api_key?: string;
|
|
24
|
+
};
|
|
25
|
+
};
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
export type LoadParams = {
|
|
29
|
+
simd: boolean;
|
|
30
|
+
apiUrl: ApiUrl;
|
|
31
|
+
sessionToken: string;
|
|
32
|
+
publicKey: string;
|
|
33
|
+
debugType: string;
|
|
34
|
+
cacheConfig?: boolean;
|
|
35
|
+
timeout?: number;
|
|
36
|
+
useCdn?: boolean;
|
|
37
|
+
shouldRegenerateSession?: boolean;
|
|
38
|
+
usageScenario?: string;
|
|
39
|
+
cacheContent?: string;
|
|
40
|
+
};
|
|
41
|
+
export type EnrollParams = {
|
|
42
|
+
imageData: ImageData;
|
|
43
|
+
simd: boolean;
|
|
44
|
+
config: string;
|
|
45
|
+
};
|
|
46
|
+
export type PredictParams = {
|
|
47
|
+
originalImages: ImageData[];
|
|
48
|
+
simd: boolean;
|
|
49
|
+
config: string;
|
|
50
|
+
};
|
|
51
|
+
export type AgeEstimateParams = {
|
|
52
|
+
originalImages: ImageData[];
|
|
53
|
+
simd: boolean;
|
|
54
|
+
config: string;
|
|
55
|
+
};
|
|
56
|
+
export type CompareEmbeddingsParams = {
|
|
57
|
+
encryptedEmbeddingsA: string;
|
|
58
|
+
encryptedEmbeddingsB: string;
|
|
59
|
+
config: string;
|
|
60
|
+
};
|
|
61
|
+
export type PkiEncryptParams = {
|
|
62
|
+
payload: string;
|
|
63
|
+
config?: string;
|
|
64
|
+
};
|
|
65
|
+
export type ScanBackDocumentParams = {
|
|
66
|
+
imageInput: ImageData;
|
|
67
|
+
simd: boolean;
|
|
68
|
+
config: string;
|
|
69
|
+
};
|
|
70
|
+
export type ScanFrontDocumentParams = {
|
|
71
|
+
imageInput: ImageData;
|
|
72
|
+
simd: boolean;
|
|
73
|
+
config: string;
|
|
74
|
+
};
|
|
75
|
+
export type DocumentOcrParams = {
|
|
76
|
+
imageInput: ImageData | string;
|
|
77
|
+
config: string;
|
|
78
|
+
};
|
|
79
|
+
export type WasmCacheData = {
|
|
80
|
+
cachedWasm: any;
|
|
81
|
+
cachedScript: any;
|
|
82
|
+
version: string | number;
|
|
83
|
+
};
|
|
84
|
+
export type FetchResourceURLs = {
|
|
85
|
+
cdn: string;
|
|
86
|
+
local: string;
|
|
87
|
+
};
|
|
88
|
+
export type WasmSessionPointer = number;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm-worker.types.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/wasm-worker.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { FetchResourceURLs, WasmCacheData } from './wasm-worker.types';
|
|
2
|
+
export declare function readFromIndexedDB(key: string): Promise<any>;
|
|
3
|
+
export declare function writeToIndexedDB(key: string, cachedWasm: any, cachedScript: any, version: string | number): Promise<string>;
|
|
4
|
+
export declare function fetchResource(urls: FetchResourceURLs, useCdnLink?: boolean): Promise<Response>;
|
|
5
|
+
export declare function checkCacheAndCurrentAreSameVersion(cachedModule: WasmCacheData | null, currentVersionJSON: {
|
|
6
|
+
version: string | number;
|
|
7
|
+
} | null): boolean;
|
|
8
|
+
export declare function readCurrentWasmVersion(modulePath: string): Promise<any>;
|
|
9
|
+
export declare function flatImageDataArraysIntoUint8Array(imageDataArray: ImageData[]): Uint8Array;
|
|
10
|
+
export declare function removeNullBytesFromDecodedString(string: string): string;
|
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
10
|
+
/* eslint-disable import/prefer-default-export */
|
|
11
|
+
import { printLogs } from '../../modules/internal/shared/shared.utils';
|
|
12
|
+
import { INDEXED_DB_NAME, INDEXED_DB_VERSION, INDEXED_STORE_NAME, WASM_ULTRA_FOLDER_NAME, } from './wasm-worker.constants';
|
|
13
|
+
// Helper to promisify IndexedDB requests
|
|
14
|
+
function promisifyRequest(request) {
|
|
15
|
+
return new Promise((resolve, reject) => {
|
|
16
|
+
request.onsuccess = () => resolve(request.result);
|
|
17
|
+
request.onerror = () => reject(request.error);
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
// Simplified version using the helper
|
|
21
|
+
export function readFromIndexedDB(key) {
|
|
22
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
23
|
+
if (!indexedDB) {
|
|
24
|
+
throw new Error('IndexedDB not available');
|
|
25
|
+
}
|
|
26
|
+
const openRequest = indexedDB.open(INDEXED_DB_NAME, INDEXED_DB_VERSION);
|
|
27
|
+
openRequest.onupgradeneeded = () => {
|
|
28
|
+
const db = openRequest.result;
|
|
29
|
+
if (!db.objectStoreNames.contains(INDEXED_STORE_NAME)) {
|
|
30
|
+
db.createObjectStore(INDEXED_STORE_NAME);
|
|
31
|
+
}
|
|
32
|
+
};
|
|
33
|
+
const db = yield promisifyRequest(openRequest);
|
|
34
|
+
try {
|
|
35
|
+
const transaction = db.transaction(INDEXED_STORE_NAME, 'readonly');
|
|
36
|
+
const store = transaction.objectStore(INDEXED_STORE_NAME);
|
|
37
|
+
const result = yield promisifyRequest(store.get(key));
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
catch (error) {
|
|
41
|
+
printLogs('[WasmWorkerService] Error reading from IndexedDB:', error);
|
|
42
|
+
throw error;
|
|
43
|
+
}
|
|
44
|
+
finally {
|
|
45
|
+
db.close();
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
}
|
|
49
|
+
// Refactored function
|
|
50
|
+
export function writeToIndexedDB(key, cachedWasm, cachedScript, version) {
|
|
51
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
52
|
+
if (!indexedDB) {
|
|
53
|
+
throw new Error('IndexedDB not available');
|
|
54
|
+
}
|
|
55
|
+
const openRequest = indexedDB.open(INDEXED_DB_NAME, INDEXED_DB_VERSION);
|
|
56
|
+
openRequest.onupgradeneeded = () => {
|
|
57
|
+
const db = openRequest.result;
|
|
58
|
+
if (!db.objectStoreNames.contains(INDEXED_STORE_NAME)) {
|
|
59
|
+
db.createObjectStore(INDEXED_STORE_NAME);
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
const db = yield promisifyRequest(openRequest);
|
|
63
|
+
try {
|
|
64
|
+
const transaction = db.transaction(INDEXED_STORE_NAME, 'readwrite');
|
|
65
|
+
const store = transaction.objectStore(INDEXED_STORE_NAME);
|
|
66
|
+
const data = { cachedWasm, cachedScript, version };
|
|
67
|
+
yield promisifyRequest(store.put(data, key));
|
|
68
|
+
return 'saved';
|
|
69
|
+
}
|
|
70
|
+
finally {
|
|
71
|
+
db.close();
|
|
72
|
+
}
|
|
73
|
+
});
|
|
74
|
+
}
|
|
75
|
+
export function fetchResource(urls, useCdnLink) {
|
|
76
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
try {
|
|
78
|
+
if (useCdnLink) {
|
|
79
|
+
printLogs(`[WasmWorkerService] fetchResource from cdnUrl`, urls.cdn);
|
|
80
|
+
const response = yield fetch(urls.cdn);
|
|
81
|
+
printLogs(`Response: `, response);
|
|
82
|
+
return response;
|
|
83
|
+
}
|
|
84
|
+
printLogs(`[WasmWorkerService] fetchResource from localUrl`, urls.local);
|
|
85
|
+
const response = yield fetch(urls.local);
|
|
86
|
+
return response;
|
|
87
|
+
}
|
|
88
|
+
catch (error) {
|
|
89
|
+
console.error(`[WasmWorkerService] Error fetching resource from CDN. Falling back to local url. Error: ${error}`);
|
|
90
|
+
const response = yield fetch(urls.local);
|
|
91
|
+
return response;
|
|
92
|
+
}
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
export function checkCacheAndCurrentAreSameVersion(cachedModule, currentVersionJSON) {
|
|
96
|
+
try {
|
|
97
|
+
const cachedVersion = cachedModule === null || cachedModule === void 0 ? void 0 : cachedModule.version;
|
|
98
|
+
const currentVersion = currentVersionJSON === null || currentVersionJSON === void 0 ? void 0 : currentVersionJSON.version;
|
|
99
|
+
printLogs(`[WasmWorkerService] checkCacheAndCurrentAreSameVersion cachedVersion vs currentVersion: `, `${cachedVersion} vs ${currentVersion}`);
|
|
100
|
+
const cachedVersionString = typeof cachedVersion === 'string' ? cachedVersion : cachedVersion.toString();
|
|
101
|
+
const currentVersionString = typeof currentVersion === 'string' ? currentVersion : currentVersion.toString();
|
|
102
|
+
return cachedVersionString === currentVersionString;
|
|
103
|
+
}
|
|
104
|
+
catch (error) {
|
|
105
|
+
return false;
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
export function readCurrentWasmVersion(modulePath) {
|
|
109
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
110
|
+
const versionData = yield fetch(`../../../../wasm/${WASM_ULTRA_FOLDER_NAME}/${modulePath}/version.json`);
|
|
111
|
+
return versionData.json();
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
export function flatImageDataArraysIntoUint8Array(imageDataArray) {
|
|
115
|
+
const totalLength = imageDataArray.reduce((sum, imgData) => sum + imgData.data.length, 0);
|
|
116
|
+
const flatArray = new Uint8Array(totalLength);
|
|
117
|
+
let offset = 0;
|
|
118
|
+
for (const imgData of imageDataArray) {
|
|
119
|
+
flatArray.set(imgData.data, offset);
|
|
120
|
+
offset += imgData.data.length;
|
|
121
|
+
}
|
|
122
|
+
return flatArray;
|
|
123
|
+
}
|
|
124
|
+
export function removeNullBytesFromDecodedString(string) {
|
|
125
|
+
return string
|
|
126
|
+
.split('')
|
|
127
|
+
.filter((char) => char.codePointAt(0))
|
|
128
|
+
.join('');
|
|
129
|
+
}
|
|
130
|
+
//# sourceMappingURL=wasm-worker.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wasm-worker.utils.js","sourceRoot":"","sources":["../../../../src/application/workers/wasm/wasm-worker.utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"buildConfig.js","sourceRoot":"","sources":["../src/buildConfig.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,oCAAoC;AACpC,qDAAqD;AAErD,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,mBAAmB,EAAE,0BAA0B;CACvC,CAAC"}
|
package/dist/cameraUtils.d.ts
CHANGED
|
@@ -1,77 +1,77 @@
|
|
|
1
|
-
/// <reference types="ua-parser-js" />
|
|
2
|
-
import { FacingMode } from './types';
|
|
3
|
-
export declare function getUserAgent(): string | null | undefined;
|
|
4
|
-
export declare function parseUserAgent(): import("ua-parser-js").IResult;
|
|
5
|
-
export declare function isPortrait(): boolean;
|
|
6
|
-
export declare function isBackCameraAndPortrait(faceMode: FacingMode): boolean;
|
|
7
|
-
export declare function isMobileUA(): boolean;
|
|
8
|
-
export declare function isFirefoxUA(): boolean;
|
|
9
|
-
export declare function isSafariUA(): boolean;
|
|
10
|
-
export declare function isChromeUA(): boolean;
|
|
11
|
-
export declare function isSamsungUA(): boolean;
|
|
12
|
-
export declare function isAndroid(): boolean;
|
|
13
|
-
/**
|
|
14
|
-
* See https://developer.chrome.com/docs/multidevice/user-agent/#webview_user_agent
|
|
15
|
-
* This onloy detects the WebView after Android 4.4. It'd return false for older
|
|
16
|
-
* Android version.
|
|
17
|
-
*/
|
|
18
|
-
export declare function isAndroidWebView(): boolean;
|
|
19
|
-
export declare function isAndroid12OrAbove(): boolean;
|
|
20
|
-
export declare function isIOSUA(): boolean;
|
|
21
|
-
export declare function getMajorAndroidVersion(): number;
|
|
22
|
-
export declare function getMajorSafariVersion(): number;
|
|
23
|
-
export declare function getMajorChromeVersion(): number;
|
|
24
|
-
export declare function getMajorIOSVersion(): number;
|
|
25
|
-
export declare function getMajorMinorOsVersion(): string;
|
|
26
|
-
export declare function isWindows(): boolean;
|
|
27
|
-
export declare function isMac(): boolean;
|
|
28
|
-
export declare function isLinux(): boolean;
|
|
29
|
-
export declare function getPlatform(): string;
|
|
30
|
-
export declare function isMobileDevice(): boolean;
|
|
31
|
-
export declare function isIOSDesktop(): boolean;
|
|
32
|
-
export declare function isIOS(): boolean;
|
|
33
|
-
export declare function isIOS15OrGreater(): boolean;
|
|
34
|
-
export declare function isAndroidDesktop(): boolean;
|
|
35
|
-
export declare const isBackCameraLabel: (label: string) => boolean;
|
|
36
|
-
export declare const isMobileBackCameraPortrait: ({ label, facingMode }: {
|
|
37
|
-
label: string;
|
|
38
|
-
facingMode: FacingMode[];
|
|
39
|
-
}) => boolean;
|
|
40
|
-
export declare const isFaceTimeCamera: (label: string, isDocumentScan: boolean) => boolean;
|
|
41
|
-
export declare const getCameraList: (backOnly: boolean) => Promise<Array<any>>;
|
|
42
|
-
export declare const getVideoConstraints: (availableDevices?: Array<any> | null, faceMode?: FacingMode, requireHD?: boolean, isDocumentScan?: boolean, canvasResolution?: {
|
|
43
|
-
width: number;
|
|
44
|
-
height: number;
|
|
45
|
-
}, hasError?: boolean) => {
|
|
46
|
-
audio: boolean;
|
|
47
|
-
video: {
|
|
48
|
-
facingMode: FacingMode;
|
|
49
|
-
resizeMode: string;
|
|
50
|
-
width: number | {
|
|
51
|
-
ideal: number;
|
|
52
|
-
};
|
|
53
|
-
height: number | {
|
|
54
|
-
ideal: number;
|
|
55
|
-
min?: undefined;
|
|
56
|
-
};
|
|
57
|
-
deviceId: any;
|
|
58
|
-
aspectRatio: number;
|
|
59
|
-
focusMode: string;
|
|
60
|
-
};
|
|
61
|
-
} | {
|
|
62
|
-
audio: boolean;
|
|
63
|
-
video: {
|
|
64
|
-
aspectRatio: number;
|
|
65
|
-
height: {
|
|
66
|
-
min: number;
|
|
67
|
-
ideal?: undefined;
|
|
68
|
-
};
|
|
69
|
-
resizeMode: string;
|
|
70
|
-
facingMode?: undefined;
|
|
71
|
-
width?: undefined;
|
|
72
|
-
deviceId?: undefined;
|
|
73
|
-
focusMode?: undefined;
|
|
74
|
-
};
|
|
75
|
-
};
|
|
76
|
-
export declare function scaleImageData(imageData: any, scaleFactor: number): ImageData;
|
|
77
|
-
export declare function zoomInCanvasImage(canvas: any, scaleFactor: number): ImageData;
|
|
1
|
+
/// <reference types="ua-parser-js" />
|
|
2
|
+
import { FacingMode } from './types';
|
|
3
|
+
export declare function getUserAgent(): string | null | undefined;
|
|
4
|
+
export declare function parseUserAgent(): import("ua-parser-js").IResult;
|
|
5
|
+
export declare function isPortrait(): boolean;
|
|
6
|
+
export declare function isBackCameraAndPortrait(faceMode: FacingMode): boolean;
|
|
7
|
+
export declare function isMobileUA(): boolean;
|
|
8
|
+
export declare function isFirefoxUA(): boolean;
|
|
9
|
+
export declare function isSafariUA(): boolean;
|
|
10
|
+
export declare function isChromeUA(): boolean;
|
|
11
|
+
export declare function isSamsungUA(): boolean;
|
|
12
|
+
export declare function isAndroid(): boolean;
|
|
13
|
+
/**
|
|
14
|
+
* See https://developer.chrome.com/docs/multidevice/user-agent/#webview_user_agent
|
|
15
|
+
* This onloy detects the WebView after Android 4.4. It'd return false for older
|
|
16
|
+
* Android version.
|
|
17
|
+
*/
|
|
18
|
+
export declare function isAndroidWebView(): boolean;
|
|
19
|
+
export declare function isAndroid12OrAbove(): boolean;
|
|
20
|
+
export declare function isIOSUA(): boolean;
|
|
21
|
+
export declare function getMajorAndroidVersion(): number;
|
|
22
|
+
export declare function getMajorSafariVersion(): number;
|
|
23
|
+
export declare function getMajorChromeVersion(): number;
|
|
24
|
+
export declare function getMajorIOSVersion(): number;
|
|
25
|
+
export declare function getMajorMinorOsVersion(): string;
|
|
26
|
+
export declare function isWindows(): boolean;
|
|
27
|
+
export declare function isMac(): boolean;
|
|
28
|
+
export declare function isLinux(): boolean;
|
|
29
|
+
export declare function getPlatform(): string;
|
|
30
|
+
export declare function isMobileDevice(): boolean;
|
|
31
|
+
export declare function isIOSDesktop(): boolean;
|
|
32
|
+
export declare function isIOS(): boolean;
|
|
33
|
+
export declare function isIOS15OrGreater(): boolean;
|
|
34
|
+
export declare function isAndroidDesktop(): boolean;
|
|
35
|
+
export declare const isBackCameraLabel: (label: string) => boolean;
|
|
36
|
+
export declare const isMobileBackCameraPortrait: ({ label, facingMode }: {
|
|
37
|
+
label: string;
|
|
38
|
+
facingMode: FacingMode[];
|
|
39
|
+
}) => boolean;
|
|
40
|
+
export declare const isFaceTimeCamera: (label: string, isDocumentScan: boolean) => boolean;
|
|
41
|
+
export declare const getCameraList: (backOnly: boolean) => Promise<Array<any>>;
|
|
42
|
+
export declare const getVideoConstraints: (availableDevices?: Array<any> | null, faceMode?: FacingMode, requireHD?: boolean, isDocumentScan?: boolean, canvasResolution?: {
|
|
43
|
+
width: number;
|
|
44
|
+
height: number;
|
|
45
|
+
}, hasError?: boolean) => {
|
|
46
|
+
audio: boolean;
|
|
47
|
+
video: {
|
|
48
|
+
facingMode: FacingMode;
|
|
49
|
+
resizeMode: string;
|
|
50
|
+
width: number | {
|
|
51
|
+
ideal: number;
|
|
52
|
+
};
|
|
53
|
+
height: number | {
|
|
54
|
+
ideal: number;
|
|
55
|
+
min?: undefined;
|
|
56
|
+
};
|
|
57
|
+
deviceId: any;
|
|
58
|
+
aspectRatio: number;
|
|
59
|
+
focusMode: string;
|
|
60
|
+
};
|
|
61
|
+
} | {
|
|
62
|
+
audio: boolean;
|
|
63
|
+
video: {
|
|
64
|
+
aspectRatio: number;
|
|
65
|
+
height: {
|
|
66
|
+
min: number;
|
|
67
|
+
ideal?: undefined;
|
|
68
|
+
};
|
|
69
|
+
resizeMode: string;
|
|
70
|
+
facingMode?: undefined;
|
|
71
|
+
width?: undefined;
|
|
72
|
+
deviceId?: undefined;
|
|
73
|
+
focusMode?: undefined;
|
|
74
|
+
};
|
|
75
|
+
};
|
|
76
|
+
export declare function scaleImageData(imageData: any, scaleFactor: number): ImageData;
|
|
77
|
+
export declare function zoomInCanvasImage(canvas: any, scaleFactor: number): ImageData;
|