@jaak.ai/stamps 2.1.0-dev.1 → 2.1.0-dev.11

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 (56) hide show
  1. package/README.md +11 -1
  2. package/dist/cjs/app-globals-V2Kpy_OQ.js +8 -0
  3. package/dist/cjs/app-globals-V2Kpy_OQ.js.map +1 -0
  4. package/dist/cjs/{index-BfhtOB0D.js → index-Ga0t6BMe.js} +176 -119
  5. package/dist/cjs/index-Ga0t6BMe.js.map +1 -0
  6. package/dist/cjs/jaak-stamps-webcomponent.cjs.js +5 -4
  7. package/dist/cjs/jaak-stamps-webcomponent.cjs.js.map +1 -1
  8. package/dist/cjs/jaak-stamps.cjs.entry.js +644 -60
  9. package/dist/cjs/jaak-stamps.cjs.entry.js.map +1 -1
  10. package/dist/cjs/jaak-stamps.entry.cjs.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +4 -3
  12. package/dist/cjs/loader.cjs.js.map +1 -1
  13. package/dist/collection/collection-manifest.json +1 -1
  14. package/dist/collection/components/my-component/my-component.css +210 -11
  15. package/dist/collection/components/my-component/my-component.js +618 -58
  16. package/dist/collection/components/my-component/my-component.js.map +1 -1
  17. package/dist/collection/services/DetectionService.js +48 -5
  18. package/dist/collection/services/DetectionService.js.map +1 -1
  19. package/dist/collection/services/ServiceContainer.js +3 -2
  20. package/dist/collection/services/ServiceContainer.js.map +1 -1
  21. package/dist/components/index.js +165 -113
  22. package/dist/components/index.js.map +1 -1
  23. package/dist/components/jaak-stamps.js +650 -60
  24. package/dist/components/jaak-stamps.js.map +1 -1
  25. package/dist/esm/app-globals-DQuL1Twl.js +6 -0
  26. package/dist/esm/app-globals-DQuL1Twl.js.map +1 -0
  27. package/dist/esm/{index-BP1Q4KOg.js → index-Drbzcuq-.js} +177 -119
  28. package/dist/esm/index-Drbzcuq-.js.map +1 -0
  29. package/dist/esm/jaak-stamps-webcomponent.js +5 -4
  30. package/dist/esm/jaak-stamps-webcomponent.js.map +1 -1
  31. package/dist/esm/jaak-stamps.entry.js +644 -60
  32. package/dist/esm/jaak-stamps.entry.js.map +1 -1
  33. package/dist/esm/loader.js +4 -3
  34. package/dist/esm/loader.js.map +1 -1
  35. package/dist/jaak-stamps-webcomponent/jaak-stamps-webcomponent.esm.js +1 -1
  36. package/dist/jaak-stamps-webcomponent/jaak-stamps-webcomponent.esm.js.map +1 -1
  37. package/dist/jaak-stamps-webcomponent/jaak-stamps.entry.esm.js.map +1 -1
  38. package/dist/jaak-stamps-webcomponent/loader.esm.js.map +1 -1
  39. package/dist/jaak-stamps-webcomponent/p-5f7301f1.entry.js +2 -0
  40. package/dist/jaak-stamps-webcomponent/p-5f7301f1.entry.js.map +1 -0
  41. package/dist/jaak-stamps-webcomponent/p-DQuL1Twl.js +2 -0
  42. package/dist/jaak-stamps-webcomponent/p-DQuL1Twl.js.map +1 -0
  43. package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js +3 -0
  44. package/dist/jaak-stamps-webcomponent/p-Drbzcuq-.js.map +1 -0
  45. package/dist/types/components/my-component/my-component.d.ts +25 -0
  46. package/dist/types/components.d.ts +8 -0
  47. package/dist/types/services/DetectionService.d.ts +2 -1
  48. package/dist/types/services/ServiceContainer.d.ts +1 -0
  49. package/dist/types/stencil-public-runtime.d.ts +12 -5
  50. package/package.json +3 -1
  51. package/dist/cjs/index-BfhtOB0D.js.map +0 -1
  52. package/dist/esm/index-BP1Q4KOg.js.map +0 -1
  53. package/dist/jaak-stamps-webcomponent/p-39560f23.entry.js +0 -2
  54. package/dist/jaak-stamps-webcomponent/p-39560f23.entry.js.map +0 -1
  55. package/dist/jaak-stamps-webcomponent/p-BP1Q4KOg.js +0 -3
  56. package/dist/jaak-stamps-webcomponent/p-BP1Q4KOg.js.map +0 -1
