metag-sdk-ionic 1.0.1 → 1.1.2

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 (17) hide show
  1. package/dist/assets/imagesIdVision/no-internet.svg +4 -0
  2. package/dist/src/app/pages/id-vision/components/camara-video-selfie/camara-video-selfie.component.d.ts.map +1 -1
  3. package/dist/src/app/pages/id-vision/components/camara-video-selfie/camara-video-selfie.component.js +26 -33
  4. package/dist/src/app/pages/id-vision/components/camara-video-selfie/camara-video-selfie.component.js.map +1 -1
  5. package/dist/src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.d.ts +19 -15
  6. package/dist/src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.d.ts.map +1 -1
  7. package/dist/src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.js +157 -123
  8. package/dist/src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.js.map +1 -1
  9. package/dist/src/app/pages/id-vision/id-vision.component.d.ts +13 -3
  10. package/dist/src/app/pages/id-vision/id-vision.component.d.ts.map +1 -1
  11. package/dist/src/app/pages/id-vision/id-vision.component.js +316 -258
  12. package/dist/src/app/pages/id-vision/id-vision.component.js.map +1 -1
  13. package/dist/src/app/pages/id-vision/services/dpi/dpi-service.service.d.ts +1 -1
  14. package/dist/src/app/pages/id-vision/services/dpi/dpi-service.service.d.ts.map +1 -1
  15. package/dist/src/app/pages/id-vision/services/dpi/dpi-service.service.js +7 -6
  16. package/dist/src/app/pages/id-vision/services/dpi/dpi-service.service.js.map +1 -1
  17. package/package.json +13 -12
@@ -2,204 +2,238 @@ import { __awaiter } from "tslib";
2
2
  import { Component, ElementRef, EventEmitter, Input, Output, ViewChild, ViewEncapsulation } from '@angular/core';
3
3
  import { ModalController, Platform } from '@ionic/angular';
4
4
  import { Camera } from '@capacitor/camera';
5
- import { DomSanitizer } from '@angular/platform-browser';
6
5
  import { Capacitor } from '@capacitor/core';
7
6
  import { ModalDpiServices } from '../../services/modal-services/modal-dpi-services';
8
7
  import * as i0 from "@angular/core";
9
8
  import * as i1 from "@ionic/angular";
10
- import * as i2 from "@angular/platform-browser";
11
- import * as i3 from "../../services/modal-services/modal-dpi-services";
12
- import * as i4 from "@angular/common";
9
+ import * as i2 from "../../services/modal-services/modal-dpi-services";
10
+ import * as i3 from "@angular/common";
13
11
  const _c0 = ["videoElement"];
