@jaak.ai/stamps 2.0.0 → 2.1.0-dev.10
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 +11 -1
- package/dist/cjs/app-globals-V2Kpy_OQ.js +8 -0
- package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -0
- package/dist/cjs/{index-BfhtOB0D.js → index-Ga0t6BMe.js} +176 -119
- package/dist/cjs/index-Ga0t6BMe.js.map +1 -0
- package/dist/cjs/jaak-stamps-webcomponent.cjs.js +5 -4
- package/dist/cjs/jaak-stamps-webcomponent.cjs.js.map +1 -1
- package/dist/cjs/jaak-stamps.cjs.entry.js +1174 -655
- package/dist/cjs/jaak-stamps.cjs.entry.js.map +1 -1
- package/dist/cjs/jaak-stamps.entry.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +4 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/my-component/my-component.css +224 -13
- package/dist/collection/components/my-component/my-component.js +950 -281
- package/dist/collection/components/my-component/my-component.js.map +1 -1
- package/dist/collection/services/CameraService.js +156 -344
- package/dist/collection/services/CameraService.js.map +1 -1
- package/dist/collection/services/DetectionService.js +100 -42
- package/dist/collection/services/DetectionService.js.map +1 -1
- package/dist/collection/services/EventBusService.js +1 -1
- package/dist/collection/services/EventBusService.js.map +1 -1
- package/dist/collection/services/ServiceContainer.js +4 -13
- package/dist/collection/services/ServiceContainer.js.map +1 -1
- package/dist/collection/services/interfaces/ICameraService.js.map +1 -1
- package/dist/collection/types/component-types.js.map +1 -1
- package/dist/components/index.js +165 -113
- package/dist/components/index.js.map +1 -1
- package/dist/components/jaak-stamps.js +1182 -658
- package/dist/components/jaak-stamps.js.map +1 -1
- package/dist/esm/app-globals-DQuL1Twl.js +6 -0
- package/dist/esm/app-globals-DQuL1Twl.js.map +1 -0
- package/dist/esm/{index-BP1Q4KOg.js → index-Drbzcuq-.js} +177 -119
- package/dist/esm/index-Drbzcuq-.js.map +1 -0
- package/dist/esm/jaak-stamps-webcomponent.js +5 -4
- package/dist/esm/jaak-stamps-webcomponent.js.map +1 -1
- package/dist/esm/jaak-stamps.entry.js +1174 -655
- package/dist/esm/jaak-stamps.entry.js.map +1 -1
- package/dist/esm/loader.js +4 -3
- package/dist/esm/loader.js.map +1 -1
- package/dist/jaak-stamps-webcomponent/jaak-stamps-webcomponent.esm.js +1 -1
- package/dist/jaak-stamps-webcomponent/jaak-stamps-webcomponent.esm.js.map +1 -1
- package/dist/jaak-stamps-webcomponent/jaak-stamps.entry.esm.js.map +1 -1
- package/dist/jaak-stamps-webcomponent/loader.esm.js.map +1 -1
- package/dist/jaak-stamps-webcomponent/p-5f7301f1.entry.js +2 -0
- package/dist/jaak-stamps-webcomponent/p-5f7301f1.entry.js.map +1 -0
- package/dist/jaak-stamps-webcomponent/p-DQuL1Twl.js +2 -0
- package/dist/jaak-stamps-webcomponent/p-DQuL1Twl.js.map +1 -0
- package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js +3 -0
- package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js.map +1 -0
- package/dist/types/components/my-component/my-component.d.ts +87 -17
- package/dist/types/components.d.ts +14 -8
- package/dist/types/services/CameraService.d.ts +12 -14
- package/dist/types/services/DetectionService.d.ts +10 -3
- package/dist/types/services/ServiceContainer.d.ts +1 -2
- package/dist/types/services/interfaces/ICameraService.d.ts +3 -12
- package/dist/types/stencil-public-runtime.d.ts +12 -5
- package/dist/types/types/component-types.d.ts +3 -0
- package/package.json +4 -2
- package/dist/cjs/index-BfhtOB0D.js.map +0 -1
- package/dist/collection/services/LoggerService.js +0 -40
- package/dist/collection/services/LoggerService.js.map +0 -1
- package/dist/collection/services/interfaces/ILogger.js +0 -2
- package/dist/collection/services/interfaces/ILogger.js.map +0 -1
- package/dist/esm/index-BP1Q4KOg.js.map +0 -1
- package/dist/jaak-stamps-webcomponent/p-2264b5b4.entry.js +0 -2
- package/dist/jaak-stamps-webcomponent/p-2264b5b4.entry.js.map +0 -1
- package/dist/jaak-stamps-webcomponent/p-BP1Q4KOg.js +0 -3
- package/dist/jaak-stamps-webcomponent/p-BP1Q4KOg.js.map +0 -1
- package/dist/types/services/LoggerService.d.ts +0 -12
- package/dist/types/services/interfaces/ILogger.d.ts +0 -8
|
@@ -7,6 +7,7 @@ export declare class JaakStamps {
|
|
|
7
7
|
maskSize: number;
|
|
8
8
|
cropMargin: number;
|
|
9
9
|
useDocumentClassification: boolean;
|
|
10
|
+
useDocumentDetector: boolean;
|
|
10
11
|
preferredCamera: 'auto' | 'front' | 'back';
|
|
11
12
|
captureDelay: number;
|
|
12
13
|
enableBackDocumentTimer: boolean;
|
|
@@ -31,6 +32,18 @@ export declare class JaakStamps {
|
|
|
31
32
|
showCameraSelector: boolean;
|
|
32
33
|
isSwitchingCamera: boolean;
|
|
33
34
|
hasDocumentDetected: boolean;
|
|
35
|
+
cameraInfoWithAutofocus: {
|
|
36
|
+
availableCameras: Array<{
|
|
37
|
+
id: string;
|
|
38
|
+
label: string;
|
|
39
|
+
selected: boolean;
|
|
40
|
+
hasAutofocus: boolean;
|
|
41
|
+
}>;
|
|
42
|
+
selectedCameraId: string | null;
|
|
43
|
+
deviceType: string;
|
|
44
|
+
isMultipleCamerasAvailable: boolean;
|
|
45
|
+
preferredFacing: 'environment' | 'user' | null;
|
|
46
|
+
};
|
|
34
47
|
currentStatus: {
|
|
35
48
|
message: string;
|
|
36
49
|
description?: string;
|
|
@@ -48,8 +61,12 @@ export declare class JaakStamps {
|
|
|
48
61
|
detectionRate: number;
|
|
49
62
|
};
|
|
50
63
|
backDocumentTimerRemaining: number;
|
|
64
|
+
showManualCaptureButton: boolean;
|
|
65
|
+
performanceDegradedMode: boolean;
|
|
66
|
+
showPerformanceMessage: boolean;
|
|
67
|
+
captureStateVersion: number;
|
|
68
|
+
processingButton: 'capture-front' | 'capture-back' | 'skip-back' | null;
|
|
51
69
|
private serviceContainer;
|
|
52
|
-
private logger;
|
|
53
70
|
private eventBus;
|
|
54
71
|
private stateManager;
|
|
55
72
|
private cameraService;
|
|
@@ -64,14 +81,25 @@ export declare class JaakStamps {
|
|
|
64
81
|
private alignmentStartTime?;
|
|
65
82
|
private alignmentTimer?;
|
|
66
83
|
private backDocumentTimer?;
|
|
84
|
+
private orientationTimer?;
|
|
67
85
|
private performanceMetrics;
|
|
68
86
|
private performanceUpdateInterval?;
|
|
69
87
|
private frameSkipCounter;
|
|
70
|
-
private readonly
|
|
88
|
+
private readonly BASE_FRAME_SKIP;
|
|
89
|
+
private readonly MAX_FRAME_SKIP;
|
|
71
90
|
private consecutiveFailures;
|
|
72
91
|
private readonly MAX_FAILURES;
|
|
73
92
|
private lastInferenceTime;
|
|
74
93
|
private readonly MIN_INFERENCE_INTERVAL;
|
|
94
|
+
private performanceHistory;
|
|
95
|
+
private readonly PERFORMANCE_HISTORY_SIZE;
|
|
96
|
+
private readonly PERFORMANCE_THRESHOLD_MS;
|
|
97
|
+
private readonly SLOW_FRAMES_TO_TRIGGER;
|
|
98
|
+
private slowFrameCount;
|
|
99
|
+
private processedFramesCount;
|
|
100
|
+
private hasAutoSwitchedToManual;
|
|
101
|
+
private canvasPool;
|
|
102
|
+
private readonly MAX_CANVAS_POOL_SIZE;
|
|
75
103
|
componentDidLoad(): Promise<void>;
|
|
76
104
|
private initializeServices;
|
|
77
105
|
private setupEventListeners;
|
|
@@ -81,16 +109,44 @@ export declare class JaakStamps {
|
|
|
81
109
|
private finalizeInitialization;
|
|
82
110
|
private updateStatus;
|
|
83
111
|
private emitReadyEvent;
|
|
112
|
+
private checkCameraPermissions;
|
|
84
113
|
private handleStateChange;
|
|
85
114
|
private initializeResizeObserver;
|
|
86
115
|
private handleResize;
|
|
116
|
+
private triggerRerender;
|
|
117
|
+
private getGuideText;
|
|
87
118
|
private updateMaskDimensions;
|
|
119
|
+
private isComponentReady;
|
|
88
120
|
getCapturedImages(): Promise<CapturedImagesResponse>;
|
|
89
121
|
isProcessCompleted(): Promise<boolean>;
|
|
90
|
-
startCapture(): Promise<
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
122
|
+
startCapture(): Promise<{
|
|
123
|
+
success: boolean;
|
|
124
|
+
error?: undefined;
|
|
125
|
+
} | {
|
|
126
|
+
success: boolean;
|
|
127
|
+
error: any;
|
|
128
|
+
}>;
|
|
129
|
+
stopCapture(): Promise<{
|
|
130
|
+
success: boolean;
|
|
131
|
+
error?: undefined;
|
|
132
|
+
} | {
|
|
133
|
+
success: boolean;
|
|
134
|
+
error: any;
|
|
135
|
+
}>;
|
|
136
|
+
resetCapture(): Promise<{
|
|
137
|
+
success: boolean;
|
|
138
|
+
error?: undefined;
|
|
139
|
+
} | {
|
|
140
|
+
success: boolean;
|
|
141
|
+
error: any;
|
|
142
|
+
}>;
|
|
143
|
+
skipBackCapture(): Promise<{
|
|
144
|
+
success: boolean;
|
|
145
|
+
error?: undefined;
|
|
146
|
+
} | {
|
|
147
|
+
success: boolean;
|
|
148
|
+
error: any;
|
|
149
|
+
}>;
|
|
94
150
|
getStatus(): Promise<StatusResponse>;
|
|
95
151
|
preloadModel(): Promise<{
|
|
96
152
|
success: boolean;
|
|
@@ -106,23 +162,24 @@ export declare class JaakStamps {
|
|
|
106
162
|
success: boolean;
|
|
107
163
|
selectedCamera: string;
|
|
108
164
|
availableCameras: number;
|
|
165
|
+
error?: undefined;
|
|
166
|
+
} | {
|
|
167
|
+
success: boolean;
|
|
168
|
+
error: any;
|
|
169
|
+
selectedCamera: any;
|
|
170
|
+
availableCameras: number;
|
|
109
171
|
}>;
|
|
110
172
|
setCaptureDelay(delay: number): Promise<{
|
|
111
173
|
success: boolean;
|
|
174
|
+
error: string;
|
|
112
175
|
captureDelay: number;
|
|
113
|
-
}
|
|
114
|
-
getCaptureDelay(): Promise<number>;
|
|
115
|
-
setTorchEnabled(enabled: boolean): Promise<{
|
|
116
|
-
success: boolean;
|
|
117
|
-
enabled: boolean;
|
|
118
|
-
}>;
|
|
119
|
-
focusAtPoint(x: number, y: number): Promise<{
|
|
176
|
+
} | {
|
|
120
177
|
success: boolean;
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
y: number;
|
|
124
|
-
};
|
|
178
|
+
captureDelay: number;
|
|
179
|
+
error?: undefined;
|
|
125
180
|
}>;
|
|
181
|
+
getCaptureDelay(): Promise<number>;
|
|
182
|
+
private checkDeviceCapabilities;
|
|
126
183
|
private startDetection;
|
|
127
184
|
private initializeVideoStream;
|
|
128
185
|
private detectFrame;
|
|
@@ -131,13 +188,22 @@ export declare class JaakStamps {
|
|
|
131
188
|
render(): any;
|
|
132
189
|
private updateDetectionBoxes;
|
|
133
190
|
private updateMaskColor;
|
|
191
|
+
private takeManualScreenshot;
|
|
192
|
+
private takeScreenshotWithMaskCoordinates;
|
|
134
193
|
private takeScreenshot;
|
|
135
194
|
private triggerCaptureAnimation;
|
|
195
|
+
private switchToManualMode;
|
|
196
|
+
private switchToManualModeWithWarning;
|
|
197
|
+
private continueWithCameraSetup;
|
|
198
|
+
private switchToManualModeWithError;
|
|
199
|
+
private stopPerformanceMonitoring;
|
|
200
|
+
private releaseOnnxResources;
|
|
136
201
|
private completeProcess;
|
|
137
202
|
private stopDetection;
|
|
138
203
|
private startBackDocumentTimer;
|
|
139
204
|
private clearBackDocumentTimer;
|
|
140
205
|
private toggleCameraSelector;
|
|
206
|
+
private updateCameraInfoWithAutofocus;
|
|
141
207
|
private handleCameraSwitch;
|
|
142
208
|
private resetDetection;
|
|
143
209
|
private exitSession;
|
|
@@ -145,4 +211,8 @@ export declare class JaakStamps {
|
|
|
145
211
|
private updatePerformanceMetrics;
|
|
146
212
|
private recordOnnxPerformance;
|
|
147
213
|
private recordFrameProcessing;
|
|
214
|
+
private getAdaptiveFrameSkip;
|
|
215
|
+
private resetMaskToWhite;
|
|
216
|
+
private getPooledCanvas;
|
|
217
|
+
private returnCanvasToPool;
|
|
148
218
|
}
|
|
@@ -33,7 +33,6 @@ export namespace Components {
|
|
|
33
33
|
* @default false
|
|
34
34
|
*/
|
|
35
35
|
"enableBackDocumentTimer": boolean;
|
|
36
|
-
"focusAtPoint": (x: number, y: number) => Promise<{ success: boolean; coordinates: { x: number; y: number; }; }>;
|
|
37
36
|
"getCameraInfo": () => Promise<CameraInfoResponse>;
|
|
38
37
|
"getCaptureDelay": () => Promise<number>;
|
|
39
38
|
"getCapturedImages": () => Promise<CapturedImagesResponse>;
|
|
@@ -48,17 +47,20 @@ export namespace Components {
|
|
|
48
47
|
*/
|
|
49
48
|
"preferredCamera": 'auto' | 'front' | 'back';
|
|
50
49
|
"preloadModel": () => Promise<{ success: boolean; message: string; error?: undefined; } | { success: boolean; error: any; message?: undefined; }>;
|
|
51
|
-
"resetCapture": () => Promise<
|
|
52
|
-
"setCaptureDelay": (delay: number) => Promise<{ success: boolean; captureDelay: number; }>;
|
|
53
|
-
"setPreferredCamera": (camera: "auto" | "front" | "back") => Promise<{ success: boolean; selectedCamera: string; availableCameras: number; }>;
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
"
|
|
57
|
-
"stopCapture": () => Promise<void>;
|
|
50
|
+
"resetCapture": () => Promise<{ success: boolean; error?: undefined; } | { success: boolean; error: any; }>;
|
|
51
|
+
"setCaptureDelay": (delay: number) => Promise<{ success: boolean; error: string; captureDelay: number; } | { success: boolean; captureDelay: number; error?: undefined; }>;
|
|
52
|
+
"setPreferredCamera": (camera: "auto" | "front" | "back") => Promise<{ success: boolean; selectedCamera: string; availableCameras: number; error?: undefined; } | { success: boolean; error: any; selectedCamera: any; availableCameras: number; }>;
|
|
53
|
+
"skipBackCapture": () => Promise<{ success: boolean; error?: undefined; } | { success: boolean; error: any; }>;
|
|
54
|
+
"startCapture": () => Promise<{ success: boolean; error?: undefined; } | { success: boolean; error: any; }>;
|
|
55
|
+
"stopCapture": () => Promise<{ success: boolean; error?: undefined; } | { success: boolean; error: any; }>;
|
|
58
56
|
/**
|
|
59
57
|
* @default false
|
|
60
58
|
*/
|
|
61
59
|
"useDocumentClassification": boolean;
|
|
60
|
+
/**
|
|
61
|
+
* @default true
|
|
62
|
+
*/
|
|
63
|
+
"useDocumentDetector": boolean;
|
|
62
64
|
}
|
|
63
65
|
}
|
|
64
66
|
export interface JaakStampsCustomEvent<T> extends CustomEvent<T> {
|
|
@@ -128,6 +130,10 @@ declare namespace LocalJSX {
|
|
|
128
130
|
* @default false
|
|
129
131
|
*/
|
|
130
132
|
"useDocumentClassification"?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* @default true
|
|
135
|
+
*/
|
|
136
|
+
"useDocumentDetector"?: boolean;
|
|
131
137
|
}
|
|
132
138
|
interface IntrinsicElements {
|
|
133
139
|
"jaak-stamps": JaakStamps;
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
import { ICameraService, CameraInfo } from './interfaces/ICameraService';
|
|
2
|
-
import { ILogger } from './interfaces/ILogger';
|
|
3
2
|
import { IEventBus } from './interfaces/IEventBus';
|
|
4
3
|
export declare class CameraService implements ICameraService {
|
|
5
|
-
private logger;
|
|
6
4
|
private eventBus;
|
|
7
5
|
private availableCameras;
|
|
8
6
|
private selectedCameraId;
|
|
9
7
|
private deviceType;
|
|
10
8
|
private preferredCameraFacing;
|
|
11
9
|
private preferredCamera;
|
|
12
|
-
private
|
|
13
|
-
|
|
10
|
+
private static cameraCapabilitiesCache;
|
|
11
|
+
private static deviceEnumerationCache;
|
|
12
|
+
private static readonly CACHE_DURATION;
|
|
13
|
+
private currentStreamPromise?;
|
|
14
|
+
private lastStreamConstraints?;
|
|
15
|
+
constructor(eventBus: IEventBus, preferredCamera?: 'auto' | 'front' | 'back');
|
|
14
16
|
detectDeviceType(): Promise<'mobile' | 'desktop' | 'tablet'>;
|
|
15
17
|
enumerateDevices(): Promise<MediaDeviceInfo[]>;
|
|
16
18
|
getAvailableCameras(): MediaDeviceInfo[];
|
|
@@ -20,28 +22,24 @@ export declare class CameraService implements ICameraService {
|
|
|
20
22
|
getPreferredFacing(): 'environment' | 'user' | null;
|
|
21
23
|
setupCamera(constraints?: MediaTrackConstraints): Promise<MediaStream>;
|
|
22
24
|
switchCamera(cameraId: string): Promise<void>;
|
|
23
|
-
flipToNextCamera(): Promise<void>;
|
|
24
|
-
savePreference(): void;
|
|
25
|
-
loadPreference(): void;
|
|
26
25
|
isRearCamera(stream: MediaStream): boolean;
|
|
27
|
-
getCameraInfo(): {
|
|
26
|
+
getCameraInfo(): Promise<{
|
|
28
27
|
availableCameras: CameraInfo[];
|
|
29
28
|
selectedCameraId: string | null;
|
|
30
29
|
deviceType: string;
|
|
31
30
|
isMultipleCamerasAvailable: boolean;
|
|
32
31
|
preferredFacing: 'environment' | 'user' | null;
|
|
33
|
-
}
|
|
32
|
+
}>;
|
|
34
33
|
private checkCameraPermission;
|
|
35
34
|
private handleCameraPermissionError;
|
|
36
35
|
private setInitialCameraPreference;
|
|
36
|
+
private checkCameraAutofocus;
|
|
37
37
|
private selectFrontCamera;
|
|
38
38
|
private selectBackCamera;
|
|
39
39
|
private selectAutoCamera;
|
|
40
40
|
private updatePreferredFacing;
|
|
41
41
|
private getMaxResolution;
|
|
42
|
-
private
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
setTorchEnabled(enabled: boolean, stream?: MediaStream): Promise<boolean>;
|
|
46
|
-
focusAtPoint(x: number, y: number, stream?: MediaStream): Promise<boolean>;
|
|
42
|
+
private constraintsEqual;
|
|
43
|
+
static clearCaches(): void;
|
|
44
|
+
invalidateDeviceCache(): void;
|
|
47
45
|
}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { IDetectionService, DetectionBox, SideAlignment, ClassificationResult } from './interfaces/IDetectionService';
|
|
2
|
-
import { ILogger } from './interfaces/ILogger';
|
|
3
2
|
export declare class DetectionService implements IDetectionService {
|
|
4
|
-
private logger;
|
|
5
3
|
private debug;
|
|
6
4
|
private useDocumentClassification;
|
|
5
|
+
private useDocumentDetector;
|
|
7
6
|
private session?;
|
|
8
7
|
private mobileNetSession?;
|
|
9
8
|
private mobileNetClassMap?;
|
|
@@ -17,7 +16,9 @@ export declare class DetectionService implements IDetectionService {
|
|
|
17
16
|
private preprocessCanvas?;
|
|
18
17
|
private preprocessCtx?;
|
|
19
18
|
private captureCanvas?;
|
|
20
|
-
|
|
19
|
+
private static canvasPool;
|
|
20
|
+
private static readonly MAX_POOL_SIZE;
|
|
21
|
+
constructor(debug?: boolean, useDocumentClassification?: boolean, useDocumentDetector?: boolean);
|
|
21
22
|
loadModel(): Promise<void>;
|
|
22
23
|
loadClassificationModel(): Promise<void>;
|
|
23
24
|
isModelLoaded(): boolean;
|
|
@@ -32,4 +33,10 @@ export declare class DetectionService implements IDetectionService {
|
|
|
32
33
|
private cleanupCanvasPool;
|
|
33
34
|
private float32ToFloat16;
|
|
34
35
|
private preprocessMobileNet;
|
|
36
|
+
private getCanvas;
|
|
37
|
+
private returnCanvas;
|
|
38
|
+
static clearCanvasPools(): void;
|
|
39
|
+
getPoolStats(): {
|
|
40
|
+
[key: string]: number;
|
|
41
|
+
};
|
|
35
42
|
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import { ILogger } from './interfaces/ILogger';
|
|
2
1
|
import { ICameraService } from './interfaces/ICameraService';
|
|
3
2
|
import { IDetectionService } from './interfaces/IDetectionService';
|
|
4
3
|
import { IStateManager } from './interfaces/IStateManager';
|
|
@@ -9,6 +8,7 @@ export interface ComponentConfig {
|
|
|
9
8
|
maskSize: number;
|
|
10
9
|
cropMargin: number;
|
|
11
10
|
useDocumentClassification: boolean;
|
|
11
|
+
useDocumentDetector: boolean;
|
|
12
12
|
preferredCamera: 'auto' | 'front' | 'back';
|
|
13
13
|
captureDelay: number;
|
|
14
14
|
}
|
|
@@ -17,7 +17,6 @@ export declare class ServiceContainer {
|
|
|
17
17
|
constructor(config: ComponentConfig);
|
|
18
18
|
private initializeServices;
|
|
19
19
|
get<T>(serviceName: string): T;
|
|
20
|
-
getLogger(): ILogger;
|
|
21
20
|
getEventBus(): IEventBus;
|
|
22
21
|
getStateManager(): IStateManager;
|
|
23
22
|
getCameraService(): ICameraService;
|
|
@@ -2,11 +2,7 @@ export interface CameraInfo {
|
|
|
2
2
|
id: string;
|
|
3
3
|
label: string;
|
|
4
4
|
selected: boolean;
|
|
5
|
-
|
|
6
|
-
export interface CameraPreference {
|
|
7
|
-
cameraId: string;
|
|
8
|
-
facing: 'environment' | 'user' | null;
|
|
9
|
-
timestamp: number;
|
|
5
|
+
hasAutofocus: boolean;
|
|
10
6
|
}
|
|
11
7
|
export interface ICameraService {
|
|
12
8
|
detectDeviceType(): Promise<'mobile' | 'desktop' | 'tablet'>;
|
|
@@ -18,17 +14,12 @@ export interface ICameraService {
|
|
|
18
14
|
getPreferredFacing(): 'environment' | 'user' | null;
|
|
19
15
|
setupCamera(constraints?: MediaTrackConstraints): Promise<MediaStream>;
|
|
20
16
|
switchCamera(cameraId: string): Promise<void>;
|
|
21
|
-
flipToNextCamera(): Promise<void>;
|
|
22
|
-
savePreference(): void;
|
|
23
|
-
loadPreference(): void;
|
|
24
17
|
isRearCamera(stream: MediaStream): boolean;
|
|
25
|
-
|
|
26
|
-
focusAtPoint(x: number, y: number, stream?: MediaStream): Promise<boolean>;
|
|
27
|
-
getCameraInfo(): {
|
|
18
|
+
getCameraInfo(): Promise<{
|
|
28
19
|
availableCameras: CameraInfo[];
|
|
29
20
|
selectedCameraId: string | null;
|
|
30
21
|
deviceType: string;
|
|
31
22
|
isMultipleCamerasAvailable: boolean;
|
|
32
23
|
preferredFacing: 'environment' | 'user' | null;
|
|
33
|
-
}
|
|
24
|
+
}>;
|
|
34
25
|
}
|
|
@@ -846,7 +846,7 @@ export declare namespace JSXBase {
|
|
|
846
846
|
interface DetailsHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
847
847
|
open?: boolean;
|
|
848
848
|
name?: string;
|
|
849
|
-
onToggle?: (event:
|
|
849
|
+
onToggle?: (event: ToggleEvent) => void;
|
|
850
850
|
}
|
|
851
851
|
interface DelHTMLAttributes<T> extends HTMLAttributes<T> {
|
|
852
852
|
cite?: string;
|
|
@@ -1552,6 +1552,13 @@ export declare namespace JSXBase {
|
|
|
1552
1552
|
z?: number | string;
|
|
1553
1553
|
zoomAndPan?: string;
|
|
1554
1554
|
}
|
|
1555
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent) */
|
|
1556
|
+
interface ToggleEvent extends Event {
|
|
1557
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/newState) */
|
|
1558
|
+
readonly newState: string;
|
|
1559
|
+
/** [MDN Reference](https://developer.mozilla.org/docs/Web/API/ToggleEvent/oldState) */
|
|
1560
|
+
readonly oldState: string;
|
|
1561
|
+
}
|
|
1555
1562
|
interface DOMAttributes<T> extends JSXAttributes<T> {
|
|
1556
1563
|
slot?: string;
|
|
1557
1564
|
part?: string;
|
|
@@ -1568,6 +1575,10 @@ export declare namespace JSXBase {
|
|
|
1568
1575
|
onCompositionstartCapture?: (event: CompositionEvent) => void;
|
|
1569
1576
|
onCompositionupdate?: (event: CompositionEvent) => void;
|
|
1570
1577
|
onCompositionupdateCapture?: (event: CompositionEvent) => void;
|
|
1578
|
+
onBeforeToggle?: (event: ToggleEvent) => void;
|
|
1579
|
+
onBeforeToggleCapture?: (event: ToggleEvent) => void;
|
|
1580
|
+
onToggle?: (event: ToggleEvent) => void;
|
|
1581
|
+
onToggleCapture?: (event: ToggleEvent) => void;
|
|
1571
1582
|
onFocus?: (event: FocusEvent) => void;
|
|
1572
1583
|
onFocusCapture?: (event: FocusEvent) => void;
|
|
1573
1584
|
onFocusin?: (event: FocusEvent) => void;
|
|
@@ -1586,10 +1597,6 @@ export declare namespace JSXBase {
|
|
|
1586
1597
|
onSubmitCapture?: (event: Event) => void;
|
|
1587
1598
|
onInvalid?: (event: Event) => void;
|
|
1588
1599
|
onInvalidCapture?: (event: Event) => void;
|
|
1589
|
-
onBeforeToggle?: (event: Event) => void;
|
|
1590
|
-
onBeforeToggleCapture?: (event: Event) => void;
|
|
1591
|
-
onToggle?: (event: Event) => void;
|
|
1592
|
-
onToggleCapture?: (event: Event) => void;
|
|
1593
1600
|
onLoad?: (event: Event) => void;
|
|
1594
1601
|
onLoadCapture?: (event: Event) => void;
|
|
1595
1602
|
onError?: (event: Event) => void;
|
|
@@ -11,6 +11,7 @@ export interface CameraInfoResponse {
|
|
|
11
11
|
deviceType: string;
|
|
12
12
|
isMultipleCamerasAvailable: boolean;
|
|
13
13
|
preferredFacing: 'environment' | 'user' | null;
|
|
14
|
+
error?: string;
|
|
14
15
|
}
|
|
15
16
|
export interface CapturedImagesResponse {
|
|
16
17
|
front: {
|
|
@@ -33,4 +34,6 @@ export interface StatusResponse {
|
|
|
33
34
|
hasImages: boolean;
|
|
34
35
|
isProcessCompleted: boolean;
|
|
35
36
|
isModelPreloaded: boolean;
|
|
37
|
+
componentStatus?: 'initializing' | 'loading' | 'ready' | 'error';
|
|
38
|
+
componentMessage?: string;
|
|
36
39
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jaak.ai/stamps",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.1.0-dev.10",
|
|
4
4
|
"description": "Jaak Document Identifier",
|
|
5
5
|
"main": "dist/index.cjs.js",
|
|
6
6
|
"module": "dist/index.js",
|
|
@@ -34,6 +34,7 @@
|
|
|
34
34
|
"scripts": {
|
|
35
35
|
"build": "stencil build",
|
|
36
36
|
"start": "stencil build --dev --watch --serve",
|
|
37
|
+
"start:demo": "http-server src -p 8080 -o /demo.html",
|
|
37
38
|
"test": "stencil test --spec --e2e",
|
|
38
39
|
"test.watch": "stencil test --spec --e2e --watchAll",
|
|
39
40
|
"generate": "stencil generate"
|
|
@@ -42,6 +43,7 @@
|
|
|
42
43
|
"@stencil/core": "^4.27.1",
|
|
43
44
|
"@types/jest": "^29.5.14",
|
|
44
45
|
"@types/node": "^22.13.5",
|
|
46
|
+
"http-server": "^14.1.1",
|
|
45
47
|
"jest": "^29.7.0",
|
|
46
48
|
"jest-cli": "^29.7.0",
|
|
47
49
|
"puppeteer": "^24.3.0"
|
|
@@ -51,7 +53,7 @@
|
|
|
51
53
|
"@semantic-release/changelog": "^6.0.3",
|
|
52
54
|
"@semantic-release/commit-analyzer": "^13.0.1",
|
|
53
55
|
"@semantic-release/git": "^10.0.1",
|
|
54
|
-
"@semantic-release/github": "^11.0.
|
|
56
|
+
"@semantic-release/github": "^11.0.4",
|
|
55
57
|
"@semantic-release/npm": "^12.0.2",
|
|
56
58
|
"@semantic-release/release-notes-generator": "^14.0.3",
|
|
57
59
|
"semantic-release": "^24.2.7"
|