@jaak.ai/stamps 1.0.0-dev.7

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 (122) hide show
  1. package/README.md +385 -0
  2. package/dist/cjs/document-detector_19.cjs.entry.js +8528 -0
  3. package/dist/cjs/index-5e4e5e7d.js +1685 -0
  4. package/dist/cjs/index.cjs.js +2 -0
  5. package/dist/cjs/loader.cjs.js +22 -0
  6. package/dist/cjs/mb-tooltip.cjs.entry.js +26 -0
  7. package/dist/cjs/stamps.cjs.js +23 -0
  8. package/dist/collection/collection-manifest.json +31 -0
  9. package/dist/collection/components/document-detector/document-detector.css +154 -0
  10. package/dist/collection/components/document-detector/document-detector.js +383 -0
  11. package/dist/collection/components/shared/mb-api-process-status/mb-api-process-status.css +360 -0
  12. package/dist/collection/components/shared/mb-api-process-status/mb-api-process-status.js +124 -0
  13. package/dist/collection/components/shared/mb-button/mb-button.css +95 -0
  14. package/dist/collection/components/shared/mb-button/mb-button.js +201 -0
  15. package/dist/collection/components/shared/mb-button-classic/mb-button-classic.css +100 -0
  16. package/dist/collection/components/shared/mb-button-classic/mb-button-classic.js +130 -0
  17. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.css +740 -0
  18. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.js +827 -0
  19. package/dist/collection/components/shared/mb-camera-experience/mb-camera-experience.utils.js +55 -0
  20. package/dist/collection/components/shared/mb-camera-selection/mb-camera-selection.css +124 -0
  21. package/dist/collection/components/shared/mb-camera-selection/mb-camera-selection.js +194 -0
  22. package/dist/collection/components/shared/mb-camera-toolbar/mb-camera-toolbar.css +80 -0
  23. package/dist/collection/components/shared/mb-camera-toolbar/mb-camera-toolbar.js +275 -0
  24. package/dist/collection/components/shared/mb-completed/mb-completed.css +17 -0
  25. package/dist/collection/components/shared/mb-completed/mb-completed.js +48 -0
  26. package/dist/collection/components/shared/mb-component/mb-component.css +321 -0
  27. package/dist/collection/components/shared/mb-component/mb-component.js +2269 -0
  28. package/dist/collection/components/shared/mb-component/mb-component.utils.js +14 -0
  29. package/dist/collection/components/shared/mb-container/mb-container.css +7 -0
  30. package/dist/collection/components/shared/mb-container/mb-container.js +23 -0
  31. package/dist/collection/components/shared/mb-feedback/mb-feedback.css +36 -0
  32. package/dist/collection/components/shared/mb-feedback/mb-feedback.js +91 -0
  33. package/dist/collection/components/shared/mb-feedback/mb-feedback.utils.js +11 -0
  34. package/dist/collection/components/shared/mb-help/mb-help.css +191 -0
  35. package/dist/collection/components/shared/mb-help/mb-help.js +409 -0
  36. package/dist/collection/components/shared/mb-help/mb-help.model.js +5 -0
  37. package/dist/collection/components/shared/mb-image-box/mb-image-box.css +78 -0
  38. package/dist/collection/components/shared/mb-image-box/mb-image-box.js +150 -0
  39. package/dist/collection/components/shared/mb-modal/mb-modal.css +106 -0
  40. package/dist/collection/components/shared/mb-modal/mb-modal.js +239 -0
  41. package/dist/collection/components/shared/mb-overlay/mb-overlay.css +46 -0
  42. package/dist/collection/components/shared/mb-overlay/mb-overlay.js +76 -0
  43. package/dist/collection/components/shared/mb-progress-tracker/mb-progress-tracker.css +24 -0
  44. package/dist/collection/components/shared/mb-progress-tracker/mb-progress-tracker.js +80 -0
  45. package/dist/collection/components/shared/mb-screen/mb-screen.css +19 -0
  46. package/dist/collection/components/shared/mb-screen/mb-screen.js +48 -0
  47. package/dist/collection/components/shared/mb-spinner/mb-spinner.css +30 -0
  48. package/dist/collection/components/shared/mb-spinner/mb-spinner.js +67 -0
  49. package/dist/collection/components/shared/mb-tooltip/mb-tooltip.css +62 -0
  50. package/dist/collection/components/shared/mb-tooltip/mb-tooltip.js +150 -0
  51. package/dist/collection/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.css +91 -0
  52. package/dist/collection/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.js +96 -0
  53. package/dist/collection/index.js +1 -0
  54. package/dist/collection/utils/data-structures.js +189 -0
  55. package/dist/collection/utils/device.helpers.js +37 -0
  56. package/dist/collection/utils/error-structures.js +47 -0
  57. package/dist/collection/utils/generic.helpers.js +82 -0
  58. package/dist/collection/utils/sdk.service.js +943 -0
  59. package/dist/collection/utils/state-lifter.js +3 -0
  60. package/dist/collection/utils/status.document-detector.js +15 -0
  61. package/dist/collection/utils/translation.service.js +97 -0
  62. package/dist/esm/document-detector_19.entry.js +8506 -0
  63. package/dist/esm/index-dc740acb.js +1656 -0
  64. package/dist/esm/index.js +1 -0
  65. package/dist/esm/loader.js +18 -0
  66. package/dist/esm/mb-tooltip.entry.js +22 -0
  67. package/dist/esm/polyfills/core-js.js +11 -0
  68. package/dist/esm/polyfills/css-shim.js +1 -0
  69. package/dist/esm/polyfills/dom.js +79 -0
  70. package/dist/esm/polyfills/es5-html-element.js +1 -0
  71. package/dist/esm/polyfills/index.js +34 -0
  72. package/dist/esm/polyfills/system.js +6 -0
  73. package/dist/esm/stamps.js +18 -0
  74. package/dist/index.cjs.js +1 -0
  75. package/dist/index.js +1 -0
  76. package/dist/stamps/index.esm.js +0 -0
  77. package/dist/stamps/p-02990b18.entry.js +9 -0
  78. package/dist/stamps/p-7f07a434.js +2 -0
  79. package/dist/stamps/p-ec3f5972.entry.js +1 -0
  80. package/dist/stamps/stamps.esm.js +1 -0
  81. package/dist/types/components/document-detector/document-detector.d.ts +84 -0
  82. package/dist/types/components/shared/mb-api-process-status/mb-api-process-status.d.ts +30 -0
  83. package/dist/types/components/shared/mb-button/mb-button.d.ts +41 -0
  84. package/dist/types/components/shared/mb-button-classic/mb-button-classic.d.ts +27 -0
  85. package/dist/types/components/shared/mb-camera-experience/mb-camera-experience.d.ts +141 -0
  86. package/dist/types/components/shared/mb-camera-experience/mb-camera-experience.utils.d.ts +3 -0
  87. package/dist/types/components/shared/mb-camera-selection/mb-camera-selection.d.ts +33 -0
  88. package/dist/types/components/shared/mb-camera-toolbar/mb-camera-toolbar.d.ts +54 -0
  89. package/dist/types/components/shared/mb-completed/mb-completed.d.ts +12 -0
  90. package/dist/types/components/shared/mb-component/mb-component.d.ts +308 -0
  91. package/dist/types/components/shared/mb-component/mb-component.utils.d.ts +3 -0
  92. package/dist/types/components/shared/mb-container/mb-container.d.ts +8 -0
  93. package/dist/types/components/shared/mb-feedback/mb-feedback.d.ts +19 -0
  94. package/dist/types/components/shared/mb-feedback/mb-feedback.utils.d.ts +2 -0
  95. package/dist/types/components/shared/mb-help/mb-help.d.ts +66 -0
  96. package/dist/types/components/shared/mb-help/mb-help.model.d.ts +9 -0
  97. package/dist/types/components/shared/mb-image-box/mb-image-box.d.ts +35 -0
  98. package/dist/types/components/shared/mb-modal/mb-modal.d.ts +53 -0
  99. package/dist/types/components/shared/mb-overlay/mb-overlay.d.ts +17 -0
  100. package/dist/types/components/shared/mb-progress-tracker/mb-progress-tracker.d.ts +19 -0
  101. package/dist/types/components/shared/mb-screen/mb-screen.d.ts +12 -0
  102. package/dist/types/components/shared/mb-spinner/mb-spinner.d.ts +16 -0
  103. package/dist/types/components/shared/mb-tooltip/mb-tooltip.d.ts +10 -0
  104. package/dist/types/components/shared/mb-tooltip-advanced/mb-tooltip-advanced.d.ts +7 -0
  105. package/dist/types/components.d.ts +1381 -0
  106. package/dist/types/index.d.ts +1 -0
  107. package/dist/types/stencil-public-runtime.d.ts +1637 -0
  108. package/dist/types/utils/data-structures.d.ts +264 -0
  109. package/dist/types/utils/device.helpers.d.ts +7 -0
  110. package/dist/types/utils/error-structures.d.ts +44 -0
  111. package/dist/types/utils/generic.helpers.d.ts +21 -0
  112. package/dist/types/utils/sdk.service.d.ts +52 -0
  113. package/dist/types/utils/state-lifter.d.ts +3 -0
  114. package/dist/types/utils/status.document-detector.d.ts +14 -0
  115. package/dist/types/utils/translation.service.d.ts +77 -0
  116. package/loader/cdn.js +3 -0
  117. package/loader/index.cjs.js +3 -0
  118. package/loader/index.d.ts +21 -0
  119. package/loader/index.es2017.js +3 -0
  120. package/loader/index.js +4 -0
  121. package/loader/package.json +11 -0
  122. package/package.json +63 -0
