ngx-scandoc 18.0.2 → 19.0.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/fesm2022/ngx-scandoc.mjs +130 -130
- package/fesm2022/ngx-scandoc.mjs.map +1 -1
- package/package.json +9 -11
- package/esm2022/core/app.worker.mjs +0 -236
- package/esm2022/core/components/base.component.mjs +0 -15
- package/esm2022/core/components/camera-switch/camera-switch.component.mjs +0 -25
- package/esm2022/core/components/components.module.mjs +0 -69
- package/esm2022/core/components/manual-scan/manual-scan.component.mjs +0 -290
- package/esm2022/core/components/scan/scan.component.mjs +0 -733
- package/esm2022/core/components/scan-results/scan-results.component.mjs +0 -65
- package/esm2022/core/components/webcam/domain/webcam-image.mjs +0 -58
- package/esm2022/core/components/webcam/domain/webcam-init-error.mjs +0 -3
- package/esm2022/core/components/webcam/domain/webcam-mirror-properties.mjs +0 -3
- package/esm2022/core/components/webcam/util/webcam.util.mjs +0 -50
- package/esm2022/core/components/webcam/webcam/webcam.component.mjs +0 -543
- package/esm2022/core/components/webcam/webcam.module.mjs +0 -29
- package/esm2022/core/helpers/object-utils.mjs +0 -100
- package/esm2022/core/interfaces/config.mjs +0 -2
- package/esm2022/core/interfaces/guest.data.mjs +0 -2
- package/esm2022/core/pipes/pipes.module.mjs +0 -19
- package/esm2022/core/pipes/safeResourceUrl.pipe.mjs +0 -20
- package/esm2022/core/shared/material.module.mjs +0 -162
- package/esm2022/core/tokens/config.tokens.mjs +0 -4
- package/esm2022/dialogs/components/blank/blank.component.mjs +0 -46
- package/esm2022/dialogs/components/confirm/confirm.component.mjs +0 -51
- package/esm2022/dialogs/components/loading/loading.component.mjs +0 -12
- package/esm2022/dialogs/components/prompt-manual/prompt-manual.component.mjs +0 -30
- package/esm2022/dialogs/components/scan-profile/scan-profile.component.mjs +0 -79
- package/esm2022/dialogs/components/scan-selfie/scan-selfie.component.mjs +0 -95
- package/esm2022/dialogs/components/turn-document/turn-document.component.mjs +0 -31
- package/esm2022/dialogs/dialogs.core.provider.mjs +0 -120
- package/esm2022/dialogs/dialogs.module.mjs +0 -102
- package/esm2022/forms/form.module.mjs +0 -87
- package/esm2022/forms/types/avatar.type.mjs +0 -58
- package/esm2022/forms/types/profile.image.type.mjs +0 -64
- package/esm2022/forms/types/title.type.mjs +0 -32
- package/esm2022/lib/ngx-scandoc.module.mjs +0 -44
- package/esm2022/ngx-scandoc.mjs +0 -5
- package/esm2022/providers/auth.provider.mjs +0 -113
- package/esm2022/providers/camera.provider.mjs +0 -87
- package/esm2022/providers/interceptor.provider.mjs +0 -77
- package/esm2022/providers/layout.provider.mjs +0 -30
- package/esm2022/providers/scan.form.mjs +0 -347
- package/esm2022/providers/scan.provider.mjs +0 -756
- package/esm2022/providers/translate-loader.provider.mjs +0 -126
- package/esm2022/providers/translation.provider.mjs +0 -133
- package/esm2022/providers/webrtc.provider.mjs +0 -58
- package/esm2022/public-api.mjs +0 -33
|
@@ -1,79 +0,0 @@
|
|
|
1
|
-
import { Component, HostListener, ChangeDetectionStrategy, Input, } from '@angular/core';
|
|
2
|
-
import { BaseComponent } from '../../../core/components/base.component';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../../dialogs/dialogs.core.provider";
|
|
5
|
-
import * as i2 from "../../../providers/camera.provider";
|
|
6
|
-
import * as i3 from "../../../providers/scan.provider";
|
|
7
|
-
import * as i4 from "@angular/material/dialog";
|
|
8
|
-
import * as i5 from "@angular/cdk/platform";
|
|
9
|
-
import * as i6 from "@angular/common";
|
|
10
|
-
import * as i7 from "@angular/material/icon";
|
|
11
|
-
import * as i8 from "@angular/material/button";
|
|
12
|
-
import * as i9 from "../../../core/components/scan/scan.component";
|
|
13
|
-
import * as i10 from "../../../core/components/camera-switch/camera-switch.component";
|
|
14
|
-
import * as i11 from "@ngx-translate/core";
|
|
15
|
-
export class ScanProfileComponent extends BaseComponent {
|
|
16
|
-
handleTouchMove(event) {
|
|
17
|
-
// console.log(event);
|
|
18
|
-
if (event.touches.length > 1) {
|
|
19
|
-
event.preventDefault();
|
|
20
|
-
}
|
|
21
|
-
// console.log(document.body.style.zoom);
|
|
22
|
-
if (event.scale !== 1) {
|
|
23
|
-
// event.preventDefault();
|
|
24
|
-
// event.stopImmediatePropagation();
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
constructor(dialogs, cameraProvider, scanProvider, dialogRef, platform) {
|
|
28
|
-
super();
|
|
29
|
-
this.dialogs = dialogs;
|
|
30
|
-
this.cameraProvider = cameraProvider;
|
|
31
|
-
this.scanProvider = scanProvider;
|
|
32
|
-
this.dialogRef = dialogRef;
|
|
33
|
-
this.platform = platform;
|
|
34
|
-
this.type = 'desktop';
|
|
35
|
-
this.showDialog = false;
|
|
36
|
-
}
|
|
37
|
-
ngAfterViewInit() {
|
|
38
|
-
// console.log(this.cameraProvider)
|
|
39
|
-
}
|
|
40
|
-
ngOnDestroy() {
|
|
41
|
-
this.__destroy();
|
|
42
|
-
console.log('DES');
|
|
43
|
-
}
|
|
44
|
-
actions(event) {
|
|
45
|
-
switch (event.type) {
|
|
46
|
-
case 'scanFinish':
|
|
47
|
-
if (this.scanProvider.config.hideResults) {
|
|
48
|
-
this.dialogRef?.close(event.data);
|
|
49
|
-
}
|
|
50
|
-
break;
|
|
51
|
-
case 'manualMode':
|
|
52
|
-
this.dialogRef?.close({ manual: true });
|
|
53
|
-
break;
|
|
54
|
-
case 'scanDataClose':
|
|
55
|
-
this.dialogRef?.close(event.data);
|
|
56
|
-
break;
|
|
57
|
-
case 'turnDocumentOver':
|
|
58
|
-
this.__subs(this.dialogs.turnDocument(event.side)).subscribe(() => {
|
|
59
|
-
this.showDialog = false;
|
|
60
|
-
});
|
|
61
|
-
break;
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
close() {
|
|
65
|
-
this.dialogRef?.close();
|
|
66
|
-
}
|
|
67
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ScanProfileComponent, deps: [{ token: i1.NgxScandocDialogsCoreProvider }, { token: i2.NgxScandocCameraProvider }, { token: i3.ScanProvider }, { token: i4.MatDialogRef }, { token: i5.Platform }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
68
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ScanProfileComponent, selector: "ngx-scandoc-profile", inputs: { type: "type" }, host: { listeners: { "touchmove": "handleTouchMove($event)" } }, usesInheritance: true, ngImport: i0, template: "<header class=\"page-header\">\n <div class=\"title\" >\n {{ \"scandoc.title\" | translate }}\n </div>\n\n <span style=\"flex: 1\"></span>\n\n <ng-container *ngIf=\"cameraProvider.$showSwitch| async\">\n <div class=\"separator\"></div>\n <div style=\"padding: 0px 16px\">\n <ngx-scan-camera-switch></ngx-scan-camera-switch>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"type === 'desktop'\">\n <div class=\"separator\"></div>\n\n <button mat-button (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n </ng-container>\n</header>\n\n<ngx-scan\n (actions)=\"actions($event)\"\n [showDialog]=\"showDialog\"\n [dialogs]=\"dialogs\"\n></ngx-scan>\n", styles: [":host{display:flex;flex-direction:column!important;flex:1;background-color:#f5f5f5;overflow:hidden}.page-header{display:flex;flex-direction:row;align-items:center}.page-header button{height:100%}@media only screen and (max-width: 768px){header .title{font-size:12px!important;line-height:18px!important}}\n", ".page-header{z-index:2000;height:64px;padding:0;overflow:hidden;background-color:#fff;border-bottom:1px solid rgba(0,0,0,.12)}.page-header .title{padding-left:24px;line-height:64px;font-size:18px}.page-header .separator{width:1px;background-color:#0000001f;height:100%}.page-header .total{line-height:64px}.page-header .total span{font-weight:700}.page-footer{height:64px}.page-footer button{margin-left:24px;box-shadow:none!important}\n"], dependencies: [{ kind: "directive", type: i6.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i7.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i9.ScanComponent, selector: "ngx-scan", inputs: ["type", "dialogs", "refresh", "showDialog"], outputs: ["actions"] }, { kind: "component", type: i10.CameraSwitchComponent, selector: "ngx-scan-camera-switch" }, { kind: "pipe", type: i6.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
69
|
-
}
|
|
70
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ScanProfileComponent, decorators: [{
|
|
71
|
-
type: Component,
|
|
72
|
-
args: [{ selector: 'ngx-scandoc-profile', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"page-header\">\n <div class=\"title\" >\n {{ \"scandoc.title\" | translate }}\n </div>\n\n <span style=\"flex: 1\"></span>\n\n <ng-container *ngIf=\"cameraProvider.$showSwitch| async\">\n <div class=\"separator\"></div>\n <div style=\"padding: 0px 16px\">\n <ngx-scan-camera-switch></ngx-scan-camera-switch>\n </div>\n </ng-container>\n\n <ng-container *ngIf=\"type === 'desktop'\">\n <div class=\"separator\"></div>\n\n <button mat-button (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n </ng-container>\n</header>\n\n<ngx-scan\n (actions)=\"actions($event)\"\n [showDialog]=\"showDialog\"\n [dialogs]=\"dialogs\"\n></ngx-scan>\n", styles: [":host{display:flex;flex-direction:column!important;flex:1;background-color:#f5f5f5;overflow:hidden}.page-header{display:flex;flex-direction:row;align-items:center}.page-header button{height:100%}@media only screen and (max-width: 768px){header .title{font-size:12px!important;line-height:18px!important}}\n", ".page-header{z-index:2000;height:64px;padding:0;overflow:hidden;background-color:#fff;border-bottom:1px solid rgba(0,0,0,.12)}.page-header .title{padding-left:24px;line-height:64px;font-size:18px}.page-header .separator{width:1px;background-color:#0000001f;height:100%}.page-header .total{line-height:64px}.page-header .total span{font-weight:700}.page-footer{height:64px}.page-footer button{margin-left:24px;box-shadow:none!important}\n"] }]
|
|
73
|
-
}], ctorParameters: () => [{ type: i1.NgxScandocDialogsCoreProvider }, { type: i2.NgxScandocCameraProvider }, { type: i3.ScanProvider }, { type: i4.MatDialogRef }, { type: i5.Platform }], propDecorators: { type: [{
|
|
74
|
-
type: Input
|
|
75
|
-
}], handleTouchMove: [{
|
|
76
|
-
type: HostListener,
|
|
77
|
-
args: ['touchmove', ['$event']]
|
|
78
|
-
}] } });
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi1wcm9maWxlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9kaWFsb2dzL2NvbXBvbmVudHMvc2Nhbi1wcm9maWxlL3NjYW4tcHJvZmlsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZGlhbG9ncy9jb21wb25lbnRzL3NjYW4tcHJvZmlsZS9zY2FuLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFJVCxZQUFZLEVBSVosdUJBQXVCLEVBQ3ZCLEtBQUssR0FFTixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0seUNBQXlDLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFZeEUsTUFBTSxPQUFPLG9CQUNYLFNBQVEsYUFBYTtJQU9yQixlQUFlLENBQUMsS0FBVTtRQUN4QixzQkFBc0I7UUFDdEIsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUM3QixLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDekIsQ0FBQztRQUNELHlDQUF5QztRQUV6QyxJQUFJLEtBQUssQ0FBQyxLQUFLLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDdEIsMEJBQTBCO1lBQzFCLG9DQUFvQztRQUN0QyxDQUFDO0lBQ0gsQ0FBQztJQUVELFlBQ1MsT0FBc0MsRUFDdEMsY0FBd0MsRUFDdkMsWUFBMEIsRUFDM0IsU0FBNkMsRUFDNUMsUUFBa0I7UUFFMUIsS0FBSyxFQUFFLENBQUM7UUFORCxZQUFPLEdBQVAsT0FBTyxDQUErQjtRQUN0QyxtQkFBYyxHQUFkLGNBQWMsQ0FBMEI7UUFDdkMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFDM0IsY0FBUyxHQUFULFNBQVMsQ0FBb0M7UUFDNUMsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQXRCbkIsU0FBSSxHQUFHLFNBQVMsQ0FBQztRQUUxQixlQUFVLEdBQUcsS0FBSyxDQUFDO0lBdUJuQixDQUFDO0lBQ0QsZUFBZTtRQUNiLG1DQUFtQztJQUNyQyxDQUFDO0lBQ0QsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUNqQixPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxPQUFPLENBQUMsS0FBVTtRQUNoQixRQUFRLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUNuQixLQUFLLFlBQVk7Z0JBQ2YsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDekMsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNwQyxDQUFDO2dCQUNELE1BQU07WUFFUixLQUFLLFlBQVk7Z0JBQ2YsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztnQkFDeEMsTUFBTTtZQUNSLEtBQUssZUFBZTtnQkFDbEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNsQyxNQUFNO1lBQ1IsS0FBSyxrQkFBa0I7Z0JBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtvQkFDaEUsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7Z0JBQzFCLENBQUMsQ0FBQyxDQUFDO2dCQUNILE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQztJQUVELEtBQUs7UUFDSCxJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssRUFBRSxDQUFDO0lBQzFCLENBQUM7K0dBOURVLG9CQUFvQjttR0FBcEIsb0JBQW9CLDZLQzFCakMsZ3NCQTRCQTs7NEZERmEsb0JBQW9CO2tCQU5oQyxTQUFTOytCQUNFLHFCQUFxQixtQkFHZCx1QkFBdUIsQ0FBQyxNQUFNO3NOQU10QyxJQUFJO3NCQUFaLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxZQUFZO3VCQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgVmlld0NoaWxkLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgSG9zdExpc3RlbmVyLFxuICBFbGVtZW50UmVmLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIElucHV0LFxuICBPbkRlc3Ryb3ksXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2NvbXBvbmVudHMvYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmd4U2NhbmRvY0RpYWxvZ3NDb3JlUHJvdmlkZXIgfSBmcm9tICcuLi8uLi8uLi9kaWFsb2dzL2RpYWxvZ3MuY29yZS5wcm92aWRlcic7XG5pbXBvcnQgeyBOZ3hTY2FuZG9jQ2FtZXJhUHJvdmlkZXIgfSBmcm9tICcuLi8uLi8uLi9wcm92aWRlcnMvY2FtZXJhLnByb3ZpZGVyJztcbmltcG9ydCB7IFBsYXRmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7IFNjYW5Qcm92aWRlciB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9zY2FuLnByb3ZpZGVyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbmd4LXNjYW5kb2MtcHJvZmlsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zY2FuLXByb2ZpbGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2FuLXByb2ZpbGUuY29tcG9uZW50LnNjc3MnLCAnLi4vLi4vc2Nzcy9kaWFsb2cuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2NhblByb2ZpbGVDb21wb25lbnRcbiAgZXh0ZW5kcyBCYXNlQ29tcG9uZW50XG4gIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95XG57XG4gIEBJbnB1dCgpIHR5cGUgPSAnZGVza3RvcCc7XG5cbiAgc2hvd0RpYWxvZyA9IGZhbHNlO1xuICBASG9zdExpc3RlbmVyKCd0b3VjaG1vdmUnLCBbJyRldmVudCddKVxuICBoYW5kbGVUb3VjaE1vdmUoZXZlbnQ6IGFueSkge1xuICAgIC8vIGNvbnNvbGUubG9nKGV2ZW50KTtcbiAgICBpZiAoZXZlbnQudG91Y2hlcy5sZW5ndGggPiAxKSB7XG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cbiAgICAvLyBjb25zb2xlLmxvZyhkb2N1bWVudC5ib2R5LnN0eWxlLnpvb20pO1xuXG4gICAgaWYgKGV2ZW50LnNjYWxlICE9PSAxKSB7XG4gICAgICAvLyBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgLy8gZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgfVxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGRpYWxvZ3M6IE5neFNjYW5kb2NEaWFsb2dzQ29yZVByb3ZpZGVyLFxuICAgIHB1YmxpYyBjYW1lcmFQcm92aWRlcjogTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyLFxuICAgIHByaXZhdGUgc2NhblByb3ZpZGVyOiBTY2FuUHJvdmlkZXIsXG4gICAgcHVibGljIGRpYWxvZ1JlZjogTWF0RGlhbG9nUmVmPFNjYW5Qcm9maWxlQ29tcG9uZW50PixcbiAgICBwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybVxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAvLyBjb25zb2xlLmxvZyh0aGlzLmNhbWVyYVByb3ZpZGVyKVxuICB9XG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMuX19kZXN0cm95KCk7XG4gICAgY29uc29sZS5sb2coJ0RFUycpO1xuICB9XG5cbiAgYWN0aW9ucyhldmVudDogYW55KSB7XG4gICAgc3dpdGNoIChldmVudC50eXBlKSB7XG4gICAgICBjYXNlICdzY2FuRmluaXNoJzpcbiAgICAgICAgaWYgKHRoaXMuc2NhblByb3ZpZGVyLmNvbmZpZy5oaWRlUmVzdWx0cykge1xuICAgICAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZShldmVudC5kYXRhKTtcbiAgICAgICAgfVxuICAgICAgICBicmVhaztcblxuICAgICAgY2FzZSAnbWFudWFsTW9kZSc6XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSh7IG1hbnVhbDogdHJ1ZSB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdzY2FuRGF0YUNsb3NlJzpcbiAgICAgICAgdGhpcy5kaWFsb2dSZWY/LmNsb3NlKGV2ZW50LmRhdGEpO1xuICAgICAgICBicmVhaztcbiAgICAgIGNhc2UgJ3R1cm5Eb2N1bWVudE92ZXInOlxuICAgICAgICB0aGlzLl9fc3Vicyh0aGlzLmRpYWxvZ3MudHVybkRvY3VtZW50KGV2ZW50LnNpZGUpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgIHRoaXMuc2hvd0RpYWxvZyA9IGZhbHNlO1xuICAgICAgICB9KTtcbiAgICAgICAgYnJlYWs7XG4gICAgfVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWY/LmNsb3NlKCk7XG4gIH1cbn1cbiIsIjxoZWFkZXIgY2xhc3M9XCJwYWdlLWhlYWRlclwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIiA+XG4gICAge3sgXCJzY2FuZG9jLnRpdGxlXCIgfCB0cmFuc2xhdGUgfX1cbiAgPC9kaXY+XG5cbiAgPHNwYW4gc3R5bGU9XCJmbGV4OiAxXCI+PC9zcGFuPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJjYW1lcmFQcm92aWRlci4kc2hvd1N3aXRjaHwgYXN5bmNcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdiBzdHlsZT1cInBhZGRpbmc6IDBweCAxNnB4XCI+XG4gICAgICA8bmd4LXNjYW4tY2FtZXJhLXN3aXRjaD48L25neC1zY2FuLWNhbWVyYS1zd2l0Y2g+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXIgKm5nSWY9XCJ0eXBlID09PSAnZGVza3RvcCdcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yXCI+PC9kaXY+XG5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gKGNsaWNrKT1cImNsb3NlKClcIj5cbiAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XG4gICAgPC9idXR0b24+XG4gIDwvbmctY29udGFpbmVyPlxuPC9oZWFkZXI+XG5cbjxuZ3gtc2NhblxuICAoYWN0aW9ucyk9XCJhY3Rpb25zKCRldmVudClcIlxuICBbc2hvd0RpYWxvZ109XCJzaG93RGlhbG9nXCJcbiAgW2RpYWxvZ3NdPVwiZGlhbG9nc1wiXG4+PC9uZ3gtc2Nhbj5cbiJdfQ==
|
|
@@ -1,95 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Output, ChangeDetectionStrategy, } from '@angular/core';
|
|
2
|
-
import { Subject } from 'rxjs';
|
|
3
|
-
import { FormGroup } from '@angular/forms';
|
|
4
|
-
import { BaseComponent } from '../../../core/components/base.component';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
import * as i1 from "@angular/material/dialog";
|
|
7
|
-
import * as i2 from "../../../providers/camera.provider";
|
|
8
|
-
import * as i3 from "../../../providers/scan.provider";
|
|
9
|
-
import * as i4 from "../../../dialogs/dialogs.core.provider";
|
|
10
|
-
import * as i5 from "@angular/common";
|
|
11
|
-
import * as i6 from "@angular/material/icon";
|
|
12
|
-
import * as i7 from "@angular/material/button";
|
|
13
|
-
import * as i8 from "@angular/material/progress-bar";
|
|
14
|
-
import * as i9 from "../../../core/components/webcam/webcam/webcam.component";
|
|
15
|
-
import * as i10 from "../../../core/components/camera-switch/camera-switch.component";
|
|
16
|
-
import * as i11 from "@ngx-translate/core";
|
|
17
|
-
export class ScanSelfieComponent extends BaseComponent {
|
|
18
|
-
constructor(cd, dialogRef, cameraProvider, scanProvider, dialogs) {
|
|
19
|
-
super();
|
|
20
|
-
this.cd = cd;
|
|
21
|
-
this.dialogRef = dialogRef;
|
|
22
|
-
this.cameraProvider = cameraProvider;
|
|
23
|
-
this.scanProvider = scanProvider;
|
|
24
|
-
this.dialogs = dialogs;
|
|
25
|
-
this.actions = new EventEmitter();
|
|
26
|
-
this.cameraReady = false;
|
|
27
|
-
this.preview = null;
|
|
28
|
-
this.trigger = new Subject();
|
|
29
|
-
this.form = new FormGroup({});
|
|
30
|
-
}
|
|
31
|
-
handleImage(webcamImage) {
|
|
32
|
-
// console.log('[received webcam image]', webcamImage);
|
|
33
|
-
this.cameraProvider.$showSwitchSelfie.next(false);
|
|
34
|
-
this.webcamImage = webcamImage;
|
|
35
|
-
this.preview = webcamImage.imageAsDataUrl;
|
|
36
|
-
this.cd.detectChanges();
|
|
37
|
-
}
|
|
38
|
-
handleInitError(error) {
|
|
39
|
-
console.log(error);
|
|
40
|
-
}
|
|
41
|
-
videoReady(ev) {
|
|
42
|
-
this.cameraReady = ev;
|
|
43
|
-
}
|
|
44
|
-
ngAfterViewInit() {
|
|
45
|
-
this.cameraProvider.$showSwitchSelfie.next(true);
|
|
46
|
-
this.cd.detectChanges();
|
|
47
|
-
}
|
|
48
|
-
ngOnDestroy() {
|
|
49
|
-
this.__destroy();
|
|
50
|
-
}
|
|
51
|
-
retry() {
|
|
52
|
-
this.preview = false;
|
|
53
|
-
this.cameraProvider.$showSwitchSelfie.next(true);
|
|
54
|
-
this.cd.detectChanges();
|
|
55
|
-
}
|
|
56
|
-
scan() {
|
|
57
|
-
this.trigger.next(new Date().getTime());
|
|
58
|
-
}
|
|
59
|
-
continue() {
|
|
60
|
-
console.log(this.data);
|
|
61
|
-
if (this.scanProvider.enableVerification && this.data.avatar) {
|
|
62
|
-
const loading = this.dialogs.loading();
|
|
63
|
-
console.log(this.data.avatar);
|
|
64
|
-
this.__subs(this.scanProvider.stateless(this.data.avatar.split(',')[1], this.webcamImage?.imageAsDataUrl.split(',')[1])).subscribe((resp) => {
|
|
65
|
-
loading.close();
|
|
66
|
-
if (resp.Data?.Verified) {
|
|
67
|
-
this.dialogRef?.close(this.webcamImage);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
this.dialogs.alert('Verification failed!', "We can't verify that your selfie is same as image on document.");
|
|
71
|
-
}
|
|
72
|
-
console.log(resp);
|
|
73
|
-
}, (err) => {
|
|
74
|
-
loading.close();
|
|
75
|
-
this.dialogRef?.close(this.webcamImage);
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
this.dialogRef?.close(this.webcamImage);
|
|
80
|
-
}
|
|
81
|
-
// this.dialogRef.close(this.webcamImage)
|
|
82
|
-
}
|
|
83
|
-
close() {
|
|
84
|
-
this.dialogRef.close(null);
|
|
85
|
-
}
|
|
86
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ScanSelfieComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.MatDialogRef }, { token: i2.NgxScandocCameraProvider }, { token: i3.ScanProvider }, { token: i4.NgxScandocDialogsCoreProvider }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
87
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ScanSelfieComponent, selector: "ngx-scandoc-selfie", outputs: { actions: "actions" }, usesInheritance: true, ngImport: i0, template: "<header class=\"page-header\">\n <div class=\"title\">\n {{ \"scandoc.result.takeSelfie\" | translate }}\n </div>\n\n <span style=\"flex: 1\"></span>\n\n <ng-container *ngIf=\"cameraProvider.$showSwitchSelfie | async\">\n <div class=\"separator\"></div>\n <div style=\"padding: 0px 16px\">\n <ngx-scan-camera-switch></ngx-scan-camera-switch>\n </div>\n </ng-container>\n\n <ng-container>\n <div class=\"separator\"></div>\n\n <button mat-button (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n </ng-container>\n</header>\n\n\n<div class=\"flex-column flex\">\n <div #wraper class=\"wraper flex flex-row\">\n <div\n style=\"\n position: absolute;\n top: 0px;\n left: 0px;\n right: 0px;\n bottom: 0px;\n z-index: 20;\n background-color: whitesmoke;\n \"\n *ngIf=\"!cameraReady && !preview\"\n >\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n </div>\n\n <ng-container>\n <ngx-scandoc-webcam\n *ngIf=\"!preview\"\n class=\"main flex\"\n #webcam\n [trigger]=\"trigger\"\n (imageCapture)=\"handleImage($event)\"\n (initError)=\"handleInitError($event)\"\n (videoReady)=\"videoReady($event)\"\n type=\"selfie\"\n >\n </ngx-scandoc-webcam>\n </ng-container>\n <div\n class=\"previewData\"\n *ngIf=\"preview\"\n style=\"\n z-index: 20;\n position: absolute;\n width: 100%;\n height: 100%;\n flex: 1;\n display: flex;\n flex-direction: row;\n \"\n >\n <div\n class=\"scanPreview\"\n style=\"display: flex; flex-direction: column; flex: 1\"\n >\n <div\n style=\"flex: 1\"\n class=\"image\"\n [style.background-image]=\"'url(' + preview + ')'\"\n ></div>\n </div>\n </div>\n </div>\n\n <footer class=\"p-8 flex-row\">\n <button\n [disabled]=\"!cameraReady\"\n class=\"w-100-p\"\n *ngIf=\"!preview\"\n mat-raised-button\n (click)=\"scan()\"\n >\n <ng-container> {{ \"scandoc.result.takeSelfie\" | translate }} </ng-container>\n </button>\n\n <div\n class=\"w-100-p flex-row flex\"\n *ngIf=\"preview\"\n style=\"align-items: center\"\n >\n <button style=\"flex: 1\" class=\"mr-4\" mat-raised-button (click)=\"retry()\">\n {{ \"scandoc.retry\" | translate }}\n </button>\n\n <button\n style=\"flex: 1\"\n class=\"ml-4\"\n mat-raised-button\n (click)=\"continue()\"\n >\n {{ \"scandoc.continueWithSelectedImage\" | translate }}\n </button>\n </div>\n </footer>\n</div>\n", styles: [":host{display:flex;flex-direction:column!important;flex:1;background-color:#f5f5f5}.flex{flex:1}.flex-column{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.wraper{position:relative;overflow:hidden}h3{color:#459ae5;font-size:16px}.preview{width:100%;border-radius:1%}.subhead{height:55px;padding-top:8px}footer button{box-shadow:none!important;height:45px;min-height:45px;border:1px solid rgba(0,0,0,.12);text-transform:uppercase}.error .title{font-size:22px}.error ul{font-size:18px}.mr-4{margin-right:4px}.ml-4{margin-left:4px}.p-16{padding:16px}.p-8{padding:8px}.py-16{padding:16px 0}.w-100-p{width:100%}.scanPreview{padding:16px}.scanPreview .image{background-position:center;background-repeat:no-repeat;background-size:contain}.page-header{display:flex;flex-direction:row;align-items:center}.page-header button{height:100%}@media only screen and (max-width: 768px){header .title{font-size:12px!important;line-height:18px!important}}\n", ".page-header{z-index:2000;height:64px;padding:0;overflow:hidden;background-color:#fff;border-bottom:1px solid rgba(0,0,0,.12)}.page-header .title{padding-left:24px;line-height:64px;font-size:18px}.page-header .separator{width:1px;background-color:#0000001f;height:100%}.page-header .total{line-height:64px}.page-header .total span{font-weight:700}.page-footer{height:64px}.page-footer button{margin-left:24px;box-shadow:none!important}\n"], dependencies: [{ kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i8.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i9.WebcamComponent, selector: "ngx-scandoc-webcam", inputs: ["imageHandler", "type", "trigger", "refresh"], outputs: ["cameraSwitched", "videoReady", "imageCapture", "initError"] }, { kind: "component", type: i10.CameraSwitchComponent, selector: "ngx-scan-camera-switch" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
88
|
-
}
|
|
89
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ScanSelfieComponent, decorators: [{
|
|
90
|
-
type: Component,
|
|
91
|
-
args: [{ selector: 'ngx-scandoc-selfie', changeDetection: ChangeDetectionStrategy.OnPush, template: "<header class=\"page-header\">\n <div class=\"title\">\n {{ \"scandoc.result.takeSelfie\" | translate }}\n </div>\n\n <span style=\"flex: 1\"></span>\n\n <ng-container *ngIf=\"cameraProvider.$showSwitchSelfie | async\">\n <div class=\"separator\"></div>\n <div style=\"padding: 0px 16px\">\n <ngx-scan-camera-switch></ngx-scan-camera-switch>\n </div>\n </ng-container>\n\n <ng-container>\n <div class=\"separator\"></div>\n\n <button mat-button (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n </ng-container>\n</header>\n\n\n<div class=\"flex-column flex\">\n <div #wraper class=\"wraper flex flex-row\">\n <div\n style=\"\n position: absolute;\n top: 0px;\n left: 0px;\n right: 0px;\n bottom: 0px;\n z-index: 20;\n background-color: whitesmoke;\n \"\n *ngIf=\"!cameraReady && !preview\"\n >\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\n </div>\n\n <ng-container>\n <ngx-scandoc-webcam\n *ngIf=\"!preview\"\n class=\"main flex\"\n #webcam\n [trigger]=\"trigger\"\n (imageCapture)=\"handleImage($event)\"\n (initError)=\"handleInitError($event)\"\n (videoReady)=\"videoReady($event)\"\n type=\"selfie\"\n >\n </ngx-scandoc-webcam>\n </ng-container>\n <div\n class=\"previewData\"\n *ngIf=\"preview\"\n style=\"\n z-index: 20;\n position: absolute;\n width: 100%;\n height: 100%;\n flex: 1;\n display: flex;\n flex-direction: row;\n \"\n >\n <div\n class=\"scanPreview\"\n style=\"display: flex; flex-direction: column; flex: 1\"\n >\n <div\n style=\"flex: 1\"\n class=\"image\"\n [style.background-image]=\"'url(' + preview + ')'\"\n ></div>\n </div>\n </div>\n </div>\n\n <footer class=\"p-8 flex-row\">\n <button\n [disabled]=\"!cameraReady\"\n class=\"w-100-p\"\n *ngIf=\"!preview\"\n mat-raised-button\n (click)=\"scan()\"\n >\n <ng-container> {{ \"scandoc.result.takeSelfie\" | translate }} </ng-container>\n </button>\n\n <div\n class=\"w-100-p flex-row flex\"\n *ngIf=\"preview\"\n style=\"align-items: center\"\n >\n <button style=\"flex: 1\" class=\"mr-4\" mat-raised-button (click)=\"retry()\">\n {{ \"scandoc.retry\" | translate }}\n </button>\n\n <button\n style=\"flex: 1\"\n class=\"ml-4\"\n mat-raised-button\n (click)=\"continue()\"\n >\n {{ \"scandoc.continueWithSelectedImage\" | translate }}\n </button>\n </div>\n </footer>\n</div>\n", styles: [":host{display:flex;flex-direction:column!important;flex:1;background-color:#f5f5f5}.flex{flex:1}.flex-column{display:flex;flex-direction:column}.flex-row{display:flex;flex-direction:row}.wraper{position:relative;overflow:hidden}h3{color:#459ae5;font-size:16px}.preview{width:100%;border-radius:1%}.subhead{height:55px;padding-top:8px}footer button{box-shadow:none!important;height:45px;min-height:45px;border:1px solid rgba(0,0,0,.12);text-transform:uppercase}.error .title{font-size:22px}.error ul{font-size:18px}.mr-4{margin-right:4px}.ml-4{margin-left:4px}.p-16{padding:16px}.p-8{padding:8px}.py-16{padding:16px 0}.w-100-p{width:100%}.scanPreview{padding:16px}.scanPreview .image{background-position:center;background-repeat:no-repeat;background-size:contain}.page-header{display:flex;flex-direction:row;align-items:center}.page-header button{height:100%}@media only screen and (max-width: 768px){header .title{font-size:12px!important;line-height:18px!important}}\n", ".page-header{z-index:2000;height:64px;padding:0;overflow:hidden;background-color:#fff;border-bottom:1px solid rgba(0,0,0,.12)}.page-header .title{padding-left:24px;line-height:64px;font-size:18px}.page-header .separator{width:1px;background-color:#0000001f;height:100%}.page-header .total{line-height:64px}.page-header .total span{font-weight:700}.page-footer{height:64px}.page-footer button{margin-left:24px;box-shadow:none!important}\n"] }]
|
|
92
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.MatDialogRef }, { type: i2.NgxScandocCameraProvider }, { type: i3.ScanProvider }, { type: i4.NgxScandocDialogsCoreProvider }], propDecorators: { actions: [{
|
|
93
|
-
type: Output
|
|
94
|
-
}] } });
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nhbi1zZWxmaWUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2RpYWxvZ3MvY29tcG9uZW50cy9zY2FuLXNlbGZpZS9zY2FuLXNlbGZpZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZGlhbG9ncy9jb21wb25lbnRzL3NjYW4tc2VsZmllL3NjYW4tc2VsZmllLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFHTix1QkFBdUIsR0FHeEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFPM0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlDQUF5QyxDQUFDOzs7Ozs7Ozs7Ozs7O0FBT3hFLE1BQU0sT0FBTyxtQkFDWCxTQUFRLGFBQWE7SUFhckIsWUFDUyxFQUFxQixFQUVyQixTQUE0QyxFQUU1QyxjQUF3QyxFQUN4QyxZQUEwQixFQUN6QixPQUFzQztRQUU5QyxLQUFLLEVBQUUsQ0FBQztRQVJELE9BQUUsR0FBRixFQUFFLENBQW1CO1FBRXJCLGNBQVMsR0FBVCxTQUFTLENBQW1DO1FBRTVDLG1CQUFjLEdBQWQsY0FBYyxDQUEwQjtRQUN4QyxpQkFBWSxHQUFaLFlBQVksQ0FBYztRQUN6QixZQUFPLEdBQVAsT0FBTyxDQUErQjtRQWpCdEMsWUFBTyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFFdkMsZ0JBQVcsR0FBRyxLQUFLLENBQUM7UUFDcEIsWUFBTyxHQUFRLElBQUksQ0FBQztRQUViLFlBQU8sR0FBb0IsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUd4RCxTQUFJLEdBQUcsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7SUFZekIsQ0FBQztJQUVNLFdBQVcsQ0FBQyxXQUF3QjtRQUN6Qyx1REFBdUQ7UUFDdkQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxXQUFXLENBQUM7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxXQUFXLENBQUMsY0FBYyxDQUFDO1FBQzFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUNNLGVBQWUsQ0FBQyxLQUFzQjtRQUMzQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFDRCxVQUFVLENBQUMsRUFBTztRQUNoQixJQUFJLENBQUMsV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBQ0QsZUFBZTtRQUNiLElBQUksQ0FBQyxjQUFjLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ2pELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUNELFdBQVc7UUFDVCxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELEtBQUs7UUFDSCxJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQztRQUNyQixJQUFJLENBQUMsY0FBYyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFBO0lBQ3pCLENBQUM7SUFDRCxJQUFJO1FBQ0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUUsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDdkIsSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDN0QsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUN2QyxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFFOUIsSUFBSSxDQUFDLE1BQU0sQ0FDVCxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUM5QixJQUFJLENBQUMsV0FBVyxFQUFFLGNBQWMsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQy9DLENBQ0YsQ0FBQyxTQUFTLENBQ1QsQ0FBQyxJQUFTLEVBQUUsRUFBRTtnQkFDWixPQUFPLENBQUMsS0FBSyxFQUFFLENBQUM7Z0JBQ2hCLElBQUksSUFBSSxDQUFDLElBQUksRUFBRSxRQUFRLEVBQUUsQ0FBQztvQkFDeEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2dCQUMxQyxDQUFDO3FCQUFNLENBQUM7b0JBQ04sSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQ2hCLHNCQUFzQixFQUN0QixnRUFBZ0UsQ0FDakUsQ0FBQztnQkFDSixDQUFDO2dCQUNELE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDcEIsQ0FBQyxFQUNELENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ04sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO2dCQUNoQixJQUFJLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDMUMsQ0FBQyxDQUNGLENBQUM7UUFDSixDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QseUNBQXlDO0lBQzNDLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0IsQ0FBQzsrR0E3RlUsbUJBQW1CO21HQUFuQixtQkFBbUIsa0hDMUJoQyw0c0ZBK0dBOzs0RkRyRmEsbUJBQW1CO2tCQU4vQixTQUFTOytCQUNFLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNOytOQU1yQyxPQUFPO3NCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBPbkluaXQsXG4gIE9uRGVzdHJveSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXREaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgV2ViY2FtSW1hZ2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL2NvbXBvbmVudHMvd2ViY2FtL2RvbWFpbi93ZWJjYW0taW1hZ2UnO1xuaW1wb3J0IHsgV2ViY2FtSW5pdEVycm9yIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9jb21wb25lbnRzL3dlYmNhbS9kb21haW4vd2ViY2FtLWluaXQtZXJyb3InO1xuaW1wb3J0IHsgTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2NhbWVyYS5wcm92aWRlcic7XG5pbXBvcnQgeyBOZ3hTY2FuZG9jRGlhbG9nc0NvcmVQcm92aWRlciB9IGZyb20gJy4uLy4uLy4uL2RpYWxvZ3MvZGlhbG9ncy5jb3JlLnByb3ZpZGVyJztcblxuaW1wb3J0IHsgU2NhblByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL3NjYW4ucHJvdmlkZXInO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL2NvcmUvY29tcG9uZW50cy9iYXNlLmNvbXBvbmVudCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtc2NhbmRvYy1zZWxmaWUnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2Nhbi1zZWxmaWUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zY2FuLXNlbGZpZS5jb21wb25lbnQuc2NzcycsICcuLi8uLi9zY3NzL2RpYWxvZy5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTY2FuU2VsZmllQ29tcG9uZW50XG4gIGV4dGVuZHMgQmFzZUNvbXBvbmVudFxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveVxue1xuICBAT3V0cHV0KCkgYWN0aW9ucyA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgZGF0YTogYW55O1xuICBjYW1lcmFSZWFkeSA9IGZhbHNlO1xuICBwcmV2aWV3OiBhbnkgPSBudWxsO1xuXG4gIHB1YmxpYyB0cmlnZ2VyOiBTdWJqZWN0PG51bWJlcj4gPSBuZXcgU3ViamVjdDxudW1iZXI+KCk7XG5cblxuICBmb3JtID0gbmV3IEZvcm1Hcm91cCh7fSk7XG4gIHdlYmNhbUltYWdlOiBhbnk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG5cbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8U2NhblNlbGZpZUNvbXBvbmVudD4sXG5cbiAgICBwdWJsaWMgY2FtZXJhUHJvdmlkZXI6IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlcixcbiAgICBwdWJsaWMgc2NhblByb3ZpZGVyOiBTY2FuUHJvdmlkZXIsXG4gICAgcHJpdmF0ZSBkaWFsb2dzOiBOZ3hTY2FuZG9jRGlhbG9nc0NvcmVQcm92aWRlclxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZUltYWdlKHdlYmNhbUltYWdlOiBXZWJjYW1JbWFnZSk6IHZvaWQge1xuICAgIC8vIGNvbnNvbGUubG9nKCdbcmVjZWl2ZWQgd2ViY2FtIGltYWdlXScsIHdlYmNhbUltYWdlKTtcbiAgICB0aGlzLmNhbWVyYVByb3ZpZGVyLiRzaG93U3dpdGNoU2VsZmllLm5leHQoZmFsc2UpO1xuXG4gICAgdGhpcy53ZWJjYW1JbWFnZSA9IHdlYmNhbUltYWdlO1xuICAgIHRoaXMucHJldmlldyA9IHdlYmNhbUltYWdlLmltYWdlQXNEYXRhVXJsO1xuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG4gIHB1YmxpYyBoYW5kbGVJbml0RXJyb3IoZXJyb3I6IFdlYmNhbUluaXRFcnJvcik6IHZvaWQge1xuICAgIGNvbnNvbGUubG9nKGVycm9yKTtcbiAgfVxuICB2aWRlb1JlYWR5KGV2OiBhbnkpIHtcbiAgICB0aGlzLmNhbWVyYVJlYWR5ID0gZXY7XG4gIH1cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2FtZXJhUHJvdmlkZXIuJHNob3dTd2l0Y2hTZWxmaWUubmV4dCh0cnVlKTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICB0aGlzLl9fZGVzdHJveSgpO1xuICB9XG4gIHJldHJ5KCkge1xuICAgIHRoaXMucHJldmlldyA9IGZhbHNlO1xuICAgIHRoaXMuY2FtZXJhUHJvdmlkZXIuJHNob3dTd2l0Y2hTZWxmaWUubmV4dCh0cnVlKTtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKVxuICB9XG4gIHNjYW4oKSB7XG4gICAgdGhpcy50cmlnZ2VyLm5leHQobmV3IERhdGUoKS5nZXRUaW1lKCkpO1xuICB9XG5cbiAgY29udGludWUoKSB7XG4gICAgY29uc29sZS5sb2codGhpcy5kYXRhKTtcbiAgICBpZiAodGhpcy5zY2FuUHJvdmlkZXIuZW5hYmxlVmVyaWZpY2F0aW9uICYmIHRoaXMuZGF0YS5hdmF0YXIpIHtcbiAgICAgIGNvbnN0IGxvYWRpbmcgPSB0aGlzLmRpYWxvZ3MubG9hZGluZygpO1xuICAgICAgY29uc29sZS5sb2codGhpcy5kYXRhLmF2YXRhcik7XG5cbiAgICAgIHRoaXMuX19zdWJzKFxuICAgICAgICB0aGlzLnNjYW5Qcm92aWRlci5zdGF0ZWxlc3MoXG4gICAgICAgICAgdGhpcy5kYXRhLmF2YXRhci5zcGxpdCgnLCcpWzFdLFxuICAgICAgICAgIHRoaXMud2ViY2FtSW1hZ2U/LmltYWdlQXNEYXRhVXJsLnNwbGl0KCcsJylbMV1cbiAgICAgICAgKVxuICAgICAgKS5zdWJzY3JpYmUoXG4gICAgICAgIChyZXNwOiBhbnkpID0+IHtcbiAgICAgICAgICBsb2FkaW5nLmNsb3NlKCk7XG4gICAgICAgICAgaWYgKHJlc3AuRGF0YT8uVmVyaWZpZWQpIHtcbiAgICAgICAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSh0aGlzLndlYmNhbUltYWdlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5kaWFsb2dzLmFsZXJ0KFxuICAgICAgICAgICAgICAnVmVyaWZpY2F0aW9uIGZhaWxlZCEnLFxuICAgICAgICAgICAgICBcIldlIGNhbid0IHZlcmlmeSB0aGF0IHlvdXIgc2VsZmllIGlzIHNhbWUgYXMgaW1hZ2Ugb24gZG9jdW1lbnQuXCJcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGNvbnNvbGUubG9nKHJlc3ApO1xuICAgICAgICB9LFxuICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgbG9hZGluZy5jbG9zZSgpO1xuICAgICAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSh0aGlzLndlYmNhbUltYWdlKTtcbiAgICAgICAgfVxuICAgICAgKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kaWFsb2dSZWY/LmNsb3NlKHRoaXMud2ViY2FtSW1hZ2UpO1xuICAgIH1cbiAgICAvLyB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh0aGlzLndlYmNhbUltYWdlKVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2UobnVsbCk7XG4gIH1cbn1cbiIsIjxoZWFkZXIgY2xhc3M9XCJwYWdlLWhlYWRlclwiPlxuICA8ZGl2IGNsYXNzPVwidGl0bGVcIj5cbiAgICB7eyBcInNjYW5kb2MucmVzdWx0LnRha2VTZWxmaWVcIiB8IHRyYW5zbGF0ZSB9fVxuICA8L2Rpdj5cblxuICA8c3BhbiBzdHlsZT1cImZsZXg6IDFcIj48L3NwYW4+XG5cbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNhbWVyYVByb3ZpZGVyLiRzaG93U3dpdGNoU2VsZmllIHwgYXN5bmNcIj5cbiAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yXCI+PC9kaXY+XG4gICAgPGRpdiBzdHlsZT1cInBhZGRpbmc6IDBweCAxNnB4XCI+XG4gICAgICA8bmd4LXNjYW4tY2FtZXJhLXN3aXRjaD48L25neC1zY2FuLWNhbWVyYS1zd2l0Y2g+XG4gICAgPC9kaXY+XG4gIDwvbmctY29udGFpbmVyPlxuXG4gIDxuZy1jb250YWluZXI+XG4gICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvclwiPjwvZGl2PlxuXG4gICAgPGJ1dHRvbiBtYXQtYnV0dG9uIChjbGljayk9XCJjbG9zZSgpXCI+XG4gICAgICA8bWF0LWljb24+Y2xvc2U8L21hdC1pY29uPlxuICAgIDwvYnV0dG9uPlxuICA8L25nLWNvbnRhaW5lcj5cbjwvaGVhZGVyPlxuXG5cbjxkaXYgY2xhc3M9XCJmbGV4LWNvbHVtbiBmbGV4XCI+XG4gIDxkaXYgI3dyYXBlciBjbGFzcz1cIndyYXBlciBmbGV4IGZsZXgtcm93XCI+XG4gICAgPGRpdlxuICAgICAgc3R5bGU9XCJcbiAgICAgICAgcG9zaXRpb246IGFic29sdXRlO1xuICAgICAgICB0b3A6IDBweDtcbiAgICAgICAgbGVmdDogMHB4O1xuICAgICAgICByaWdodDogMHB4O1xuICAgICAgICBib3R0b206IDBweDtcbiAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIGJhY2tncm91bmQtY29sb3I6IHdoaXRlc21va2U7XG4gICAgICBcIlxuICAgICAgKm5nSWY9XCIhY2FtZXJhUmVhZHkgJiYgIXByZXZpZXdcIlxuICAgID5cbiAgICAgIDxtYXQtcHJvZ3Jlc3MtYmFyIG1vZGU9XCJpbmRldGVybWluYXRlXCI+PC9tYXQtcHJvZ3Jlc3MtYmFyPlxuICAgIDwvZGl2PlxuXG4gICAgPG5nLWNvbnRhaW5lcj5cbiAgICAgIDxuZ3gtc2NhbmRvYy13ZWJjYW1cbiAgICAgICAgKm5nSWY9XCIhcHJldmlld1wiXG4gICAgICAgIGNsYXNzPVwibWFpbiBmbGV4XCJcbiAgICAgICAgI3dlYmNhbVxuICAgICAgICBbdHJpZ2dlcl09XCJ0cmlnZ2VyXCJcbiAgICAgICAgKGltYWdlQ2FwdHVyZSk9XCJoYW5kbGVJbWFnZSgkZXZlbnQpXCJcbiAgICAgICAgKGluaXRFcnJvcik9XCJoYW5kbGVJbml0RXJyb3IoJGV2ZW50KVwiXG4gICAgICAgICh2aWRlb1JlYWR5KT1cInZpZGVvUmVhZHkoJGV2ZW50KVwiXG4gICAgICAgIHR5cGU9XCJzZWxmaWVcIlxuICAgICAgPlxuICAgICAgPC9uZ3gtc2NhbmRvYy13ZWJjYW0+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJwcmV2aWV3RGF0YVwiXG4gICAgICAqbmdJZj1cInByZXZpZXdcIlxuICAgICAgc3R5bGU9XCJcbiAgICAgICAgei1pbmRleDogMjA7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgd2lkdGg6IDEwMCU7XG4gICAgICAgIGhlaWdodDogMTAwJTtcbiAgICAgICAgZmxleDogMTtcbiAgICAgICAgZGlzcGxheTogZmxleDtcbiAgICAgICAgZmxleC1kaXJlY3Rpb246IHJvdztcbiAgICAgIFwiXG4gICAgPlxuICAgICAgPGRpdlxuICAgICAgICBjbGFzcz1cInNjYW5QcmV2aWV3XCJcbiAgICAgICAgc3R5bGU9XCJkaXNwbGF5OiBmbGV4OyBmbGV4LWRpcmVjdGlvbjogY29sdW1uOyBmbGV4OiAxXCJcbiAgICAgID5cbiAgICAgICAgPGRpdlxuICAgICAgICAgIHN0eWxlPVwiZmxleDogMVwiXG4gICAgICAgICAgY2xhc3M9XCJpbWFnZVwiXG4gICAgICAgICAgW3N0eWxlLmJhY2tncm91bmQtaW1hZ2VdPVwiJ3VybCgnICsgcHJldmlldyArICcpJ1wiXG4gICAgICAgID48L2Rpdj5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cblxuICA8Zm9vdGVyIGNsYXNzPVwicC04IGZsZXgtcm93XCI+XG4gICAgPGJ1dHRvblxuICAgICAgW2Rpc2FibGVkXT1cIiFjYW1lcmFSZWFkeVwiXG4gICAgICBjbGFzcz1cInctMTAwLXBcIlxuICAgICAgKm5nSWY9XCIhcHJldmlld1wiXG4gICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgKGNsaWNrKT1cInNjYW4oKVwiXG4gICAgPlxuICAgICAgPG5nLWNvbnRhaW5lcj4ge3sgXCJzY2FuZG9jLnJlc3VsdC50YWtlU2VsZmllXCIgfCB0cmFuc2xhdGUgfX0gPC9uZy1jb250YWluZXI+XG4gICAgPC9idXR0b24+XG5cbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cInctMTAwLXAgZmxleC1yb3cgZmxleFwiXG4gICAgICAqbmdJZj1cInByZXZpZXdcIlxuICAgICAgc3R5bGU9XCJhbGlnbi1pdGVtczogY2VudGVyXCJcbiAgICA+XG4gICAgICA8YnV0dG9uIHN0eWxlPVwiZmxleDogMVwiIGNsYXNzPVwibXItNFwiIG1hdC1yYWlzZWQtYnV0dG9uIChjbGljayk9XCJyZXRyeSgpXCI+XG4gICAgICAgIHt7IFwic2NhbmRvYy5yZXRyeVwiIHwgdHJhbnNsYXRlIH19XG4gICAgICA8L2J1dHRvbj5cblxuICAgICAgPGJ1dHRvblxuICAgICAgICBzdHlsZT1cImZsZXg6IDFcIlxuICAgICAgICBjbGFzcz1cIm1sLTRcIlxuICAgICAgICBtYXQtcmFpc2VkLWJ1dHRvblxuICAgICAgICAoY2xpY2spPVwiY29udGludWUoKVwiXG4gICAgICA+XG4gICAgICAgIHt7IFwic2NhbmRvYy5jb250aW51ZVdpdGhTZWxlY3RlZEltYWdlXCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgIDwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICA8L2Zvb3Rlcj5cbjwvZGl2PlxuIl19
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { Component, Inject } from '@angular/core';
|
|
2
|
-
import { MAT_DIALOG_DATA } from '@angular/material/dialog';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/material/dialog";
|
|
5
|
-
import * as i2 from "@angular/common";
|
|
6
|
-
import * as i3 from "@angular/material/icon";
|
|
7
|
-
import * as i4 from "@angular/material/button";
|
|
8
|
-
import * as i5 from "@ngx-translate/core";
|
|
9
|
-
export class TurnDocumentComponent {
|
|
10
|
-
constructor(dialogRef, data) {
|
|
11
|
-
this.dialogRef = dialogRef;
|
|
12
|
-
this.data = data;
|
|
13
|
-
}
|
|
14
|
-
ngOnInit() {
|
|
15
|
-
console.log(this.data);
|
|
16
|
-
}
|
|
17
|
-
close() {
|
|
18
|
-
console.log(this.dialogRef);
|
|
19
|
-
this.dialogRef.close();
|
|
20
|
-
}
|
|
21
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TurnDocumentComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
22
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TurnDocumentComponent, selector: "ngx-scandoc-turn-document", ngImport: i0, template: "<div class=\"inner\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <!-- <img\n style=\"height: 240px; margin: 34px 0px;display: none;\"\n [src]=\"'/assets/images/illustrations/' + images[type]\"\n /> -->\n <!-- <img style=\"width:60px;\" src=\"/assets/images/illustrations/door-lock.png\"> -->\n\n <mat-icon>360</mat-icon>\n <div class=\"text\">\n <ng-container *ngIf=\"data.idScan === 'BACK'\">\n {{ \"scandoc.turnAndCapture.back\" | translate }}\n </ng-container>\n <ng-container *ngIf=\"data.idScan === 'FRONT'\">\n {{ \"scandoc.turnAndCapture.front\" | translate }}\n </ng-container>\n </div>\n</div>\n\n<!-- -->\n\n<footer>\n <button (click)=\"close()\" mat-raised-button>Ok</button>\n</footer>\n", styles: [":host{display:flex;flex-direction:column;flex:1;height:100%;width:100%}.inner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px 0}.inner mat-icon{width:60px;height:60px;font-size:60px}.inner .text{margin:20px 0}footer{display:flex;flex-direction:row;align-items:center;justify-content:center;padding-bottom:20px}footer button{min-width:200px;box-shadow:none;border:1px solid #ccc}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }] }); }
|
|
23
|
-
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TurnDocumentComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'ngx-scandoc-turn-document', template: "<div class=\"inner\" fxLayout=\"column\" fxLayoutAlign=\"center center\">\n <!-- <img\n style=\"height: 240px; margin: 34px 0px;display: none;\"\n [src]=\"'/assets/images/illustrations/' + images[type]\"\n /> -->\n <!-- <img style=\"width:60px;\" src=\"/assets/images/illustrations/door-lock.png\"> -->\n\n <mat-icon>360</mat-icon>\n <div class=\"text\">\n <ng-container *ngIf=\"data.idScan === 'BACK'\">\n {{ \"scandoc.turnAndCapture.back\" | translate }}\n </ng-container>\n <ng-container *ngIf=\"data.idScan === 'FRONT'\">\n {{ \"scandoc.turnAndCapture.front\" | translate }}\n </ng-container>\n </div>\n</div>\n\n<!-- -->\n\n<footer>\n <button (click)=\"close()\" mat-raised-button>Ok</button>\n</footer>\n", styles: [":host{display:flex;flex-direction:column;flex:1;height:100%;width:100%}.inner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 20px 0}.inner mat-icon{width:60px;height:60px;font-size:60px}.inner .text{margin:20px 0}footer{display:flex;flex-direction:row;align-items:center;justify-content:center;padding-bottom:20px}footer button{min-width:200px;box-shadow:none;border:1px solid #ccc}\n"] }]
|
|
27
|
-
}], ctorParameters: () => [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
28
|
-
type: Inject,
|
|
29
|
-
args: [MAT_DIALOG_DATA]
|
|
30
|
-
}] }] });
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHVybi1kb2N1bWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZGlhbG9ncy9jb21wb25lbnRzL3R1cm4tZG9jdW1lbnQvdHVybi1kb2N1bWVudC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZGlhbG9ncy9jb21wb25lbnRzL3R1cm4tZG9jdW1lbnQvdHVybi1kb2N1bWVudC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBZ0IsTUFBTSxlQUFlLENBQUM7QUFDeEUsT0FBTyxFQUFnQixlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7OztBQU96RSxNQUFNLE9BQU8scUJBQXFCO0lBR2hDLFlBQ1MsU0FBOEMsRUFDckIsSUFBUztRQURsQyxjQUFTLEdBQVQsU0FBUyxDQUFxQztRQUNyQixTQUFJLEdBQUosSUFBSSxDQUFLO0lBQ3hDLENBQUM7SUFFSixRQUFRO1FBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDeEIsQ0FBQztJQUVELEtBQUs7UUFDSCxPQUFPLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUM1QixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3pCLENBQUM7K0dBZlUscUJBQXFCLDhDQUt0QixlQUFlO21HQUxkLHFCQUFxQixpRUNSbEMsNHVCQXVCQTs7NEZEZmEscUJBQXFCO2tCQUxqQyxTQUFTOytCQUNFLDJCQUEyQjs7MEJBU2xDLE1BQU07MkJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbmplY3QsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmLCBNQVRfRElBTE9HX0RBVEEgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaWFsb2cnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICduZ3gtc2NhbmRvYy10dXJuLWRvY3VtZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3R1cm4tZG9jdW1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90dXJuLWRvY3VtZW50LmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFR1cm5Eb2N1bWVudENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgZGlhbG9nUmVmOiBNYXREaWFsb2dSZWY8VHVybkRvY3VtZW50Q29tcG9uZW50PixcbiAgICBASW5qZWN0KE1BVF9ESUFMT0dfREFUQSkgcHVibGljIGRhdGE6IGFueVxuICApIHt9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgY29uc29sZS5sb2codGhpcy5kYXRhKVxuICB9XG5cbiAgY2xvc2UoKSB7XG4gICAgY29uc29sZS5sb2codGhpcy5kaWFsb2dSZWYpO1xuICAgIHRoaXMuZGlhbG9nUmVmLmNsb3NlKCk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJpbm5lclwiIGZ4TGF5b3V0PVwiY29sdW1uXCIgZnhMYXlvdXRBbGlnbj1cImNlbnRlciBjZW50ZXJcIj5cbiAgPCEtLSA8aW1nXG4gICAgc3R5bGU9XCJoZWlnaHQ6IDI0MHB4OyBtYXJnaW46IDM0cHggMHB4O2Rpc3BsYXk6IG5vbmU7XCJcbiAgICBbc3JjXT1cIicvYXNzZXRzL2ltYWdlcy9pbGx1c3RyYXRpb25zLycgKyBpbWFnZXNbdHlwZV1cIlxuICAvPiAtLT5cbiAgPCEtLSA8aW1nIHN0eWxlPVwid2lkdGg6NjBweDtcIiBzcmM9XCIvYXNzZXRzL2ltYWdlcy9pbGx1c3RyYXRpb25zL2Rvb3ItbG9jay5wbmdcIj4gLS0+XG5cbiAgPG1hdC1pY29uPjM2MDwvbWF0LWljb24+XG4gIDxkaXYgY2xhc3M9XCJ0ZXh0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImRhdGEuaWRTY2FuID09PSAnQkFDSydcIj5cbiAgICAgIHt7IFwic2NhbmRvYy50dXJuQW5kQ2FwdHVyZS5iYWNrXCIgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiZGF0YS5pZFNjYW4gPT09ICdGUk9OVCdcIj5cbiAgICAgIHt7IFwic2NhbmRvYy50dXJuQW5kQ2FwdHVyZS5mcm9udFwiIHwgdHJhbnNsYXRlIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvZGl2PlxuPC9kaXY+XG5cbjwhLS0gIC0tPlxuXG48Zm9vdGVyPlxuICA8YnV0dG9uIChjbGljayk9XCJjbG9zZSgpXCIgbWF0LXJhaXNlZC1idXR0b24+T2s8L2J1dHRvbj5cbjwvZm9vdGVyPlxuIl19
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { BlankComponent } from './components/blank/blank.component';
|
|
3
|
-
import { ScanProfileComponent } from './components/scan-profile/scan-profile.component';
|
|
4
|
-
import { LoadingComponent } from './components/loading/loading.component';
|
|
5
|
-
import { ConfirmComponent } from './components/confirm/confirm.component';
|
|
6
|
-
import { ScanSelfieComponent } from './components/scan-selfie/scan-selfie.component';
|
|
7
|
-
import { TurnDocumentComponent } from './components/turn-document/turn-document.component';
|
|
8
|
-
import { PromptManualComponent } from './components/prompt-manual/prompt-manual.component';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "@angular/material/dialog";
|
|
11
|
-
export class NgxScandocDialogsCoreProvider {
|
|
12
|
-
constructor(matDialog) {
|
|
13
|
-
this.matDialog = matDialog;
|
|
14
|
-
this.components = {
|
|
15
|
-
ScanProfile: { component: ScanProfileComponent },
|
|
16
|
-
Loading: { component: LoadingComponent },
|
|
17
|
-
ConfirmComponent: { component: ConfirmComponent },
|
|
18
|
-
TurnDocumentComponent: { component: TurnDocumentComponent },
|
|
19
|
-
ScanSelfie: { component: ScanSelfieComponent },
|
|
20
|
-
PromptManual: { component: PromptManualComponent },
|
|
21
|
-
};
|
|
22
|
-
this.blank = BlankComponent;
|
|
23
|
-
}
|
|
24
|
-
getComponent(name) {
|
|
25
|
-
if (!this.components[name]) {
|
|
26
|
-
console.warn('Component missing', name, this.components);
|
|
27
|
-
}
|
|
28
|
-
return this.components[name].component;
|
|
29
|
-
}
|
|
30
|
-
open(config, withComponent = true) {
|
|
31
|
-
// console.log(config);
|
|
32
|
-
const panelClass = config.panelClass ? config.panelClass : config.name;
|
|
33
|
-
const component = this.getComponent(config.name);
|
|
34
|
-
const dialogRef = this.matDialog.open(this.blank, {
|
|
35
|
-
panelClass,
|
|
36
|
-
data: {
|
|
37
|
-
data: config.data,
|
|
38
|
-
withComponent,
|
|
39
|
-
component,
|
|
40
|
-
},
|
|
41
|
-
autoFocus: false,
|
|
42
|
-
width: config.width || '',
|
|
43
|
-
height: config.height || '',
|
|
44
|
-
maxWidth: config.maxWidth || '',
|
|
45
|
-
minWidth: config.minWidth || '',
|
|
46
|
-
maxHeight: config.maxHeight || '',
|
|
47
|
-
minHeight: config.minHeight || '',
|
|
48
|
-
position: config.position || {},
|
|
49
|
-
hasBackdrop: config.hasBackdrop === undefined ? true : config.hasBackdrop,
|
|
50
|
-
disableClose: config.disableClose === undefined ? true : config.disableClose,
|
|
51
|
-
});
|
|
52
|
-
return dialogRef;
|
|
53
|
-
}
|
|
54
|
-
scanProfile(data) {
|
|
55
|
-
return this.open({
|
|
56
|
-
name: 'ScanProfile',
|
|
57
|
-
panelClass: 'ScanProfileComponent',
|
|
58
|
-
data,
|
|
59
|
-
});
|
|
60
|
-
}
|
|
61
|
-
// Generic loading dialog
|
|
62
|
-
loading(title = '') {
|
|
63
|
-
return this.open({
|
|
64
|
-
name: 'Loading',
|
|
65
|
-
data: { title },
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
alert(title, text) {
|
|
69
|
-
return this.open({
|
|
70
|
-
name: 'ConfirmComponent',
|
|
71
|
-
maxWidth: '600px',
|
|
72
|
-
panelClass: 'DialogNoPadding',
|
|
73
|
-
minWidth: '440px',
|
|
74
|
-
data: { title, text, alert: true },
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
turnDocument(idScan) {
|
|
78
|
-
return this.open({
|
|
79
|
-
name: 'TurnDocumentComponent',
|
|
80
|
-
maxWidth: '400px',
|
|
81
|
-
panelClass: 'DialogNoPadding',
|
|
82
|
-
minWidth: '300px',
|
|
83
|
-
data: { idScan },
|
|
84
|
-
}).afterClosed();
|
|
85
|
-
}
|
|
86
|
-
promptManual() {
|
|
87
|
-
return this.open({
|
|
88
|
-
name: 'PromptManual',
|
|
89
|
-
maxWidth: '400px',
|
|
90
|
-
panelClass: 'DialogNoPadding',
|
|
91
|
-
minWidth: '300px',
|
|
92
|
-
data: {},
|
|
93
|
-
}).afterClosed();
|
|
94
|
-
}
|
|
95
|
-
// public scanMobile(data: any) {
|
|
96
|
-
// return this.open({
|
|
97
|
-
// name: 'ScanMobileComponent',
|
|
98
|
-
// maxWidth: '600px',
|
|
99
|
-
// panelClass: 'DialogNoPadding',
|
|
100
|
-
// minWidth: '440px',
|
|
101
|
-
// data,
|
|
102
|
-
// });
|
|
103
|
-
// }
|
|
104
|
-
scanSelfie(data) {
|
|
105
|
-
return this.open({
|
|
106
|
-
name: 'ScanSelfie',
|
|
107
|
-
panelClass: 'ScanProfileComponent',
|
|
108
|
-
data,
|
|
109
|
-
});
|
|
110
|
-
}
|
|
111
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocDialogsCoreProvider, deps: [{ token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
112
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocDialogsCoreProvider, providedIn: 'root' }); }
|
|
113
|
-
}
|
|
114
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocDialogsCoreProvider, decorators: [{
|
|
115
|
-
type: Injectable,
|
|
116
|
-
args: [{
|
|
117
|
-
providedIn: 'root',
|
|
118
|
-
}]
|
|
119
|
-
}], ctorParameters: () => [{ type: i1.MatDialog }] });
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5jb3JlLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2RpYWxvZ3MvZGlhbG9ncy5jb3JlLnByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxVQUFVLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBRXpELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUMxRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7O0FBSzNGLE1BQU0sT0FBTyw2QkFBNkI7SUFXeEMsWUFBb0IsU0FBb0I7UUFBcEIsY0FBUyxHQUFULFNBQVMsQ0FBVztRQVZ4QyxlQUFVLEdBQVE7WUFDaEIsV0FBVyxFQUFFLEVBQUUsU0FBUyxFQUFFLG9CQUFvQixFQUFFO1lBQ2hELE9BQU8sRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtZQUN4QyxnQkFBZ0IsRUFBRSxFQUFFLFNBQVMsRUFBRSxnQkFBZ0IsRUFBRTtZQUNqRCxxQkFBcUIsRUFBRSxFQUFFLFNBQVMsRUFBRSxxQkFBcUIsRUFBRTtZQUMzRCxVQUFVLEVBQUUsRUFBRSxTQUFTLEVBQUUsbUJBQW1CLEVBQUU7WUFDOUMsWUFBWSxFQUFFLEVBQUUsU0FBUyxFQUFFLHFCQUFxQixFQUFFO1NBQ25ELENBQUM7UUFDTSxVQUFLLEdBQUcsY0FB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T0FBTztZQUNqQixJQUFJLEVBQUUsRUFBRSxNQUFNLEVBQUU7U0FDakIsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFDTSxZQUFZO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNmLElBQUksRUFBRSxjQUFjO1lBQ3BCLFFBQVEsRUFBRSxPQUFPO1lBQ2pCLFVBQVUsRUFBRSxpQkFBaUI7WUFDN0IsUUFBUSxFQUFFLE9BQU87WUFDakIsSUFBSSxFQUFFLEVBQUc7U0FDVixDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUNELGlDQUFpQztJQUNqQyx1QkFBdUI7SUFDdkIsbUNBQW1DO0lBQ25DLHlCQUF5QjtJQUN6QixxQ0FBcUM7SUFFckMseUJBQXlCO0lBQ3pCLFlBQVk7SUFDWixRQUFRO0lBQ1IsSUFBSTtJQUNHLFVBQVUsQ0FBQyxJQUFTO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQztZQUNmLElBQUksRUFBRSxZQUFZO1lBQ2xCLFVBQVUsRUFBRSxzQkFBc0I7WUFDbEMsSUFBSTtTQUNMLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBMUdVLDZCQUE2QjttSEFBN0IsNkJBQTZCLGNBRjVCLE1BQU07OzRGQUVQLDZCQUE2QjtrQkFIekMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBEaWFsb2dQb3NpdGlvbixcbiAgTWF0RGlhbG9nLFxuICBNYXREaWFsb2dSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5pbXBvcnQgeyBJbmplY3RhYmxlLCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQmxhbmtDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYmxhbmsvYmxhbmsuY29tcG9uZW50JztcbmltcG9ydCB7IFNjYW5Qcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NjYW4tcHJvZmlsZS9zY2FuLXByb2ZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IExvYWRpbmdDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbG9hZGluZy9sb2FkaW5nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb25maXJtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbmZpcm0vY29uZmlybS5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2NhblNlbGZpZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zY2FuLXNlbGZpZS9zY2FuLXNlbGZpZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVHVybkRvY3VtZW50Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3R1cm4tZG9jdW1lbnQvdHVybi1kb2N1bWVudC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUHJvbXB0TWFudWFsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3Byb21wdC1tYW51YWwvcHJvbXB0LW1hbnVhbC5jb21wb25lbnQnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmd4U2NhbmRvY0RpYWxvZ3NDb3JlUHJvdmlkZXIge1xuICBjb21wb25lbnRzOiBhbnkgPSB7XG4gICAgU2NhblByb2ZpbGU6IHsgY29tcG9uZW50OiBTY2FuUHJvZmlsZUNvbXBvbmVudCB9LFxuICAgIExvYWRpbmc6IHsgY29tcG9uZW50OiBMb2FkaW5nQ29tcG9uZW50IH0sXG4gICAgQ29uZmlybUNvbXBvbmVudDogeyBjb21wb25lbnQ6IENvbmZpcm1Db21wb25lbnQgfSxcbiAgICBUdXJuRG9jdW1lbnRDb21wb25lbnQ6IHsgY29tcG9uZW50OiBUdXJuRG9jdW1lbnRDb21wb25lbnQgfSxcbiAgICBTY2FuU2VsZmllOiB7IGNvbXBvbmVudDogU2NhblNlbGZpZUNvbXBvbmVudCB9LFxuICAgIFByb21wdE1hbnVhbDogeyBjb21wb25lbnQ6IFByb21wdE1hbnVhbENvbXBvbmVudCB9LFxuICB9O1xuICBwcml2YXRlIGJsYW5rID0gQmxhbmtDb21wb25lbnQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBtYXREaWFsb2c6IE1hdERpYWxvZykge31cbiAgcHJpdmF0ZSBnZXRDb21wb25lbnQobmFtZTogYW55KSB7XG4gICAgaWYgKCF0aGlzLmNvbXBvbmVudHNbbmFtZV0pIHtcbiAgICAgIGNvbnNvbGUud2FybignQ29tcG9uZW50IG1pc3NpbmcnLCBuYW1lLCB0aGlzLmNvbXBvbmVudHMpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5jb21wb25lbnRzW25hbWVdLmNvbXBvbmVudDtcbiAgfVxuICBwdWJsaWMgb3Blbihjb25maWc6IGFueSwgd2l0aENvbXBvbmVudCA9IHRydWUpIHtcbiAgICAvLyBjb25zb2xlLmxvZyhjb25maWcpO1xuICAgIGNvbnN0IHBhbmVsQ2xhc3MgPSBjb25maWcucGFuZWxDbGFzcyA/IGNvbmZpZy5wYW5lbENsYXNzIDogY29uZmlnLm5hbWU7XG5cbiAgICBjb25zdCBjb21wb25lbnQgPSB0aGlzLmdldENvbXBvbmVudChjb25maWcubmFtZSk7XG5cbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLm1hdERpYWxvZy5vcGVuKHRoaXMuYmxhbmssIHtcbiAgICAgIHBhbmVsQ2xhc3MsXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGRhdGE6IGNvbmZpZy5kYXRhLFxuICAgICAgICB3aXRoQ29tcG9uZW50LFxuICAgICAgICBjb21wb25lbnQsXG4gICAgICB9LFxuICAgICAgYXV0b0ZvY3VzOiBmYWxzZSxcbiAgICAgIHdpZHRoOiBjb25maWcud2lkdGggfHwgJycsXG4gICAgICBoZWlnaHQ6IGNvbmZpZy5oZWlnaHQgfHwgJycsXG4gICAgICBtYXhXaWR0aDogY29uZmlnLm1heFdpZHRoIHx8ICcnLFxuICAgICAgbWluV2lkdGg6IGNvbmZpZy5taW5XaWR0aCB8fCAnJyxcbiAgICAgIG1heEhlaWdodDogY29uZmlnLm1heEhlaWdodCB8fCAnJyxcbiAgICAgIG1pbkhlaWdodDogY29uZmlnLm1pbkhlaWdodCB8fCAnJyxcbiAgICAgIHBvc2l0aW9uOiBjb25maWcucG9zaXRpb24gfHwge30sXG4gICAgICBoYXNCYWNrZHJvcDogY29uZmlnLmhhc0JhY2tkcm9wID09PSB1bmRlZmluZWQgPyB0cnVlIDogY29uZmlnLmhhc0JhY2tkcm9wLFxuICAgICAgZGlzYWJsZUNsb3NlOlxuICAgICAgICBjb25maWcuZGlzYWJsZUNsb3NlID09PSB1bmRlZmluZWQgPyB0cnVlIDogY29uZmlnLmRpc2FibGVDbG9zZSxcbiAgICB9KTtcblxuICAgIHJldHVybiBkaWFsb2dSZWY7XG4gIH1cbiAgcHVibGljIHNjYW5Qcm9maWxlKGRhdGE6IGFueSkge1xuICAgIHJldHVybiB0aGlzLm9wZW4oe1xuICAgICAgbmFtZTogJ1NjYW5Qcm9maWxlJyxcbiAgICAgIHBhbmVsQ2xhc3M6ICdTY2FuUHJvZmlsZUNvbXBvbmVudCcsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG5cbiAgLy8gR2VuZXJpYyBsb2FkaW5nIGRpYWxvZ1xuICBwdWJsaWMgbG9hZGluZyh0aXRsZTogc3RyaW5nID0gJycpIHtcbiAgICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgICAgIG5hbWU6ICdMb2FkaW5nJyxcbiAgICAgIGRhdGE6IHsgdGl0bGUgfSxcbiAgICB9KTtcbiAgfVxuICBwdWJsaWMgYWxlcnQodGl0bGU6IHN0cmluZywgdGV4dDogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMub3Blbih7XG4gICAgICBuYW1lOiAnQ29uZmlybUNvbXBvbmVudCcsXG4gICAgICBtYXhXaWR0aDogJzYwMHB4JyxcbiAgICAgIHBhbmVsQ2xhc3M6ICdEaWFsb2dOb1BhZGRpbmcnLFxuXG4gICAgICBtaW5XaWR0aDogJzQ0MHB4JyxcbiAgICAgIGRhdGE6IHsgdGl0bGUsIHRleHQsIGFsZXJ0OiB0cnVlIH0sXG4gICAgfSk7XG4gIH1cblxuICBwdWJsaWMgdHVybkRvY3VtZW50KGlkU2NhbjogYW55KSB7XG4gICAgcmV0dXJuIHRoaXMub3Blbih7XG4gICAgICBuYW1lOiAnVHVybkRvY3VtZW50Q29tcG9uZW50JyxcbiAgICAgIG1heFdpZHRoOiAnNDAwcHgnLFxuICAgICAgcGFuZWxDbGFzczogJ0RpYWxvZ05vUGFkZGluZycsXG4gICAgICBtaW5XaWR0aDogJzMwMHB4JyxcbiAgICAgIGRhdGE6IHsgaWRTY2FuIH0sXG4gICAgfSkuYWZ0ZXJDbG9zZWQoKTtcbiAgfVxuICBwdWJsaWMgcHJvbXB0TWFudWFsKCkge1xuICAgIHJldHVybiB0aGlzLm9wZW4oe1xuICAgICAgbmFtZTogJ1Byb21wdE1hbnVhbCcsXG4gICAgICBtYXhXaWR0aDogJzQwMHB4JyxcbiAgICAgIHBhbmVsQ2xhc3M6ICdEaWFsb2dOb1BhZGRpbmcnLFxuICAgICAgbWluV2lkdGg6ICczMDBweCcsXG4gICAgICBkYXRhOiB7IH0sXG4gICAgfSkuYWZ0ZXJDbG9zZWQoKTtcbiAgfVxuICAvLyBwdWJsaWMgc2Nhbk1vYmlsZShkYXRhOiBhbnkpIHtcbiAgLy8gICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgLy8gICAgIG5hbWU6ICdTY2FuTW9iaWxlQ29tcG9uZW50JyxcbiAgLy8gICAgIG1heFdpZHRoOiAnNjAwcHgnLFxuICAvLyAgICAgcGFuZWxDbGFzczogJ0RpYWxvZ05vUGFkZGluZycsXG5cbiAgLy8gICAgIG1pbldpZHRoOiAnNDQwcHgnLFxuICAvLyAgICAgZGF0YSxcbiAgLy8gICB9KTtcbiAgLy8gfVxuICBwdWJsaWMgc2NhblNlbGZpZShkYXRhOiBhbnkpIHtcbiAgICByZXR1cm4gdGhpcy5vcGVuKHtcbiAgICAgIG5hbWU6ICdTY2FuU2VsZmllJyxcbiAgICAgIHBhbmVsQ2xhc3M6ICdTY2FuUHJvZmlsZUNvbXBvbmVudCcsXG4gICAgICBkYXRhLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { CommonModule } from '@angular/common';
|
|
3
|
-
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
4
|
-
import { ScanProfileComponent } from './components/scan-profile/scan-profile.component';
|
|
5
|
-
import { BlankComponent } from './components/blank/blank.component';
|
|
6
|
-
import { NgxScandocDialogsCoreProvider } from './dialogs.core.provider';
|
|
7
|
-
import { MaterialModule } from '../core/shared/material.module';
|
|
8
|
-
import { CoreComponentsModule } from '../core/components/components.module';
|
|
9
|
-
//import { FlexLayoutModule, FlexModule } from '@angular/flex-layout';
|
|
10
|
-
import { CorePipesModule } from '../core/pipes/pipes.module';
|
|
11
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
12
|
-
import { LoadingComponent } from './components/loading/loading.component';
|
|
13
|
-
import { AppFormModule } from '../forms/form.module';
|
|
14
|
-
import { ConfirmComponent } from './components/confirm/confirm.component';
|
|
15
|
-
//import { QRCodeModule } from 'angularx-qrcode';
|
|
16
|
-
import { ScanSelfieComponent } from './components/scan-selfie/scan-selfie.component';
|
|
17
|
-
import { TurnDocumentComponent } from './components/turn-document/turn-document.component';
|
|
18
|
-
import { PromptManualComponent } from './components/prompt-manual/prompt-manual.component';
|
|
19
|
-
import * as i0 from "@angular/core";
|
|
20
|
-
import * as i1 from "../core/components/components.module";
|
|
21
|
-
//import { NgxScandocCameraProvider } from '../providers/camera.provider';
|
|
22
|
-
//import { NgxScandocCameraProvider } from '../providers/camera.provider';
|
|
23
|
-
export class DialogsModule {
|
|
24
|
-
static forRoot() {
|
|
25
|
-
return {
|
|
26
|
-
ngModule: DialogsModule,
|
|
27
|
-
providers: [NgxScandocDialogsCoreProvider],
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DialogsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
31
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: DialogsModule, declarations: [ScanProfileComponent,
|
|
32
|
-
BlankComponent,
|
|
33
|
-
LoadingComponent,
|
|
34
|
-
ConfirmComponent,
|
|
35
|
-
TurnDocumentComponent,
|
|
36
|
-
ScanSelfieComponent,
|
|
37
|
-
PromptManualComponent], imports: [
|
|
38
|
-
// QRCodeModule,
|
|
39
|
-
ReactiveFormsModule,
|
|
40
|
-
CommonModule,
|
|
41
|
-
FormsModule,
|
|
42
|
-
AppFormModule,
|
|
43
|
-
TranslateModule,
|
|
44
|
-
MaterialModule, i1.CoreComponentsModule, CorePipesModule], exports: [ScanProfileComponent,
|
|
45
|
-
LoadingComponent,
|
|
46
|
-
BlankComponent,
|
|
47
|
-
TurnDocumentComponent,
|
|
48
|
-
MaterialModule,
|
|
49
|
-
ScanSelfieComponent,
|
|
50
|
-
PromptManualComponent,
|
|
51
|
-
CoreComponentsModule] }); }
|
|
52
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DialogsModule, imports: [
|
|
53
|
-
// QRCodeModule,
|
|
54
|
-
ReactiveFormsModule,
|
|
55
|
-
CommonModule,
|
|
56
|
-
FormsModule,
|
|
57
|
-
AppFormModule,
|
|
58
|
-
TranslateModule,
|
|
59
|
-
MaterialModule,
|
|
60
|
-
CoreComponentsModule.forRoot(),
|
|
61
|
-
CorePipesModule, MaterialModule,
|
|
62
|
-
CoreComponentsModule] }); }
|
|
63
|
-
}
|
|
64
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: DialogsModule, decorators: [{
|
|
65
|
-
type: NgModule,
|
|
66
|
-
args: [{
|
|
67
|
-
declarations: [
|
|
68
|
-
ScanProfileComponent,
|
|
69
|
-
BlankComponent,
|
|
70
|
-
LoadingComponent,
|
|
71
|
-
ConfirmComponent,
|
|
72
|
-
TurnDocumentComponent,
|
|
73
|
-
ScanSelfieComponent,
|
|
74
|
-
PromptManualComponent,
|
|
75
|
-
],
|
|
76
|
-
exports: [
|
|
77
|
-
ScanProfileComponent,
|
|
78
|
-
LoadingComponent,
|
|
79
|
-
BlankComponent,
|
|
80
|
-
TurnDocumentComponent,
|
|
81
|
-
MaterialModule,
|
|
82
|
-
ScanSelfieComponent,
|
|
83
|
-
PromptManualComponent,
|
|
84
|
-
CoreComponentsModule,
|
|
85
|
-
],
|
|
86
|
-
imports: [
|
|
87
|
-
// QRCodeModule,
|
|
88
|
-
ReactiveFormsModule,
|
|
89
|
-
CommonModule,
|
|
90
|
-
FormsModule,
|
|
91
|
-
AppFormModule,
|
|
92
|
-
TranslateModule,
|
|
93
|
-
MaterialModule,
|
|
94
|
-
CoreComponentsModule.forRoot(),
|
|
95
|
-
CorePipesModule,
|
|
96
|
-
// FlexModule,
|
|
97
|
-
// FlexLayoutModule,
|
|
98
|
-
],
|
|
99
|
-
providers: [],
|
|
100
|
-
}]
|
|
101
|
-
}] });
|
|
102
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlhbG9ncy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZGlhbG9ncy9kaWFsb2dzLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztBQUNwRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDNUUsc0VBQXNFO0FBQ3RFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRTFFLGlEQUFpRDtBQUNqRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQzs7O0FBQzNGLDBFQUEwRTtBQUMxRSwwRUFBMEU7QUFzQzFFLE1BQU0sT0FBTyxhQUFhO0lBQ3hCLE1BQU0sQ0FBQyxPQUFPO1FBQ1osT0FBTztZQUNMLFFBQVEsRUFBRSxhQUFhO1lBQ3ZCLFNBQVMsRUFBRSxDQUFFLDZCQUE2QixDQUFDO1NBQzVDLENBQUM7SUFDSixDQUFDOytHQU5VLGFBQWE7Z0hBQWIsYUFBYSxpQkFsQ3RCLG9CQUFvQjtZQUNwQixjQUFjO1lBQ2QsZ0JBQWdCO1lBQ2hCLGdCQUFnQjtZQUNoQixxQkFBcUI7WUFDckIsbUJBQW1CO1lBQ25CLHFCQUFxQjtZQWF2QixpQkFBaUI7WUFDZixtQkFBbUI7WUFDbkIsWUFBWTtZQUNaLFdBQVc7WUFDWCxhQUFhO1lBRWIsZUFBZTtZQUNmLGNBQWMsMkJBRWQsZUFBZSxhQW5CZixvQkFBb0I7WUFDcEIsZ0JBQWdCO1lBQ2hCLGNBQWM7WUFDZCxxQkFBcUI7WUFDckIsY0FBYztZQUNkLG1CQUFtQjtZQUNuQixxQkFBcUI7WUFDckIsb0JBQW9CO2dIQWtCWCxhQUFhO1lBZnhCLGlCQUFpQjtZQUNmLG1CQUFtQjtZQUNuQixZQUFZO1lBQ1osV0FBVztZQUNYLGFBQWE7WUFFYixlQUFlO1lBQ2YsY0FBYztZQUNkLG9CQUFvQixDQUFDLE9BQU8sRUFBRTtZQUM5QixlQUFlLEVBZmYsY0FBYztZQUdkLG9CQUFvQjs7NEZBa0JYLGFBQWE7a0JBcEN6QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixvQkFBb0I7d0JBQ3BCLGNBQWM7d0JBQ2QsZ0JBQWdCO3dCQUNoQixnQkFBZ0I7d0JBQ2hCLHFCQUFxQjt3QkFDckIsbUJBQW1CO3dCQUNuQixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxvQkFBb0I7d0JBQ3BCLGdCQUFnQjt3QkFDaEIsY0FBYzt3QkFDZCxxQkFBcUI7d0JBQ3JCLGNBQWM7d0JBQ2QsbUJBQW1CO3dCQUNuQixxQkFBcUI7d0JBQ3JCLG9CQUFvQjtxQkFDckI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNULGlCQUFpQjt3QkFDZixtQkFBbUI7d0JBQ25CLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCxhQUFhO3dCQUViLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxvQkFBb0IsQ0FBQyxPQUFPLEVBQUU7d0JBQzlCLGVBQWU7d0JBQ2YsY0FBYzt3QkFDZCxvQkFBb0I7cUJBQ3JCO29CQUNELFNBQVMsRUFBRSxFQUFFO2lCQUNkIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFNjYW5Qcm9maWxlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NjYW4tcHJvZmlsZS9zY2FuLXByb2ZpbGUuY29tcG9uZW50JztcbmltcG9ydCB7IEJsYW5rQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2JsYW5rL2JsYW5rLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOZ3hTY2FuZG9jRGlhbG9nc0NvcmVQcm92aWRlciB9IGZyb20gJy4vZGlhbG9ncy5jb3JlLnByb3ZpZGVyJztcblxuaW1wb3J0IHsgTWF0ZXJpYWxNb2R1bGUgfSBmcm9tICcuLi9jb3JlL3NoYXJlZC9tYXRlcmlhbC5tb2R1bGUnO1xuaW1wb3J0IHsgQ29yZUNvbXBvbmVudHNNb2R1bGUgfSBmcm9tICcuLi9jb3JlL2NvbXBvbmVudHMvY29tcG9uZW50cy5tb2R1bGUnO1xuLy9pbXBvcnQgeyBGbGV4TGF5b3V0TW9kdWxlLCBGbGV4TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZmxleC1sYXlvdXQnO1xuaW1wb3J0IHsgQ29yZVBpcGVzTW9kdWxlIH0gZnJvbSAnLi4vY29yZS9waXBlcy9waXBlcy5tb2R1bGUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBMb2FkaW5nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xvYWRpbmcvbG9hZGluZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQXBwRm9ybU1vZHVsZSB9IGZyb20gJy4uL2Zvcm1zL2Zvcm0ubW9kdWxlJztcbmltcG9ydCB7IENvbmZpcm1Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY29uZmlybS9jb25maXJtLmNvbXBvbmVudCc7XG5cbi8vaW1wb3J0IHsgUVJDb2RlTW9kdWxlIH0gZnJvbSAnYW5ndWxhcngtcXJjb2RlJztcbmltcG9ydCB7IFNjYW5TZWxmaWVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2Nhbi1zZWxmaWUvc2Nhbi1zZWxmaWUuY29tcG9uZW50JztcbmltcG9ydCB7IFR1cm5Eb2N1bWVudENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy90dXJuLWRvY3VtZW50L3R1cm4tZG9jdW1lbnQuY29tcG9uZW50JztcbmltcG9ydCB7IFByb21wdE1hbnVhbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wcm9tcHQtbWFudWFsL3Byb21wdC1tYW51YWwuY29tcG9uZW50Jztcbi8vaW1wb3J0IHsgTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyIH0gZnJvbSAnLi4vcHJvdmlkZXJzL2NhbWVyYS5wcm92aWRlcic7XG4vL2ltcG9ydCB7IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlciB9IGZyb20gJy4uL3Byb3ZpZGVycy9jYW1lcmEucHJvdmlkZXInO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtcbiAgICBTY2FuUHJvZmlsZUNvbXBvbmVudCxcbiAgICBCbGFua0NvbXBvbmVudCxcbiAgICBMb2FkaW5nQ29tcG9uZW50LFxuICAgIENvbmZpcm1Db21wb25lbnQsXG4gICAgVHVybkRvY3VtZW50Q29tcG9uZW50LFxuICAgIFNjYW5TZWxmaWVDb21wb25lbnQsXG4gICAgUHJvbXB0TWFudWFsQ29tcG9uZW50LFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgU2NhblByb2ZpbGVDb21wb25lbnQsXG4gICAgTG9hZGluZ0NvbXBvbmVudCxcbiAgICBCbGFua0NvbXBvbmVudCxcbiAgICBUdXJuRG9jdW1lbnRDb21wb25lbnQsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgU2NhblNlbGZpZUNvbXBvbmVudCxcbiAgICBQcm9tcHRNYW51YWxDb21wb25lbnQsXG4gICAgQ29yZUNvbXBvbmVudHNNb2R1bGUsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgLy8gIFFSQ29kZU1vZHVsZSxcbiAgICBSZWFjdGl2ZUZvcm1zTW9kdWxlLFxuICAgIENvbW1vbk1vZHVsZSxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBcHBGb3JtTW9kdWxlLFxuXG4gICAgVHJhbnNsYXRlTW9kdWxlLFxuICAgIE1hdGVyaWFsTW9kdWxlLFxuICAgIENvcmVDb21wb25lbnRzTW9kdWxlLmZvclJvb3QoKSxcbiAgICBDb3JlUGlwZXNNb2R1bGUsXG4gICAgLy8gRmxleE1vZHVsZSxcbiAgICAvLyBGbGV4TGF5b3V0TW9kdWxlLFxuICBdLFxuICBwcm92aWRlcnM6IFtdLFxufSlcbmV4cG9ydCBjbGFzcyBEaWFsb2dzTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEaWFsb2dzTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBEaWFsb2dzTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbIE5neFNjYW5kb2NEaWFsb2dzQ29yZVByb3ZpZGVyXSxcbiAgICB9O1xuICB9XG59XG4iXX0=
|