ecabs-components 1.0.61 → 1.0.62
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/esm2022/lib/base/services/ecabs-components.service.mjs +17 -9
- package/esm2022/lib/ecabs-phone/ecabs-phone.component.mjs +32 -13
- package/fesm2022/ecabs-components.mjs +93 -70
- package/fesm2022/ecabs-components.mjs.map +1 -1
- package/lib/base/services/ecabs-components.service.d.ts +5 -0
- package/lib/ecabs-phone/ecabs-phone.component.d.ts +5 -1
- package/package.json +1 -1
|
@@ -3,18 +3,20 @@ import { BehaviorSubject } from 'rxjs';
|
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
export class EcabsComponentsService {
|
|
5
5
|
defaultConfig = {
|
|
6
|
+
defaultCountries: [],
|
|
6
7
|
errorMessages: [
|
|
7
8
|
{ type: 'required', message: '[label] is required' },
|
|
8
|
-
{ type: 'minlength', message: '[label] should be
|
|
9
|
+
{ type: 'minlength', message: '[label] should be at least [requiredLength] character' },
|
|
9
10
|
{ type: 'maxLength', message: '[label] should be maximum [requiredLength] character' },
|
|
10
|
-
{ type: 'min', message: '[label] should be
|
|
11
|
+
{ type: 'min', message: '[label] should be minimum [min]' },
|
|
11
12
|
{ type: 'max', message: '[label] should be maximum [max]' },
|
|
12
|
-
{ type: 'minValue', message: '[label] should be
|
|
13
|
+
{ type: 'minValue', message: '[label] should be minimum [requiredMin]' },
|
|
13
14
|
{ type: 'maxValue', message: '[label] should be maximum [requiredMax]' },
|
|
14
15
|
],
|
|
15
16
|
};
|
|
16
17
|
_config = new BehaviorSubject(this.defaultConfig);
|
|
17
|
-
constructor() {
|
|
18
|
+
constructor() {
|
|
19
|
+
}
|
|
18
20
|
setConfig(config) {
|
|
19
21
|
this._config.next(config);
|
|
20
22
|
}
|
|
@@ -23,10 +25,12 @@ export class EcabsComponentsService {
|
|
|
23
25
|
}
|
|
24
26
|
updateConfig(configUpdate) {
|
|
25
27
|
const currentConfig = this._config.getValue();
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
let updatedConfig = new GenericComponentConfig();
|
|
29
|
+
for (const key in currentConfig) {
|
|
30
|
+
if (currentConfig.hasOwnProperty(key)) {
|
|
31
|
+
updatedConfig[key] = [...currentConfig[key], ...configUpdate[key]];
|
|
32
|
+
}
|
|
33
|
+
}
|
|
30
34
|
this._config.next(updatedConfig);
|
|
31
35
|
}
|
|
32
36
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsComponentsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -38,4 +42,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
38
42
|
providedIn: 'root',
|
|
39
43
|
}]
|
|
40
44
|
}], ctorParameters: function () { return []; } });
|
|
41
|
-
|
|
45
|
+
export class GenericComponentConfig {
|
|
46
|
+
defaultCountries = [];
|
|
47
|
+
errorMessages = [];
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtY29tcG9uZW50cy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2Jhc2Uvc2VydmljZXMvZWNhYnMtY29tcG9uZW50cy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFDLGVBQWUsRUFBYSxNQUFNLE1BQU0sQ0FBQzs7QUFLakQsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxhQUFhLEdBQTBCO1FBQ3JDLGdCQUFnQixFQUFFLEVBQUU7UUFDcEIsYUFBYSxFQUFFO1lBQ2IsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxxQkFBcUIsRUFBQztZQUNsRCxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsT0FBTyxFQUFFLHVEQUF1RCxFQUFDO1lBQ3JGLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxPQUFPLEVBQUUsc0RBQXNELEVBQUM7WUFDcEYsRUFBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxpQ0FBaUMsRUFBQztZQUN6RCxFQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLGlDQUFpQyxFQUFDO1lBQ3pELEVBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxPQUFPLEVBQUUseUNBQXlDLEVBQUM7WUFDdEUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSx5Q0FBeUMsRUFBQztTQUN2RTtLQUNGLENBQUM7SUFFTSxPQUFPLEdBQTJDLElBQUksZUFBZSxDQUF3QixJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFFekg7SUFDQSxDQUFDO0lBRUQsU0FBUyxDQUFDLE1BQTZCO1FBQ3JDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzVCLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFRCxZQUFZLENBQUMsWUFBbUM7UUFDOUMsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QyxJQUFJLGFBQWEsR0FBMEIsSUFBSSxzQkFBc0IsRUFBRSxDQUFDO1FBRXhFLEtBQUssTUFBTSxHQUFHLElBQUksYUFBYSxFQUFFO1lBQy9CLElBQUksYUFBYSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDckMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsR0FBRyxhQUFhLENBQUMsR0FBRyxDQUFDLEVBQUUsR0FBRyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUNwRTtTQUNGO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDbkMsQ0FBQzt3R0F0Q1Usc0JBQXNCOzRHQUF0QixzQkFBc0IsY0FGckIsTUFBTTs7NEZBRVAsc0JBQXNCO2tCQUhsQyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7QUFvREQsTUFBTSxPQUFPLHNCQUFzQjtJQUNqQyxnQkFBZ0IsR0FBYSxFQUFFLENBQUM7SUFDaEMsYUFBYSxHQUFtQixFQUFFLENBQUM7Q0FDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0luamVjdGFibGV9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZX0gZnJvbSAncnhqcyc7XHJcblxyXG5ASW5qZWN0YWJsZSh7XHJcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRWNhYnNDb21wb25lbnRzU2VydmljZSB7XHJcbiAgZGVmYXVsdENvbmZpZzogRWNhYnNDb21wb25lbnRzQ29uZmlnID0ge1xyXG4gICAgZGVmYXVsdENvdW50cmllczogW10sXHJcbiAgICBlcnJvck1lc3NhZ2VzOiBbXHJcbiAgICAgIHt0eXBlOiAncmVxdWlyZWQnLCBtZXNzYWdlOiAnW2xhYmVsXSBpcyByZXF1aXJlZCd9LFxyXG4gICAgICB7dHlwZTogJ21pbmxlbmd0aCcsIG1lc3NhZ2U6ICdbbGFiZWxdIHNob3VsZCBiZSBhdCBsZWFzdCBbcmVxdWlyZWRMZW5ndGhdIGNoYXJhY3Rlcid9LFxyXG4gICAgICB7dHlwZTogJ21heExlbmd0aCcsIG1lc3NhZ2U6ICdbbGFiZWxdIHNob3VsZCBiZSBtYXhpbXVtIFtyZXF1aXJlZExlbmd0aF0gY2hhcmFjdGVyJ30sXHJcbiAgICAgIHt0eXBlOiAnbWluJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1pbmltdW0gW21pbl0nfSxcclxuICAgICAge3R5cGU6ICdtYXgnLCBtZXNzYWdlOiAnW2xhYmVsXSBzaG91bGQgYmUgbWF4aW11bSBbbWF4XSd9LFxyXG4gICAgICB7dHlwZTogJ21pblZhbHVlJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1pbmltdW0gW3JlcXVpcmVkTWluXSd9LFxyXG4gICAgICB7dHlwZTogJ21heFZhbHVlJywgbWVzc2FnZTogJ1tsYWJlbF0gc2hvdWxkIGJlIG1heGltdW0gW3JlcXVpcmVkTWF4XSd9LFxyXG4gICAgXSxcclxuICB9O1xyXG5cclxuICBwcml2YXRlIF9jb25maWc6IEJlaGF2aW9yU3ViamVjdDxFY2Fic0NvbXBvbmVudHNDb25maWc+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxFY2Fic0NvbXBvbmVudHNDb25maWc+KHRoaXMuZGVmYXVsdENvbmZpZyk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgc2V0Q29uZmlnKGNvbmZpZzogRWNhYnNDb21wb25lbnRzQ29uZmlnKTogdm9pZCB7XHJcbiAgICB0aGlzLl9jb25maWcubmV4dChjb25maWcpO1xyXG4gIH1cclxuXHJcbiAgZ2V0Q29uZmlnKCk6IE9ic2VydmFibGU8RWNhYnNDb21wb25lbnRzQ29uZmlnPiB7XHJcbiAgICByZXR1cm4gdGhpcy5fY29uZmlnLmFzT2JzZXJ2YWJsZSgpO1xyXG4gIH1cclxuXHJcbiAgdXBkYXRlQ29uZmlnKGNvbmZpZ1VwZGF0ZTogRWNhYnNDb21wb25lbnRzQ29uZmlnKSB7XHJcbiAgICBjb25zdCBjdXJyZW50Q29uZmlnID0gdGhpcy5fY29uZmlnLmdldFZhbHVlKCk7XHJcbiAgICBsZXQgdXBkYXRlZENvbmZpZzogRWNhYnNDb21wb25lbnRzQ29uZmlnID0gbmV3IEdlbmVyaWNDb21wb25lbnRDb25maWcoKTtcclxuXHJcbiAgICBmb3IgKGNvbnN0IGtleSBpbiBjdXJyZW50Q29uZmlnKSB7XHJcbiAgICAgIGlmIChjdXJyZW50Q29uZmlnLmhhc093blByb3BlcnR5KGtleSkpIHtcclxuICAgICAgICB1cGRhdGVkQ29uZmlnW2tleV0gPSBbLi4uY3VycmVudENvbmZpZ1trZXldLCAuLi5jb25maWdVcGRhdGVba2V5XV07XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICB0aGlzLl9jb25maWcubmV4dCh1cGRhdGVkQ29uZmlnKTtcclxuICB9XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgRWNhYnNDb21wb25lbnRzQ29uZmlnIHtcclxuICBkZWZhdWx0Q291bnRyaWVzOiBzdHJpbmdbXTtcclxuICBlcnJvck1lc3NhZ2VzOiBFcnJvck1lc3NhZ2VbXTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBFcnJvck1lc3NhZ2Uge1xyXG4gIHR5cGU6IHN0cmluZztcclxuICBtZXNzYWdlOiBzdHJpbmc7XHJcbn1cclxuXHJcbmV4cG9ydCBjbGFzcyBHZW5lcmljQ29tcG9uZW50Q29uZmlnIGltcGxlbWVudHMgRWNhYnNDb21wb25lbnRzQ29uZmlnIHtcclxuICBkZWZhdWx0Q291bnRyaWVzOiBzdHJpbmdbXSA9IFtdO1xyXG4gIGVycm9yTWVzc2FnZXM6IEVycm9yTWVzc2FnZVtdID0gW107XHJcbn1cclxuIl19
|
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import { Component, EventEmitter, HostListener, Input, Output, ViewChild } from '@angular/core';
|
|
2
|
-
import {
|
|
2
|
+
import { NG_VALUE_ACCESSOR, NgControl, UntypedFormControl, UntypedFormGroup, Validators, } from '@angular/forms';
|
|
3
3
|
import ElementBaseComponent from '../base/element-base';
|
|
4
|
+
import { UnsubscribeService } from "../base/services/unsubscribe.service";
|
|
5
|
+
import { takeUntil } from "rxjs";
|
|
4
6
|
import * as i0 from "@angular/core";
|
|
5
|
-
import * as i1 from "
|
|
6
|
-
import * as i2 from "../base/
|
|
7
|
-
import * as i3 from "@angular/
|
|
8
|
-
import * as i4 from "
|
|
7
|
+
import * as i1 from "../base/services/ecabs-components.service";
|
|
8
|
+
import * as i2 from "../base/services/unsubscribe.service";
|
|
9
|
+
import * as i3 from "@angular/common";
|
|
10
|
+
import * as i4 from "../base/element-wrapper/element-wrapper.component";
|
|
11
|
+
import * as i5 from "@angular/forms";
|
|
12
|
+
import * as i6 from "ngx-mat-intl-tel-input";
|
|
9
13
|
export class EcabsPhoneComponent extends ElementBaseComponent {
|
|
10
14
|
injector;
|
|
15
|
+
ecabsComponentsService;
|
|
16
|
+
unsubscribeService;
|
|
11
17
|
preferredCountries;
|
|
12
18
|
enablePlaceholder;
|
|
13
19
|
enableSearch = true;
|
|
@@ -26,9 +32,11 @@ export class EcabsPhoneComponent extends ElementBaseComponent {
|
|
|
26
32
|
this.phoneForm.setValue({ phone: val });
|
|
27
33
|
}
|
|
28
34
|
}
|
|
29
|
-
constructor(injector) {
|
|
35
|
+
constructor(injector, ecabsComponentsService, unsubscribeService) {
|
|
30
36
|
super();
|
|
31
37
|
this.injector = injector;
|
|
38
|
+
this.ecabsComponentsService = ecabsComponentsService;
|
|
39
|
+
this.unsubscribeService = unsubscribeService;
|
|
32
40
|
}
|
|
33
41
|
onInput(event) {
|
|
34
42
|
if (this.prohibitedCharacters.includes(event.key)) {
|
|
@@ -39,6 +47,13 @@ export class EcabsPhoneComponent extends ElementBaseComponent {
|
|
|
39
47
|
this.phoneForm = new UntypedFormGroup({
|
|
40
48
|
phone: new UntypedFormControl(undefined, this.required ? [Validators.required] : []),
|
|
41
49
|
});
|
|
50
|
+
this.ecabsComponentsService.getConfig()
|
|
51
|
+
.pipe(takeUntil(this.unsubscribeService.subscription()))
|
|
52
|
+
.subscribe((val) => {
|
|
53
|
+
if (!this.preferredCountries?.length) {
|
|
54
|
+
this.preferredCountries = val.defaultCountries;
|
|
55
|
+
}
|
|
56
|
+
});
|
|
42
57
|
}
|
|
43
58
|
ngAfterViewInit() {
|
|
44
59
|
const ngControl = this.injector.get(NgControl, null);
|
|
@@ -52,8 +67,10 @@ export class EcabsPhoneComponent extends ElementBaseComponent {
|
|
|
52
67
|
this.handleErrors();
|
|
53
68
|
});
|
|
54
69
|
}
|
|
55
|
-
onChange = () => {
|
|
56
|
-
|
|
70
|
+
onChange = () => {
|
|
71
|
+
};
|
|
72
|
+
onTouch = () => {
|
|
73
|
+
};
|
|
57
74
|
writeValue(value) {
|
|
58
75
|
this.value = value;
|
|
59
76
|
}
|
|
@@ -79,27 +96,29 @@ export class EcabsPhoneComponent extends ElementBaseComponent {
|
|
|
79
96
|
if (this.value === undefined && !this.phoneInput.empty) {
|
|
80
97
|
this.phoneForm.controls['phone'].setErrors({ validatePhoneNumber: true });
|
|
81
98
|
}
|
|
82
|
-
this.control
|
|
99
|
+
this.control?.setErrors(this.phoneForm.get('phone').errors);
|
|
83
100
|
}
|
|
84
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPhoneComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
101
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPhoneComponent, deps: [{ token: i0.Injector }, { token: i1.EcabsComponentsService }, { token: i2.UnsubscribeService }], target: i0.ɵɵFactoryTarget.Component });
|
|
85
102
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: EcabsPhoneComponent, selector: "ecabs-phone", inputs: { preferredCountries: "preferredCountries", enablePlaceholder: "enablePlaceholder", enableSearch: "enableSearch", useOnlyDisabledClass: "useOnlyDisabledClass", required: "required" }, outputs: { onblur: "onblur" }, host: { listeners: { "keypress": "onInput($event)" } }, providers: [
|
|
103
|
+
UnsubscribeService,
|
|
86
104
|
{
|
|
87
105
|
provide: NG_VALUE_ACCESSOR,
|
|
88
106
|
useExisting: EcabsPhoneComponent,
|
|
89
107
|
multi: true,
|
|
90
108
|
},
|
|
91
|
-
], viewQueries: [{ propertyName: "phoneInput", first: true, predicate: ["phoneInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <form #f=\"ngForm\" [formGroup]=\"phoneForm\">\r\n <ngx-mat-intl-tel-input\r\n (focusout)=\"onBlur()\"\r\n [ngClass]=\"{ error: phoneForm.invalid && (phoneForm.dirty || phoneForm.touched) }\"\r\n #phoneInput\r\n [preferredCountries]=\"preferredCountries\"\r\n [enablePlaceholder]=\"enablePlaceholder\"\r\n [enableSearch]=\"enableSearch\"\r\n [disabled]=\"disabled\"\r\n [formControlName]=\"'phone'\"\r\n name=\"phone\"\r\n [inputPlaceholder]=\"placeholder\"\r\n >\r\n </ngx-mat-intl-tel-input>\r\n </form>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "directive", type:
|
|
109
|
+
], viewQueries: [{ propertyName: "phoneInput", first: true, predicate: ["phoneInput"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<app-element-wrapper [data]=\"getData()\">\r\n <form #f=\"ngForm\" [formGroup]=\"phoneForm\">\r\n <ngx-mat-intl-tel-input\r\n (focusout)=\"onBlur()\"\r\n [ngClass]=\"{ error: phoneForm.invalid && (phoneForm.dirty || phoneForm.touched) }\"\r\n #phoneInput\r\n [preferredCountries]=\"preferredCountries\"\r\n [enablePlaceholder]=\"enablePlaceholder\"\r\n [enableSearch]=\"enableSearch\"\r\n [disabled]=\"disabled\"\r\n [formControlName]=\"'phone'\"\r\n name=\"phone\"\r\n [inputPlaceholder]=\"placeholder\"\r\n >\r\n </ngx-mat-intl-tel-input>\r\n </form>\r\n</app-element-wrapper>\r\n", dependencies: [{ kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i4.ElementWrapperComponent, selector: "app-element-wrapper", inputs: ["data", "showCloseIcon", "focusedFlag", "showPassword", "control"], outputs: ["showHidePassword", "clear", "increase", "decrease"] }, { kind: "directive", type: i5.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "component", type: i6.NgxMatIntlTelInputComponent, selector: "ngx-mat-intl-tel-input", inputs: ["preferredCountries", "enablePlaceholder", "inputPlaceholder", "cssClass", "name", "onlyCountries", "errorStateMatcher", "enableSearch", "searchPlaceholder", "describedBy", "format", "placeholder", "required", "disabled"], outputs: ["countryChanged"] }, { kind: "directive", type: i5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.FormControlName, selector: "[formControlName]", inputs: ["formControlName", "disabled", "ngModel"], outputs: ["ngModelChange"] }] });
|
|
92
110
|
}
|
|
93
111
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: EcabsPhoneComponent, decorators: [{
|
|
94
112
|
type: Component,
|
|
95
113
|
args: [{ selector: 'ecabs-phone', providers: [
|
|
114
|
+
UnsubscribeService,
|
|
96
115
|
{
|
|
97
116
|
provide: NG_VALUE_ACCESSOR,
|
|
98
117
|
useExisting: EcabsPhoneComponent,
|
|
99
118
|
multi: true,
|
|
100
119
|
},
|
|
101
120
|
], template: "<app-element-wrapper [data]=\"getData()\">\r\n <form #f=\"ngForm\" [formGroup]=\"phoneForm\">\r\n <ngx-mat-intl-tel-input\r\n (focusout)=\"onBlur()\"\r\n [ngClass]=\"{ error: phoneForm.invalid && (phoneForm.dirty || phoneForm.touched) }\"\r\n #phoneInput\r\n [preferredCountries]=\"preferredCountries\"\r\n [enablePlaceholder]=\"enablePlaceholder\"\r\n [enableSearch]=\"enableSearch\"\r\n [disabled]=\"disabled\"\r\n [formControlName]=\"'phone'\"\r\n name=\"phone\"\r\n [inputPlaceholder]=\"placeholder\"\r\n >\r\n </ngx-mat-intl-tel-input>\r\n </form>\r\n</app-element-wrapper>\r\n" }]
|
|
102
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { preferredCountries: [{
|
|
121
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.EcabsComponentsService }, { type: i2.UnsubscribeService }]; }, propDecorators: { preferredCountries: [{
|
|
103
122
|
type: Input
|
|
104
123
|
}], enablePlaceholder: [{
|
|
105
124
|
type: Input
|
|
@@ -118,4 +137,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
|
|
|
118
137
|
type: HostListener,
|
|
119
138
|
args: ['keypress', ['$event']]
|
|
120
139
|
}] } });
|
|
121
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtcGhvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXBob25lL2VjYWJzLXBob25lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1waG9uZS9lY2Ficy1waG9uZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWlCLFNBQVMsRUFBRSxZQUFZLEVBQUUsWUFBWSxFQUFZLEtBQUssRUFBcUIsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM1SSxPQUFPLEVBRUwsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixpQkFBaUIsRUFDakIsVUFBVSxFQUNWLFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sb0JBQW9CLE1BQU0sc0JBQXNCLENBQUM7Ozs7OztBQWF4RCxNQUFNLE9BQU8sbUJBQ1gsU0FBUSxvQkFBb0I7SUEyQkU7SUF6QnJCLGtCQUFrQixDQUFZO0lBQzlCLGlCQUFpQixDQUFXO0lBQzVCLFlBQVksR0FBWSxJQUFJLENBQUM7SUFDN0Isb0JBQW9CLEdBQUcsS0FBSyxDQUFDO0lBQ3JCLFFBQVEsQ0FBVTtJQUV6QixNQUFNLEdBQW9DLElBQUksWUFBWSxFQUFFLENBQUM7SUFHdkUsVUFBVSxDQUErQjtJQUV6QyxTQUFTLENBQW1CO0lBQzVCLFFBQVEsQ0FBTztJQUNmLG9CQUFvQixHQUFHLENBQUUsR0FBRyxDQUFFLENBQUM7SUFFL0IsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBRSxPQUFPLENBQUUsRUFBRSxLQUFLLENBQUM7SUFDOUMsQ0FBQztJQUVELElBQUksS0FBSyxDQUFFLEdBQUc7UUFDWixJQUFLLEdB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QixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7U0FDM0U7UUFDRCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBRSxPQUFPLENBQUUsQ0FBQyxNQUFNLENBQUUsQ0FBQztJQUNqRSxDQUFDO3dHQTdGVSxtQkFBbUI7NEZBQW5CLG1CQUFtQiw2VEFSbkI7WUFDVDtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsbUJBQW1CO2dCQUNoQyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0YsMkpDckJILCtwQkFpQkE7OzRGRE1hLG1CQUFtQjtrQkFYL0IsU0FBUzsrQkFDRSxhQUFhLGFBRVo7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxxQkFBcUI7NEJBQ2hDLEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGOytGQUtRLGtCQUFrQjtzQkFBMUIsS0FBSztnQkFDRyxpQkFBaUI7c0JBQXpCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxvQkFBb0I7c0JBQTVCLEtBQUs7Z0JBQ1csUUFBUTtzQkFBeEIsS0FBSztnQkFFSSxNQUFNO3NCQUFmLE1BQU07Z0JBR1AsVUFBVTtzQkFEVCxTQUFTO3VCQUFFLFlBQVk7Z0JBcUJrQixPQUFPO3NCQUFoRCxZQUFZO3VCQUFFLFVBQVUsRUFBRSxDQUFFLFFBQVEsQ0FBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBIb3N0TGlzdGVuZXIsIEluamVjdG9yLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgVW50eXBlZEZvcm1Db250cm9sLFxyXG4gIFVudHlwZWRGb3JtR3JvdXAsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgVmFsaWRhdG9ycyxcclxuICBOZ0NvbnRyb2wsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBOZ3hNYXRJbnRsVGVsSW5wdXRDb21wb25lbnQgfSBmcm9tICduZ3gtbWF0LWludGwtdGVsLWlucHV0JztcclxuaW1wb3J0IEVsZW1lbnRCYXNlQ29tcG9uZW50IGZyb20gJy4uL2Jhc2UvZWxlbWVudC1iYXNlJztcclxuXHJcbkBDb21wb25lbnQoIHtcclxuICBzZWxlY3RvcjogJ2VjYWJzLXBob25lJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZWNhYnMtcGhvbmUuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAge1xyXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcclxuICAgICAgdXNlRXhpc3Rpbmc6IEVjYWJzUGhvbmVDb21wb25lbnQsXHJcbiAgICAgIG11bHRpOiB0cnVlLFxyXG4gICAgfSxcclxuICBdLFxyXG59IClcclxuZXhwb3J0IGNsYXNzIEVjYWJzUGhvbmVDb21wb25lbnRcclxuICBleHRlbmRzIEVsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHByZWZlcnJlZENvdW50cmllcyE6IHN0cmluZ1tdO1xyXG4gIEBJbnB1dCgpIGVuYWJsZVBsYWNlaG9sZGVyITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBlbmFibGVTZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHVzZU9ubHlEaXNhYmxlZENsYXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZGVjbGFyZSByZXF1aXJlZDogYm9vbGVhbjtcclxuXHJcbiAgQE91dHB1dCgpIG9uYmx1cjogRXZlbnRFbWl0dGVyPHsgdmFsdWU6IHN0cmluZyB9PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCggJ3Bob25lSW5wdXQnIClcclxuICBwaG9uZUlucHV0ITogTmd4TWF0SW50bFRlbElucHV0Q29tcG9uZW50O1xyXG5cclxuICBwaG9uZUZvcm06IFVudHlwZWRGb3JtR3JvdXA7XHJcbiAgcGhvbmVTdWIhOiBhbnk7XHJcbiAgcHJvaGliaXRlZENoYXJhY3RlcnMgPSBbICctJyBdO1xyXG5cclxuICBnZXQgdmFsdWUoKTogYW55IHtcclxuICAgIHJldHVybiB0aGlzLnBob25lRm9ybS5nZXQoICdwaG9uZScgKT8udmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUoIHZhbCApIHtcclxuICAgIGlmICggdmFsICE9PSB1bmRlZmluZWQgJiYgdGhpcy52YWx1ZSAhPT0gdmFsICkge1xyXG4gICAgICB0aGlzLnBob25lRm9ybS5zZXRWYWx1ZSggeyBwaG9uZTogdmFsIH0gKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvciApIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG5cclxuICBASG9zdExpc3RlbmVyKCAna2V5cHJlc3MnLCBbICckZXZlbnQnIF0gKSBvbklucHV0KCBldmVudDogS2V5Ym9hcmRFdmVudCApOiB2b2lkIHtcclxuICAgIGlmICggdGhpcy5wcm9oaWJpdGVkQ2hhcmFjdGVycy5pbmNsdWRlcyggZXZlbnQua2V5ICkgKSB7XHJcbiAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucGhvbmVGb3JtID0gbmV3IFVudHlwZWRGb3JtR3JvdXAoIHtcclxuICAgICAgcGhvbmU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2woIHVuZGVmaW5lZCwgdGhpcy5yZXF1aXJlZCA/IFsgVmFsaWRhdG9ycy5yZXF1aXJlZCBdIDogW10gKSxcclxuICAgIH0gKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgIGNvbnN0IG5nQ29udHJvbDogTmdDb250cm9sID0gdGhpcy5pbmplY3Rvci5nZXQoIE5nQ29udHJvbCwgbnVsbCApO1xyXG4gICAgaWYgKCBuZ0NvbnRyb2wgKSB7XHJcbiAgICAgIHRoaXMuY29udHJvbCA9IG5nQ29udHJvbC5jb250cm9sIGFzIFVudHlwZWRGb3JtQ29udHJvbDtcclxuICAgIH1cclxuXHJcbiAgICB0aGlzLnBob25lU3ViID0gdGhpcy5waG9uZUZvcm0udmFsdWVDaGFuZ2VzLnN1YnNjcmliZSggKCBmb3JtVmFsICkgPT4ge1xyXG4gICAgICB0aGlzLnZhbHVlID0gZm9ybVZhbD8ucGhvbmU7XHJcbiAgICAgIHRoaXMub25DaGFuZ2UoIHRoaXMudmFsdWUgKTtcclxuICAgICAgdGhpcy5vblRvdWNoKCB0aGlzLnZhbHVlICk7XHJcbiAgICAgIHRoaXMuaGFuZGxlRXJyb3JzKCk7XHJcbiAgICB9ICk7XHJcbiAgfVxyXG5cclxuICBvbkNoYW5nZTogYW55ID0gKCk6IHZvaWQgPT4geyB9O1xyXG4gIG9uVG91Y2g6IGFueSA9ICgpOiB2b2lkID0+IHsgfTtcclxuXHJcbiAgd3JpdGVWYWx1ZSggdmFsdWU6IGFueSApOiB2b2lkIHtcclxuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25DaGFuZ2UoIGZuOiBhbnkgKTogdm9pZCB7XHJcbiAgICB0aGlzLm9uQ2hhbmdlID0gZm47XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uVG91Y2hlZCggZm46IGFueSApOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnBob25lU3ViPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnBob25lSW5wdXQucmVzZXQoKTtcclxuICB9XHJcblxyXG4gIG9uQmx1cigpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCggdGhpcy52YWx1ZSApO1xyXG4gICAgdGhpcy5vbkNoYW5nZSggdGhpcy52YWx1ZSApO1xyXG4gICAgdGhpcy5oYW5kbGVFcnJvcnMoKTtcclxuICAgIHRoaXMub25ibHVyLmVtaXQoeyB2YWx1ZTogdGhpcy52YWx1ZSB9KTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUVycm9ycygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnZhbHVlID09PSB1bmRlZmluZWQgJiYgIXRoaXMucGhvbmVJbnB1dC5lbXB0eSkge1xyXG4gICAgICB0aGlzLnBob25lRm9ybS5jb250cm9sc1sncGhvbmUnXS5zZXRFcnJvcnMoeyB2YWxpZGF0ZVBob25lTnVtYmVyOiB0cnVlIH0pO1xyXG4gICAgfVxyXG4gICAgdGhpcy5jb250cm9sLnNldEVycm9ycyggdGhpcy5waG9uZUZvcm0uZ2V0KCAncGhvbmUnICkuZXJyb3JzICk7XHJcbiAgfVxyXG59XHJcbiIsIjxhcHAtZWxlbWVudC13cmFwcGVyIFtkYXRhXT1cImdldERhdGEoKVwiPlxyXG4gIDxmb3JtICNmPVwibmdGb3JtXCIgW2Zvcm1Hcm91cF09XCJwaG9uZUZvcm1cIj5cclxuICAgICAgPG5neC1tYXQtaW50bC10ZWwtaW5wdXRcclxuICAgICAgICAoZm9jdXNvdXQpPVwib25CbHVyKClcIlxyXG4gICAgICAgIFtuZ0NsYXNzXT1cInsgZXJyb3I6IHBob25lRm9ybS5pbnZhbGlkICYmIChwaG9uZUZvcm0uZGlydHkgfHwgcGhvbmVGb3JtLnRvdWNoZWQpIH1cIlxyXG4gICAgICAgICNwaG9uZUlucHV0XHJcbiAgICAgICAgW3ByZWZlcnJlZENvdW50cmllc109XCJwcmVmZXJyZWRDb3VudHJpZXNcIlxyXG4gICAgICAgIFtlbmFibGVQbGFjZWhvbGRlcl09XCJlbmFibGVQbGFjZWhvbGRlclwiXHJcbiAgICAgICAgW2VuYWJsZVNlYXJjaF09XCJlbmFibGVTZWFyY2hcIlxyXG4gICAgICAgIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiXHJcbiAgICAgICAgW2Zvcm1Db250cm9sTmFtZV09XCIncGhvbmUnXCJcclxuICAgICAgICBuYW1lPVwicGhvbmVcIlxyXG4gICAgICAgIFtpbnB1dFBsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcclxuICAgICAgPlxyXG4gICAgICA8L25neC1tYXQtaW50bC10ZWwtaW5wdXQ+XHJcbiAgPC9mb3JtPlxyXG48L2FwcC1lbGVtZW50LXdyYXBwZXI+XHJcbiJdfQ==
|
|
140
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZWNhYnMtcGhvbmUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWNhYnMtY29tcG9uZW50cy9zcmMvbGliL2VjYWJzLXBob25lL2VjYWJzLXBob25lLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VjYWJzLWNvbXBvbmVudHMvc3JjL2xpYi9lY2Ficy1waG9uZS9lY2Ficy1waG9uZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUwsU0FBUyxFQUNULFlBQVksRUFDWixZQUFZLEVBRVosS0FBSyxFQUdMLE1BQU0sRUFDTixTQUFTLEVBQ1YsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUVMLGlCQUFpQixFQUNqQixTQUFTLEVBQ1Qsa0JBQWtCLEVBQ2xCLGdCQUFnQixFQUNoQixVQUFVLEdBQ1gsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLG9CQUFvQixNQUFNLHNCQUFzQixDQUFDO0FBRXhELE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBYy9CLE1BQU0sT0FBTyxtQkFDWCxTQUFRLG9CQUFvQjtJQTJCQztJQUNBO0lBQ1Q7SUEzQlgsa0JBQWtCLENBQVk7SUFDOUIsaUJBQWlCLENBQVc7SUFDNUIsWUFBWSxHQUFZLElBQUksQ0FBQztJQUM3QixvQkFBb0IsR0FBRyxLQUFLLENBQUM7SUFDckIsUUFBUSxDQUFVO0lBRXpCLE1BQU0sR0FBb0MsSUFBSSxZQUFZLEVBQUUsQ0FBQztJQUd2RSxVQUFVLENBQStCO0lBRXpDLFNBQVMsQ0FBbUI7SUFDNUIsUUFBUSxDQUFPO0lBQ2Ysb0JBQW9CLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUU3QixJQUFJLEtBQUs7UUFDUCxPQUFPLElBQUksQ0FB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O2dCQUNHLGlCQUFpQjtzQkFBekIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLG9CQUFvQjtzQkFBNUIsS0FBSztnQkFDVyxRQUFRO3NCQUF4QixLQUFLO2dCQUVJLE1BQU07c0JBQWYsTUFBTTtnQkFHUCxVQUFVO3NCQURULFNBQVM7dUJBQUMsWUFBWTtnQkF3QmUsT0FBTztzQkFBNUMsWUFBWTt1QkFBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgQ29tcG9uZW50LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBIb3N0TGlzdGVuZXIsXHJcbiAgSW5qZWN0b3IsXHJcbiAgSW5wdXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uSW5pdCxcclxuICBPdXRwdXQsXHJcbiAgVmlld0NoaWxkXHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7XHJcbiAgQ29udHJvbFZhbHVlQWNjZXNzb3IsXHJcbiAgTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgTmdDb250cm9sLFxyXG4gIFVudHlwZWRGb3JtQ29udHJvbCxcclxuICBVbnR5cGVkRm9ybUdyb3VwLFxyXG4gIFZhbGlkYXRvcnMsXHJcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQge05neE1hdEludGxUZWxJbnB1dENvbXBvbmVudH0gZnJvbSAnbmd4LW1hdC1pbnRsLXRlbC1pbnB1dCc7XHJcbmltcG9ydCBFbGVtZW50QmFzZUNvbXBvbmVudCBmcm9tICcuLi9iYXNlL2VsZW1lbnQtYmFzZSc7XHJcbmltcG9ydCB7RWNhYnNDb21wb25lbnRzU2VydmljZX0gZnJvbSBcIi4uL2Jhc2Uvc2VydmljZXMvZWNhYnMtY29tcG9uZW50cy5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7VW5zdWJzY3JpYmVTZXJ2aWNlfSBmcm9tIFwiLi4vYmFzZS9zZXJ2aWNlcy91bnN1YnNjcmliZS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7dGFrZVVudGlsfSBmcm9tIFwicnhqc1wiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlY2Ficy1waG9uZScsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2VjYWJzLXBob25lLmNvbXBvbmVudC5odG1sJyxcclxuICBwcm92aWRlcnM6IFtcclxuICAgIFVuc3Vic2NyaWJlU2VydmljZSxcclxuICAgIHtcclxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXHJcbiAgICAgIHVzZUV4aXN0aW5nOiBFY2Fic1Bob25lQ29tcG9uZW50LFxyXG4gICAgICBtdWx0aTogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIEVjYWJzUGhvbmVDb21wb25lbnRcclxuICBleHRlbmRzIEVsZW1lbnRCYXNlQ29tcG9uZW50XHJcbiAgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95LCBPbkluaXQge1xyXG4gIEBJbnB1dCgpIHByZWZlcnJlZENvdW50cmllcyE6IHN0cmluZ1tdO1xyXG4gIEBJbnB1dCgpIGVuYWJsZVBsYWNlaG9sZGVyITogYm9vbGVhbjtcclxuICBASW5wdXQoKSBlbmFibGVTZWFyY2g6IGJvb2xlYW4gPSB0cnVlO1xyXG4gIEBJbnB1dCgpIHVzZU9ubHlEaXNhYmxlZENsYXNzID0gZmFsc2U7XHJcbiAgQElucHV0KCkgZGVjbGFyZSByZXF1aXJlZDogYm9vbGVhbjtcclxuXHJcbiAgQE91dHB1dCgpIG9uYmx1cjogRXZlbnRFbWl0dGVyPHsgdmFsdWU6IHN0cmluZyB9PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgQFZpZXdDaGlsZCgncGhvbmVJbnB1dCcpXHJcbiAgcGhvbmVJbnB1dCE6IE5neE1hdEludGxUZWxJbnB1dENvbXBvbmVudDtcclxuXHJcbiAgcGhvbmVGb3JtOiBVbnR5cGVkRm9ybUdyb3VwO1xyXG4gIHBob25lU3ViITogYW55O1xyXG4gIHByb2hpYml0ZWRDaGFyYWN0ZXJzID0gWyctJ107XHJcblxyXG4gIGdldCB2YWx1ZSgpOiBhbnkge1xyXG4gICAgcmV0dXJuIHRoaXMucGhvbmVGb3JtLmdldCgncGhvbmUnKT8udmFsdWU7XHJcbiAgfVxyXG5cclxuICBzZXQgdmFsdWUodmFsKSB7XHJcbiAgICBpZiAodmFsICE9PSB1bmRlZmluZWQgJiYgdGhpcy52YWx1ZSAhPT0gdmFsKSB7XHJcbiAgICAgIHRoaXMucGhvbmVGb3JtLnNldFZhbHVlKHtwaG9uZTogdmFsfSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yOiBJbmplY3RvcixcclxuICAgICAgICAgICAgICBwcml2YXRlIHJlYWRvbmx5IGVjYWJzQ29tcG9uZW50c1NlcnZpY2U6IEVjYWJzQ29tcG9uZW50c1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgcHJpdmF0ZSB1bnN1YnNjcmliZVNlcnZpY2U6IFVuc3Vic2NyaWJlU2VydmljZVxyXG4gICkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcblxyXG4gIEBIb3N0TGlzdGVuZXIoJ2tleXByZXNzJywgWyckZXZlbnQnXSkgb25JbnB1dChldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMucHJvaGliaXRlZENoYXJhY3RlcnMuaW5jbHVkZXMoZXZlbnQua2V5KSkge1xyXG4gICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnBob25lRm9ybSA9IG5ldyBVbnR5cGVkRm9ybUdyb3VwKHtcclxuICAgICAgcGhvbmU6IG5ldyBVbnR5cGVkRm9ybUNvbnRyb2wodW5kZWZpbmVkLCB0aGlzLnJlcXVpcmVkID8gW1ZhbGlkYXRvcnMucmVxdWlyZWRdIDogW10pLFxyXG4gICAgfSk7XHJcblxyXG4gICAgdGhpcy5lY2Fic0NvbXBvbmVudHNTZXJ2aWNlLmdldENvbmZpZygpXHJcbiAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLnVuc3Vic2NyaWJlU2VydmljZS5zdWJzY3JpcHRpb24oKSkpXHJcbiAgICAgIC5zdWJzY3JpYmUoKHZhbCkgPT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5wcmVmZXJyZWRDb3VudHJpZXM/Lmxlbmd0aCkge1xyXG4gICAgICAgICAgdGhpcy5wcmVmZXJyZWRDb3VudHJpZXMgPSB2YWwuZGVmYXVsdENvdW50cmllcztcclxuICAgICAgICB9XHJcbiAgICAgIH0pO1xyXG4gIH1cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xyXG4gICAgY29uc3QgbmdDb250cm9sOiBOZ0NvbnRyb2wgPSB0aGlzLmluamVjdG9yLmdldChOZ0NvbnRyb2wsIG51bGwpO1xyXG4gICAgaWYgKG5nQ29udHJvbCkge1xyXG4gICAgICB0aGlzLmNvbnRyb2wgPSBuZ0NvbnRyb2wuY29udHJvbCBhcyBVbnR5cGVkRm9ybUNvbnRyb2w7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5waG9uZVN1YiA9IHRoaXMucGhvbmVGb3JtLnZhbHVlQ2hhbmdlcy5zdWJzY3JpYmUoKGZvcm1WYWwpID0+IHtcclxuICAgICAgdGhpcy52YWx1ZSA9IGZvcm1WYWw/LnBob25lO1xyXG4gICAgICB0aGlzLm9uQ2hhbmdlKHRoaXMudmFsdWUpO1xyXG4gICAgICB0aGlzLm9uVG91Y2godGhpcy52YWx1ZSk7XHJcbiAgICAgIHRoaXMuaGFuZGxlRXJyb3JzKCk7XHJcbiAgICB9KTtcclxuICB9XHJcblxyXG4gIG9uQ2hhbmdlOiBhbnkgPSAoKTogdm9pZCA9PiB7XHJcbiAgfTtcclxuICBvblRvdWNoOiBhbnkgPSAoKTogdm9pZCA9PiB7XHJcbiAgfTtcclxuXHJcbiAgd3JpdGVWYWx1ZSh2YWx1ZTogYW55KTogdm9pZCB7XHJcbiAgICB0aGlzLnZhbHVlID0gdmFsdWU7XHJcbiAgfVxyXG5cclxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25DaGFuZ2UgPSBmbjtcclxuICB9XHJcblxyXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCA9IGZuO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICB0aGlzLnBob25lU3ViPy51bnN1YnNjcmliZSgpO1xyXG4gIH1cclxuXHJcbiAgcmVzZXQoKTogdm9pZCB7XHJcbiAgICB0aGlzLnBob25lSW5wdXQucmVzZXQoKTtcclxuICB9XHJcblxyXG4gIG9uQmx1cigpOiB2b2lkIHtcclxuICAgIHRoaXMub25Ub3VjaCh0aGlzLnZhbHVlKTtcclxuICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XHJcbiAgICB0aGlzLmhhbmRsZUVycm9ycygpO1xyXG4gICAgdGhpcy5vbmJsdXIuZW1pdCh7dmFsdWU6IHRoaXMudmFsdWV9KTtcclxuICB9XHJcblxyXG4gIGhhbmRsZUVycm9ycygpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLnZhbHVlID09PSB1bmRlZmluZWQgJiYgIXRoaXMucGhvbmVJbnB1dC5lbXB0eSkge1xyXG4gICAgICB0aGlzLnBob25lRm9ybS5jb250cm9sc1sncGhvbmUnXS5zZXRFcnJvcnMoe3ZhbGlkYXRlUGhvbmVOdW1iZXI6IHRydWV9KTtcclxuICAgIH1cclxuICAgIHRoaXMuY29udHJvbD8uc2V0RXJyb3JzKHRoaXMucGhvbmVGb3JtLmdldCgncGhvbmUnKS5lcnJvcnMpO1xyXG4gIH1cclxufVxyXG4iLCI8YXBwLWVsZW1lbnQtd3JhcHBlciBbZGF0YV09XCJnZXREYXRhKClcIj5cclxuICA8Zm9ybSAjZj1cIm5nRm9ybVwiIFtmb3JtR3JvdXBdPVwicGhvbmVGb3JtXCI+XHJcbiAgICAgIDxuZ3gtbWF0LWludGwtdGVsLWlucHV0XHJcbiAgICAgICAgKGZvY3Vzb3V0KT1cIm9uQmx1cigpXCJcclxuICAgICAgICBbbmdDbGFzc109XCJ7IGVycm9yOiBwaG9uZUZvcm0uaW52YWxpZCAmJiAocGhvbmVGb3JtLmRpcnR5IHx8IHBob25lRm9ybS50b3VjaGVkKSB9XCJcclxuICAgICAgICAjcGhvbmVJbnB1dFxyXG4gICAgICAgIFtwcmVmZXJyZWRDb3VudHJpZXNdPVwicHJlZmVycmVkQ291bnRyaWVzXCJcclxuICAgICAgICBbZW5hYmxlUGxhY2Vob2xkZXJdPVwiZW5hYmxlUGxhY2Vob2xkZXJcIlxyXG4gICAgICAgIFtlbmFibGVTZWFyY2hdPVwiZW5hYmxlU2VhcmNoXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxyXG4gICAgICAgIFtmb3JtQ29udHJvbE5hbWVdPVwiJ3Bob25lJ1wiXHJcbiAgICAgICAgbmFtZT1cInBob25lXCJcclxuICAgICAgICBbaW5wdXRQbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXHJcbiAgICAgID5cclxuICAgICAgPC9uZ3gtbWF0LWludGwtdGVsLWlucHV0PlxyXG4gIDwvZm9ybT5cclxuPC9hcHAtZWxlbWVudC13cmFwcGVyPlxyXG4iXX0=
|