14
- function CameraWithOverlayComponent_div_8_Template(rf, ctx) { if (rf & 1) {
15
- i0.ɵɵelementStart(0, "div", 15);
16
- i0.ɵɵelement(1, "ion-spinner", 16);
12
+ function CameraWithOverlayComponent_ion_fab_2_Template(rf, ctx) { if (rf & 1) {
13
+ const _r2 = i0.ɵɵgetCurrentView();
14
+ i0.ɵɵelementStart(0, "ion-fab", 16)(1, "ion-fab-button", 17);
15
+ i0.ɵɵlistener("click", function CameraWithOverlayComponent_ion_fab_2_Template_ion_fab_button_click_1_listener() { i0.ɵɵrestoreView(_r2); const ctx_r2 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r2.toggleRearCam()); });
16
+ i0.ɵɵelement(2, "ion-icon", 18);
17
+ i0.ɵɵelementEnd()();
18
+ } }
19
+ function CameraWithOverlayComponent_div_9_Template(rf, ctx) { if (rf & 1) {
20
+ i0.ɵɵelementStart(0, "div", 19);
21
+ i0.ɵɵelement(1, "ion-spinner", 20);
17
22
  i0.ɵɵelementEnd();
18
23
  } }
19
24
  export class CameraWithOverlayComponent {
20
- // overlaySrc: String = '';
21
- constructor(platform, modalController, sanitizer, modaldpiServices) {
25
+ constructor(platform, modalController, modaldpiServices) {
22
26
  this.platform = platform;
23
27
  this.modalController = modalController;
24
- this.sanitizer = sanitizer;
25
28
  this.modaldpiServices = modaldpiServices;
29
+ /* ─── Inputs / Outputs ─── */
26
30
  this.text1 = '';
27
31
  this.text2 = '';
28
32
  this.overlaySrc = '';
29
33
  this.closeRequested = new EventEmitter();
30
- this.capturedImage = null;
34
+ /* ─── Estado ─── */
31
35
  this.stream = null;
32
- this.isLoading = true; // Variable para mostrar el loader
33
- this.capturedImageUrl = null;
34
- this.isAndroid = this.platform.is('android');
35
- this.isIOS = this.platform.is('ios');
36
- }
37
- ngOnDestroy() {
38
- return __awaiter(this, void 0, void 0, function* () {
39
- this.stopCamera();
40
- });
36
+ this.isLoading = true;
37
+ this.rearCams = [];
38
+ this.selectedCamId = null;
39
+ this.currentRearIndex = 0; // ← índice de la lente trasera activa
40
+ this.isMobile = this.platform.is('android') || this.platform.is('ios');
41
41
  }
42
+ /* ═════════ LIFE-CYCLE ═════════ */
42
43
  ngAfterViewInit() {
43
44
  return __awaiter(this, void 0, void 0, function* () {
44
- if (this.isAndroid || this.isIOS) {
45
+ if (this.isMobile)
45
46
  yield this.requestPermissions();
46
- }
47
- yield this.initCamera();
47
+ yield this.enumerateRearCams(); // llena rearCams y abre cámara por defecto
48
48
  this.isLoading = false;
49
- this.modaldpiServices.closeOverlay$.subscribe(() => {
50
- this.closeOverlay();
51
- });
52
- this.modaldpiServices.resumeCameraSubject$.subscribe(() => {
53
- this.resumeCamera();
54
- });
49
+ this.modaldpiServices.closeOverlay$.subscribe(() => this.closeOverlay());
50
+ this.modaldpiServices.resumeCameraSubject$.subscribe(() => this.resumeCamera());
55
51
  });
56
52
  }
53
+ ngOnDestroy() {
54
+ this.stopCamera();
55
+ }
56
+ /* ═════════ Permisos ═════════ */
57
57
  requestPermissions() {
58
58
  return __awaiter(this, void 0, void 0, function* () {
59
59
  if (Capacitor.getPlatform() !== 'web') {
60
- if (this.isAndroid || this.isIOS) {
61
- const permissions = yield Camera.requestPermissions();
62
- if (permissions.camera === 'denied') {
63
- console.error('Permiso de cámara denegado');
64
- return;
65
- }
60
+ const { camera } = yield Camera.requestPermissions();
61
+ if (camera === 'denied')
62
+ console.error('Permiso de cámara denegado');
63
+ }
64
+ });
65
+ }
66
+ /* ═════════ Enumerar cámaras traseras ═════════ */
67
+ enumerateRearCams() {
68
+ return __awaiter(this, void 0, void 0, function* () {
69
+ let devices = (yield navigator.mediaDevices.enumerateDevices()).filter(d => d.kind === 'videoinput');
70
+ /* Si los labels vienen vacíos, pedimos un stream corto para que aparezcan. */
71
+ if (!devices.some(d => d.label)) {
72
+ try {
73
+ const tmp = yield navigator.mediaDevices.getUserMedia({ video: true });
74
+ tmp.getTracks().forEach(t => t.stop());
75
+ devices = (yield navigator.mediaDevices.enumerateDevices()).filter(d => d.kind === 'videoinput');
66
76
  }
77
+ catch ( /* ignorar */_a) { /* ignorar */ }
78
+ }
79
+ this.rearCams = devices
80
+ .filter(d => /back|rear|environment/i.test(d.label))
81
+ .map((d, i) => ({ label: d.label || `Cámara trasera ${i + 1}`, deviceId: d.deviceId }));
82
+ if (!this.rearCams.length && devices.length > 1) {
83
+ /* plan B – todo menos la primera (suele ser frontal) */
84
+ this.rearCams = devices.slice(1).map((d, i) => ({
85
+ label: d.label || `Cámara ${i + 1}`,
86
+ deviceId: d.deviceId
87
+ }));
88
+ }
89
+ /* ─── Elegir la cámara por defecto ─── */
90
+ if (this.rearCams.length) {
91
+ let preferred = this.rearCams.find(c => /camera2\s?0/i.test(c.label)); // 1) “camera2 0…”
92
+ if (!preferred)
93
+ preferred = this.rearCams.find(c => /back/i.test(c.label)); // 2) cualquier “back”
94
+ const chosen = preferred !== null && preferred !== void 0 ? preferred : this.rearCams[0]; // 3) primera
95
+ this.selectedCamId = chosen.deviceId;
96
+ this.currentRearIndex = this.rearCams.findIndex(c => c.deviceId === chosen.deviceId);
97
+ yield this.openCamera(this.selectedCamId);
98
+ }
99
+ else if (devices.length) {
100
+ /* Fallback final: primera cámara disponible */
101
+ yield this.openCamera(devices[0].deviceId);
67
102
  }
68
103
  });
69
104
  }
70
- initCamera() {
105
+ /* ═════════ Abrir / cambiar cámara ═════════ */
106
+ openCamera(deviceId) {
71
107
  return __awaiter(this, void 0, void 0, function* () {
108
+ this.stopCamera();
109
+ if (!deviceId)
110
+ return;
72
111
  try {
73
- const constraints = {
112
+ this.stream = yield navigator.mediaDevices.getUserMedia({
74
113
  video: {
75
- width: { ideal: 4096 },
76
- height: { ideal: 2160 },
77
- facingMode: 'environment'
114
+ deviceId: { exact: deviceId },
115
+ width: { ideal: 1920 }, // ◄── full-HD
116
+ height: { ideal: 1080 },
117
+ aspectRatio: 1.7777778
78
118
  },
79
119
  audio: false
80
- };
81
- this.stream = yield navigator.mediaDevices.getUserMedia(constraints);
82
- const videoElement = this.videoElement.nativeElement;
83
- videoElement.srcObject = this.stream;
84
- videoElement.autoplay = true;
85
- videoElement.playsInline = true;
86
- videoElement.muted = true;
87
- videoElement.onloadedmetadata = () => {
88
- videoElement.play().catch((error) => {
89
- console.error('Error al intentar reproducir el video:', error);
90
- });
91
- };
120
+ });
121
+ this.attachStream(this.stream);
92
122
  }
93
- catch (error) {
94
- console.error('Error al inicializar la cámara:', error);
95
- this.isLoading = false;
123
+ catch (err) {
124
+ console.error('No se pudo abrir la cámara:', err);
96
125
  }
97
126
  });
98
127
  }
128
+ /** Avanza al siguiente sensor trasero en modo carrusel */
129
+ toggleRearCam() {
130
+ if (!this.rearCams.length)
131
+ return;
132
+ this.currentRearIndex = (this.currentRearIndex + 1) % this.rearCams.length;
133
+ const nextCam = this.rearCams[this.currentRearIndex];
134
+ this.selectedCamId = nextCam.deviceId;
135
+ this.openCamera(nextCam.deviceId);
136
+ }
137
+ attachStream(stream) {
138
+ const video = this.videoElement.nativeElement;
139
+ video.srcObject = stream;
140
+ video.autoplay = true;
141
+ video.playsInline = true;
142
+ video.muted = true;
143
+ video.onloadedmetadata = () => video.play().catch(console.error);
144
+ }
145
+ /* ═════════ Captura de foto ═════════ */
99
146
  capturePhoto() {
100
147
  return __awaiter(this, void 0, void 0, function* () {
101
- if (!this.stream) {
102
- console.error('La cámara no está inicializada.');
148
+ var _a;
149
+ if (!this.stream)
150
+ return console.error('Cámara no inicializada.');
151
+ const video = this.videoElement.nativeElement;
152
+ const canvas = document.createElement('canvas');
153
+ canvas.width = video.videoWidth || 1920;
154
+ canvas.height = video.videoHeight || 1080;
155
+ const ctx = canvas.getContext('2d');
156
+ if (!ctx)
103
157
  return;
158
+ ctx.drawImage(video, 0, 0, canvas.width, canvas.height);
159
+ const toBlob = (q) => new Promise(res => canvas.toBlob(b => res(b), 'image/jpeg', q));
160
+ let quality = 0.98;
161
+ let blob = yield toBlob(quality);
162
+ const maxBytes = 3 * 1024 * 1024;
163
+ while (blob && blob.size > maxBytes && quality > 0.4) {
164
+ quality -= 0.05;
165
+ blob = yield toBlob(quality);
104
166
  }
105
- ;
106
- const canvas = document.createElement('canvas');
107
- const videoElement = this.videoElement.nativeElement;
108
- canvas.width = videoElement.videoWidth || 1920;
109
- canvas.height = videoElement.videoHeight || 1080;
110
- const context = canvas.getContext('2d');
111
- if (context) {
112
- context.drawImage(videoElement, 0, 0, canvas.width, canvas.height);
113
- let quality = 0.98;
114
- // Convierte el contenido del canvas a un Blob
115
- canvas.toBlob((blob) => {
116
- if (blob && blob.size > 0) {
117
- if (blob.size > 2 * 1024 * 1024) {
118
- quality = 0.85;
119
- }
120
- this.file = this.blobToFile(blob, 'dpi.jpeg');
121
- videoElement.pause();
122
- this.onTakePicture(this.file).catch((err) => console.error('Error en onTakePicture:', err));
123
- }
124
- else {
125
- console.error('El Blob generado está vacío o no válido.');
126
- }
127
- }, 'image/jpeg', quality);
128
- //this.closeOverlay();
167
+ if (blob && blob.size <= maxBytes) {
168
+ const file = new File([blob], 'dpi.jpeg', { type: 'image/jpeg' });
169
+ video.pause();
170
+ yield ((_a = this.onTakePicture) === null || _a === void 0 ? void 0 : _a.call(this, file));
171
+ }
172
+ else {
173
+ console.error('Imagen > 3 MB.');
129
174
  }
130
175
  });
131
176
  }
132
- blobToFile(blob, fileName) {
133
- const b = blob;
134
- b.lastModified = new Date().getTime();
135
- b.lastModifiedDate = new Date();
136
- b.name = fileName;
137
- //Cast to a File() type
138
- return b;
139
- }
177
+ /* ═════════ Utilidades ─ cierre / reanudar ═════════ */
140
178
  stopCamera() {
141
- if (this.stream) {
142
- this.stream.getTracks().forEach(track => track.stop());
143
- this.stream = null;
144
- }
179
+ var _a;
180
+ (_a = this.stream) === null || _a === void 0 ? void 0 : _a.getTracks().forEach(t => t.stop());
181
+ this.stream = null;
145
182
  }
146
183
  closeOverlay() {
147
184
  this.stopCamera();
148
185
  this.modalController.dismiss();
149
186
  }
150
- closeRequestedFunction() {
151
- this.closeOverlay();
152
- this.modaldpiServices.requestCloseOverlay();
153
- }
154
187
  resumeCamera() {
155
188
  var _a;
156
- const videoElement = (_a = this.videoElement) === null || _a === void 0 ? void 0 : _a.nativeElement;
157
- if (videoElement && videoElement.paused) {
158
- videoElement.play().catch((error) => {
159
- console.error('Error al intentar reanudar el video:', error);
160
- });
161
- }
189
+ const video = (_a = this.videoElement) === null || _a === void 0 ? void 0 : _a.nativeElement;
190
+ if (video && video.paused)
191
+ video.play().catch(console.error);
162
192
  }
163
193
  }
164
- CameraWithOverlayComponent.ɵfac = function CameraWithOverlayComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CameraWithOverlayComponent)(i0.ɵɵdirectiveInject(i1.Platform), i0.ɵɵdirectiveInject(i1.ModalController), i0.ɵɵdirectiveInject(i2.DomSanitizer), i0.ɵɵdirectiveInject(i3.ModalDpiServices)); };
194
+ CameraWithOverlayComponent.ɵfac = function CameraWithOverlayComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CameraWithOverlayComponent)(i0.ɵɵdirectiveInject(i1.Platform), i0.ɵɵdirectiveInject(i1.ModalController), i0.ɵɵdirectiveInject(i2.ModalDpiServices)); };
165
195
  CameraWithOverlayComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CameraWithOverlayComponent, selectors: [["app-camera-overlay"]], viewQuery: function CameraWithOverlayComponent_Query(rf, ctx) { if (rf & 1) {
166
196
  i0.ɵɵviewQuery(_c0, 5);
167
197
  } if (rf & 2) {
168
198
  let _t;
169
199
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.videoElement = _t.first);
170
- } }, inputs: { text1: "text1", text2: "text2", overlaySrc: "overlaySrc", onTakePicture: "onTakePicture" }, outputs: { closeRequested: "closeRequested" }, decls: 18, vars: 3, consts: [["videoElement", ""], ["color", "dark"], [1, "camera-overlay"], [1, "header-text"], [1, "text-help"], [1, "country"], ["class", "loading-overlay", 4, "ngIf"], [1, "visible-window"], [1, "camera-container"], ["autoplay", "", "muted", "", "playsinline", ""], [1, "button-container"], ["shape", "round", "expand", "block", 1, "capture-button", 3, "click"], ["name", "camera-outline"], ["fill", "clear", 1, "close-button", 3, "click"], ["name", "close-outline"], [1, "loading-overlay"], ["name", "crescent"]], template: function CameraWithOverlayComponent_Template(rf, ctx) { if (rf & 1) {
200
+ } }, inputs: { text1: "text1", text2: "text2", overlaySrc: "overlaySrc", onTakePicture: "onTakePicture" }, outputs: { closeRequested: "closeRequested" }, decls: 19, vars: 4, consts: [["videoElement", ""], ["color", "dark"], [1, "camera-overlay"], ["vertical", "top", "horizontal", "start", "slot", "fixed", 4, "ngIf"], [1, "header-text"], [1, "text-help"], [1, "country"], ["class", "loading-overlay", 4, "ngIf"], [1, "visible-window"], [1, "camera-container"], ["autoplay", "", "muted", "", "playsinline", ""], [1, "button-container"], ["shape", "round", "expand", "block", 1, "capture-button", 3, "click"], ["name", "camera-outline"], ["fill", "clear", 1, "close-button", 3, "click"], ["name", "close-outline"], ["vertical", "top", "horizontal", "start", "slot", "fixed"], ["size", "small", 1, "buttonfabCameraChange", 3, "click"], ["name", "camera-reverse-outline"], [1, "loading-overlay"], ["name", "crescent"]], template: function CameraWithOverlayComponent_Template(rf, ctx) { if (rf & 1) {
171
201
  const _r1 = i0.ɵɵgetCurrentView();
172
- i0.ɵɵelementStart(0, "ion-content", 1)(1, "div", 2)(2, "div", 3)(3, "div", 4)(4, "p");
173
- i0.ɵɵtext(5);
202
+ i0.ɵɵelementStart(0, "ion-content", 1)(1, "div", 2);
203
+ i0.ɵɵtemplate(2, CameraWithOverlayComponent_ion_fab_2_Template, 3, 0, "ion-fab", 3);
204
+ i0.ɵɵelementStart(3, "div", 4)(4, "div", 5)(5, "p");
205
+ i0.ɵɵtext(6);
174
206
  i0.ɵɵelementEnd()();
175
- i0.ɵɵelementStart(6, "p", 5);
176
- i0.ɵɵtext(7);
207
+ i0.ɵɵelementStart(7, "p", 6);
208
+ i0.ɵɵtext(8);
177
209
  i0.ɵɵelementEnd()();
178
- i0.ɵɵtemplate(8, CameraWithOverlayComponent_div_8_Template, 2, 0, "div", 6);
179
- i0.ɵɵelement(9, "div", 7);
180
- i0.ɵɵelementStart(10, "div", 8);
181
- i0.ɵɵelement(11, "video", 9, 0);
210
+ i0.ɵɵtemplate(9, CameraWithOverlayComponent_div_9_Template, 2, 0, "div", 7);
211
+ i0.ɵɵelement(10, "div", 8);
212
+ i0.ɵɵelementStart(11, "div", 9);
213
+ i0.ɵɵelement(12, "video", 10, 0);
182
214
  i0.ɵɵelementEnd();
183
- i0.ɵɵelementStart(13, "div", 10)(14, "ion-button", 11);
184
- i0.ɵɵlistener("click", function CameraWithOverlayComponent_Template_ion_button_click_14_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.capturePhoto()); });
185
- i0.ɵɵelement(15, "ion-icon", 12);
215
+ i0.ɵɵelementStart(14, "div", 11)(15, "ion-button", 12);
216
+ i0.ɵɵlistener("click", function CameraWithOverlayComponent_Template_ion_button_click_15_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.capturePhoto()); });
217
+ i0.ɵɵelement(16, "ion-icon", 13);
186
218
  i0.ɵɵelementEnd()();