@@ -1,11 +1,12 @@
1
1
  'use strict';
2
2
 
3
- var index = require('./index-BfhtOB0D.js');
3
+ var index = require('./index-Ga0t6BMe.js');
4
+ var appGlobals = require('./app-globals-V2Kpy_OQ.js');
4
5
 
5
6
  const defineCustomElements = async (win, options) => {
6
7
  if (typeof window === 'undefined') return undefined;
7
- await index.globalScripts();
8
- return index.bootstrapLazy([["jaak-stamps.cjs",[[1,"jaak-stamps",{"debug":[4],"alignmentTolerance":[2,"alignment-tolerance"],"maskSize":[2,"mask-size"],"cropMargin":[2,"crop-margin"],"useDocumentClassification":[4,"use-document-classification"],"preferredCamera":[1,"preferred-camera"],"captureDelay":[2,"capture-delay"],"enableBackDocumentTimer":[4,"enable-back-document-timer"],"backDocumentTimerDuration":[2,"back-document-timer-duration"],"detectionBoxes":[32],"sideAlignment":[32],"isMaskReady":[32],"shouldMirrorVideo":[32],"showCameraSelector":[32],"isSwitchingCamera":[32],"hasDocumentDetected":[32],"cameraInfoWithAutofocus":[32],"currentStatus":[32],"performanceData":[32],"backDocumentTimerRemaining":[32],"getCapturedImages":[64],"isProcessCompleted":[64],"startCapture":[64],"stopCapture":[64],"resetCapture":[64],"skipBackCapture":[64],"getStatus":[64],"preloadModel":[64],"getCameraInfo":[64],"setPreferredCamera":[64],"setCaptureDelay":[64],"getCaptureDelay":[64]}]]]], options);
8
+ await appGlobals.globalScripts();
9
+ return index.bootstrapLazy([["jaak-stamps.cjs",[[257,"jaak-stamps",{"debug":[4],"alignmentTolerance":[2,"alignment-tolerance"],"maskSize":[2,"mask-size"],"cropMargin":[2,"crop-margin"],"useDocumentClassification":[4,"use-document-classification"],"useDocumentDetector":[4,"use-document-detector"],"preferredCamera":[1,"preferred-camera"],"captureDelay":[2,"capture-delay"],"enableBackDocumentTimer":[4,"enable-back-document-timer"],"backDocumentTimerDuration":[2,"back-document-timer-duration"],"detectionBoxes":[32],"sideAlignment":[32],"isMaskReady":[32],"shouldMirrorVideo":[32],"showCameraSelector":[32],"isSwitchingCamera":[32],"hasDocumentDetected":[32],"cameraInfoWithAutofocus":[32],"currentStatus":[32],"performanceData":[32],"backDocumentTimerRemaining":[32],"showManualCaptureButton":[32],"performanceDegradedMode":[32],"showPerformanceMessage":[32],"captureStateVersion":[32],"processingButton":[32],"getCapturedImages":[64],"isProcessCompleted":[64],"startCapture":[64],"stopCapture":[64],"resetCapture":[64],"skipBackCapture":[64],"getStatus":[64],"preloadModel":[64],"getCameraInfo":[64],"setPreferredCamera":[64],"setCaptureDelay":[64],"getCaptureDelay":[64]}]]]], options);
9
10
  };
10
11
 
11
12
  exports.setNonce = index.setNonce;
