@jaak.ai/stamps 2.1.0 → 2.2.0-dev.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +42 -9
- package/dist/cjs/{index-Ga0t6BMe.js → index-D6NBn_qu.js} +30 -5
- package/dist/cjs/index-D6NBn_qu.js.map +1 -0
- package/dist/cjs/jaak-stamps-webcomponent.cjs.js +2 -2
- package/dist/cjs/jaak-stamps.cjs.entry.js +20082 -11
- 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 +2 -2
- package/dist/collection/components/my-component/my-component.css +82 -2
- package/dist/collection/components/my-component/my-component.js +475 -9
- package/dist/collection/components/my-component/my-component.js.map +1 -1
- package/dist/collection/services/LicenseValidationService.js +111 -0
- package/dist/collection/services/LicenseValidationService.js.map +1 -0
- package/dist/collection/services/MetricsService.js +350 -0
- package/dist/collection/services/MetricsService.js.map +1 -0
- package/dist/collection/services/ServiceContainer.js +66 -1
- package/dist/collection/services/ServiceContainer.js.map +1 -1
- package/dist/collection/services/TracingService.js +442 -0
- package/dist/collection/services/TracingService.js.map +1 -0
- package/dist/collection/services/interfaces/ILicenseValidationService.js +2 -0
- package/dist/collection/services/interfaces/ILicenseValidationService.js.map +1 -0
- package/dist/collection/services/interfaces/IMetricsService.js +2 -0
- package/dist/collection/services/interfaces/IMetricsService.js.map +1 -0
- package/dist/collection/services/interfaces/ITracingService.js +2 -0
- package/dist/collection/services/interfaces/ITracingService.js.map +1 -0
- package/dist/components/index.js +28 -3
- package/dist/components/index.js.map +1 -1
- package/dist/components/jaak-stamps.js +20096 -10
- package/dist/components/jaak-stamps.js.map +1 -1
- package/dist/esm/{index-Drbzcuq-.js → index-BCfAsrzL.js} +30 -5
- package/dist/esm/index-BCfAsrzL.js.map +1 -0
- package/dist/esm/jaak-stamps-webcomponent.js +3 -3
- package/dist/esm/jaak-stamps.entry.js +20082 -11
- package/dist/esm/jaak-stamps.entry.js.map +1 -1
- package/dist/esm/loader.js +3 -3
- package/dist/jaak-stamps-webcomponent/jaak-stamps-webcomponent.esm.js +1 -1
- package/dist/jaak-stamps-webcomponent/jaak-stamps.entry.esm.js.map +1 -1
- package/dist/jaak-stamps-webcomponent/p-8c49893d.entry.js +7 -0
- package/dist/jaak-stamps-webcomponent/p-8c49893d.entry.js.map +1 -0
- package/dist/jaak-stamps-webcomponent/p-BCfAsrzL.js +3 -0
- package/dist/jaak-stamps-webcomponent/p-BCfAsrzL.js.map +1 -0
- package/dist/types/components/my-component/my-component.d.ts +23 -0
- package/dist/types/components.d.ts +76 -0
- package/dist/types/services/LicenseValidationService.d.ts +59 -0
- package/dist/types/services/MetricsService.d.ts +74 -0
- package/dist/types/services/ServiceContainer.d.ts +14 -1
- package/dist/types/services/TracingService.d.ts +67 -0
- package/dist/types/services/interfaces/ILicenseValidationService.d.ts +4 -0
- package/dist/types/services/interfaces/IMetricsService.d.ts +70 -0
- package/dist/types/services/interfaces/ITracingService.d.ts +59 -0
- package/package.json +18 -2
- package/dist/cjs/index-Ga0t6BMe.js.map +0 -1
- package/dist/esm/index-Drbzcuq-.js.map +0 -1
- package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js +0 -3
- package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js.map +0 -1
- package/dist/jaak-stamps-webcomponent/p-c06e5d7b.entry.js +0 -2
- package/dist/jaak-stamps-webcomponent/p-c06e5d7b.entry.js.map +0 -1
package/README.md
CHANGED
|
@@ -58,6 +58,10 @@ yarn add @jaak.ai/stamps
|
|
|
58
58
|
|
|
59
59
|
| Property | Type | Default | Description |
|
|
60
60
|
|----------|------|---------|-------------|
|
|
61
|
+
| `license` | `string` | `undefined` | License key for component authentication (required) |
|
|
62
|
+
| `environment` | `'dev' \| 'qa' \| 'staging' \| 'prod'` | `'prod'` | API environment for license validation |
|
|
63
|
+
| `trace-id` | `string` | `undefined` | Optional trace ID for request tracing (auto-generated if not provided) |
|
|
64
|
+
| `app-id` | `string` | `'jaak-stamps-web'` | Application identifier for analytics and tracking |
|
|
61
65
|
| `debug` | `boolean` | `false` | Enable debug mode with additional logging and overlays |
|
|
62
66
|
| `mask-size` | `number` | `90` | Size percentage of the document detection mask |
|
|
63
67
|
| `alignment-tolerance` | `number` | `15` | Tolerance level for document alignment detection |
|
|
@@ -152,6 +156,7 @@ preloadModel(): Promise<{
|
|
|
152
156
|
|-------|-------------|-------------|
|
|
153
157
|
| `isReady` | `boolean` | Fired when component is fully initialized and ready |
|
|
154
158
|
| `captureCompleted` | `object` | Fired when document capture process is completed |
|
|
159
|
+
| `traceIdGenerated` | `{ traceId: string }` | Fired after license validation with the generated or provided trace ID for request tracing |
|
|
155
160
|
|
|
156
161
|
### Type Definitions
|
|
157
162
|
|
|
@@ -206,6 +211,9 @@ interface StatusResponse {
|
|
|
206
211
|
<body>
|
|
207
212
|
<jaak-stamps
|
|
208
213
|
id="documentScanner"
|
|
214
|
+
license="your-license-key-here"
|
|
215
|
+
environment="prod"
|
|
216
|
+
app-id="my-custom-app"
|
|
209
217
|
preferred-camera="auto"
|
|
210
218
|
capture-delay="1500"
|
|
211
219
|
use-document-detector="true"
|
|
@@ -214,23 +222,29 @@ interface StatusResponse {
|
|
|
214
222
|
|
|
215
223
|
<script>
|
|
216
224
|
const scanner = document.getElementById('documentScanner');
|
|
217
|
-
|
|
225
|
+
|
|
226
|
+
// Handle trace ID generation
|
|
227
|
+
scanner.addEventListener('traceIdGenerated', (event) => {
|
|
228
|
+
console.log('Trace ID for this session:', event.detail.traceId);
|
|
229
|
+
// Use this trace ID for correlating requests across your system
|
|
230
|
+
});
|
|
231
|
+
|
|
218
232
|
// Wait for component to be ready
|
|
219
233
|
scanner.addEventListener('isReady', () => {
|
|
220
234
|
console.log('Document scanner is ready');
|
|
221
|
-
|
|
235
|
+
|
|
222
236
|
// Start the capture process
|
|
223
237
|
scanner.startCapture();
|
|
224
238
|
});
|
|
225
|
-
|
|
239
|
+
|
|
226
240
|
// Handle capture completion
|
|
227
241
|
scanner.addEventListener('captureCompleted', async (event) => {
|
|
228
242
|
console.log('Capture completed:', event.detail);
|
|
229
|
-
|
|
243
|
+
|
|
230
244
|
// Get captured images
|
|
231
245
|
const images = await scanner.getCapturedImages();
|
|
232
246
|
console.log('Captured images:', images);
|
|
233
|
-
|
|
247
|
+
|
|
234
248
|
// Process the images as needed
|
|
235
249
|
if (images.front.cropped) {
|
|
236
250
|
// Display or upload the cropped front image
|
|
@@ -285,22 +299,29 @@ const DocumentScanner: React.FC = () => {
|
|
|
285
299
|
const scanner = scannerRef.current;
|
|
286
300
|
if (!scanner) return;
|
|
287
301
|
|
|
302
|
+
// Trace ID generation handler
|
|
303
|
+
const handleTraceIdGenerated = (event: CustomEvent) => {
|
|
304
|
+
console.log('Trace ID:', event.detail.traceId);
|
|
305
|
+
};
|
|
306
|
+
|
|
288
307
|
// Component ready handler
|
|
289
308
|
const handleReady = () => {
|
|
290
309
|
setIsReady(true);
|
|
291
310
|
};
|
|
292
|
-
|
|
311
|
+
|
|
293
312
|
// Capture completion handler
|
|
294
313
|
const handleCaptureCompleted = async () => {
|
|
295
314
|
const images = await (scanner as any).getCapturedImages();
|
|
296
315
|
setCapturedImages(images);
|
|
297
316
|
};
|
|
298
|
-
|
|
317
|
+
|
|
299
318
|
// Add event listeners
|
|
319
|
+
scanner.addEventListener('traceIdGenerated', handleTraceIdGenerated);
|
|
300
320
|
scanner.addEventListener('isReady', handleReady);
|
|
301
321
|
scanner.addEventListener('captureCompleted', handleCaptureCompleted);
|
|
302
322
|
|
|
303
323
|
return () => {
|
|
324
|
+
scanner.removeEventListener('traceIdGenerated', handleTraceIdGenerated);
|
|
304
325
|
scanner.removeEventListener('isReady', handleReady);
|
|
305
326
|
scanner.removeEventListener('captureCompleted', handleCaptureCompleted);
|
|
306
327
|
};
|
|
@@ -318,6 +339,10 @@ const DocumentScanner: React.FC = () => {
|
|
|
318
339
|
|
|
319
340
|
<jaak-stamps
|
|
320
341
|
ref={scannerRef}
|
|
342
|
+
license="your-license-key-here"
|
|
343
|
+
environment="prod"
|
|
344
|
+
app-id="my-react-app"
|
|
345
|
+
trace-id="" // Leave empty to auto-generate
|
|
321
346
|
preferred-camera="auto"
|
|
322
347
|
capture-delay={1500}
|
|
323
348
|
use-document-classification={true}
|
|
@@ -390,6 +415,9 @@ interface CapturedImages {
|
|
|
390
415
|
|
|
391
416
|
<jaak-stamps
|
|
392
417
|
#scanner
|
|
418
|
+
license="your-license-key-here"
|
|
419
|
+
environment="prod"
|
|
420
|
+
app-id="my-angular-app"
|
|
393
421
|
preferred-camera="auto"
|
|
394
422
|
[capture-delay]="1500"
|
|
395
423
|
[use-document-classification]="true"
|
|
@@ -506,12 +534,17 @@ export class DocumentScannerComponent implements AfterViewInit {
|
|
|
506
534
|
|
|
507
535
|
ngAfterViewInit() {
|
|
508
536
|
const scanner = this.scannerRef.nativeElement;
|
|
509
|
-
|
|
537
|
+
|
|
538
|
+
// Trace ID generation handler
|
|
539
|
+
scanner.addEventListener('traceIdGenerated', (event: CustomEvent) => {
|
|
540
|
+
console.log('Trace ID:', event.detail.traceId);
|
|
541
|
+
});
|
|
542
|
+
|
|
510
543
|
// Component ready handler
|
|
511
544
|
scanner.addEventListener('isReady', () => {
|
|
512
545
|
this.isReady = true;
|
|
513
546
|
});
|
|
514
|
-
|
|
547
|
+
|
|
515
548
|
// Capture completion handler
|
|
516
549
|
scanner.addEventListener('captureCompleted', async () => {
|
|
517
550
|
this.capturedImages = await scanner.getCapturedImages();
|
|
@@ -12,6 +12,10 @@ var __export = (target, all) => {
|
|
|
12
12
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
13
13
|
};
|
|
14
14
|
|
|
15
|
+
// src/utils/constants.ts
|
|
16
|
+
var SVG_NS = "http://www.w3.org/2000/svg";
|
|
17
|
+
var HTML_NS = "http://www.w3.org/1999/xhtml";
|
|
18
|
+
|
|
15
19
|
// src/utils/es2022-rewire-class-members.ts
|
|
16
20
|
var reWireGetterSetter = (instance, hostRef) => {
|
|
17
21
|
var _a;
|
|
@@ -547,7 +551,7 @@ var setAccessor = (elm, memberName, oldValue, newValue, isSvg, flags, initialRen
|
|
|
547
551
|
}
|
|
548
552
|
} else {
|
|
549
553
|
const isComplex = isComplexType(newValue);
|
|
550
|
-
if ((isProp || isComplex && newValue !== null) &&
|
|
554
|
+
if ((isProp || isComplex && newValue !== null) && !isSvg) {
|
|
551
555
|
try {
|
|
552
556
|
if (!elm.tagName.includes("-")) {
|
|
553
557
|
const n = newValue == null ? "" : newValue;
|
|
@@ -640,14 +644,21 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
|
|
|
640
644
|
if (newVNode2.$text$ !== null) {
|
|
641
645
|
elm = newVNode2.$elm$ = win.document.createTextNode(newVNode2.$text$);
|
|
642
646
|
} else {
|
|
647
|
+
if (!isSvgMode) {
|
|
648
|
+
isSvgMode = newVNode2.$tag$ === "svg";
|
|
649
|
+
}
|
|
643
650
|
if (!win.document) {
|
|
644
651
|
throw new Error(
|
|
645
652
|
"You are trying to render a Stencil component in an environment that doesn't support the DOM. Make sure to populate the [`window`](https://developer.mozilla.org/en-US/docs/Web/API/Window/window) object before rendering a component."
|
|
646
653
|
);
|
|
647
654
|
}
|
|
648
|
-
elm = newVNode2.$elm$ = win.document.
|
|
655
|
+
elm = newVNode2.$elm$ = win.document.createElementNS(
|
|
656
|
+
isSvgMode ? SVG_NS : HTML_NS,
|
|
649
657
|
newVNode2.$tag$
|
|
650
|
-
);
|
|
658
|
+
) ;
|
|
659
|
+
if (isSvgMode && newVNode2.$tag$ === "foreignObject") {
|
|
660
|
+
isSvgMode = false;
|
|
661
|
+
}
|
|
651
662
|
{
|
|
652
663
|
updateElement(null, newVNode2, isSvgMode);
|
|
653
664
|
}
|
|
@@ -659,6 +670,13 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
|
|
|
659
670
|
}
|
|
660
671
|
}
|
|
661
672
|
}
|
|
673
|
+
{
|
|
674
|
+
if (newVNode2.$tag$ === "svg") {
|
|
675
|
+
isSvgMode = false;
|
|
676
|
+
} else if (elm.tagName === "foreignObject") {
|
|
677
|
+
isSvgMode = true;
|
|
678
|
+
}
|
|
679
|
+
}
|
|
662
680
|
}
|
|
663
681
|
elm["s-hn"] = hostTagName;
|
|
664
682
|
return elm;
|
|
@@ -791,8 +809,12 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
|
|
|
791
809
|
const elm = newVNode2.$elm$ = oldVNode.$elm$;
|
|
792
810
|
const oldChildren = oldVNode.$children$;
|
|
793
811
|
const newChildren = newVNode2.$children$;
|
|
812
|
+
const tag = newVNode2.$tag$;
|
|
794
813
|
const text = newVNode2.$text$;
|
|
795
814
|
if (text === null) {
|
|
815
|
+
{
|
|
816
|
+
isSvgMode = tag === "svg" ? true : tag === "foreignObject" ? false : isSvgMode;
|
|
817
|
+
}
|
|
796
818
|
{
|
|
797
819
|
updateElement(oldVNode, newVNode2, isSvgMode);
|
|
798
820
|
}
|
|
@@ -809,6 +831,9 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
|
|
|
809
831
|
) {
|
|
810
832
|
removeVnodes(oldChildren, 0, oldChildren.length - 1);
|
|
811
833
|
} else ;
|
|
834
|
+
if (isSvgMode && tag === "svg") {
|
|
835
|
+
isSvgMode = false;
|
|
836
|
+
}
|
|
812
837
|
} else if (oldVNode.$text$ !== text) {
|
|
813
838
|
elm.data = text;
|
|
814
839
|
}
|
|
@@ -1457,6 +1482,6 @@ exports.h = h;
|
|
|
1457
1482
|
exports.promiseResolve = promiseResolve;
|
|
1458
1483
|
exports.registerInstance = registerInstance;
|
|
1459
1484
|
exports.setNonce = setNonce;
|
|
1460
|
-
//# sourceMappingURL=index-
|
|
1485
|
+
//# sourceMappingURL=index-D6NBn_qu.js.map
|
|
1461
1486
|
|
|
1462
|
-
//# sourceMappingURL=index-
|
|
1487
|
+
//# sourceMappingURL=index-D6NBn_qu.js.map
|