187
- i0.ɵɵelementStart(16, "ion-button", 13);
188
- i0.ɵɵlistener("click", function CameraWithOverlayComponent_Template_ion_button_click_16_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.closeOverlay()); });
189
- i0.ɵɵelement(17, "ion-icon", 14);
219
+ i0.ɵɵelementStart(17, "ion-button", 14);
220
+ i0.ɵɵlistener("click", function CameraWithOverlayComponent_Template_ion_button_click_17_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.closeOverlay()); });
221
+ i0.ɵɵelement(18, "ion-icon", 15);
190
222
  i0.ɵɵelementEnd()()();
191
223
  } if (rf & 2) {
192
- i0.ɵɵadvance(5);
224
+ i0.ɵɵadvance(2);
225
+ i0.ɵɵproperty("ngIf", ctx.rearCams.length > 1);
226
+ i0.ɵɵadvance(4);
193
227
  i0.ɵɵtextInterpolate(ctx.text1);
194
228
  i0.ɵɵadvance(2);
195
229
  i0.ɵɵtextInterpolate(ctx.text2);
196
230
  i0.ɵɵadvance();
197
231
  i0.ɵɵproperty("ngIf", ctx.isLoading);
198
- } }, dependencies: [i4.NgIf, i1.IonButton, i1.IonContent, i1.IonIcon, i1.IonSpinner], styles: ["ion-content[_ngcontent-%COMP%] {\n --background: black;\n padding: 0;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100vh;\n\n}\n\n.modal-container[_ngcontent-%COMP%] {\n max-width: 400px; // Ajusta el valor seg\u00FAn tus necesidades\n\n}\n\n.camera-overlay[_ngcontent-%COMP%] {\n position: relative;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n}\n\n.camera-container[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n position: relative;\n\n video {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n\n.overlay-frame[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n max-width: 70%;\n max-height: 70%;\n z-index: 9;\n}\n\n.header-text[_ngcontent-%COMP%] {\n position: absolute;\n top: 170px;\n width: 100%;\n text-align: center;\n color: white;\n z-index: 15;\n\n p {\n margin: 0;\n font-size: 18px;\n }\n\n .country {\n font-weight: bold;\n }\n}\n\n.button-container[_ngcontent-%COMP%] {\n position: absolute;\n bottom: 50px;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 10;\n}\n\n.capture-button[_ngcontent-%COMP%] {\n width: 70px;\n height: 70px;\n border-radius: 50%;\n\n\n --background: var(--purple-primary);\n --background-hover: var(--purple-secondary);\n --background-activated: var(--purple-secondary);\n --background-focused: var(--purple-secondary);\n \n --color: white;\n \n --border-color: var(--purple-primary);\n --border-style: solid;\n --border-width: 1px;\n \n --box-shadow: 0 2px 6px 0 rgb(0, 0, 0, 0.25);\n \n --ripple-color: var(--purple-secondary);\n}\n\n.close-button[_ngcontent-%COMP%] {\n position: absolute;\n top: 14px;\n right: 20px;\n color: white;\n z-index: 10;\n}\n\n.visible-window[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n // width: 70%; \n\n // height: 45%; \n\n\n width: 390px; \n\n height: 420px;\n \n max-width: 70%;\n max-height: 70%;\n background: transparent;\n border: 2px solid white; \n\n border-radius: 10px; \n\n z-index: 10; \n\n box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.85); \n\n}\n.text-help[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{\n display: inline-block; \n\n background-color: white; \n\n padding: 5px; \n\n border-radius: 5px; \n\n color: black; \n\n box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); \n\n animation: _ngcontent-%COMP%_popIn 1s ease-in-out; \n\n}\n\n\n\n@keyframes _ngcontent-%COMP%_popIn {\n 0% {\n transform: scale(0.8); \n\n opacity: 0; \n\n }\n 50% {\n transform: scale(1.1); \n\n opacity: 1; \n\n }\n 100% {\n transform: scale(1); \n\n }\n}\n\n.loading-overlay[_ngcontent-%COMP%] {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.8); \n\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000; \n\n}\n\nion-spinner[_ngcontent-%COMP%] {\n color: white;\n width: 50px;\n height: 50px;\n}"] });
232
+ } }, dependencies: [i3.NgIf, i1.IonButton, i1.IonContent, i1.IonFab, i1.IonFabButton, i1.IonIcon, i1.IonSpinner], styles: ["ion-content[_ngcontent-%COMP%] {\n --background: black;\n padding: 0;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100vh;\n\n}\n\n.modal-container[_ngcontent-%COMP%] {\n max-width: 400px; // Ajusta el valor seg\u00FAn tus necesidades\n\n}\n\n.camera-overlay[_ngcontent-%COMP%] {\n position: relative;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n}\n\n.camera-container[_ngcontent-%COMP%] {\n width: 100%;\n height: 100%;\n position: relative;\n\n video {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n\n.overlay-frame[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n max-width: 70%;\n max-height: 70%;\n z-index: 9;\n}\n\n.header-text[_ngcontent-%COMP%] {\n position: absolute;\n top: 50px;\n width: 100%;\n text-align: center;\n color: white;\n z-index: 15;\n\n p {\n margin: 0;\n font-size: 18px;\n }\n\n .country {\n font-weight: bold;\n }\n}\n\n.button-container[_ngcontent-%COMP%] {\n position: absolute;\n bottom: 20px;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 10;\n}\n\n.capture-button[_ngcontent-%COMP%] {\n width: 70px;\n height: 70px;\n border-radius: 50%;\n\n\n --background: var(--purple-primary);\n --background-hover: var(--purple-secondary);\n --background-activated: var(--purple-secondary);\n --background-focused: var(--purple-secondary);\n \n --color: white;\n \n --border-color: var(--purple-primary);\n --border-style: solid;\n --border-width: 1px;\n \n --box-shadow: 0 2px 6px 0 rgb(0, 0, 0, 0.25);\n \n --ripple-color: var(--purple-secondary);\n}\n\n.close-button[_ngcontent-%COMP%] {\n position: absolute;\n top: 14px;\n right: 20px;\n color: white;\n z-index: 10;\n}\n\n.visible-window[_ngcontent-%COMP%] {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n // width: 70%; \n\n // height: 45%; \n\n\n width: 313px;\n height: 500px;\n\n max-width: 90%;\n max-height: 90%;\n background: transparent;\n border: 2px solid white; \n\n border-radius: 10px; \n\n z-index: 10; \n\n box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.65); \n\n}\n.text-help[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{\n display: inline-block; \n\n background-color: white; \n\n padding: 5px; \n\n border-radius: 5px; \n\n color: black; \n\n box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); \n\n animation: _ngcontent-%COMP%_popIn 1s ease-in-out; \n\n}\n\n\n\n@keyframes _ngcontent-%COMP%_popIn {\n 0% {\n transform: scale(0.8); \n\n opacity: 0; \n\n }\n 50% {\n transform: scale(1.1); \n\n opacity: 1; \n\n }\n 100% {\n transform: scale(1); \n\n }\n}\n\n.loading-overlay[_ngcontent-%COMP%] {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.8); \n\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000; \n\n}\n\nion-spinner[_ngcontent-%COMP%] {\n color: white;\n width: 50px;\n height: 50px;\n}\n\n\n\n.camera-select[_ngcontent-%COMP%] {\n position: absolute;\n top: 1rem;\n left: 1rem;\n background: rgba(0, 0, 0, 0.7);\n padding: 0.5rem;\n border-radius: 0.5rem;\n z-index: 999;\n display: flex;\n align-items: center;\n color: white;\n\n label {\n margin-right: 0.5rem;\n font-size: 14px;\n }\n\n select {\n background: transparent;\n color: white;\n border: 1px solid white;\n border-radius: 0.3rem;\n font-size: 14px;\n padding: 0.2rem;\n }\n}\n\n.buttonfabCameraChange[_ngcontent-%COMP%] {\n --background: rgba(0, 0, 0, 0.6);\n --color: #fff;\n //box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n \n\n \n\n}"] });
199
233
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CameraWithOverlayComponent, [{
200
234
  type: Component,
201
- args: [{ selector: 'app-camera-overlay', encapsulation: ViewEncapsulation.Emulated, template: "<ion-content color=\"dark\">\n <div class=\"camera-overlay\">\n <div class=\"header-text\">\n <div class=\"text-help\">\n <p>{{text1}}</p>\n </div>\n <p class=\"country\">{{text2}}</p>\n </div>\n\n\n <div *ngIf=\"isLoading\" class=\"loading-overlay\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n \n <!-- Capa oscura con recorte en el centro -->\n <div class=\"visible-window\"></div>\n\n <!-- Video de la c\u00E1mara con el overlay centrado -->\n <div class=\"camera-container\" >\n <video #videoElement autoplay muted playsinline></video>\n <!-- <img [src]=\"overlaySrc\" alt=\"Overlay\" class=\"overlay-frame\" /> -->\n </div>\n\n <!-- Bot\u00F3n de captura centrado en la parte inferior -->\n <div class=\"button-container\">\n <ion-button (click)=\"capturePhoto()\" class=\"capture-button\" shape=\"round\" expand=\"block\">\n <ion-icon name=\"camera-outline\"></ion-icon>\n </ion-button>\n </div>\n\n <!-- Bot\u00F3n de cerrar en la esquina superior derecha -->\n <ion-button fill=\"clear\" (click)=\"closeOverlay()\" class=\"close-button\">\n <ion-icon name=\"close-outline\"></ion-icon>\n </ion-button>\n </div>\n\n <!-- Mostrar la imagen capturada si existe\n <div *ngIf=\"capturedImageUrl\">\n <h3>Imagen Capturada:</h3>\n <img [src]=\"capturedImageUrl\" alt=\"Foto capturada\" />\n </div> -->\n</ion-content>", styles: ["ion-content {\n --background: black;\n padding: 0;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100vh;\n\n}\n\n.modal-container {\n max-width: 400px; // Ajusta el valor seg\u00FAn tus necesidades\n\n}\n\n.camera-overlay {\n position: relative;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n}\n\n.camera-container {\n width: 100%;\n height: 100%;\n position: relative;\n\n video {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n\n.overlay-frame {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n max-width: 70%;\n max-height: 70%;\n z-index: 9;\n}\n\n.header-text {\n position: absolute;\n top: 170px;\n width: 100%;\n text-align: center;\n color: white;\n z-index: 15;\n\n p {\n margin: 0;\n font-size: 18px;\n }\n\n .country {\n font-weight: bold;\n }\n}\n\n.button-container {\n position: absolute;\n bottom: 50px;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 10;\n}\n\n.capture-button {\n width: 70px;\n height: 70px;\n border-radius: 50%;\n\n\n --background: var(--purple-primary);\n --background-hover: var(--purple-secondary);\n --background-activated: var(--purple-secondary);\n --background-focused: var(--purple-secondary);\n \n --color: white;\n \n --border-color: var(--purple-primary);\n --border-style: solid;\n --border-width: 1px;\n \n --box-shadow: 0 2px 6px 0 rgb(0, 0, 0, 0.25);\n \n --ripple-color: var(--purple-secondary);\n}\n\n.close-button {\n position: absolute;\n top: 14px;\n right: 20px;\n color: white;\n z-index: 10;\n}\n\n.visible-window {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n // width: 70%; /* Ajusta el tama\u00F1o del cuadro */\n // height: 45%; /* Ajusta el tama\u00F1o del cuadro */\n\n width: 390px; /* Ajusta el tama\u00F1o del cuadro */\n height: 420px;\n \n max-width: 70%;\n max-height: 70%;\n background: transparent;\n border: 2px solid white; /* Color y grosor del borde */\n border-radius: 10px; /* Ajusta para redondear las esquinas */\n z-index: 10; /* Aseg\u00FArate de que est\u00E9 encima del overlay oscuro */\n box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.85); /* Oscurece fuera del cuadro */\n}\n.text-help p{\n display: inline-block; /* Hace que solo el texto ocupe espacio */\n background-color: white; /* Color de fondo del texto */\n padding: 5px; /* Espaciado interno para una mejor visualizaci\u00F3n */\n border-radius: 5px; /* Opcional, para esquinas redondeadas */\n color: black; /* Color del texto */\n box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Sombra leve */\n animation: popIn 1s ease-in-out; /* Agrega la animaci\u00F3n al aparecer */\n}\n\n/* Definimos la animaci\u00F3n \"popIn\" */\n@keyframes popIn {\n 0% {\n transform: scale(0.8); /* Comienza m\u00E1s peque\u00F1o */\n opacity: 0; /* Empieza invisible */\n }\n 50% {\n transform: scale(1.1); /* Crece un poco m\u00E1s de lo normal */\n opacity: 1; /* Se hace visible */\n }\n 100% {\n transform: scale(1); /* Vuelve a su tama\u00F1o normal */\n }\n}\n\n.loading-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.8); /* Fondo oscuro semi-transparente */\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000; /* Aseg\u00FArate de que est\u00E9 por encima del contenido */\n}\n\nion-spinner {\n color: white;\n width: 50px;\n height: 50px;\n}"] }]
202
- }], () => [{ type: i1.Platform }, { type: i1.ModalController }, { type: i2.DomSanitizer }, { type: i3.ModalDpiServices }], { videoElement: [{
235
+ args: [{ selector: 'app-camera-overlay', encapsulation: ViewEncapsulation.Emulated, template: "<ion-content color=\"dark\">\n <div class=\"camera-overlay\">\n <ion-fab vertical=\"top\" horizontal=\"start\" slot=\"fixed\" *ngIf=\"rearCams.length > 1\">\n <ion-fab-button\n class=\"buttonfabCameraChange\"\n size=\"small\"\n (click)=\"toggleRearCam()\">\n <ion-icon name=\"camera-reverse-outline\"></ion-icon>\n </ion-fab-button>\n </ion-fab>\n <!-- \u25B8 Encabezado ---------------------------------------------------- -->\n <div class=\"header-text\">\n <div class=\"text-help\">\n <p>{{ text1 }}</p>\n </div>\n <p class=\"country\">{{ text2 }}</p>\n\n <!-- \u25B8 Selector de c\u00E1maras traseras (solo se muestra si hay varias) -->\n <!-- <ion-item class=\"cam-picker\" lines=\"none\">\n <ion-label>Elegir c\u00E1mara</ion-label>\n <ion-select interface=\"popover\"\n [value]=\"selectedCamId\"\n (ionChange)=\"onSelectCam($event)\">\n <ion-select-option *ngFor=\"let cam of rearCams\"\n [value]=\"cam.deviceId\">\n {{ cam.label }}\n </ion-select-option>\n </ion-select>\n </ion-item>-->\n </div> \n\n <!-- \u25B8 Loader mientras inicializa ------------------------------------ -->\n <div *ngIf=\"isLoading\" class=\"loading-overlay\">\n <ion-spinner name=\"crescent\"></ion-spinner>\n </div>\n\n <!-- \u25B8 Capa oscura con recorte (tu ventana de enfoque) --------------- -->\n <div class=\"visible-window\"></div>\n\n <!-- \u25B8 Contenedor del v\u00EDdeo + overlay -------------------------------- -->\n <div class=\"camera-container\">\n <video #videoElement autoplay muted playsinline></video>\n <!-- <img [src]=\"overlaySrc\" alt=\"Overlay\" class=\"overlay-frame\" /> -->\n </div>\n\n <!-- \u25B8 Bot\u00F3n de captura ---------------------------------------------- -->\n <div class=\"button-container\">\n <ion-button (click)=\"capturePhoto()\"\n class=\"capture-button\"\n shape=\"round\"\n expand=\"block\">\n <ion-icon name=\"camera-outline\"></ion-icon>\n </ion-button>\n </div>\n\n <!-- \u25B8 Bot\u00F3n de cerrar ------------------------------------------------ -->\n <ion-button fill=\"clear\"\n (click)=\"closeOverlay()\"\n class=\"close-button\">\n <ion-icon name=\"close-outline\"></ion-icon>\n </ion-button>\n </div>\n</ion-content>\n", styles: ["ion-content {\n --background: black;\n padding: 0;\n margin: 0;\n display: flex;\n justify-content: center;\n align-items: center;\n height: 100vh;\n\n}\n\n.modal-container {\n max-width: 400px; // Ajusta el valor seg\u00FAn tus necesidades\n\n}\n\n.camera-overlay {\n position: relative;\n width: 100vw;\n height: 100vh;\n display: flex;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n}\n\n.camera-container {\n width: 100%;\n height: 100%;\n position: relative;\n\n video {\n width: 100%;\n height: 100%;\n object-fit: cover;\n }\n}\n\n.overlay-frame {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n max-width: 70%;\n max-height: 70%;\n z-index: 9;\n}\n\n.header-text {\n position: absolute;\n top: 50px;\n width: 100%;\n text-align: center;\n color: white;\n z-index: 15;\n\n p {\n margin: 0;\n font-size: 18px;\n }\n\n .country {\n font-weight: bold;\n }\n}\n\n.button-container {\n position: absolute;\n bottom: 20px;\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n z-index: 10;\n}\n\n.capture-button {\n width: 70px;\n height: 70px;\n border-radius: 50%;\n\n\n --background: var(--purple-primary);\n --background-hover: var(--purple-secondary);\n --background-activated: var(--purple-secondary);\n --background-focused: var(--purple-secondary);\n \n --color: white;\n \n --border-color: var(--purple-primary);\n --border-style: solid;\n --border-width: 1px;\n \n --box-shadow: 0 2px 6px 0 rgb(0, 0, 0, 0.25);\n \n --ripple-color: var(--purple-secondary);\n}\n\n.close-button {\n position: absolute;\n top: 14px;\n right: 20px;\n color: white;\n z-index: 10;\n}\n\n.visible-window {\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n // width: 70%; /* Ajusta el tama\u00F1o del cuadro */\n // height: 45%; /* Ajusta el tama\u00F1o del cuadro */\n\n width: 313px;\n height: 500px;\n\n max-width: 90%;\n max-height: 90%;\n background: transparent;\n border: 2px solid white; /* Color y grosor del borde */\n border-radius: 10px; /* Ajusta para redondear las esquinas */\n z-index: 10; /* Aseg\u00FArate de que est\u00E9 encima del overlay oscuro */\n box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.65); /* Oscurece fuera del cuadro */\n}\n.text-help p{\n display: inline-block; /* Hace que solo el texto ocupe espacio */\n background-color: white; /* Color de fondo del texto */\n padding: 5px; /* Espaciado interno para una mejor visualizaci\u00F3n */\n border-radius: 5px; /* Opcional, para esquinas redondeadas */\n color: black; /* Color del texto */\n box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1); /* Sombra leve */\n animation: popIn 1s ease-in-out; /* Agrega la animaci\u00F3n al aparecer */\n}\n\n/* Definimos la animaci\u00F3n \"popIn\" */\n@keyframes popIn {\n 0% {\n transform: scale(0.8); /* Comienza m\u00E1s peque\u00F1o */\n opacity: 0; /* Empieza invisible */\n }\n 50% {\n transform: scale(1.1); /* Crece un poco m\u00E1s de lo normal */\n opacity: 1; /* Se hace visible */\n }\n 100% {\n transform: scale(1); /* Vuelve a su tama\u00F1o normal */\n }\n}\n\n.loading-overlay {\n position: fixed;\n top: 0;\n left: 0;\n width: 100vw;\n height: 100vh;\n background-color: rgba(0, 0, 0, 0.8); /* Fondo oscuro semi-transparente */\n display: flex;\n align-items: center;\n justify-content: center;\n z-index: 1000; /* Aseg\u00FArate de que est\u00E9 por encima del contenido */\n}\n\nion-spinner {\n color: white;\n width: 50px;\n height: 50px;\n}\n\n\n\n.camera-select {\n position: absolute;\n top: 1rem;\n left: 1rem;\n background: rgba(0, 0, 0, 0.7);\n padding: 0.5rem;\n border-radius: 0.5rem;\n z-index: 999;\n display: flex;\n align-items: center;\n color: white;\n\n label {\n margin-right: 0.5rem;\n font-size: 14px;\n }\n\n select {\n background: transparent;\n color: white;\n border: 1px solid white;\n border-radius: 0.3rem;\n font-size: 14px;\n padding: 0.2rem;\n }\n}\n\n.buttonfabCameraChange {\n --background: rgba(0, 0, 0, 0.6);\n --color: #fff;\n //box-shadow: 0 2px 6px rgba(0, 0, 0, 0.4);\n /* ajusta posici\u00F3n extra si lo necesitas */\n /* margin-top: 8px; margin-left: 8px; */\n}\n"] }]
236
+ }], () => [{ type: i1.Platform }, { type: i1.ModalController }, { type: i2.ModalDpiServices }], { videoElement: [{
203
237
  type: ViewChild,
204
238
  args: ['videoElement']
205
239
  }], text1: [{
@@ -1 +1 @@
1
- {"version":3,"file":"camera-with-overlay.component.js","sourceRoot":"","sources":["../../../../../../../src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.ts","../../../../../../../src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.html"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camera-with-overlay.component.js","sourceRoot":"","sources":["../../../../../../../src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.ts","../../../../../../../src/app/pages/id-vision/components/camera-with-overlay/camera-with-overlay.component.html"],"names":[],"mappings":"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"}
@@ -1,14 +1,17 @@
1
1
  import { AfterViewInit, ChangeDetectorRef, OnDestroy, OnInit } from '@angular/core';
2
- import { AlertController, IonInput, LoadingController, ModalController, NavController, Platform } from '@ionic/angular';
2
+ import { AlertController, IonInput, LoadingController, ModalController, NavController, Platform, ToastController } from '@ionic/angular';
3
3
  import { DpiService } from './services/dpi/dpi-service.service';
4
4
  import { ModalDpiServices } from './services/modal-services/modal-dpi-services';
5
5
  import { ModalVideoSelfieServices } from './services/modal-services/modal-video-selfie-services';
6
6
  import { SdkCommunicationService } from './services/modal-services/sdk-communication-services';
7
7
  import { ValidateMetaGService } from './services/validate-meta-g/validate-meta-g';
8
+ import { PluginListenerHandle } from '@capacitor/core';
9
+ import { NgZone } from '@angular/core';
8
10
  import { SwiperContainer } from './../../../swiper-wrapper';
9
11
  import { PhotoSelfieServices } from './services/modal-services/photo-selfie-services';
10
12
  import * as i0 from "@angular/core";
11
13
  export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestroy {
14
+ private zone;
12
15
  private modalController;
13
16
  private dpiService;
14
17
  private alertController;
@@ -21,6 +24,7 @@ export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestr
21
24
  private validateMetaGService;
22
25
  private cdRef;
23
26
  private photoSelfieServices;
27
+ private toastController;
24
28
  dpi: IonInput;
25
29
  private isAndroid;
26
30
  private isIOS;
@@ -28,7 +32,7 @@ export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestr
28
32
  tutoImage2: string;
29
33
  tutoImage3: string;
30
34
  tutoImage4: string;
31
- constructor(modalController: ModalController, dpiService: DpiService, alertController: AlertController, loadingController: LoadingController, platform: Platform, modalDpiServices: ModalDpiServices, modalVideoSelfieServices: ModalVideoSelfieServices, sdkCommunicationService: SdkCommunicationService, navController: NavController, validateMetaGService: ValidateMetaGService, cdRef: ChangeDetectorRef, photoSelfieServices: PhotoSelfieServices);
35
+ constructor(zone: NgZone, modalController: ModalController, dpiService: DpiService, alertController: AlertController, loadingController: LoadingController, platform: Platform, modalDpiServices: ModalDpiServices, modalVideoSelfieServices: ModalVideoSelfieServices, sdkCommunicationService: SdkCommunicationService, navController: NavController, validateMetaGService: ValidateMetaGService, cdRef: ChangeDetectorRef, photoSelfieServices: PhotoSelfieServices, toastController: ToastController);
32
36
  swiperElement: import("@angular/core").WritableSignal<SwiperContainer | null>;
33
37
  private modalRef;
34
38
  isSwipe: boolean;
@@ -36,6 +40,9 @@ export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestr
36
40
  connection: string;
37
41
  apikey: string;
38
42
  validationConfig: any[];
43
+ showDebug: boolean;
44
+ versionSDK: string;
45
+ hasInternet: boolean;
39
46
  validateMetaG: {
40
47
  acuerdoVideo: boolean;
41
48
  dpiFront: boolean;
@@ -51,12 +58,13 @@ export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestr
51
58
  showVideoSelfie: boolean;
52
59
  showPhotoSelfie: boolean;
53
60
  isValid: boolean;
61
+ networkListener: PluginListenerHandle | undefined;
54
62
  loadMockValidationConfig(): Promise<void>;
55
63
  getStepAction(type: number): () => void;
56
64
  setValidationConfig(): void;
57
65
  ngOnInit(): Promise<void>;
58
66
  ngAfterViewInit(): void;
59
- ngOnDestroy(): void;
67
+ ngOnDestroy(): Promise<void>;
60
68
  handleClick(): void;
61
69
  handleSlide(slide: number): Promise<void>;
62
70
  handleGetInit(): void;
@@ -92,6 +100,8 @@ export declare class IdVisionComponent implements OnInit, AfterViewInit, OnDestr
92
100
  openVideoSelfie(): Promise<void>;
93
101
  openPhotoSelfie(): Promise<void>;
94
102
  openSimpleAcuerdo(): Promise<void>;
103
+ copyProccess(): Promise<void>;
104
+ copiarTexto(texto: string): Promise<void>;
95
105
  static ɵfac: i0.ɵɵFactoryDeclaration<IdVisionComponent, never>;
96
106
  static ɵcmp: i0.ɵɵComponentDeclaration<IdVisionComponent, "app-id-vision", never, { "isSwipe": { "alias": "isSwipe"; "required": false; }; "dpiCode": { "alias": "dpiCode"; "required": false; }; "connection": { "alias": "connection"; "required": false; }; "apikey": { "alias": "apikey"; "required": false; }; "validationConfig": { "alias": "validationConfig"; "required": false; }; }, {}, never, never, true, never>;
97
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"id-vision.component.d.ts","sourceRoot":"","sources":["../../../../../src/app/pages/id-vision/id-vision.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"id-vision.component.d.ts","sourceRoot":"","sources":["../../../../../src/app/pages/id-vision/id-vision.component.ts"],"names":[],"mappings":"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"}