package/README.md ADDED
@@ -0,0 +1,385 @@
1
+ # @jaak.ai/stamps
2
+
3
+ ![Versión NPM](https://img.shields.io/npm/v/@jaak.ai/stamps)
4
+ ![Licencia](https://img.shields.io/npm/l/@jaak.ai/stamps)
5
+
6
+ Un componente web potente y personalizable para la identificación de documentos en aplicaciones web modernas. Construido con Stencil.js para un escaneo e identificación de documentos confiable.
7
+
8
+ ## Características
9
+
10
+ - Escaneo e identificación de documentos con alta precisión
11
+ - Funciona tanto con cámara como con carga de imágenes
12
+ - Interfaz y comportamiento personalizables
13
+ - Eventos para una integración completa con el flujo de tu aplicación
14
+ - Compatibilidad con múltiples navegadores
15
+ - Paquete ligero
16
+
17
+ ## Instalación
18
+
19
+ ```bash
20
+ npm install @jaak.ai/stamps
21
+ ```
22
+
23
+ ## Uso
24
+
25
+ ### Integración Básica
26
+
27
+ #### HTML
28
+
29
+ ```html
30
+ <!DOCTYPE html>
31
+ <html lang="es">
32
+ <head>
33
+ <meta charset="UTF-8">
34
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
35
+ <title>Ejemplo de Detector de Documentos</title>
36
+ <script type="module" src="https://unpkg.com/@jaak.ai/stamps/dist/stamps/stamps.esm.js"></script>
37
+ <script nomodule src="https://unpkg.com/@jaak.ai/stamps/dist/stamps/stamps.js"></script>
38
+ </head>
39
+ <body>
40
+ <document-detector
41
+ license-key="TU_CLAVE_DE_LICENCIA"
42
+ engine-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0"
43
+ worker-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0/BlinkIDWasmSDK.worker.min.js">
44
+ </document-detector>
45
+
46
+ <script>
47
+ const detector = document.querySelector('document-detector');
48
+
49
+ detector.addEventListener('ready', (ev) => {
50
+ console.log('El detector de documentos está listo');
51
+ });
52
+
53
+ detector.addEventListener('scanSuccess', (ev) => {
54
+ console.log('Escaneo completado con éxito', ev.detail);
55
+ });
56
+
57
+ detector.addEventListener('scanError', (ev) => {
58
+ console.error('Error de escaneo', ev.detail);
59
+ });
60
+
61
+ detector.addEventListener('fatalError', (ev) => {
62
+ console.error('Error fatal', ev.detail);
63
+ });
64
+ </script>
65
+ </body>
66
+ </html>
67
+ ```
68
+
69
+ #### Frameworks de JavaScript
70
+
71
+ ##### React
72
+
73
+ ```jsx
74
+ import React, { useEffect, useRef } from 'react';
75
+ import { defineCustomElements } from '@jaak.ai/stamps/loader';
76
+
77
+ // Registrar los componentes web
78
+ defineCustomElements();
79
+
80
+ function ComponenteEscánerDocumento() {
81
+ const detectorRef = useRef(null);
82
+
83
+ useEffect(() => {
84
+ const detector = detectorRef.current;
85
+
86
+ const handleReady = (ev) => {
87
+ console.log('El detector de documentos está listo');
88
+ };
89
+
90
+ const handleScanSuccess = (ev) => {
91
+ console.log('Escaneo completado con éxito', ev.detail);
92
+ };
93
+
94
+ const handleScanError = (ev) => {
95
+ console.error('Error de escaneo', ev.detail);
96
+ };
97
+
98
+ const handleFatalError = (ev) => {
99
+ console.error('Error fatal', ev.detail);
100
+ };
101
+
102
+ detector.addEventListener('ready', handleReady);
103
+ detector.addEventListener('scanSuccess', handleScanSuccess);
104
+ detector.addEventListener('scanError', handleScanError);
105
+ detector.addEventListener('fatalError', handleFatalError);
106
+
107
+ return () => {
108
+ detector.removeEventListener('ready', handleReady);
109
+ detector.removeEventListener('scanSuccess', handleScanSuccess);
110
+ detector.removeEventListener('scanError', handleScanError);
111
+ detector.removeEventListener('fatalError', handleFatalError);
112
+ };
113
+ }, []);
114
+
115
+ return (
116
+ <document-detector
117
+ ref={detectorRef}
118
+ license-key="TU_CLAVE_DE_LICENCIA"
119
+ engine-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0"
120
+ worker-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0/BlinkIDWasmSDK.worker.min.js">
121
+ </document-detector>
122
+ );
123
+ }
124
+
125
+ export default ComponenteEscánerDocumento;
126
+ ```
127
+
128
+ ##### Vue.js
129
+
130
+ ```javascript
131
+ // main.js
132
+ import { defineCustomElements } from '@jaak.ai/stamps/loader';
133
+
134
+ // Registrar los componentes web
135
+ defineCustomElements();
136
+ ```
137
+
138
+ ```vue
139
+ <!-- EscánerDocumento.vue -->
140
+ <template>
141
+ <document-detector
142
+ ref="detector"
143
+ :license-key="licenseKey"
144
+ :engine-location="engineLocation"
145
+ :worker-location="workerLocation">
146
+ </document-detector>
147
+ </template>
148
+
149
+ <script>
150
+ export default {
151
+ name: 'EscánerDocumento',
152
+ data() {
153
+ return {
154
+ licenseKey: 'TU_CLAVE_DE_LICENCIA',
155
+ engineLocation: 'https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0',
156
+ workerLocation: 'https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0/BlinkIDWasmSDK.worker.min.js'
157
+ };
158
+ },
159
+ mounted() {
160
+ const detector = this.$refs.detector;
161
+
162
+ detector.addEventListener('ready', this.handleReady);
163
+ detector.addEventListener('scanSuccess', this.handleScanSuccess);
164
+ detector.addEventListener('scanError', this.handleScanError);
165
+ detector.addEventListener('fatalError', this.handleFatalError);
166
+ },
167
+ beforeUnmount() {
168
+ const detector = this.$refs.detector;
169
+
170
+ detector.removeEventListener('ready', this.handleReady);
171
+ detector.removeEventListener('scanSuccess', this.handleScanSuccess);
172
+ detector.removeEventListener('scanError', this.handleScanError);
173
+ detector.removeEventListener('fatalError', this.handleFatalError);
174
+ },
175
+ methods: {
176
+ handleReady(ev) {
177
+ console.log('El detector de documentos está listo');
178
+ },
179
+ handleScanSuccess(ev) {
180
+ console.log('Escaneo completado con éxito', ev.detail);
181
+ this.$emit('scan-success', ev.detail);
182
+ },
183
+ handleScanError(ev) {
184
+ console.error('Error de escaneo', ev.detail);
185
+ this.$emit('scan-error', ev.detail);
186
+ },
187
+ handleFatalError(ev) {
188
+ console.error('Error fatal', ev.detail);
189
+ this.$emit('fatal-error', ev.detail);
190
+ }
191
+ }
192
+ };
193
+ </script>
194
+ ```
195
+
196
+ ##### Angular
197
+
198
+ ```typescript
199
+ // app.module.ts
200
+ import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';
201
+ import { BrowserModule } from '@angular/platform-browser';
202
+ import { AppComponent } from './app.component';
203
+
204
+ // Importar el cargador
205
+ import { defineCustomElements } from '@jaak.ai/stamps/loader';
206
+
207
+ // Registrar los componentes web
208
+ defineCustomElements();
209
+
210
+ @NgModule({
211
+ declarations: [AppComponent],
212
+ imports: [BrowserModule],
213
+ providers: [],
214
+ bootstrap: [AppComponent],
215
+ schemas: [CUSTOM_ELEMENTS_SCHEMA] // Necesario para usar componentes web
216
+ })
217
+ export class AppModule {}
218
+ ```
219
+
220
+ ```typescript
221
+ // escaner-documento.component.ts
222
+ import { Component, ElementRef, EventEmitter, OnDestroy, OnInit, Output, ViewChild } from '@angular/core';
223
+
224
+ @Component({
225
+ selector: 'app-escaner-documento',
226
+ template: `
227
+ <document-detector
228
+ #detector
229
+ license-key="TU_CLAVE_DE_LICENCIA"
230
+ engine-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0"
231
+ worker-location="https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0/BlinkIDWasmSDK.worker.min.js">
232
+ </document-detector>
233
+ `
234
+ })
235
+ export class EscanerDocumentoComponent implements OnInit, OnDestroy {
236
+ @ViewChild('detector') detectorRef: ElementRef;
237
+ @Output() ready = new EventEmitter<any>();
238
+ @Output() scanSuccess = new EventEmitter<any>();
239
+ @Output() scanError = new EventEmitter<any>();
240
+ @Output() fatalError = new EventEmitter<any>();
241
+
242
+ ngOnInit() {}
243
+
244
+ ngAfterViewInit() {
245
+ const detector = this.detectorRef.nativeElement;
246
+
247
+ detector.addEventListener('ready', this.handleReady.bind(this));
248
+ detector.addEventListener('scanSuccess', this.handleScanSuccess.bind(this));
249
+ detector.addEventListener('scanError', this.handleScanError.bind(this));
250
+ detector.addEventListener('fatalError', this.handleFatalError.bind(this));
251
+ }
252
+
253
+ ngOnDestroy() {
254
+ const detector = this.detectorRef.nativeElement;
255
+
256
+ detector.removeEventListener('ready', this.handleReady.bind(this));
257
+ detector.removeEventListener('scanSuccess', this.handleScanSuccess.bind(this));
258
+ detector.removeEventListener('scanError', this.handleScanError.bind(this));
259
+ detector.removeEventListener('fatalError', this.handleFatalError.bind(this));
260
+ }
261
+
262
+ handleReady(ev) {
263
+ console.log('El detector de documentos está listo');
264
+ this.ready.emit(ev.detail);
265
+ }
266
+
267
+ handleScanSuccess(ev) {
268
+ console.log('Escaneo completado con éxito', ev.detail);
269
+ this.scanSuccess.emit(ev.detail);
270
+ }
271
+
272
+ handleScanError(ev) {
273
+ console.error('Error de escaneo', ev.detail);
274
+ this.scanError.emit(ev.detail);
275
+ }
276
+
277
+ handleFatalError(ev) {
278
+ console.error('Error fatal', ev.detail);
279
+ this.fatalError.emit(ev.detail);
280
+ }
281
+ }
282
+ ```
283
+
284
+ ## Referencia de API
285
+
286
+ ### Propiedades
287
+
288
+ | Propiedad | Tipo | Valor por defecto | Descripción |
289
+ |-------------------------|--------------------------|------------------------------------------------|---------------------------------------------------|
290
+ | `license-key` | string | - | **Requerido** Clave de licencia |
291
+ | `engine-location` | string | "https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0" | Ruta a los archivos del motor WASM |
292
+ | `worker-location` | string | "https://storage.googleapis.com/jaak-storage/models/web/document-detector/v2.0.0/BlinkIDWasmSDK.worker.min.js" | Ruta al archivo worker |
293
+ | `allow-hello-message` | boolean | false | Habilitar mensaje de Hello a la API |
294
+ | `wasm-type` | string | "ADVANCE" | Tipo de WASM a utilizar (ADVANCE, BASIC, etc.) |
295
+ | `blink-id-variant` | string | "lightweight" | Variante a utilizar |
296
+ | `raw-recognizers` | string | - | String JSON de reconocedores |
297
+ | `recognizers` | array | ['BlinkIdMultiSideRecognizer'] | Array de nombres de reconocedores a utilizar |
298
+ | `recognizer-options` | object | *Ver abajo* | Opciones de configuración para reconocedores |
299
+ | `recognition-timeout` | number | - | Tiempo límite para reconocimiento en milisegundos |
300
+ | `recognition-pause-timeout` | number | 3800 | Tiempo de pausa entre reconocimientos |
301
+ | `enable-drag` | boolean | false | Permitir arrastrar y soltar imágenes |
302
+ | `hide-feedback` | boolean | true | Ocultar mensajes de retroalimentación |
303
+ | `hide-loading-and-error-ui` | boolean | false | Ocultar elementos UI de carga y error |
304
+ | `scan-from-camera` | boolean | true | Permitir escaneo desde cámara |
305
+ | `scan-from-image` | boolean | false | Permitir escaneo desde carga de imagen |
306
+ | `thorough-scan-from-image` | boolean | false | Realizar escaneo exhaustivo para imágenes |
307
+ | `gallery-overlay-type` | "FULLSCREEN" \| "INLINE" | "INLINE" | Tipo de visualización del overlay de galería |
308
+ | `gallery-drop-type` | "FULLSCREEN" \| "INLINE" | "INLINE" | Tipo de visualización del área de drop de galería |
309
+ | `show-action-labels` | boolean | false | Mostrar etiquetas de texto para acciones |
310
+ | `show-modal-windows` | boolean | false | Mostrar ventanas modales para mensajes |
311
+ | `show-scanning-line` | boolean | - | Mostrar animación de línea de escaneo |
312
+
313
+ Opciones por defecto del reconocedor:
314
+ ```javascript
315
+ {
316
+ BlinkIdMultiSideRecognizer: {
317
+ returnEncodedFullDocumentImage: true,
318
+ returnEncodedFaceImage: true,
319
+ returnEncodedSignatureImage: true,
320
+ fullDocumentImageExtensionFactors: {
321
+ upFactor: 0.1,
322
+ downFactor: 0.1,
323
+ leftFactor: 0.1,
324
+ rightFactor: 0.1
325
+ },
326
+ fullDocumentImageDpi: 300
327
+ }
328
+ }
329
+ ```
330
+
331
+ ### Eventos
332
+
333
+ | Nombre del Evento | Descripción | Detalle del Evento |
334
+ |----------------------|--------------------------------------------------|--------------------------------------------------|
335
+ | `ready` | Emitido cuando el componente está listo para escanear | Objeto `EventReady` con instancia del SDK |
336
+ | `scanSuccess` | Emitido al escanear un documento con éxito | Objeto `EventScanSuccess` con resultados del escaneo |
337
+ | `scanError` | Emitido cuando ocurre un error durante el escaneo | Objeto `EventScanError` con detalles del error |
338
+ | `fatalError` | Emitido cuando ocurre un error fatal | Objeto `SDKError` con detalles del error |
339
+ | `cameraScanStarted` | Emitido cuando comienza el escaneo con cámara | null |
340
+ | `imageScanStarted` | Emitido cuando comienza el escaneo de imagen | null |
341
+
342
+ ### Métodos
343
+
344
+ | Método | Parámetros | Tipo de Retorno | Descripción |
345
+ |-------------------------|-----------------------------------------------|----------------------|--------------------------------------------|
346
+ | `setUiState` | state: "ERROR" \| "LOADING" \| "NONE" \| "SUCCESS" | Promise<any> | Establecer el estado UI del componente |
347
+ | `setUiMessage` | state: "FEEDBACK_ERROR" \| "FEEDBACK_INFO" \| "FEEDBACK_OK", message: string | Promise<any> | Establecer un mensaje UI |
348
+ | `getProductIntegrationInfo` | Ninguno | Promise<ProductIntegrationInfo> | Obtener información de integración del producto |
349
+
350
+ ## Tipos de Objetos de Eventos
351
+
352
+ ### EventReady
353
+
354
+ ```typescript
355
+ {
356
+ sdk: WasmSDK; // Instancia del SDK
357
+ }
358
+ ```
359
+
360
+ ### EventScanSuccess
361
+
362
+ ```typescript
363
+ {
364
+ recognizer: string; // Nombre del reconocedor que produjo el resultado
365
+ recognizerResult: any; // El objeto resultado del reconocedor
366
+ resultDocument: any; // Datos del documento procesado
367
+ resultImages: any; // Imágenes resultantes (documento, cara, etc.)
368
+ }
369
+ ```
370
+
371
+ ### EventScanError
372
+
373
+ ```typescript
374
+ {
375
+ code: Code; // Código de error
376
+ fatal: boolean; // Si el error es fatal
377
+ message: string; // Mensaje de error
378
+ recognizerName: string; // Nombre del reconocedor que produjo el error
379
+ details?: any; // Detalles adicionales del error si están disponibles
380
+ }
381
+ ```
382
+
383
+ ## Licencia
384
+
385
+ MIT