@@ -1 +1 @@
1
- {"version":3,"file":"loader.cjs.js","sources":["@lazy-external-entrypoint?app-data=conditional"],"sourcesContent":["export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\nexport const defineCustomElements = async (win, options) => {\n if (typeof window === 'undefined') return undefined;\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n};\n"],"names":["globalScripts","bootstrapLazy"],"mappings":";;;;AAGY,MAAC,oBAAoB,GAAG,OAAO,GAAG,EAAE,OAAO,KAAK;AAC5D,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,OAAO,SAAS;AACrD,EAAE,MAAMA,mBAAa,EAAE;AACvB,EAAE,OAAOC,mBAAa,CAAC,4BAA4B,EAAE,OAAO,CAAC;AAC7D;;;;;"}
1
+ {"version":3,"file":"loader.cjs.js","sources":["@lazy-external-entrypoint?app-data=conditional"],"sourcesContent":["export { setNonce } from '@stencil/core';\nimport { bootstrapLazy } from '@stencil/core';\nimport { globalScripts } from '@stencil/core/internal/app-globals';\nexport const defineCustomElements = async (win, options) => {\n if (typeof window === 'undefined') return undefined;\n await globalScripts();\n return bootstrapLazy([/*!__STENCIL_LAZY_DATA__*/], options);\n};\n"],"names":["globalScripts","bootstrapLazy"],"mappings":";;;;;AAGY,MAAC,oBAAoB,GAAG,OAAO,GAAG,EAAE,OAAO,KAAK;AAC5D,EAAE,IAAI,OAAO,MAAM,KAAK,WAAW,EAAE,OAAO,SAAS;AACrD,EAAE,MAAMA,wBAAa,EAAE;AACvB,EAAE,OAAOC,mBAAa,CAAC,4BAA4B,EAAE,OAAO,CAAC;AAC7D;;;;;"}
@@ -4,7 +4,7 @@
4
4
  ],
5
5
  "compiler": {
6
6
  "name": "@stencil/core",
7
- "version": "4.33.1",
7
+ "version": "4.36.3",
8
8
  "typescriptVersion": "5.5.4"
9
9
  },
10
10
  "collections": [],
@@ -170,18 +170,21 @@ video {
170
170
  top: 50%;
171
171
  left: 50%;
172
172
  transform: translate(-50%, -50%);
173
- color: #fff;
174
- font-size: 14px;
175
- font-weight: 600;
173
+ background: rgba(0, 0, 0, 0.25);
174
+ backdrop-filter: blur(20px);
175
+ border-radius: 12px;
176
+ border: 1px solid rgba(255, 255, 255, 0.1);
177
+ color: #ffffff;
178
+ font-size: 12px;
179
+ font-weight: 500;
176
180
  text-align: center;
177
181
  white-space: normal;
178
- background: rgba(0, 0, 0, 0.25);
179
- backdrop-filter: blur(12px);
180
- padding: 12px 20px;
181
- border-radius: 8px;
182
+ padding: 13px;
182
183
  max-width: 300px;
183
184
  z-index: 20;
184
- border: 1px solid rgba(255, 255, 255, 0.1);
185
+ height: fit-content;
186
+ width: fit-content;
187
+ animation: slideInFromTopCentered 0.3s ease-out;
185
188
  }
186
189
 
187
190
  /* Quality indicator */
@@ -523,6 +526,90 @@ video {
523
526
  max-width: 300px;
524
527
  }
525
528
 
