ngx-scandoc 18.0.3 → 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 +128 -127
- 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 -732
- 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,87 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { FormlyModule } from '@ngx-formly/core';
|
|
3
|
-
import { FormsModule } from '@angular/forms';
|
|
4
|
-
import { FormlyMaterialModule } from '@ngx-formly/material';
|
|
5
|
-
import { CommonModule } from '@angular/common';
|
|
6
|
-
import { AvatarTypeComponent } from './types/avatar.type';
|
|
7
|
-
import { TitleTypeComponent } from './types/title.type';
|
|
8
|
-
import { FormlySelectModule } from '@ngx-formly/core/select';
|
|
9
|
-
import { AvatarModule } from 'ngx-avatars';
|
|
10
|
-
import { TranslateModule } from '@ngx-translate/core';
|
|
11
|
-
import { MaterialModule } from '../core/shared/material.module';
|
|
12
|
-
import { ProfileImageTypeComponent } from './types/profile.image.type';
|
|
13
|
-
import { FormlyMatDatepickerModule } from '@ngx-formly/material/datepicker';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@ngx-formly/core";
|
|
16
|
-
export class AppFormModule {
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppFormModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
18
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: AppFormModule, declarations: [TitleTypeComponent,
|
|
19
|
-
AvatarTypeComponent,
|
|
20
|
-
ProfileImageTypeComponent], imports: [CommonModule,
|
|
21
|
-
FormsModule,
|
|
22
|
-
FormlyMatDatepickerModule,
|
|
23
|
-
FormlySelectModule,
|
|
24
|
-
MaterialModule,
|
|
25
|
-
AvatarModule,
|
|
26
|
-
TranslateModule,
|
|
27
|
-
FormlyMaterialModule, i1.FormlyModule], exports: [FormlyModule] }); }
|
|
28
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppFormModule, imports: [CommonModule,
|
|
29
|
-
FormsModule,
|
|
30
|
-
FormlyMatDatepickerModule,
|
|
31
|
-
FormlySelectModule,
|
|
32
|
-
MaterialModule,
|
|
33
|
-
AvatarModule,
|
|
34
|
-
TranslateModule,
|
|
35
|
-
FormlyMaterialModule,
|
|
36
|
-
FormlyModule.forChild({
|
|
37
|
-
types: [
|
|
38
|
-
{
|
|
39
|
-
name: 'title',
|
|
40
|
-
component: TitleTypeComponent,
|
|
41
|
-
wrappers: [],
|
|
42
|
-
},
|
|
43
|
-
{
|
|
44
|
-
name: 'profile-image',
|
|
45
|
-
component: ProfileImageTypeComponent,
|
|
46
|
-
wrappers: [],
|
|
47
|
-
},
|
|
48
|
-
],
|
|
49
|
-
}), FormlyModule] }); }
|
|
50
|
-
}
|
|
51
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AppFormModule, decorators: [{
|
|
52
|
-
type: NgModule,
|
|
53
|
-
args: [{
|
|
54
|
-
declarations: [
|
|
55
|
-
TitleTypeComponent,
|
|
56
|
-
AvatarTypeComponent,
|
|
57
|
-
ProfileImageTypeComponent,
|
|
58
|
-
],
|
|
59
|
-
imports: [
|
|
60
|
-
CommonModule,
|
|
61
|
-
FormsModule,
|
|
62
|
-
FormlyMatDatepickerModule,
|
|
63
|
-
FormlySelectModule,
|
|
64
|
-
MaterialModule,
|
|
65
|
-
AvatarModule,
|
|
66
|
-
TranslateModule,
|
|
67
|
-
FormlyMaterialModule,
|
|
68
|
-
FormlyModule.forChild({
|
|
69
|
-
types: [
|
|
70
|
-
{
|
|
71
|
-
name: 'title',
|
|
72
|
-
component: TitleTypeComponent,
|
|
73
|
-
wrappers: [],
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
name: 'profile-image',
|
|
77
|
-
component: ProfileImageTypeComponent,
|
|
78
|
-
wrappers: [],
|
|
79
|
-
},
|
|
80
|
-
],
|
|
81
|
-
}),
|
|
82
|
-
],
|
|
83
|
-
providers: [],
|
|
84
|
-
exports: [FormlyModule],
|
|
85
|
-
}]
|
|
86
|
-
}] });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZm9ybXMvZm9ybS5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsWUFBWSxFQUFnQixNQUFNLGtCQUFrQixDQUFDO0FBQzlELE9BQU8sRUFBRSxXQUFXLEVBQXVCLE1BQU0sZ0JBQWdCLENBQUM7QUFFbEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTFELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQzdELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDM0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7O0FBc0M1RSxNQUFNLE9BQU8sYUFBYTsrR0FBYixhQUFhO2dIQUFiLGFBQWEsaUJBakN0QixrQkFBa0I7WUFDbEIsbUJBQW1CO1lBQ25CLHlCQUF5QixhQUd6QixZQUFZO1lBQ1osV0FBVztZQUNYLHlCQUF5QjtZQUN6QixrQkFBa0I7WUFDbEIsY0FBYztZQUNkLFlBQVk7WUFDWixlQUFlO1lBRWYsb0JBQW9CLDhCQWtCWixZQUFZO2dIQUVYLGFBQWEsWUE1QnRCLFlBQVk7WUFDWixXQUFXO1lBQ1gseUJBQXlCO1lBQ3pCLGtCQUFrQjtZQUNsQixjQUFjO1lBQ2QsWUFBWTtZQUNaLGVBQWU7WUFFZixvQkFBb0I7WUFDcEIsWUFBWSxDQUFDLFFBQVEsQ0FBQztnQkFDcEIsS0FBSyxFQUFFO29CQUNMO3dCQUNFLElBQUksRUFBRSxPQUFPO3dCQUNiLFNBQVMsRUFBRSxrQkFBa0I7d0JBQzdCLFFBQVEsRUFBRSxFQUFFO3FCQUNiO29CQUNEO3dCQUNFLElBQUksRUFBRSxlQUFlO3dCQUNyQixTQUFTLEVBQUUseUJBQXlCO3dCQUNwQyxRQUFRLEVBQUUsRUFBRTtxQkFDYjtpQkFDRjthQUNGLENBQUMsRUFJTSxZQUFZOzs0RkFFWCxhQUFhO2tCQW5DekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osa0JBQWtCO3dCQUNsQixtQkFBbUI7d0JBQ25CLHlCQUF5QjtxQkFDMUI7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLFlBQVk7d0JBQ1osV0FBVzt3QkFDWCx5QkFBeUI7d0JBQ3pCLGtCQUFrQjt3QkFDbEIsY0FBYzt3QkFDZCxZQUFZO3dCQUNaLGVBQWU7d0JBRWYsb0JBQW9CO3dCQUNwQixZQUFZLENBQUMsUUFBUSxDQUFDOzRCQUNwQixLQUFLLEVBQUU7Z0NBQ0w7b0NBQ0UsSUFBSSxFQUFFLE9BQU87b0NBQ2IsU0FBUyxFQUFFLGtCQUFrQjtvQ0FDN0IsUUFBUSxFQUFFLEVBQUU7aUNBQ2I7Z0NBQ0Q7b0NBQ0UsSUFBSSxFQUFFLGVBQWU7b0NBQ3JCLFNBQVMsRUFBRSx5QkFBeUI7b0NBQ3BDLFFBQVEsRUFBRSxFQUFFO2lDQUNiOzZCQUNGO3lCQUNGLENBQUM7cUJBQ0g7b0JBRUQsU0FBUyxFQUFFLEVBQUU7b0JBQ2IsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3JtbHlNb2R1bGUsIENvbmZpZ09wdGlvbiB9IGZyb20gJ0BuZ3gtZm9ybWx5L2NvcmUnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5cbmltcG9ydCB7IEZvcm1seU1hdGVyaWFsTW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcblxuaW1wb3J0IHsgQXZhdGFyVHlwZUNvbXBvbmVudCB9IGZyb20gJy4vdHlwZXMvYXZhdGFyLnR5cGUnO1xuXG5pbXBvcnQgeyBUaXRsZVR5cGVDb21wb25lbnQgfSBmcm9tICcuL3R5cGVzL3RpdGxlLnR5cGUnO1xuaW1wb3J0IHsgRm9ybWx5U2VsZWN0TW9kdWxlIH0gZnJvbSAnQG5neC1mb3JtbHkvY29yZS9zZWxlY3QnO1xuaW1wb3J0IHsgQXZhdGFyTW9kdWxlIH0gZnJvbSAnbmd4LWF2YXRhcnMnO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBNYXRlcmlhbE1vZHVsZSB9IGZyb20gJy4uL2NvcmUvc2hhcmVkL21hdGVyaWFsLm1vZHVsZSc7XG5pbXBvcnQgeyBQcm9maWxlSW1hZ2VUeXBlQ29tcG9uZW50IH0gZnJvbSAnLi90eXBlcy9wcm9maWxlLmltYWdlLnR5cGUnO1xuaW1wb3J0IHsgRm9ybWx5TWF0RGF0ZXBpY2tlck1vZHVsZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsL2RhdGVwaWNrZXInO1xuXG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFRpdGxlVHlwZUNvbXBvbmVudCxcbiAgICBBdmF0YXJUeXBlQ29tcG9uZW50LFxuICAgIFByb2ZpbGVJbWFnZVR5cGVDb21wb25lbnQsXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGUsXG4gICAgRm9ybXNNb2R1bGUsXG4gICAgRm9ybWx5TWF0RGF0ZXBpY2tlck1vZHVsZSxcbiAgICBGb3JtbHlTZWxlY3RNb2R1bGUsXG4gICAgTWF0ZXJpYWxNb2R1bGUsXG4gICAgQXZhdGFyTW9kdWxlLFxuICAgIFRyYW5zbGF0ZU1vZHVsZSxcblxuICAgIEZvcm1seU1hdGVyaWFsTW9kdWxlLFxuICAgIEZvcm1seU1vZHVsZS5mb3JDaGlsZCh7XG4gICAgICB0eXBlczogW1xuICAgICAgICB7XG4gICAgICAgICAgbmFtZTogJ3RpdGxlJyxcbiAgICAgICAgICBjb21wb25lbnQ6IFRpdGxlVHlwZUNvbXBvbmVudCxcbiAgICAgICAgICB3cmFwcGVyczogW10sXG4gICAgICAgIH0sXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAncHJvZmlsZS1pbWFnZScsXG4gICAgICAgICAgY29tcG9uZW50OiBQcm9maWxlSW1hZ2VUeXBlQ29tcG9uZW50LFxuICAgICAgICAgIHdyYXBwZXJzOiBbXSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfSksXG4gIF0sXG5cbiAgcHJvdmlkZXJzOiBbXSxcbiAgZXhwb3J0czogW0Zvcm1seU1vZHVsZV0sXG59KVxuZXhwb3J0IGNsYXNzIEFwcEZvcm1Nb2R1bGUge31cbiJdfQ==
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
import { Component, } from '@angular/core';
|
|
2
|
-
import { FieldType } from '@ngx-formly/material';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "@angular/common";
|
|
5
|
-
import * as i2 from "@angular/material/card";
|
|
6
|
-
import * as i3 from "@angular/material/button";
|
|
7
|
-
import * as i4 from "@ngx-translate/core";
|
|
8
|
-
export class AvatarTypeComponent extends FieldType {
|
|
9
|
-
constructor(cd) {
|
|
10
|
-
super();
|
|
11
|
-
this.cd = cd;
|
|
12
|
-
this.width = 'w-120';
|
|
13
|
-
this.padding = 'px-32 pt-8 pb-8';
|
|
14
|
-
}
|
|
15
|
-
ngOnChange() { }
|
|
16
|
-
selfie() { }
|
|
17
|
-
;
|
|
18
|
-
ngAfterViewInit() {
|
|
19
|
-
if (this.to.width) {
|
|
20
|
-
this.width = this.to.width;
|
|
21
|
-
}
|
|
22
|
-
if (this.to.padding) {
|
|
23
|
-
this.padding = this.to.padding;
|
|
24
|
-
}
|
|
25
|
-
this.cd.detectChanges();
|
|
26
|
-
}
|
|
27
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AvatarTypeComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
28
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: AvatarTypeComponent, selector: "app-formly-avatar-type", usesInheritance: true, ngImport: i0, template: `
|
|
29
|
-
<mat-card appearance="outlined" style="margin: 4px; padding:16px">
|
|
30
|
-
<div class="card-title">{{ 'scandoc.result.avatar' | translate }}</div>
|
|
31
|
-
<div class="selfieContainer">
|
|
32
|
-
<div class="selfie">
|
|
33
|
-
<img *ngIf="model?._avatar" class="preview" [src]="model._avatar" />
|
|
34
|
-
</div>
|
|
35
|
-
<button (click)="selfie()" mat-raised-button>
|
|
36
|
-
{{ 'scandoc.result.takeSelfie' | translate }}
|
|
37
|
-
</button>
|
|
38
|
-
</div>
|
|
39
|
-
</mat-card>
|
|
40
|
-
`, isInline: true, styles: ["mat-card{border-radius:0;box-shadow:none!important}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatCard, selector: "mat-card", inputs: ["appearance"], exportAs: ["matCard"] }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "pipe", type: i4.TranslatePipe, name: "translate" }] }); }
|
|
41
|
-
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: AvatarTypeComponent, decorators: [{
|
|
43
|
-
type: Component,
|
|
44
|
-
args: [{ selector: 'app-formly-avatar-type', template: `
|
|
45
|
-
<mat-card appearance="outlined" style="margin: 4px; padding:16px">
|
|
46
|
-
<div class="card-title">{{ 'scandoc.result.avatar' | translate }}</div>
|
|
47
|
-
<div class="selfieContainer">
|
|
48
|
-
<div class="selfie">
|
|
49
|
-
<img *ngIf="model?._avatar" class="preview" [src]="model._avatar" />
|
|
50
|
-
</div>
|
|
51
|
-
<button (click)="selfie()" mat-raised-button>
|
|
52
|
-
{{ 'scandoc.result.takeSelfie' | translate }}
|
|
53
|
-
</button>
|
|
54
|
-
</div>
|
|
55
|
-
</mat-card>
|
|
56
|
-
`, styles: ["mat-card{border-radius:0;box-shadow:none!important}\n"] }]
|
|
57
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXZhdGFyLnR5cGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvZm9ybXMvdHlwZXMvYXZhdGFyLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsR0FJVixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQW1CakQsTUFBTSxPQUFPLG1CQUNYLFNBQVEsU0FBYztJQU10QixZQUFvQixFQUFxQjtRQUN2QyxLQUFLLEVBQUUsQ0FBQztRQURVLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBSHpDLFVBQUssR0FBRyxPQUFPLENBQUM7UUFDaEIsWUFBTyxHQUFHLGlCQUFpQixDQUFDO0lBSTVCLENBQUM7SUFDRCxVQUFVLEtBQUksQ0FBQztJQUVmLE1BQU0sS0FBRyxDQUFDO0lBQUEsQ0FBQztJQUVYLGVBQWU7UUFDYixJQUFJLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbEIsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQztRQUM3QixDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ3BCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUM7UUFDakMsQ0FBQztRQUVELElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDMUIsQ0FBQzsrR0F2QlUsbUJBQW1CO21HQUFuQixtQkFBbUIscUZBZnBCOzs7Ozs7Ozs7Ozs7R0FZVDs7NEZBR1UsbUJBQW1CO2tCQWpCL0IsU0FBUzsrQkFDRSx3QkFBd0IsWUFDeEI7Ozs7Ozs7Ozs7OztHQVlUIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBPbkluaXQsXG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdG9yUmVmLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZpZWxkVHlwZSB9IGZyb20gJ0BuZ3gtZm9ybWx5L21hdGVyaWFsJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLWZvcm1seS1hdmF0YXItdHlwZScsXG4gIHRlbXBsYXRlOiBgXG4gICAgPG1hdC1jYXJkIGFwcGVhcmFuY2U9XCJvdXRsaW5lZFwiIHN0eWxlPVwibWFyZ2luOiA0cHg7IHBhZGRpbmc6MTZweFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImNhcmQtdGl0bGVcIj57eyAnc2NhbmRvYy5yZXN1bHQuYXZhdGFyJyB8IHRyYW5zbGF0ZSB9fTwvZGl2PlxuICAgICAgPGRpdiBjbGFzcz1cInNlbGZpZUNvbnRhaW5lclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VsZmllXCI+XG4gICAgICAgICAgPGltZyAqbmdJZj1cIm1vZGVsPy5fYXZhdGFyXCIgY2xhc3M9XCJwcmV2aWV3XCIgW3NyY109XCJtb2RlbC5fYXZhdGFyXCIgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxidXR0b24gKGNsaWNrKT1cInNlbGZpZSgpXCIgbWF0LXJhaXNlZC1idXR0b24+XG4gICAgICAgICAge3sgJ3NjYW5kb2MucmVzdWx0LnRha2VTZWxmaWUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9tYXQtY2FyZD5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbJy4vc2Nzcy9hdmF0YXIudHlwZS5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEF2YXRhclR5cGVDb21wb25lbnRcbiAgZXh0ZW5kcyBGaWVsZFR5cGU8YW55PlxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcbntcbiAgd2lkdGggPSAndy0xMjAnO1xuICBwYWRkaW5nID0gJ3B4LTMyIHB0LTggcGItOCc7XG4gIG5hbWU6IGFueTtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIG5nT25DaGFuZ2UoKSB7fVxuXG4gIHNlbGZpZSgpe307XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIGlmICh0aGlzLnRvLndpZHRoKSB7XG4gICAgICB0aGlzLndpZHRoID0gdGhpcy50by53aWR0aDtcbiAgICB9XG4gICAgaWYgKHRoaXMudG8ucGFkZGluZykge1xuICAgICAgdGhpcy5wYWRkaW5nID0gdGhpcy50by5wYWRkaW5nO1xuICAgIH1cblxuICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICB9XG59XG4iXX0=
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
import { Component, } from '@angular/core';
|
|
2
|
-
import { FieldType } from '@ngx-formly/material';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
import * as i1 from "../../providers/camera.provider";
|
|
5
|
-
import * as i2 from "../../providers/scan.provider";
|
|
6
|
-
import * as i3 from "@angular/common";
|
|
7
|
-
import * as i4 from "@angular/material/form-field";
|
|
8
|
-
import * as i5 from "@angular/material/button";
|
|
9
|
-
import * as i6 from "@angular/material/input";
|
|
10
|
-
import * as i7 from "@ngx-translate/core";
|
|
11
|
-
export class ProfileImageTypeComponent extends FieldType {
|
|
12
|
-
constructor(cd, cameraProvider, scanProvider) {
|
|
13
|
-
super();
|
|
14
|
-
this.cd = cd;
|
|
15
|
-
this.cameraProvider = cameraProvider;
|
|
16
|
-
this.scanProvider = scanProvider;
|
|
17
|
-
}
|
|
18
|
-
selfie() {
|
|
19
|
-
this.cameraProvider.selfie$.next(true);
|
|
20
|
-
}
|
|
21
|
-
ngOnChange() { }
|
|
22
|
-
ngAfterViewInit() { }
|
|
23
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProfileImageTypeComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.NgxScandocCameraProvider }, { token: i2.ScanProvider }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
24
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: ProfileImageTypeComponent, selector: "app-formly-profile-image-type", usesInheritance: true, ngImport: i0, template: `
|
|
25
|
-
<mat-form-field>
|
|
26
|
-
<mat-label>{{ 'scandoc.result.avatar' | translate }} </mat-label>
|
|
27
|
-
<input matInput style="display:none" />
|
|
28
|
-
<div class="selfieContainer">
|
|
29
|
-
<div class="selfie">
|
|
30
|
-
<img *ngIf="model?._avatar" class="preview" [src]="model._avatar" />
|
|
31
|
-
</div>
|
|
32
|
-
<button
|
|
33
|
-
*ngIf="scanProvider.enableVerification"
|
|
34
|
-
(click)="selfie()"
|
|
35
|
-
mat-raised-button
|
|
36
|
-
>
|
|
37
|
-
{{ 'scandoc.result.takeSelfie' | translate }}
|
|
38
|
-
</button>
|
|
39
|
-
</div>
|
|
40
|
-
</mat-form-field>
|
|
41
|
-
`, isInline: true, styles: [".selfieContainer{display:flex;flex-direction:column;align-items:center;justify-content:center}.selfieContainer button{margin-top:6px;box-shadow:none!important;border:1px solid rgba(0,0,0,.12);text-transform:uppercase;font-size:12px}.selfie{width:126px;height:126px;border-radius:70px;background:#f5f5f5;display:flex;flex-direction:column;align-items:center;justify-content:center}.selfie img{width:120px;height:120px;border-radius:60px}\n"], dependencies: [{ kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "pipe", type: i7.TranslatePipe, name: "translate" }] }); }
|
|
42
|
-
}
|
|
43
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: ProfileImageTypeComponent, decorators: [{
|
|
44
|
-
type: Component,
|
|
45
|
-
args: [{ selector: 'app-formly-profile-image-type', template: `
|
|
46
|
-
<mat-form-field>
|
|
47
|
-
<mat-label>{{ 'scandoc.result.avatar' | translate }} </mat-label>
|
|
48
|
-
<input matInput style="display:none" />
|
|
49
|
-
<div class="selfieContainer">
|
|
50
|
-
<div class="selfie">
|
|
51
|
-
<img *ngIf="model?._avatar" class="preview" [src]="model._avatar" />
|
|
52
|
-
</div>
|
|
53
|
-
<button
|
|
54
|
-
*ngIf="scanProvider.enableVerification"
|
|
55
|
-
(click)="selfie()"
|
|
56
|
-
mat-raised-button
|
|
57
|
-
>
|
|
58
|
-
{{ 'scandoc.result.takeSelfie' | translate }}
|
|
59
|
-
</button>
|
|
60
|
-
</div>
|
|
61
|
-
</mat-form-field>
|
|
62
|
-
`, styles: [".selfieContainer{display:flex;flex-direction:column;align-items:center;justify-content:center}.selfieContainer button{margin-top:6px;box-shadow:none!important;border:1px solid rgba(0,0,0,.12);text-transform:uppercase;font-size:12px}.selfie{width:126px;height:126px;border-radius:70px;background:#f5f5f5;display:flex;flex-direction:column;align-items:center;justify-content:center}.selfie img{width:120px;height:120px;border-radius:60px}\n"] }]
|
|
63
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.NgxScandocCameraProvider }, { type: i2.ScanProvider }] });
|
|
64
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZmlsZS5pbWFnZS50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2Zvcm1zL3R5cGVzL3Byb2ZpbGUuaW1hZ2UudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxHQUlWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQzs7Ozs7Ozs7O0FBMEJqRCxNQUFNLE9BQU8seUJBQ1gsU0FBUSxTQUFjO0lBTXRCLFlBQ1UsRUFBcUIsRUFDckIsY0FBd0MsRUFDekMsWUFBMEI7UUFFakMsS0FBSyxFQUFFLENBQUM7UUFKQSxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQUNyQixtQkFBYyxHQUFkLGNBQWMsQ0FBMEI7UUFDekMsaUJBQVksR0FBWixZQUFZLENBQWM7SUFHbkMsQ0FBQztJQUNELE1BQU07UUFDSixJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekMsQ0FBQztJQUNELFVBQVUsS0FBSSxDQUFDO0lBRWYsZUFBZSxLQUFJLENBQUM7K0dBbkJULHlCQUF5QjttR0FBekIseUJBQXlCLDRGQXBCMUI7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBaUJUOzs0RkFHVSx5QkFBeUI7a0JBdEJyQyxTQUFTOytCQUNFLCtCQUErQixZQUMvQjs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuaW1wb3J0IHsgTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyIH0gZnJvbSAnLi4vLi4vcHJvdmlkZXJzL2NhbWVyYS5wcm92aWRlcic7XG5pbXBvcnQgeyBTY2FuUHJvdmlkZXIgfSBmcm9tICcuLi8uLi9wcm92aWRlcnMvc2Nhbi5wcm92aWRlcic7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1mb3JtbHktcHJvZmlsZS1pbWFnZS10eXBlJyxcbiAgdGVtcGxhdGU6IGBcbiAgICA8bWF0LWZvcm0tZmllbGQ+XG4gICAgICA8bWF0LWxhYmVsPnt7ICdzY2FuZG9jLnJlc3VsdC5hdmF0YXInIHwgdHJhbnNsYXRlIH19IDwvbWF0LWxhYmVsPlxuICAgICAgPGlucHV0IG1hdElucHV0IHN0eWxlPVwiZGlzcGxheTpub25lXCIgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJzZWxmaWVDb250YWluZXJcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNlbGZpZVwiPlxuICAgICAgICAgIDxpbWcgKm5nSWY9XCJtb2RlbD8uX2F2YXRhclwiIGNsYXNzPVwicHJldmlld1wiIFtzcmNdPVwibW9kZWwuX2F2YXRhclwiIC8+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgKm5nSWY9XCJzY2FuUHJvdmlkZXIuZW5hYmxlVmVyaWZpY2F0aW9uXCJcbiAgICAgICAgICAoY2xpY2spPVwic2VsZmllKClcIlxuICAgICAgICAgIG1hdC1yYWlzZWQtYnV0dG9uXG4gICAgICAgID5cbiAgICAgICAgICB7eyAnc2NhbmRvYy5yZXN1bHQudGFrZVNlbGZpZScgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1mb3JtLWZpZWxkPlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9zY3NzL3Byb2ZpbGUuaW1hZ2UudHlwZS5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFByb2ZpbGVJbWFnZVR5cGVDb21wb25lbnRcbiAgZXh0ZW5kcyBGaWVsZFR5cGU8YW55PlxuICBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXRcbntcbiAgbmFtZTogYW55O1xuICB3aWR0aDogYW55O1xuICBwYWRkaW5nOiBhbnk7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgY2Q6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHByaXZhdGUgY2FtZXJhUHJvdmlkZXI6IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlcixcbiAgICBwdWJsaWMgc2NhblByb3ZpZGVyOiBTY2FuUHJvdmlkZXJcbiAgKSB7XG4gICAgc3VwZXIoKTtcbiAgfVxuICBzZWxmaWUoKSB7XG4gICAgdGhpcy5jYW1lcmFQcm92aWRlci5zZWxmaWUkLm5leHQodHJ1ZSk7XG4gIH1cbiAgbmdPbkNoYW5nZSgpIHt9XG5cbiAgbmdBZnRlclZpZXdJbml0KCkge31cbn1cbiJdfQ==
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
import { Component, } from '@angular/core';
|
|
2
|
-
import { FieldType } from '@ngx-formly/material';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class TitleTypeComponent extends FieldType {
|
|
5
|
-
constructor(cd) {
|
|
6
|
-
super();
|
|
7
|
-
this.cd = cd;
|
|
8
|
-
}
|
|
9
|
-
ngOnInit() {
|
|
10
|
-
this.opt = {
|
|
11
|
-
badge: this.to.badge,
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
ngAfterViewInit() {
|
|
15
|
-
this.cd.detectChanges();
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TitleTypeComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
18
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: TitleTypeComponent, selector: "app-formly-title-type", usesInheritance: true, ngImport: i0, template: `
|
|
19
|
-
<div class="card-title">
|
|
20
|
-
{{ to.label }}
|
|
21
|
-
</div>
|
|
22
|
-
`, isInline: true, styles: [""] }); }
|
|
23
|
-
}
|
|
24
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: TitleTypeComponent, decorators: [{
|
|
25
|
-
type: Component,
|
|
26
|
-
args: [{ selector: 'app-formly-title-type', template: `
|
|
27
|
-
<div class="card-title">
|
|
28
|
-
{{ to.label }}
|
|
29
|
-
</div>
|
|
30
|
-
` }]
|
|
31
|
-
}], ctorParameters: () => [{ type: i0.ChangeDetectorRef }] });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGl0bGUudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9mb3Jtcy90eXBlcy90aXRsZS50eXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEdBSVYsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDOztBQVdqRCxNQUFNLE9BQU8sa0JBQ1gsU0FBUSxTQUFjO0lBSXRCLFlBQW9CLEVBQXFCO1FBQ3ZDLEtBQUssRUFBRSxDQUFDO1FBRFUsT0FBRSxHQUFGLEVBQUUsQ0FBbUI7SUFFekMsQ0FBQztJQUNELFFBQVE7UUFDTixJQUFJLENBQUMsR0FBRyxHQUFHO1lBQ1QsS0FBSyxFQUFFLElBQUksQ0FBQyxFQUFFLENBQUMsS0FBSztTQUNyQixDQUFDO0lBQ0osQ0FBQztJQUVELGVBQWU7UUFDYixJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQzFCLENBQUM7K0dBaEJVLGtCQUFrQjttR0FBbEIsa0JBQWtCLG9GQVBuQjs7OztHQUlUOzs0RkFHVSxrQkFBa0I7a0JBVDlCLFNBQVM7K0JBQ0UsdUJBQXVCLFlBQ3ZCOzs7O0dBSVQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBDb21wb25lbnQsXG4gIE9uSW5pdCxcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRmllbGRUeXBlIH0gZnJvbSAnQG5neC1mb3JtbHkvbWF0ZXJpYWwnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtZm9ybWx5LXRpdGxlLXR5cGUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJjYXJkLXRpdGxlXCI+XG4gICAgICB7eyB0by5sYWJlbCB9fVxuICAgIDwvZGl2PlxuICBgLFxuICBzdHlsZVVybHM6IFsnLi9zY3NzL3RpdGxlLnR5cGUuc2NzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBUaXRsZVR5cGVDb21wb25lbnRcbiAgZXh0ZW5kcyBGaWVsZFR5cGU8YW55PlxuICBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdFxue1xuICBvcHQ6IGFueTtcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcbiAgICBzdXBlcigpO1xuICB9XG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMub3B0ID0ge1xuICAgICAgYmFkZ2U6IHRoaXMudG8uYmFkZ2UsXG4gICAgfTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIl19
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { NgModule } from '@angular/core';
|
|
2
|
-
import { DialogsModule } from '../dialogs/dialogs.module';
|
|
3
|
-
import { HttpErrorInterceptor } from '../providers/interceptor.provider';
|
|
4
|
-
import { ScanProvider } from '../providers/scan.provider';
|
|
5
|
-
import { HTTP_INTERCEPTORS } from '@angular/common/http';
|
|
6
|
-
import { NgxScandocCameraProvider } from '../providers/camera.provider';
|
|
7
|
-
import { AUTH_CONFIG_TOKEN, SCAN_CONFIG_TOKEN } from '../core/tokens/config.tokens';
|
|
8
|
-
import { NgxScanDocTranslationProvider } from '../providers/translation.provider';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
import * as i1 from "../dialogs/dialogs.module";
|
|
11
|
-
export class NgxScandocModule {
|
|
12
|
-
static forRoot(config) {
|
|
13
|
-
return {
|
|
14
|
-
ngModule: NgxScandocModule,
|
|
15
|
-
providers: [
|
|
16
|
-
{ provide: AUTH_CONFIG_TOKEN, useValue: config.auth },
|
|
17
|
-
ScanProvider,
|
|
18
|
-
{ provide: SCAN_CONFIG_TOKEN, useValue: config.scan },
|
|
19
|
-
{
|
|
20
|
-
provide: HTTP_INTERCEPTORS,
|
|
21
|
-
useClass: HttpErrorInterceptor,
|
|
22
|
-
multi: true,
|
|
23
|
-
},
|
|
24
|
-
NgxScanDocTranslationProvider,
|
|
25
|
-
NgxScandocCameraProvider,
|
|
26
|
-
// NgxScandocAuthProvider,
|
|
27
|
-
],
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
constructor() {
|
|
31
|
-
}
|
|
32
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
|
|
33
|
-
static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocModule, imports: [i1.DialogsModule], exports: [DialogsModule] }); }
|
|
34
|
-
static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocModule, imports: [DialogsModule.forRoot(), DialogsModule] }); }
|
|
35
|
-
}
|
|
36
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocModule, decorators: [{
|
|
37
|
-
type: NgModule,
|
|
38
|
-
args: [{
|
|
39
|
-
declarations: [],
|
|
40
|
-
imports: [DialogsModule.forRoot()],
|
|
41
|
-
exports: [DialogsModule],
|
|
42
|
-
}]
|
|
43
|
-
}], ctorParameters: () => [] });
|
|
44
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNjYW5kb2MubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL2xpYi9uZ3gtc2NhbmRvYy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF1QyxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzFELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBRXpFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUMxRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUV6RCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUN4RSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNwRixPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQzs7O0FBUWxGLE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsTUFBTSxDQUFDLE9BQU8sQ0FDWixNQUFzQjtRQUV0QixPQUFPO1lBQ0wsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixTQUFTLEVBQUU7Z0JBRVQsRUFBRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBQ3JELFlBQVk7Z0JBQ1osRUFBRSxPQUFPLEVBQUMsaUJBQWlCLEVBQUUsUUFBUSxFQUFFLE1BQU0sQ0FBQyxJQUFJLEVBQUU7Z0JBRXBEO29CQUNFLE9BQU8sRUFBRSxpQkFBaUI7b0JBQzFCLFFBQVEsRUFBRSxvQkFBb0I7b0JBQzlCLEtBQUssRUFBRSxJQUFJO2lCQUNaO2dCQUNELDZCQUE2QjtnQkFDN0Isd0JBQXdCO2dCQUN6QiwwQkFBMEI7YUFDMUI7U0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEO0lBRUEsQ0FBQzsrR0ExQlUsZ0JBQWdCO2dIQUFoQixnQkFBZ0IseUNBRmpCLGFBQWE7Z0hBRVosZ0JBQWdCLFlBSGpCLGFBQWEsQ0FBQyxPQUFPLEVBQUUsRUFDdkIsYUFBYTs7NEZBRVosZ0JBQWdCO2tCQUw1QixRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLENBQUM7b0JBQ2xDLE9BQU8sRUFBRSxDQUFDLGFBQWEsQ0FBQztpQkFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3Rpb25Ub2tlbiwgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgRGlhbG9nc01vZHVsZSB9IGZyb20gJy4uL2RpYWxvZ3MvZGlhbG9ncy5tb2R1bGUnO1xuaW1wb3J0IHsgSHR0cEVycm9ySW50ZXJjZXB0b3IgfSBmcm9tICcuLi9wcm92aWRlcnMvaW50ZXJjZXB0b3IucHJvdmlkZXInO1xuaW1wb3J0IHsgTmd4U2NhbmRvY0F1dGhQcm92aWRlciB9IGZyb20gJy4uL3Byb3ZpZGVycy9hdXRoLnByb3ZpZGVyJztcbmltcG9ydCB7IFNjYW5Qcm92aWRlciB9IGZyb20gJy4uL3Byb3ZpZGVycy9zY2FuLnByb3ZpZGVyJztcbmltcG9ydCB7IEhUVFBfSU5URVJDRVBUT1JTIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQXV0aENvbmZpZywgU2NhbkNvbmZpZywgU2NhbkRhdGFDb25maWcgfSBmcm9tICcuLi9jb3JlL2ludGVyZmFjZXMvY29uZmlnJztcbmltcG9ydCB7IE5neFNjYW5kb2NDYW1lcmFQcm92aWRlciB9IGZyb20gJy4uL3Byb3ZpZGVycy9jYW1lcmEucHJvdmlkZXInO1xuaW1wb3J0IHsgQVVUSF9DT05GSUdfVE9LRU4sIFNDQU5fQ09ORklHX1RPS0VOIH0gZnJvbSAnLi4vY29yZS90b2tlbnMvY29uZmlnLnRva2Vucyc7XG5pbXBvcnQgeyBOZ3hTY2FuRG9jVHJhbnNsYXRpb25Qcm92aWRlciB9IGZyb20gJy4uL3Byb3ZpZGVycy90cmFuc2xhdGlvbi5wcm92aWRlcic7XG5cblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgaW1wb3J0czogW0RpYWxvZ3NNb2R1bGUuZm9yUm9vdCgpXSxcbiAgZXhwb3J0czogW0RpYWxvZ3NNb2R1bGVdLFxufSlcbmV4cG9ydCBjbGFzcyBOZ3hTY2FuZG9jTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoXG4gICAgY29uZmlnOiBTY2FuRGF0YUNvbmZpZ1xuICApOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neFNjYW5kb2NNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5neFNjYW5kb2NNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcblxuICAgICAgICB7IHByb3ZpZGU6IEFVVEhfQ09ORklHX1RPS0VOLCB1c2VWYWx1ZTogY29uZmlnLmF1dGggfSxcbiAgICAgICAgU2NhblByb3ZpZGVyLFxuICAgICAgICB7IHByb3ZpZGU6U0NBTl9DT05GSUdfVE9LRU4sIHVzZVZhbHVlOiBjb25maWcuc2NhbiB9LFxuXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiBIVFRQX0lOVEVSQ0VQVE9SUyxcbiAgICAgICAgICB1c2VDbGFzczogSHR0cEVycm9ySW50ZXJjZXB0b3IsXG4gICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICAgIE5neFNjYW5Eb2NUcmFuc2xhdGlvblByb3ZpZGVyLFxuICAgICAgICBOZ3hTY2FuZG9jQ2FtZXJhUHJvdmlkZXIsXG4gICAgICAgLy8gTmd4U2NhbmRvY0F1dGhQcm92aWRlcixcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCl7XG5cbiAgfVxufVxuIl19
|
package/esm2022/ngx-scandoc.mjs
DELETED
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Generated bundle index. Do not edit.
|
|
3
|
-
*/
|
|
4
|
-
export * from './public-api';
|
|
5
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LXNjYW5kb2MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9wcm9qZWN0cy9uZ3gtc2NhbmRvYy9zcmMvbmd4LXNjYW5kb2MudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
|
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { jwtDecode } from "jwt-decode";
|
|
3
|
-
import { of } from 'rxjs';
|
|
4
|
-
import { map, tap } from 'rxjs/operators';
|
|
5
|
-
import moment from 'moment';
|
|
6
|
-
import { AUTH_CONFIG_TOKEN } from '../core/tokens/config.tokens';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
import * as i1 from "@angular/common/http";
|
|
9
|
-
export class NgxScandocAuthProvider {
|
|
10
|
-
constructor(http, injector) {
|
|
11
|
-
this.http = http;
|
|
12
|
-
this.injector = injector;
|
|
13
|
-
this.token = '';
|
|
14
|
-
this.refresh_token = '';
|
|
15
|
-
this.tokenTimestamps = {
|
|
16
|
-
Time: 0,
|
|
17
|
-
Client: 0,
|
|
18
|
-
SubClient: 0,
|
|
19
|
-
};
|
|
20
|
-
this.config = this.injector.get(AUTH_CONFIG_TOKEN);
|
|
21
|
-
}
|
|
22
|
-
setSubClient(name) {
|
|
23
|
-
this.subClient = name;
|
|
24
|
-
}
|
|
25
|
-
setConfig() { }
|
|
26
|
-
get tokenExpired() {
|
|
27
|
-
if (this.token == '' || this.tokenTimestamps.Time === 0) {
|
|
28
|
-
console.log('EXPIRED');
|
|
29
|
-
return true;
|
|
30
|
-
}
|
|
31
|
-
const { Time } = this.tokenTimestamps;
|
|
32
|
-
const tokenDate = moment(Time);
|
|
33
|
-
const isValid = moment(tokenDate).isBefore(moment().add(5, 'minutes'));
|
|
34
|
-
return !isValid;
|
|
35
|
-
}
|
|
36
|
-
resetToken() {
|
|
37
|
-
// this.token = '';
|
|
38
|
-
}
|
|
39
|
-
get accesToken() {
|
|
40
|
-
return this.tokenExpired ? this.fetchToken() : of(this.token);
|
|
41
|
-
}
|
|
42
|
-
fetchToken() {
|
|
43
|
-
if (this.token && this.refresh_token) {
|
|
44
|
-
return this.refreshToken();
|
|
45
|
-
}
|
|
46
|
-
return this.getToken();
|
|
47
|
-
}
|
|
48
|
-
refreshToken() {
|
|
49
|
-
const { path, refresh } = this.config;
|
|
50
|
-
return this.http
|
|
51
|
-
.post(`${path}${refresh}`, {
|
|
52
|
-
refresh_token: this.refresh_token,
|
|
53
|
-
})
|
|
54
|
-
.pipe(tap((token) => {
|
|
55
|
-
// console.log(this.token);
|
|
56
|
-
this.token = token.access_token;
|
|
57
|
-
this.updateToken();
|
|
58
|
-
// this.token = token.access_token;
|
|
59
|
-
// console.log('TOKEN', this.token);
|
|
60
|
-
// this.refresh_token = token.refresh_token;
|
|
61
|
-
// const decoded: any = jwt_decode(this.token);
|
|
62
|
-
// console.log(decoded);
|
|
63
|
-
// const { Time, Client, SubClient } = decoded;
|
|
64
|
-
// this.tokenTimestamps = { Time, Client, SubClient };
|
|
65
|
-
}), map((data) => data.access_token));
|
|
66
|
-
}
|
|
67
|
-
get user_key() {
|
|
68
|
-
return this.config.clientId;
|
|
69
|
-
}
|
|
70
|
-
get sub_client() {
|
|
71
|
-
return this.config.tokenName ? this.config.tokenName : this.subClient;
|
|
72
|
-
}
|
|
73
|
-
updateToken() {
|
|
74
|
-
const decoded = jwtDecode(this.token);
|
|
75
|
-
const { Time, Client, SubClient } = decoded;
|
|
76
|
-
this.tokenTimestamps = { Time, Client, SubClient };
|
|
77
|
-
}
|
|
78
|
-
getToken() {
|
|
79
|
-
const { path, login, version, clientId, tokenName } = this.config;
|
|
80
|
-
if (version == 'v1') {
|
|
81
|
-
return this.http
|
|
82
|
-
.post(`${path}`, {
|
|
83
|
-
clientId: clientId,
|
|
84
|
-
token: tokenName,
|
|
85
|
-
})
|
|
86
|
-
.pipe(map((data) => data.accessToken), tap((token) => {
|
|
87
|
-
this.token = token;
|
|
88
|
-
const decoded = jwtDecode(this.token);
|
|
89
|
-
const { iat, exp } = decoded;
|
|
90
|
-
this.tokenTimestamps = { iat, exp, Time: 0 };
|
|
91
|
-
}));
|
|
92
|
-
}
|
|
93
|
-
return this.http
|
|
94
|
-
.post(`${path}${login}`, {
|
|
95
|
-
user_key: this.user_key,
|
|
96
|
-
sub_client: this.sub_client,
|
|
97
|
-
})
|
|
98
|
-
.pipe(tap((token) => {
|
|
99
|
-
this.token = token.access_token;
|
|
100
|
-
this.refresh_token = token.refresh_token;
|
|
101
|
-
this.updateToken();
|
|
102
|
-
}), map((data) => data.access_token));
|
|
103
|
-
}
|
|
104
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocAuthProvider, deps: [{ token: i1.HttpClient }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
105
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocAuthProvider, providedIn: 'root' }); }
|
|
106
|
-
}
|
|
107
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocAuthProvider, decorators: [{
|
|
108
|
-
type: Injectable,
|
|
109
|
-
args: [{
|
|
110
|
-
providedIn: 'root',
|
|
111
|
-
}]
|
|
112
|
-
}], ctorParameters: () => [{ type: i1.HttpClient }, { type: i0.Injector }] });
|
|
113
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5wcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zY2FuZG9jL3NyYy9wcm92aWRlcnMvYXV0aC5wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsVUFBVSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFFdkMsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFhLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3JELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQUk1QixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7O0FBS2pFLE1BQU0sT0FBTyxzQkFBc0I7SUFHakMsWUFDVSxJQUFnQixFQUNoQixRQUFrQjtRQURsQixTQUFJLEdBQUosSUFBSSxDQUFZO1FBQ2hCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFXNUIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixrQkFBYSxHQUFXLEVBQUUsQ0FBQztRQUUzQixvQkFBZSxHQUFRO1lBQ3JCLElBQUksRUFBRSxDQUFDO1lBQ1AsTUFBTSxFQUFFLENBQUM7WUFDVCxTQUFTLEVBQUUsQ0FBQztTQUNiLENBQUM7UUFoQkEsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRCxZQUFZLENBQUMsSUFBWTtRQUN2QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztJQUN4QixDQUFDO0lBQ0QsU0FBUyxLQUFJLENBQUM7SUFZZCxJQUFZLFlBQVk7UUFFdEIsSUFBSSxJQUFJLENBQUMsS0FBSyxJQUFJLEVBQUUsSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFD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O2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGp3dERlY29kZSB9IGZyb20gXCJqd3QtZGVjb2RlXCI7XG5cbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBtYXAsIHN3aXRjaE1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cEhlYWRlcnMgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBBdXRoQ29uZmlnIH0gZnJvbSAnLi4vY29yZS9pbnRlcmZhY2VzL2NvbmZpZyc7XG5pbXBvcnQgeyBCdWZmZXIgfSBmcm9tICdidWZmZXInO1xuaW1wb3J0IHsgQVVUSF9DT05GSUdfVE9LRU4gfSBmcm9tICcuLi9jb3JlL3Rva2Vucy9jb25maWcudG9rZW5zJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIE5neFNjYW5kb2NBdXRoUHJvdmlkZXIge1xuICBzdWJDbGllbnQhOiBzdHJpbmc7XG4gICBjb25maWc6IEF1dGhDb25maWdcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBodHRwOiBIdHRwQ2xpZW50LFxuICAgIHByaXZhdGUgaW5qZWN0b3I6IEluamVjdG9yXG5cbiAgKSB7XG4gICAgdGhpcy5jb25maWcgPSB0aGlzLmluamVjdG9yLmdldChBVVRIX0NPTkZJR19UT0tFTik7XG4gIH1cblxuICBzZXRTdWJDbGllbnQobmFtZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zdWJDbGllbnQgPSBuYW1lO1xuICB9XG4gIHNldENvbmZpZygpIHt9XG5cbiAgdG9rZW46IHN0cmluZyA9ICcnO1xuXG4gIHJlZnJlc2hfdG9rZW46IHN0cmluZyA9ICcnO1xuXG4gIHRva2VuVGltZXN0YW1wczogYW55ID0ge1xuICAgIFRpbWU6IDAsXG4gICAgQ2xpZW50OiAwLFxuICAgIFN1YkNsaWVudDogMCxcbiAgfTtcblxuICBwcml2YXRlIGdldCB0b2tlbkV4cGlyZWQoKTogYm9vbGVhbiB7XG5cbiAgICBpZiAodGhpcy50b2tlbiA9PSAnJyB8fCB0aGlzLnRva2VuVGltZXN0YW1wcy5UaW1lID09PSAwKSB7XG4gICAgICBjb25zb2xlLmxvZygnRVhQSVJFRCcpO1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgeyBUaW1lIH0gPSB0aGlzLnRva2VuVGltZXN0YW1wcztcbiAgICBjb25zdCB0b2tlbkRhdGUgPSBtb21lbnQoVGltZSk7XG4gICAgY29uc3QgaXNWYWxpZCA9IG1vbWVudCh0b2tlbkRhdGUpLmlzQmVmb3JlKG1vbWVudCgpLmFkZCg1LCAnbWludXRlcycpKTtcblxuICAgIHJldHVybiAhaXNWYWxpZDtcbiAgfVxuXG4gIHJlc2V0VG9rZW4oKSB7XG4gICAgLy8gdGhpcy50b2tlbiA9ICcnO1xuICB9XG4gIGdldCBhY2Nlc1Rva2VuKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICByZXR1cm4gdGhpcy50b2tlbkV4cGlyZWQgPyB0aGlzLmZldGNoVG9rZW4oKSA6IG9mKHRoaXMudG9rZW4pO1xuICB9XG5cbiAgZmV0Y2hUb2tlbigpIHtcbiAgICBpZiAodGhpcy50b2tlbiAmJiB0aGlzLnJlZnJlc2hfdG9rZW4pIHtcbiAgICAgIHJldHVybiB0aGlzLnJlZnJlc2hUb2tlbigpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5nZXRUb2tlbigpO1xuICB9XG5cbiAgcmVmcmVzaFRva2VuKCk6IE9ic2VydmFibGU8YW55PiB7XG4gICAgY29uc3QgeyBwYXRoLCByZWZyZXNoIH0gPSB0aGlzLmNvbmZpZztcbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdChgJHtwYXRofSR7cmVmcmVzaH1gLCB7XG4gICAgICAgIHJlZnJlc2hfdG9rZW46IHRoaXMucmVmcmVzaF90b2tlbixcbiAgICAgIH0pXG4gICAgICAucGlwZShcbiAgICAgICAgdGFwKCh0b2tlbjogYW55KSA9PiB7XG4gICAgICAgICAgLy8gY29uc29sZS5sb2codGhpcy50b2tlbik7XG4gICAgICAgICAgdGhpcy50b2tlbiA9IHRva2VuLmFjY2Vzc190b2tlbjtcbiAgICAgICAgICB0aGlzLnVwZGF0ZVRva2VuKCk7XG4gICAgICAgICAgLy8gdGhpcy50b2tlbiA9IHRva2VuLmFjY2Vzc190b2tlbjtcbiAgICAgICAgICAvLyBjb25zb2xlLmxvZygnVE9LRU4nLCB0aGlzLnRva2VuKTtcbiAgICAgICAgICAvLyB0aGlzLnJlZnJlc2hfdG9rZW4gPSB0b2tlbi5yZWZyZXNoX3Rva2VuO1xuICAgICAgICAgIC8vIGNvbnN0IGRlY29kZWQ6IGFueSA9IGp3dF9kZWNvZGUodGhpcy50b2tlbik7XG4gICAgICAgICAgLy8gY29uc29sZS5sb2coZGVjb2RlZCk7XG4gICAgICAgICAgLy8gY29uc3QgeyBUaW1lLCBDbGllbnQsIFN1YkNsaWVudCB9ID0gZGVjb2RlZDtcbiAgICAgICAgICAvLyB0aGlzLnRva2VuVGltZXN0YW1wcyA9IHsgVGltZSwgQ2xpZW50LCBTdWJDbGllbnQgfTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcCgoZGF0YTogYW55KSA9PiBkYXRhLmFjY2Vzc190b2tlbilcbiAgICAgICk7XG4gIH1cblxuICBwcml2YXRlIGdldCB1c2VyX2tleSgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcuY2xpZW50SWQ7XG4gIH1cbiAgcHJpdmF0ZSBnZXQgc3ViX2NsaWVudCgpIHtcbiAgICByZXR1cm4gdGhpcy5jb25maWcudG9rZW5OYW1lID8gdGhpcy5jb25maWcudG9rZW5OYW1lIDogdGhpcy5zdWJDbGllbnQ7XG4gIH1cbiAgcHJpdmF0ZSB1cGRhdGVUb2tlbigpIHtcbiAgICBjb25zdCBkZWNvZGVkOiBhbnkgPSBqd3REZWNvZGUodGhpcy50b2tlbik7XG5cbiAgICBjb25zdCB7IFRpbWUsIENsaWVudCwgU3ViQ2xpZW50IH0gPSBkZWNvZGVkO1xuICAgIHRoaXMudG9rZW5UaW1lc3RhbXBzID0geyBUaW1lLCBDbGllbnQsIFN1YkNsaWVudCB9O1xuICB9XG4gIHByaXZhdGUgZ2V0VG9rZW4oKTogT2JzZXJ2YWJsZTxhbnk+IHtcblxuXG4gICAgY29uc3QgeyBwYXRoLCBsb2dpbiwgdmVyc2lvbiwgY2xpZW50SWQsIHRva2VuTmFtZSB9ID0gdGhpcy5jb25maWc7XG5cbiAgICBpZiAodmVyc2lvbiA9PSAndjEnKSB7XG4gICAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAgIC5wb3N0KGAke3BhdGh9YCwge1xuICAgICAgICAgIGNsaWVudElkOiBjbGllbnRJZCxcbiAgICAgICAgICB0b2tlbjogdG9rZW5OYW1lLFxuICAgICAgICB9KVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBtYXAoKGRhdGE6IGFueSkgPT4gZGF0YS5hY2Nlc3NUb2tlbiksXG4gICAgICAgICAgdGFwKCh0b2tlbjogYW55KSA9PiB7XG4gICAgICAgICAgICB0aGlzLnRva2VuID0gdG9rZW47XG4gICAgICAgICAgICBjb25zdCBkZWNvZGVkOiBhbnkgPSBqd3REZWNvZGUodGhpcy50b2tlbik7XG4gICAgICAgICAgICBjb25zdCB7IGlhdCwgZXhwIH0gPSBkZWNvZGVkO1xuICAgICAgICAgICAgdGhpcy50b2tlblRpbWVzdGFtcHMgPSB7IGlhdCwgZXhwLCBUaW1lOiAwIH07XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gdGhpcy5odHRwXG4gICAgICAucG9zdChgJHtwYXRofSR7bG9naW59YCwge1xuICAgICAgICB1c2VyX2tleTogdGhpcy51c2VyX2tleSxcbiAgICAgICAgc3ViX2NsaWVudDogdGhpcy5zdWJfY2xpZW50LFxuICAgICAgfSlcbiAgICAgIC5waXBlKFxuICAgICAgICB0YXAoKHRva2VuOiBhbnkpID0+IHtcblxuICAgICAgICAgIHRoaXMudG9rZW4gPSB0b2tlbi5hY2Nlc3NfdG9rZW47XG5cbiAgICAgICAgICB0aGlzLnJlZnJlc2hfdG9rZW4gPSB0b2tlbi5yZWZyZXNoX3Rva2VuO1xuICAgICAgICAgIHRoaXMudXBkYXRlVG9rZW4oKTtcbiAgICAgICAgfSksXG4gICAgICAgIG1hcCgoZGF0YTogYW55KSA9PiBkYXRhLmFjY2Vzc190b2tlbilcbiAgICAgICk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { Subject, from, of } from 'rxjs';
|
|
3
|
-
import { map, switchMap } from 'rxjs/operators';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "@angular/cdk/platform";
|
|
6
|
-
export class NgxScandocCameraProvider {
|
|
7
|
-
constructor(platform) {
|
|
8
|
-
this.platform = platform;
|
|
9
|
-
this.selfie$ = new Subject();
|
|
10
|
-
this.rectPosition = {
|
|
11
|
-
l: 0,
|
|
12
|
-
t: 0,
|
|
13
|
-
h: 0,
|
|
14
|
-
w: 0,
|
|
15
|
-
_w: 0,
|
|
16
|
-
_h: 0,
|
|
17
|
-
};
|
|
18
|
-
this.switchCamera = new Subject();
|
|
19
|
-
this.$showSwitchSelfie = new Subject();
|
|
20
|
-
this.cameraReady = false;
|
|
21
|
-
this.$showSwitch = new Subject();
|
|
22
|
-
this.cameraSwitched = new Subject();
|
|
23
|
-
this.devices = new Subject();
|
|
24
|
-
this.multipleWebcamsAvailable = false;
|
|
25
|
-
this.id = Math.random();
|
|
26
|
-
console.warn('PROVIDER INIT', this.id);
|
|
27
|
-
this.setup();
|
|
28
|
-
}
|
|
29
|
-
get hintPosition() {
|
|
30
|
-
return this.rectPosition.t + this.rectPosition.h + 5;
|
|
31
|
-
}
|
|
32
|
-
getDevices() {
|
|
33
|
-
if (this.mediaDevices) {
|
|
34
|
-
return of(this.mediaDevices);
|
|
35
|
-
}
|
|
36
|
-
return this.devices.asObservable();
|
|
37
|
-
}
|
|
38
|
-
preloadVideo() {
|
|
39
|
-
return from(navigator.mediaDevices.getUserMedia({ video: true })).pipe(map((mediaStream) => {
|
|
40
|
-
console.warn(mediaStream);
|
|
41
|
-
if (!this.platform.FIREFOX) {
|
|
42
|
-
mediaStream.getTracks().forEach((track) => {
|
|
43
|
-
track.stop();
|
|
44
|
-
});
|
|
45
|
-
}
|
|
46
|
-
}));
|
|
47
|
-
}
|
|
48
|
-
setup() {
|
|
49
|
-
console.warn('SETUP');
|
|
50
|
-
this.$showSwitch.subscribe((s) => {
|
|
51
|
-
console.log(s);
|
|
52
|
-
});
|
|
53
|
-
// console.time('device');
|
|
54
|
-
const devices$ = this.preloadVideo().pipe(switchMap(() => from(navigator.mediaDevices.enumerateDevices()).pipe(map((inputDevices) => inputDevices.filter((m) => m.kind == 'videoinput')))));
|
|
55
|
-
devices$.subscribe((mediaDevices) => {
|
|
56
|
-
console.log('[DEVICES]', mediaDevices, mediaDevices.map((d) => d.label));
|
|
57
|
-
this.mediaDevices = mediaDevices;
|
|
58
|
-
this.multipleWebcamsAvailable = mediaDevices && mediaDevices.length > 1;
|
|
59
|
-
this.devices.next(mediaDevices);
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
setDefault() {
|
|
63
|
-
if (this.deviceId) {
|
|
64
|
-
this.switchCamera.next(this.deviceId);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
selectCamera(event) {
|
|
68
|
-
this.switchCamera.next(event.value);
|
|
69
|
-
}
|
|
70
|
-
cameraWasSwitched(deviceId) {
|
|
71
|
-
console.log('[active device]', deviceId);
|
|
72
|
-
this.deviceId = deviceId;
|
|
73
|
-
this.cameraReady = true;
|
|
74
|
-
}
|
|
75
|
-
get webcamObservable() {
|
|
76
|
-
return this.switchCamera.asObservable();
|
|
77
|
-
}
|
|
78
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocCameraProvider, deps: [{ token: i1.Platform }], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
79
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocCameraProvider, providedIn: 'root' }); }
|
|
80
|
-
}
|
|
81
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: NgxScandocCameraProvider, decorators: [{
|
|
82
|
-
type: Injectable,
|
|
83
|
-
args: [{
|
|
84
|
-
providedIn: 'root',
|
|
85
|
-
}]
|
|
86
|
-
}], ctorParameters: () => [{ type: i1.Platform }] });
|
|
87
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZXJhLnByb3ZpZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LXNjYW5kb2Mvc3JjL3Byb3ZpZGVycy9jYW1lcmEucHJvdmlkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQW1CLE9BQU8sRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFELE9BQU8sRUFBVSxHQUFHLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7OztBQU14RCxNQUFNLE9BQU8sd0JBQXdCO0lBNEJuQyxZQUFvQixRQUFrQjtRQUFsQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBdkJ0QyxZQUFPLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUV4QixpQkFBWSxHQUFHO1lBQ2IsQ0FBQyxFQUFFLENBQUM7WUFDSixDQUFDLEVBQUUsQ0FBQztZQUNKLENBQUMsRUFBRSxDQUFDO1lBQ0osQ0FBQyxFQUFFLENBQUM7WUFDSixFQUFFLEVBQUUsQ0FBQztZQUNMLEVBQUUsRUFBRSxDQUFDO1NBQ04sQ0FBQztRQUNGLGlCQUFZLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUM3QixzQkFBaUIsR0FBRyxJQUFJLE9BQU8sRUFBRSxDQUFDO1FBRWxDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBRXBCLGdCQUFXLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUU1QixtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFFL0IsWUFBTyxHQUFHLElBQUksT0FBTyxFQUFFLENBQUM7UUFFeEIsNkJBQXdCLEdBQUcsS0FBSyxDQUFDO1FBQ2pDLE9BQUUsR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFakIsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLEVBQUUs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RUFBRSxRQUFRLENBQUMsQ0FBQztRQUN6QyxJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztRQUN6QixJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQztJQUMxQixDQUFDO0lBQ0QsSUFBSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQzFDLENBQUM7K0dBdEdVLHdCQUF3QjttSEFBeEIsd0JBQXdCLGNBRnZCLE1BQU07OzRGQUVQLHdCQUF3QjtrQkFIcEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB3ZWJTb2NrZXQgfSBmcm9tICdyeGpzL3dlYlNvY2tldCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YmplY3QsIGZyb20sIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBmaWx0ZXIsIG1hcCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgV2ViY2FtVXRpbCB9IGZyb20gJy4uL2NvcmUvY29tcG9uZW50cy93ZWJjYW0vdXRpbC93ZWJjYW0udXRpbCc7XG5pbXBvcnQgeyBQbGF0Zm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmd4U2NhbmRvY0NhbWVyYVByb3ZpZGVyIHtcbiAgbWVkaWFEZXZpY2VzOiBhbnk7XG5cbiAgZGV2aWNlSWQ6IGFueTtcblxuICBzZWxmaWUkID0gbmV3IFN1YmplY3QoKTtcblxuICByZWN0UG9zaXRpb24gPSB7XG4gICAgbDogMCxcbiAgICB0OiAwLFxuICAgIGg6IDAsXG4gICAgdzogMCxcbiAgICBfdzogMCxcbiAgICBfaDogMCxcbiAgfTtcbiAgc3dpdGNoQ2FtZXJhID0gbmV3IFN1YmplY3QoKTtcbiAgJHNob3dTd2l0Y2hTZWxmaWUgPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNhbWVyYVJlYWR5ID0gZmFsc2U7XG5cbiAgJHNob3dTd2l0Y2ggPSBuZXcgU3ViamVjdCgpO1xuXG4gIGNhbWVyYVN3aXRjaGVkID0gbmV3IFN1YmplY3QoKTtcblxuICBkZXZpY2VzID0gbmV3IFN1YmplY3QoKTtcblxuICBtdWx0aXBsZVdlYmNhbXNBdmFpbGFibGUgPSBmYWxzZTtcbiAgaWQgPSBNYXRoLnJhbmRvbSgpO1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHBsYXRmb3JtOiBQbGF0Zm9ybSkge1xuICAgIGNvbnNvbGUud2FybignUFJPVklERVIgSU5JVCcsIHRoaXMuaWQpO1xuICAgIHRoaXMuc2V0dXAoKTtcbiAgfVxuXG4gIGdldCBoaW50UG9zaXRpb24oKSB7XG4gICAgcmV0dXJuIHRoaXMucmVjdFBvc2l0aW9uLnQgKyB0aGlzLnJlY3RQb3NpdGlvbi5oICsgNTtcbiAgfVxuXG4gIGdldERldmljZXMoKSB7XG4gICAgaWYgKHRoaXMubWVkaWFEZXZpY2VzKSB7XG4gICAgICByZXR1cm4gb2YodGhpcy5tZWRpYURldmljZXMpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmRldmljZXMuYXNPYnNlcnZhYmxlKCk7XG4gIH1cblxuICBwcml2YXRlIHByZWxvYWRWaWRlbygpIHtcbiAgICByZXR1cm4gZnJvbShuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7IHZpZGVvOiB0cnVlIH0pKS5waXBlKFxuICAgICAgbWFwKChtZWRpYVN0cmVhbSkgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4obWVkaWFTdHJlYW0pO1xuICAgICAgICBpZiAoIXRoaXMucGxhdGZvcm0uRklSRUZPWCkge1xuICAgICAgICAgIG1lZGlhU3RyZWFtLmdldFRyYWNrcygpLmZvckVhY2goKHRyYWNrKSA9PiB7XG4gICAgICAgICAgICB0cmFjay5zdG9wKCk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuICBzZXR1cCgpIHtcbiAgICBjb25zb2xlLndhcm4oJ1NFVFVQJyk7XG4gICAgdGhpcy4kc2hvd1N3aXRjaC5zdWJzY3JpYmUoKHMpID0+IHtcbiAgICAgIGNvbnNvbGUubG9nKHMpO1xuICAgIH0pO1xuICAgIC8vIGNvbnNvbGUudGltZSgnZGV2aWNlJyk7XG5cbiAgICBjb25zdCBkZXZpY2VzJCA9IHRoaXMucHJlbG9hZFZpZGVvKCkucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoKSA9PlxuICAgICAgICBmcm9tKG5hdmlnYXRvci5tZWRpYURldmljZXMuZW51bWVyYXRlRGV2aWNlcygpKS5waXBlKFxuICAgICAgICAgIG1hcCgoaW5wdXREZXZpY2VzOiBNZWRpYURldmljZUluZm9bXSkgPT5cbiAgICAgICAgICAgIGlucHV0RGV2aWNlcy5maWx0ZXIoKG0pID0+IG0ua2luZCA9PSAndmlkZW9pbnB1dCcpXG4gICAgICAgICAgKVxuICAgICAgICApXG4gICAgICApXG4gICAgKTtcblxuICAgIGRldmljZXMkLnN1YnNjcmliZSgobWVkaWFEZXZpY2VzOiBNZWRpYURldmljZUluZm9bXSkgPT4ge1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICdbREVWSUNFU10nLFxuICAgICAgICBtZWRpYURldmljZXMsXG4gICAgICAgIG1lZGlhRGV2aWNlcy5tYXAoKGQpID0+IGQubGFiZWwpXG4gICAgICApO1xuICAgICAgdGhpcy5tZWRpYURldmljZXMgPSBtZWRpYURldmljZXM7XG4gICAgICB0aGlzLm11bHRpcGxlV2ViY2Ftc0F2YWlsYWJsZSA9IG1lZGlhRGV2aWNlcyAmJiBtZWRpYURldmljZXMubGVuZ3RoID4gMTtcbiAgICAgIHRoaXMuZGV2aWNlcy5uZXh0KG1lZGlhRGV2aWNlcyk7XG4gICAgfSk7XG4gIH1cbiAgc2V0RGVmYXVsdCgpIHtcbiAgICBpZiAodGhpcy5kZXZpY2VJZCkge1xuICAgICAgdGhpcy5zd2l0Y2hDYW1lcmEubmV4dCh0aGlzLmRldmljZUlkKTtcbiAgICB9XG4gIH1cblxuICBzZWxlY3RDYW1lcmEoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuc3dpdGNoQ2FtZXJhLm5leHQoZXZlbnQudmFsdWUpO1xuICB9XG5cbiAgcHVibGljIGNhbWVyYVdhc1N3aXRjaGVkKGRldmljZUlkOiBzdHJpbmcpOiB2b2lkIHtcbiAgICBjb25zb2xlLmxvZygnW2FjdGl2ZSBkZXZpY2VdJywgZGV2aWNlSWQpO1xuICAgIHRoaXMuZGV2aWNlSWQgPSBkZXZpY2VJZDtcbiAgICB0aGlzLmNhbWVyYVJlYWR5ID0gdHJ1ZTtcbiAgfVxuICBnZXQgd2ViY2FtT2JzZXJ2YWJsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5zd2l0Y2hDYW1lcmEuYXNPYnNlcnZhYmxlKCk7XG4gIH1cbn1cbiJdfQ==
|