529
+ /* Sección unificada para captura del reverso */
530
+ .back-capture-section {
531
+ position: absolute;
532
+ bottom: 20px;
533
+ left: 50%;
534
+ transform: translateX(-50%);
535
+ z-index: 25;
536
+ display: flex;
537
+ flex-direction: column;
538
+ align-items: center;
539
+ width: 100%;
540
+ max-width: 320px;
541
+ }
542
+
543
+
544
+ .back-capture-buttons {
545
+ display: flex;
546
+ gap: 12px;
547
+ align-items: center;
548
+ justify-content: center;
549
+ flex-wrap: wrap;
550
+ }
551
+
552
+ .capture-button {
553
+ pointer-events: auto;
554
+ background: #fff;
555
+ color: #333;
556
+ border: none;
557
+ border-radius: 25px;
558
+ padding: 12px 24px;
559
+ font-size: 14px;
560
+ font-weight: 600;
561
+ cursor: pointer;
562
+ transition: all 0.3s ease;
563
+ }
564
+
565
+ .capture-button:hover {
566
+ background: #f8f9fa;
567
+ }
568
+
569
+ .capture-button:active {
570
+ background: #e9ecef;
571
+ transform: translateY(1px);
572
+ }
573
+
574
+ .capture-button:disabled,
575
+ .capture-button.primary-button:disabled {
576
+ cursor: not-allowed !important;
577
+ transform: none !important;
578
+ opacity: 0.7 !important;
579
+ transition: none !important;
580
+ }
581
+
582
+ /* Responsive para móviles */
583
+ @media (max-width: 480px) {
584
+ .back-capture-section {
585
+ bottom: 16px;
586
+ max-width: 300px;
587
+ }
588
+
589
+
590
+ .back-capture-buttons {
591
+ flex-direction: column;
592
+ gap: 8px;
593
+ width: 100%;
594
+ }
595
+
596
+ .capture-button,
597
+ .back-capture-buttons .skip-button {
598
+ width: 100%;
599
+ max-width: 200px;
600
+ padding: 10px 20px;
601
+ font-size: 13px;
602
+ }
603
+
604
+ /* Ensure disabled styles work on mobile too */
605
+ .capture-button:disabled,
606
+ .capture-button.primary-button:disabled,
607
+ .skip-button:disabled {
608
+ opacity: 0.7 !important;
609
+ cursor: not-allowed !important;
610
+ }
611
+ }
612
+
526
613
  .skip-explanation {
527
614
  background: rgba(0, 0, 0, 0.5);
528
615
  color: #ffffff;
@@ -543,6 +630,25 @@ video {
543
630
  to { opacity: 1; transform: translateY(0); }
544
631
  }
545
632
 
633
+ /* Performance warning animation for guide-text */
634
+ .guide-text.performance-warning-text {
635
+ animation: gentlePulse 2s ease-in-out infinite;
636
+ background: rgba(255, 107, 107, 0.3);
637
+ border: 1px solid rgba(255, 107, 107, 0.5);
638
+ }
639
+
640
+ @keyframes gentlePulse {
641
+ 0%, 100% {
642
+ transform: translate(-50%, -50%) scale(1);
643
+ background: rgba(255, 107, 107, 0.3);
644
+ }
645
+ 50% {
646
+ transform: translate(-50%, -50%) scale(1.02);
647
+ background: rgba(255, 107, 107, 0.4);
648
+ }
649
+ }
650
+
651
+
546
652
  /* Botón para saltar reverso */
547
653
  .skip-button {
548
654
  pointer-events: auto;
@@ -566,6 +672,13 @@ video {
566
672
  transform: translateY(1px);
567
673
  }
568
674
 
675
+ .skip-button:disabled {
676
+ cursor: not-allowed !important;
677
+ transform: none !important;
678
+ opacity: 0.7 !important;
679
+ transition: none !important;
680
+ }
681
+
569
682
  /* Camera controls */
570
683
  .camera-controls {
571
684
  position: absolute;
@@ -575,6 +688,7 @@ video {
575
688
  display: flex;
576
689
  gap: 8px;
577
690
  pointer-events: auto;
691
+ animation: slideInFromTop 0.3s ease-out;
578
692
  }
579
693
 
580
694
 
@@ -626,10 +740,13 @@ video {
626
740
  .button-spinner {
627
741
  width: 16px;
628
742
  height: 16px;
629
- border: 2px solid rgba(255, 255, 255, 0.3);
630
- border-top: 2px solid #ffffff;
743
+ border: 2px solid rgba(0, 0, 0, 0.2);
744
+ border-top: 2px solid #333333;
631
745
  border-radius: 50%;
632
746
  animation: spin 1s linear infinite;
747
+ display: inline-block;
748
+ margin-right: 8px;
749
+ vertical-align: middle;
633
750
  }
634
751
 
635
752
  @keyframes spin {
@@ -665,6 +782,18 @@ video {
665
782
  }
666
783
  }
667
784
 
785
+ /* Animación específica para elementos centrados */
786
+ @keyframes slideInFromTopCentered {
787
+ 0% {
788
+ opacity: 0;
789
+ transform: translate(-50%, -50%) translateY(-8px) scale(0.95);
790
+ }
791
+ 100% {
792
+ opacity: 1;
793
+ transform: translate(-50%, -50%) translateY(0) scale(1);
794
+ }
795
+ }
796
+
668
797
  .camera-selector-header {
669
798
  display: flex;
670
799
  justify-content: space-between;
@@ -903,6 +1032,12 @@ video {
903
1032
  .status-description {
904
1033
  font-size: 9px;
905
1034
  }
1035
+
1036
+ .guide-text {
1037
+ font-size: 11px;
1038
+ padding: 4px 8px;
1039
+ border-radius: 8px;
1040
+ }
906
1041
  }
907
1042
 
908
1043
  /* Animación de carga mejorada */
@@ -968,7 +1103,7 @@ video {
968
1103
  border: 1px solid rgba(255, 255, 255, 0.1);
969
1104
  z-index: 35;
970
1105
  width: fit-content;
971
- animation: slideInFromLeft 0.3s ease-out;
1106
+ animation: slideInFromTop 0.3s ease-out;
972
1107
  transition: all 0.3s ease;
973
1108
  }
974
1109
 
@@ -1127,3 +1262,67 @@ video {
1127
1262
  font-size: 10px;
1128
1263
  }
1129
1264
  }
1265
+
1266
+ /* Sección de captura manual */
1267
+ .manual-capture-section {
1268
+ position: absolute;
1269
+ bottom: 20px;
1270
+ left: 50%;
1271
+ transform: translateX(-50%);
1272
+ z-index: 25;
1273
+ display: flex;
1274
+ flex-direction: column;
1275
+ align-items: center;
1276
+ width: 100%;
1277
+ max-width: 300px;
1278
+ }
1279
+
1280
+
1281
+ .manual-capture-button {
1282
+ pointer-events: auto;
1283
+ background: #fff;
1284
+ color: #333;
1285
+ border: none;
1286
+ border-radius: 25px;
1287
+ padding: 12px 24px;
1288
+ font-size: 14px;
1289
+ font-weight: 600;
1290
+ cursor: pointer;
1291
+ transition: all 0.3s ease;
1292
+ }
1293
+
1294
+ .manual-capture-button:hover {
1295
+ background: #f8f9fa;
1296
+ }
1297
+
1298
+ .manual-capture-button:active {
1299
+ background: #e9ecef;
1300
+ transform: translateY(1px);
1301
+ }
1302
+
1303
+ .manual-capture-button:disabled {
1304
+ cursor: not-allowed !important;
1305
+ transform: none !important;
1306
+ opacity: 0.7 !important;
1307
+ transition: none !important;
1308
+ }
1309
+
1310
+ /* Responsive para móviles */
1311
+ @media (max-width: 480px) {
1312
+ .manual-capture-section {
1313
+ bottom: 16px;
1314
+ max-width: 280px;
1315
+ }
1316
+
1317
+
1318
+ .manual-capture-button {
1319
+ padding: 10px 20px;
1320
+ font-size: 13px;
1321
+ }
1322
+
1323
+ /* Ensure disabled styles work on mobile too */
1324
+ .manual-capture-button:disabled {
1325
+ opacity: 0.7 !important;
1326
+ cursor: not-allowed !important;
1327
+ }
1328
+ }