@stemy/ngx-dynamic-form 13.1.16 → 13.1.18
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/esm2020/ngx-dynamic-form/components/base/dynamic-base-form-control.component.mjs +10 -4
- package/esm2020/ngx-dynamic-form/components/base/dynamic-base-form.component.mjs +6 -9
- package/esm2020/ngx-dynamic-form/directives/async-submit.directive.mjs +3 -2
- package/fesm2015/stemy-ngx-dynamic-form.mjs +20 -17
- package/fesm2015/stemy-ngx-dynamic-form.mjs.map +1 -1
- package/fesm2020/stemy-ngx-dynamic-form.mjs +20 -17
- package/fesm2020/stemy-ngx-dynamic-form.mjs.map +1 -1
- package/ngx-dynamic-form/components/base/dynamic-base-form-control.component.d.ts +6 -2
- package/ngx-dynamic-form/components/base/dynamic-base-form.component.d.ts +2 -2
- package/package.json +1 -1
|
@@ -3,9 +3,12 @@ import { debounceTime } from "rxjs";
|
|
|
3
3
|
import { DynamicFormControlComponent } from "@ng-dynamic-forms/core";
|
|
4
4
|
import * as i0 from "@angular/core";
|
|
5
5
|
import * as i1 from "@ng-dynamic-forms/core";
|
|
6
|
+
import * as i2 from "./dynamic-base-form.component";
|
|
6
7
|
export class DynamicBaseFormControlComponent extends DynamicFormControlComponent {
|
|
7
|
-
constructor(
|
|
8
|
+
constructor(layoutService, validationService, form, injector, cdr) {
|
|
8
9
|
super(layoutService, validationService);
|
|
10
|
+
this.form = form;
|
|
11
|
+
this.injector = injector;
|
|
9
12
|
this.cdr = cdr;
|
|
10
13
|
this.blur = new EventEmitter();
|
|
11
14
|
this.change = new EventEmitter();
|
|
@@ -21,10 +24,13 @@ export class DynamicBaseFormControlComponent extends DynamicFormControlComponent
|
|
|
21
24
|
return;
|
|
22
25
|
this.subscription.unsubscribe();
|
|
23
26
|
}
|
|
27
|
+
submit() {
|
|
28
|
+
this.form.submit();
|
|
29
|
+
}
|
|
24
30
|
onValueChanged(value) {
|
|
25
31
|
}
|
|
26
32
|
}
|
|
27
|
-
DynamicBaseFormControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, deps: [{ token:
|
|
33
|
+
DynamicBaseFormControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, deps: [{ token: i1.DynamicFormLayoutService }, { token: i1.DynamicFormValidationService }, { token: i2.DynamicBaseFormComponent }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
28
34
|
DynamicBaseFormControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormControlComponent, selector: "dynamic-base-form-control", inputs: { formLayout: "formLayout", group: "group", layout: "layout", model: "model" }, outputs: { blur: "blur", change: "change", focus: "focus" }, usesInheritance: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
29
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, decorators: [{
|
|
30
36
|
type: Component,
|
|
@@ -33,7 +39,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
33
39
|
template: "",
|
|
34
40
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
35
41
|
}]
|
|
36
|
-
}], ctorParameters: function () { return [{ type:
|
|
42
|
+
}], ctorParameters: function () { return [{ type: i1.DynamicFormLayoutService }, { type: i1.DynamicFormValidationService }, { type: i2.DynamicBaseFormComponent }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { formLayout: [{
|
|
37
43
|
type: Input
|
|
38
44
|
}], group: [{
|
|
39
45
|
type: Input
|
|
@@ -48,4 +54,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
48
54
|
}], focus: [{
|
|
49
55
|
type: Output
|
|
50
56
|
}] } });
|
|
51
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
57
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1iYXNlLWZvcm0tY29udHJvbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbmd4LWR5bmFtaWMtZm9ybS9jb21wb25lbnRzL2Jhc2UvZHluYW1pYy1iYXNlLWZvcm0tY29udHJvbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILHVCQUF1QixFQUV2QixTQUFTLEVBQ1QsWUFBWSxFQUVaLEtBQUssRUFFTCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFlBQVksRUFBZSxNQUFNLE1BQU0sQ0FBQztBQUNoRCxPQUFPLEVBQ0gsMkJBQTJCLEVBTTlCLE1BQU0sd0JBQXdCLENBQUM7Ozs7QUFRaEMsTUFBTSxPQUFPLCtCQUFtRSxTQUFRLDJCQUEyQjtJQWEvRyxZQUFZLGFBQXVDLEVBQUUsaUJBQStDLEVBQy9FLElBQThCLEVBQVcsUUFBa0IsRUFBVyxHQUFzQjtRQUM3RyxLQUFLLENBQUMsYUFBYSxFQUFFLGlCQUFpQixDQUFDLENBQUM7UUFEdkIsU0FBSSxHQUFKLElBQUksQ0FBMEI7UUFBVyxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQVcsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFFN0csSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLFlBQVksRUFBTyxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQU8sQ0FBQztRQUN0QyxJQUFJLENBQUMsS0FBSyxHQUFHLElBQUksWUFBWSxFQUFPLENBQUM7SUFDekMsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLEVBQUU7WUFDcEYsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMvQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxXQUFXO1FBQ1AsSUFBSSxDQUFDLElBQUksQ0FBQyxZQUFZO1lBQUUsT0FBTztRQUMvQixJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3BDLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRVMsY0FBYyxDQUFDLEtBQVU7SUFFbkMsQ0FBQzs7NEhBdENRLCtCQUErQjtnSEFBL0IsK0JBQStCLDZPQUg5QixFQUFFOzJGQUdILCtCQUErQjtrQkFMM0MsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsMkJBQTJCO29CQUNyQyxRQUFRLEVBQUUsRUFBRTtvQkFDWixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7d1BBR1ksVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFSSxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEluamVjdG9yLFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPdXRwdXRcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0Zvcm1Hcm91cH0gZnJvbSBcIkBhbmd1bGFyL2Zvcm1zXCI7XHJcbmltcG9ydCB7ZGVib3VuY2VUaW1lLCBTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7XHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xDb21wb25lbnQsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xMYXlvdXQsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCxcclxuICAgIER5bmFtaWNGb3JtTGF5b3V0LFxyXG4gICAgRHluYW1pY0Zvcm1MYXlvdXRTZXJ2aWNlLFxyXG4gICAgRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZVxyXG59IGZyb20gXCJAbmctZHluYW1pYy1mb3Jtcy9jb3JlXCI7XHJcbmltcG9ydCB7RHluYW1pY0Jhc2VGb3JtQ29tcG9uZW50fSBmcm9tIFwiLi9keW5hbWljLWJhc2UtZm9ybS5jb21wb25lbnRcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiZHluYW1pYy1iYXNlLWZvcm0tY29udHJvbFwiLFxyXG4gICAgdGVtcGxhdGU6IFwiXCIsXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Jhc2VGb3JtQ29udHJvbENvbXBvbmVudDxUIGV4dGVuZHMgRHluYW1pY0Zvcm1Db250cm9sTW9kZWw+IGV4dGVuZHMgRHluYW1pY0Zvcm1Db250cm9sQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoKSBmb3JtTGF5b3V0OiBEeW5hbWljRm9ybUxheW91dDtcclxuICAgIEBJbnB1dCgpIGdyb3VwOiBGb3JtR3JvdXA7XHJcbiAgICBASW5wdXQoKSBsYXlvdXQ6IER5bmFtaWNGb3JtQ29udHJvbExheW91dDtcclxuICAgIEBJbnB1dCgpIG1vZGVsOiBUO1xyXG5cclxuICAgIEBPdXRwdXQoKSBibHVyOiBFdmVudEVtaXR0ZXI8YW55PjtcclxuICAgIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xyXG4gICAgQE91dHB1dCgpIGZvY3VzOiBFdmVudEVtaXR0ZXI8YW55PjtcclxuXHJcbiAgICBwcm90ZWN0ZWQgc3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XHJcblxyXG4gICAgY29uc3RydWN0b3IobGF5b3V0U2VydmljZTogRHluYW1pY0Zvcm1MYXlvdXRTZXJ2aWNlLCB2YWxpZGF0aW9uU2VydmljZTogRHluYW1pY0Zvcm1WYWxpZGF0aW9uU2VydmljZSxcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IGZvcm06IER5bmFtaWNCYXNlRm9ybUNvbXBvbmVudCwgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yLCByZWFkb25seSBjZHI6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgICAgICAgc3VwZXIobGF5b3V0U2VydmljZSwgdmFsaWRhdGlvblNlcnZpY2UpO1xyXG4gICAgICAgIHRoaXMuYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgICAgIHRoaXMuY2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XHJcbiAgICAgICAgdGhpcy5mb2N1cyA9IG5ldyBFdmVudEVtaXR0ZXI8YW55PigpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IHRoaXMuY29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShkZWJvdW5jZVRpbWUoNTAwKSkuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgdGhpcy5vblZhbHVlQ2hhbmdlZCh2YWx1ZSk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLnN1YnNjcmlwdGlvbikgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgc3VibWl0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybS5zdWJtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcm90ZWN0ZWQgb25WYWx1ZUNoYW5nZWQodmFsdWU6IGFueSk6IHZvaWQge1xyXG5cclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Inject, Input, Output, QueryList,
|
|
2
|
-
import { NgForm } from "@angular/forms";
|
|
1
|
+
import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Inject, Input, Output, QueryList, ViewChildren } from "@angular/core";
|
|
3
2
|
import { debounceTime, groupBy, mergeMap, Subscription } from "rxjs";
|
|
4
3
|
import { first } from "rxjs/operators";
|
|
5
4
|
import { DynamicFormComponent, DynamicFormGroupModel, DynamicTemplateDirective } from "@ng-dynamic-forms/core";
|
|
@@ -31,6 +30,9 @@ export class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
31
30
|
get status() {
|
|
32
31
|
return !this.group ? null : this.group.status;
|
|
33
32
|
}
|
|
33
|
+
submit() {
|
|
34
|
+
this.onSubmit.emit(this);
|
|
35
|
+
}
|
|
34
36
|
ngOnChanges(changes) {
|
|
35
37
|
this.groupSubscription.unsubscribe();
|
|
36
38
|
if (this.group) {
|
|
@@ -55,8 +57,6 @@ export class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
55
57
|
}), this.events.languageChanged.subscribe(() => {
|
|
56
58
|
this.formService.notifyChanges(this.model, this.group);
|
|
57
59
|
this.formService.detectChanges(this);
|
|
58
|
-
}), this.ngForm.ngSubmit.subscribe(() => {
|
|
59
|
-
this.onSubmit.emit(this);
|
|
60
60
|
}));
|
|
61
61
|
}
|
|
62
62
|
ngOnDestroy() {
|
|
@@ -124,7 +124,7 @@ export class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
124
124
|
}
|
|
125
125
|
}
|
|
126
126
|
DynamicBaseFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormComponent, deps: [{ token: DynamicFormService }, { token: EventsService }, { token: i0.ChangeDetectorRef }, { token: i1.DynamicFormComponentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
127
|
-
DynamicBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormComponent, selector: "dynamic-base-form", inputs: { group: "group", model: "model", layout: "layout", labelPrefix: "labelPrefix", getComponentType: "getComponentType" }, outputs: { blur: "blur", change: "change", focus: "focus", onValueChange: "onValueChange", onStatusChange: "onStatusChange", onSubmit: "onSubmit", onDetectChanges: "onDetectChanges" }, queries: [{ propertyName: "contentTemplates", predicate: DynamicTemplateDirective }], viewQueries: [{ propertyName: "
|
|
127
|
+
DynamicBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormComponent, selector: "dynamic-base-form", inputs: { group: "group", model: "model", layout: "layout", labelPrefix: "labelPrefix", getComponentType: "getComponentType" }, outputs: { blur: "blur", change: "change", focus: "focus", onValueChange: "onValueChange", onStatusChange: "onStatusChange", onSubmit: "onSubmit", onDetectChanges: "onDetectChanges" }, queries: [{ propertyName: "contentTemplates", predicate: DynamicTemplateDirective }], viewQueries: [{ propertyName: "viewTemplates", predicate: DynamicTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
128
128
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormComponent, decorators: [{
|
|
129
129
|
type: Component,
|
|
130
130
|
args: [{
|
|
@@ -168,8 +168,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
168
168
|
type: Output
|
|
169
169
|
}], onDetectChanges: [{
|
|
170
170
|
type: Output
|
|
171
|
-
}], ngForm: [{
|
|
172
|
-
type: ViewChild,
|
|
173
|
-
args: [NgForm]
|
|
174
171
|
}] } });
|
|
175
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1iYXNlLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC1keW5hbWljLWZvcm0vY29tcG9uZW50cy9iYXNlL2R5bmFtaWMtYmFzZS1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFFVCxTQUFTLEVBQ1QsWUFBWSxFQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBdUIsTUFBTSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDNUQsT0FBTyxFQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRSxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUNILG9CQUFvQixFQUlwQixxQkFBcUIsRUFHckIsd0JBQXdCLEVBQzNCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUNBQXFDLENBQUM7Ozs7O0FBT3ZFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxvQkFBb0I7SUE2QjlELFlBQWlELFdBQStCLEVBQ3BDLE1BQXFCLEVBQ3JELGlCQUFvQyxFQUNwQyxnQkFBNkM7UUFDckQsS0FBSyxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFKRSxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDcEMsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUk3RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksWUFBWSxFQUEyQixDQUFDO1FBQ3hELElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7UUFDMUQsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLFlBQVksRUFBMkIsQ0FBQztRQUN6RCxJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFxQixDQUFDO1FBQzNELElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxZQUFZLEVBQWdCLENBQUM7UUFDdkQsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLFlBQVksRUFBZ0IsQ0FBQztRQUNqRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksWUFBWSxFQUFnQixDQUFDO1FBQ3hELElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxTQUFTLEVBQTRCLENBQUM7UUFDM0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzVDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDO1FBQzNCLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUM7SUFDdkMsQ0FBQztJQS9CRCxJQUFJLE1BQU07UUFDTixPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLE1BQTBCLENBQUM7SUFDdEUsQ0FBQztJQStCRCxXQUFXLENBQUMsT0FBc0I7UUFDOUIsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3JDLElBQUksSUFBSSxDQUFDLEtBQUssRUFBRTtZQUNaLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxlQUFlLENBQUMsaUJBQWlCLENBQ3RELElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUMsQ0FBQyxFQUNGLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUMzRCxJQUFJLENBQUMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUMzRCxDQUFDLENBQUMsRUFDRixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7aUJBQ3BDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQzlDLFNBQVMsQ0FBQyxFQUFFLENBQUMsRUFBRTtnQkFDWixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxFQUFDLEdBQUcsRUFBRSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1lBQ2pELENBQUMsQ0FBQyxDQUNULENBQUM7U0FDTDtJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLFlBQVksR0FBRyxlQUFlLENBQUMsaUJBQWlCLENBQ2pELGVBQWUsQ0FBQyxTQUFTLENBQ3JCO1lBQ0ksUUFBUSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQztZQUNyRSxFQUFFLEVBQUUsR0FBRyxFQUFFO2dCQUNMLE1BQU0sU0FBUyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDO2dCQUN2RixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQztZQUNwQyxDQUFDO1NBQ0osQ0FDSixFQUNELElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDdkMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDdkQsSUFBSSxDQUFDLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLEVBQ0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNoQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUM3QixDQUFDLENBQUMsQ0FDTCxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFDUCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELGFBQWE7UUFDVCxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdEIsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDcEMsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWEsRUFBRSxTQUFvQixFQUFFLGNBQXFDO1FBQzNGLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELG1CQUFtQixDQUFDLEtBQWEsRUFBRSxTQUFvQixFQUFFLGNBQXFDO1FBQzFGLElBQUksQ0FBQyxXQUFXLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN2RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELG9CQUFvQixDQUFDLEtBQWEsRUFBRSxTQUFvQixFQUFFLGNBQXFDO1FBQzNGLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFNBQVMsRUFBRSxjQUFjLENBQUMsQ0FBQztRQUN4RSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDekIsQ0FBQztJQUVELGtCQUFrQixDQUFDLEtBQWEsRUFBRSxJQUFZLEVBQUUsU0FBb0IsRUFBRSxjQUFxQztRQUN2RyxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzVFLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsY0FBYyxDQUFDLFNBQW9CLEVBQUUsY0FBcUM7UUFDdEUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLGNBQWMsQ0FBQyxDQUFDO1FBQzNELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBRUQsUUFBUSxDQUFDLEtBQStCO1FBQ3BDLE1BQU0sS0FBSyxHQUFHLGVBQWUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDaEQsSUFBSSxLQUFLLENBQUMsTUFBTSxJQUFJLENBQUM7WUFBRSxPQUFPLEVBQUUsQ0FBQztRQUNqQyxJQUFJLEtBQUssWUFBWSxxQkFBcUIsRUFBRTtZQUN4QyxPQUFPLGNBQWMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO1NBQzFDO1FBQ0QsT0FBTyxnQkFBZ0IsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDO0lBQzdDLENBQUM7SUFFRCxRQUFRLENBQUMsYUFBc0IsSUFBSTtRQUMvQixJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUs7WUFBRSxPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQztRQUMxQyxPQUFPLElBQUksT0FBTyxDQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQ3hDLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxNQUFNLElBQUksT0FBTyxJQUFJLE1BQU0sSUFBSSxTQUFTLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDeEcsSUFBSSxVQUFVLEVBQUU7b0JBQ1osSUFBSSxDQUFDLFdBQVcsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUM7aUJBQ3JDO2dCQUNELElBQUksTUFBTSxJQUFJLE9BQU8sRUFBRTtvQkFDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO29CQUNkLE9BQU87aUJBQ1Y7Z0JBQ0QsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ2pCLENBQUMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3hDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsUUFBa0I7UUFDOUIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDN0IsSUFBSSxRQUFRLEVBQUU7WUFDVixNQUFNLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUN6QjtRQUNELE9BQU8sTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRSxDQUFDOztxSEE1SlEsd0JBQXdCLGtCQTZCYixrQkFBa0IsYUFDbEIsYUFBYTt5R0E5QnhCLHdCQUF3QixtWkFZaEIsd0JBQXdCLHFFQVk5QixNQUFNLG1FQVhILHdCQUF3Qiw0RkFoQjVCLEVBQUU7MkZBR0gsd0JBQXdCO2tCQUxwQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxtQkFBbUI7b0JBQzdCLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxPQUFPO2lCQUNuRDs7MEJBOEJnQixNQUFNOzJCQUFDLGtCQUFrQjs7MEJBQ3pCLE1BQU07MkJBQUMsYUFBYTtzSEE1QnhCLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUVJLElBQUk7c0JBQWIsTUFBTTtnQkFDRyxNQUFNO3NCQUFmLE1BQU07Z0JBQ0csS0FBSztzQkFBZCxNQUFNO2dCQUVvQyxnQkFBZ0I7c0JBQTFELGVBQWU7dUJBQUMsd0JBQXdCO2dCQUNELGFBQWE7c0JBQXBELFlBQVk7dUJBQUMsd0JBQXdCO2dCQU1uQixhQUFhO3NCQUEvQixNQUFNO2dCQUNZLGNBQWM7c0JBQWhDLE1BQU07Z0JBQ1ksUUFBUTtzQkFBMUIsTUFBTTtnQkFDWSxlQUFlO3NCQUFqQyxNQUFNO2dCQUdHLE1BQU07c0JBRGYsU0FBUzt1QkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIEFmdGVyVmlld0luaXQsXHJcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgQ29tcG9uZW50LFxyXG4gICAgQ29udGVudENoaWxkcmVuLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSW5qZWN0LFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkNoYW5nZXMsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBRdWVyeUxpc3QsXHJcbiAgICBTaW1wbGVDaGFuZ2VzLFxyXG4gICAgVmlld0NoaWxkLFxyXG4gICAgVmlld0NoaWxkcmVuXHJcbn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuaW1wb3J0IHtGb3JtQXJyYXksIEZvcm1Hcm91cCwgTmdGb3JtfSBmcm9tIFwiQGFuZ3VsYXIvZm9ybXNcIjtcclxuaW1wb3J0IHtkZWJvdW5jZVRpbWUsIGdyb3VwQnksIG1lcmdlTWFwLCBTdWJzY3JpcHRpb259IGZyb20gXCJyeGpzXCI7XHJcbmltcG9ydCB7Zmlyc3R9IGZyb20gXCJyeGpzL29wZXJhdG9yc1wiO1xyXG5pbXBvcnQge1xyXG4gICAgRHluYW1pY0Zvcm1Db21wb25lbnQsXHJcbiAgICBEeW5hbWljRm9ybUNvbXBvbmVudFNlcnZpY2UsXHJcbiAgICBEeW5hbWljRm9ybUNvbnRyb2xFdmVudCxcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbE1vZGVsLFxyXG4gICAgRHluYW1pY0Zvcm1Hcm91cE1vZGVsLFxyXG4gICAgRHluYW1pY0Zvcm1MYXlvdXQsXHJcbiAgICBEeW5hbWljRm9ybU1vZGVsLFxyXG4gICAgRHluYW1pY1RlbXBsYXRlRGlyZWN0aXZlXHJcbn0gZnJvbSBcIkBuZy1keW5hbWljLWZvcm1zL2NvcmVcIjtcclxuaW1wb3J0IHtFdmVudHNTZXJ2aWNlLCBPYnNlcnZhYmxlVXRpbHN9IGZyb20gXCJAc3RlbXkvbmd4LXV0aWxzXCI7XHJcbmltcG9ydCB7RHluYW1pY0Zvcm1TdGF0ZSwgR2V0Rm9ybUNvbnRyb2xDb21wb25lbnRUeXBlLCBJRHluYW1pY0Zvcm0sIElEeW5hbWljRm9ybUV2ZW50fSBmcm9tIFwiLi4vLi4vY29tbW9uLXR5cGVzXCI7XHJcbmltcG9ydCB7Y29sbGVjdFBhdGhBYmxlfSBmcm9tIFwiLi4vLi4vdXRpbHMvbWlzY1wiO1xyXG5pbXBvcnQge0R5bmFtaWNGb3JtQXJyYXlNb2RlbH0gZnJvbSBcIi4uLy4uL3V0aWxzL2R5bmFtaWMtZm9ybS1hcnJheS5tb2RlbFwiO1xyXG5pbXBvcnQge0R5bmFtaWNGb3JtU2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL2R5bmFtaWMtZm9ybS5zZXJ2aWNlXCI7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiBcImR5bmFtaWMtYmFzZS1mb3JtXCIsXHJcbiAgICB0ZW1wbGF0ZTogXCJcIixcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuRGVmYXVsdFxyXG59KVxyXG5leHBvcnQgY2xhc3MgRHluYW1pY0Jhc2VGb3JtQ29tcG9uZW50IGV4dGVuZHMgRHluYW1pY0Zvcm1Db21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIEFmdGVyVmlld0luaXQsIElEeW5hbWljRm9ybSB7XHJcblxyXG4gICAgQElucHV0KCkgZ3JvdXA6IEZvcm1Hcm91cDtcclxuICAgIEBJbnB1dCgpIG1vZGVsOiBEeW5hbWljRm9ybU1vZGVsO1xyXG4gICAgQElucHV0KCkgbGF5b3V0OiBEeW5hbWljRm9ybUxheW91dDtcclxuICAgIEBJbnB1dCgpIGxhYmVsUHJlZml4OiBzdHJpbmc7XHJcbiAgICBASW5wdXQoKSBnZXRDb21wb25lbnRUeXBlOiBHZXRGb3JtQ29udHJvbENvbXBvbmVudFR5cGU7XHJcblxyXG4gICAgQE91dHB1dCgpIGJsdXI6IEV2ZW50RW1pdHRlcjxEeW5hbWljRm9ybUNvbnRyb2xFdmVudD47XHJcbiAgICBAT3V0cHV0KCkgY2hhbmdlOiBFdmVudEVtaXR0ZXI8RHluYW1pY0Zvcm1Db250cm9sRXZlbnQ+O1xyXG4gICAgQE91dHB1dCgpIGZvY3VzOiBFdmVudEVtaXR0ZXI8RHluYW1pY0Zvcm1Db250cm9sRXZlbnQ+O1xyXG5cclxuICAgIEBDb250ZW50Q2hpbGRyZW4oRHluYW1pY1RlbXBsYXRlRGlyZWN0aXZlKSBjb250ZW50VGVtcGxhdGVzOiBRdWVyeUxpc3Q8RHluYW1pY1RlbXBsYXRlRGlyZWN0aXZlPjtcclxuICAgIEBWaWV3Q2hpbGRyZW4oRHluYW1pY1RlbXBsYXRlRGlyZWN0aXZlKSB2aWV3VGVtcGxhdGVzOiBRdWVyeUxpc3Q8RHluYW1pY1RlbXBsYXRlRGlyZWN0aXZlPjtcclxuXHJcbiAgICBnZXQgc3RhdHVzKCk6IER5bmFtaWNGb3JtU3RhdGUge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5ncm91cCA/IG51bGwgOiB0aGlzLmdyb3VwLnN0YXR1cyBhcyBEeW5hbWljRm9ybVN0YXRlO1xyXG4gICAgfVxyXG5cclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBvblZhbHVlQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtRXZlbnQ+O1xyXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IG9uU3RhdHVzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPjtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBvblN1Ym1pdDogRXZlbnRFbWl0dGVyPElEeW5hbWljRm9ybT47XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgb25EZXRlY3RDaGFuZ2VzOiBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPjtcclxuXHJcbiAgICBAVmlld0NoaWxkKE5nRm9ybSlcclxuICAgIHByb3RlY3RlZCBuZ0Zvcm06IE5nRm9ybTtcclxuICAgIHByb3RlY3RlZCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICAgIHByb3RlY3RlZCBncm91cFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRHluYW1pY0Zvcm1TZXJ2aWNlKSByZWFkb25seSBmb3JtU2VydmljZTogRHluYW1pY0Zvcm1TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQEluamVjdChFdmVudHNTZXJ2aWNlKSByZWFkb25seSBldmVudHM6IEV2ZW50c1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnRTZXJ2aWNlOiBEeW5hbWljRm9ybUNvbXBvbmVudFNlcnZpY2UsKSB7XHJcbiAgICAgICAgc3VwZXIoY2hhbmdlRGV0ZWN0b3JSZWYsIGNvbXBvbmVudFNlcnZpY2UpO1xyXG4gICAgICAgIHRoaXMuYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8RHluYW1pY0Zvcm1Db250cm9sRXZlbnQ+KCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPER5bmFtaWNGb3JtQ29udHJvbEV2ZW50PigpO1xyXG4gICAgICAgIHRoaXMuZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPER5bmFtaWNGb3JtQ29udHJvbEV2ZW50PigpO1xyXG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtRXZlbnQ+KCk7XHJcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPigpO1xyXG4gICAgICAgIHRoaXMub25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPElEeW5hbWljRm9ybT4oKTtcclxuICAgICAgICB0aGlzLm9uRGV0ZWN0Q2hhbmdlcyA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPigpO1xyXG4gICAgICAgIHRoaXMudGVtcGxhdGVzID0gbmV3IFF1ZXJ5TGlzdDxEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmU+KCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgICAgICAgdGhpcy5ncm91cFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICAgICAgICB0aGlzLmxhYmVsUHJlZml4ID0gXCJsYWJlbFwiO1xyXG4gICAgICAgIHRoaXMuZ2V0Q29tcG9uZW50VHlwZSA9ICgpID0+IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZ3JvdXBTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICBpZiAodGhpcy5ncm91cCkge1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwU3Vic2NyaXB0aW9uID0gT2JzZXJ2YWJsZVV0aWxzLm11bHRpU3Vic2NyaXB0aW9uKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5ncm91cC5zdGF0dXNDaGFuZ2VzLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZS5lbWl0KHRoaXMpO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyb3VwLnZhbHVlQ2hhbmdlcy5waXBlKGRlYm91bmNlVGltZSg1MDApKS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZm9ybVNlcnZpY2Uubm90aWZ5Q2hhbmdlcyh0aGlzLm1vZGVsLCB0aGlzLmdyb3VwKTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2UucGlwZShncm91cEJ5KGV2ID0+IGV2Lm1vZGVsKSlcclxuICAgICAgICAgICAgICAgICAgICAucGlwZShtZXJnZU1hcCh0ID0+IHQucGlwZShkZWJvdW5jZVRpbWUoNTAwKSkpKVxyXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoZXYgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLm9uVmFsdWVDaGFuZ2UuZW1pdCh7Li4uZXYsIGZvcm06IHRoaXN9KTtcclxuICAgICAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICApO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBPYnNlcnZhYmxlVXRpbHMubXVsdGlTdWJzY3JpcHRpb24oXHJcbiAgICAgICAgICAgIE9ic2VydmFibGVVdGlscy5zdWJzY3JpYmUoXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgICAgc3ViamVjdHM6IFt0aGlzLmNvbnRlbnRUZW1wbGF0ZXMuY2hhbmdlcywgdGhpcy52aWV3VGVtcGxhdGVzLmNoYW5nZXNdLFxyXG4gICAgICAgICAgICAgICAgICAgIGNiOiAoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHRlbXBsYXRlcyA9IHRoaXMuY29udGVudFRlbXBsYXRlcy50b0FycmF5KCkuY29uY2F0KHRoaXMudmlld1RlbXBsYXRlcy50b0FycmF5KCkpO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnRlbXBsYXRlcy5yZXNldCh0ZW1wbGF0ZXMpO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgKSxcclxuICAgICAgICAgICAgdGhpcy5ldmVudHMubGFuZ3VhZ2VDaGFuZ2VkLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLm5vdGlmeUNoYW5nZXModGhpcy5tb2RlbCwgdGhpcy5ncm91cCk7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLmRldGVjdENoYW5nZXModGhpcyk7XHJcbiAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICB0aGlzLm5nRm9ybS5uZ1N1Ym1pdC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vblN1Ym1pdC5lbWl0KHRoaXMpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIHRoaXMuZ3JvdXBTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBkZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICB0aGlzLm9uRGV0ZWN0Q2hhbmdlcy5lbWl0KHRoaXMpO1xyXG4gICAgfVxyXG5cclxuICAgIGluc2VydEZvcm1BcnJheUdyb3VwKGluZGV4OiBudW1iZXIsIGZvcm1BcnJheTogRm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbDogRHluYW1pY0Zvcm1BcnJheU1vZGVsKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JtU2VydmljZS5pbnNlcnRGb3JtQXJyYXlHcm91cChpbmRleCwgZm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xvbmVGb3JtQXJyYXlHcm91cChpbmRleDogbnVtYmVyLCBmb3JtQXJyYXk6IEZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWw6IER5bmFtaWNGb3JtQXJyYXlNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuY2xvbmVGb3JtQXJyYXlHcm91cChpbmRleCwgZm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcmVtb3ZlRm9ybUFycmF5R3JvdXAoaW5kZXg6IG51bWJlciwgZm9ybUFycmF5OiBGb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsOiBEeW5hbWljRm9ybUFycmF5TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLnJlbW92ZUZvcm1BcnJheUdyb3VwKGluZGV4LCBmb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsKTtcclxuICAgICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBtb3ZlRm9ybUFycmF5R3JvdXAoaW5kZXg6IG51bWJlciwgc3RlcDogbnVtYmVyLCBmb3JtQXJyYXk6IEZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWw6IER5bmFtaWNGb3JtQXJyYXlNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UubW92ZUZvcm1BcnJheUdyb3VwKGluZGV4LCBzdGVwLCBmb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsKTtcclxuICAgICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcclxuICAgIH1cclxuXHJcbiAgICBjbGVhckZvcm1BcnJheShmb3JtQXJyYXk6IEZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWw6IER5bmFtaWNGb3JtQXJyYXlNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuY2xlYXJGb3JtQXJyYXkoZm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q2xhc3MobW9kZWw/OiBEeW5hbWljRm9ybUNvbnRyb2xNb2RlbCk6IHN0cmluZyB7XHJcbiAgICAgICAgY29uc3QgcGFydHMgPSBjb2xsZWN0UGF0aEFibGUobW9kZWwsIHAgPT4gcC5pZCk7XHJcbiAgICAgICAgaWYgKHBhcnRzLmxlbmd0aCA9PSAwKSByZXR1cm4gXCJcIjtcclxuICAgICAgICBpZiAobW9kZWwgaW5zdGFuY2VvZiBEeW5hbWljRm9ybUdyb3VwTW9kZWwpIHtcclxuICAgICAgICAgICAgcmV0dXJuIGBmb3JtLWdyb3VwLSR7cGFydHMuam9pbihcIi1cIil9YDtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGBmb3JtLWNvbnRyb2wtJHtwYXJ0cy5qb2luKFwiLVwiKX1gO1xyXG4gICAgfVxyXG5cclxuICAgIHZhbGlkYXRlKHNob3dFcnJvcnM6IGJvb2xlYW4gPSB0cnVlKTogUHJvbWlzZTxhbnk+IHtcclxuICAgICAgICBpZiAoIXRoaXMuZ3JvdXApIHJldHVybiBQcm9taXNlLnJlc29sdmUoKTtcclxuICAgICAgICByZXR1cm4gbmV3IFByb21pc2U8YW55PigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAuc3RhdHVzQ2hhbmdlcy5waXBlKGZpcnN0KHN0YXR1cyA9PiBzdGF0dXMgPT0gXCJWQUxJRFwiIHx8IHN0YXR1cyA9PSBcIklOVkFMSURcIikpLnN1YnNjcmliZShzdGF0dXMgPT4ge1xyXG4gICAgICAgICAgICAgICAgaWYgKHNob3dFcnJvcnMpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLnNob3dFcnJvcnModGhpcyk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBpZiAoc3RhdHVzID09IFwiVkFMSURcIikge1xyXG4gICAgICAgICAgICAgICAgICAgIHJlc29sdmUobnVsbCk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgcmVqZWN0KG51bGwpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdGhpcy5ncm91cC51cGRhdGVWYWx1ZUFuZFZhbGlkaXR5KCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgYXN5bmMgc2VyaWFsaXplKHZhbGlkYXRlPzogYm9vbGVhbik6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmdyb3VwKSByZXR1cm4gbnVsbDtcclxuICAgICAgICBpZiAodmFsaWRhdGUpIHtcclxuICAgICAgICAgICAgYXdhaXQgdGhpcy52YWxpZGF0ZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5mb3JtU2VydmljZS5zZXJpYWxpemUodGhpcy5tb2RlbCwgdGhpcy5ncm91cCk7XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHluYW1pYy1iYXNlLWZvcm0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL25neC1keW5hbWljLWZvcm0vY29tcG9uZW50cy9iYXNlL2R5bmFtaWMtYmFzZS1mb3JtLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxlQUFlLEVBQ2YsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBRUwsTUFBTSxFQUNOLFNBQVMsRUFFVCxZQUFZLEVBQ2YsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUNuRSxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDckMsT0FBTyxFQUNILG9CQUFvQixFQUlwQixxQkFBcUIsRUFHckIsd0JBQXdCLEVBQzNCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFDLGFBQWEsRUFBRSxlQUFlLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUVoRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0scUNBQXFDLENBQUM7Ozs7O0FBT3ZFLE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxvQkFBb0I7SUEyQjlELFlBQWlELFdBQStCLEVBQ3BDLE1BQXFCLEVBQ3JELGlCQUFvQyxFQUNwQyxnQkFBNkM7UUFDckQsS0FBSyxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFKRSxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDcEMsV0FBTSxHQUFOLE1BQU0sQ0FBZTtRQUk3RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksWUFBWSxFQUEyQixDQUFDO1FBQ3hELElBQUksQ0FBQyxNQUFN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TUFBTTsyQkFBQyxrQkFBa0I7OzBCQUN6QixNQUFNOzJCQUFDLGFBQWE7c0hBMUJ4QixLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFSSxJQUFJO3NCQUFiLE1BQU07Z0JBQ0csTUFBTTtzQkFBZixNQUFNO2dCQUNHLEtBQUs7c0JBQWQsTUFBTTtnQkFFb0MsZ0JBQWdCO3NCQUExRCxlQUFlO3VCQUFDLHdCQUF3QjtnQkFDRCxhQUFhO3NCQUFwRCxZQUFZO3VCQUFDLHdCQUF3QjtnQkFNbkIsYUFBYTtzQkFBL0IsTUFBTTtnQkFDWSxjQUFjO3NCQUFoQyxNQUFNO2dCQUNZLFFBQVE7c0JBQTFCLE1BQU07Z0JBQ1ksZUFBZTtzQkFBakMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgICBBZnRlclZpZXdJbml0LFxyXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXHJcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIENvbXBvbmVudCxcclxuICAgIENvbnRlbnRDaGlsZHJlbixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEluamVjdCxcclxuICAgIElucHV0LFxyXG4gICAgT25DaGFuZ2VzLFxyXG4gICAgT3V0cHV0LFxyXG4gICAgUXVlcnlMaXN0LFxyXG4gICAgU2ltcGxlQ2hhbmdlcyxcclxuICAgIFZpZXdDaGlsZHJlblxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7Rm9ybUFycmF5LCBGb3JtR3JvdXB9IGZyb20gXCJAYW5ndWxhci9mb3Jtc1wiO1xyXG5pbXBvcnQge2RlYm91bmNlVGltZSwgZ3JvdXBCeSwgbWVyZ2VNYXAsIFN1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtmaXJzdH0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7XHJcbiAgICBEeW5hbWljRm9ybUNvbXBvbmVudCxcclxuICAgIER5bmFtaWNGb3JtQ29tcG9uZW50U2VydmljZSxcclxuICAgIER5bmFtaWNGb3JtQ29udHJvbEV2ZW50LFxyXG4gICAgRHluYW1pY0Zvcm1Db250cm9sTW9kZWwsXHJcbiAgICBEeW5hbWljRm9ybUdyb3VwTW9kZWwsXHJcbiAgICBEeW5hbWljRm9ybUxheW91dCxcclxuICAgIER5bmFtaWNGb3JtTW9kZWwsXHJcbiAgICBEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmVcclxufSBmcm9tIFwiQG5nLWR5bmFtaWMtZm9ybXMvY29yZVwiO1xyXG5pbXBvcnQge0V2ZW50c1NlcnZpY2UsIE9ic2VydmFibGVVdGlsc30gZnJvbSBcIkBzdGVteS9uZ3gtdXRpbHNcIjtcclxuaW1wb3J0IHtEeW5hbWljRm9ybVN0YXRlLCBHZXRGb3JtQ29udHJvbENvbXBvbmVudFR5cGUsIElEeW5hbWljRm9ybSwgSUR5bmFtaWNGb3JtRXZlbnR9IGZyb20gXCIuLi8uLi9jb21tb24tdHlwZXNcIjtcclxuaW1wb3J0IHtjb2xsZWN0UGF0aEFibGV9IGZyb20gXCIuLi8uLi91dGlscy9taXNjXCI7XHJcbmltcG9ydCB7RHluYW1pY0Zvcm1BcnJheU1vZGVsfSBmcm9tIFwiLi4vLi4vdXRpbHMvZHluYW1pYy1mb3JtLWFycmF5Lm1vZGVsXCI7XHJcbmltcG9ydCB7RHluYW1pY0Zvcm1TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZXMvZHluYW1pYy1mb3JtLnNlcnZpY2VcIjtcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6IFwiZHluYW1pYy1iYXNlLWZvcm1cIixcclxuICAgIHRlbXBsYXRlOiBcIlwiLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5EZWZhdWx0XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBEeW5hbWljQmFzZUZvcm1Db21wb25lbnQgZXh0ZW5kcyBEeW5hbWljRm9ybUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJWaWV3SW5pdCwgSUR5bmFtaWNGb3JtIHtcclxuXHJcbiAgICBASW5wdXQoKSBncm91cDogRm9ybUdyb3VwO1xyXG4gICAgQElucHV0KCkgbW9kZWw6IER5bmFtaWNGb3JtTW9kZWw7XHJcbiAgICBASW5wdXQoKSBsYXlvdXQ6IER5bmFtaWNGb3JtTGF5b3V0O1xyXG4gICAgQElucHV0KCkgbGFiZWxQcmVmaXg6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIGdldENvbXBvbmVudFR5cGU6IEdldEZvcm1Db250cm9sQ29tcG9uZW50VHlwZTtcclxuXHJcbiAgICBAT3V0cHV0KCkgYmx1cjogRXZlbnRFbWl0dGVyPER5bmFtaWNGb3JtQ29udHJvbEV2ZW50PjtcclxuICAgIEBPdXRwdXQoKSBjaGFuZ2U6IEV2ZW50RW1pdHRlcjxEeW5hbWljRm9ybUNvbnRyb2xFdmVudD47XHJcbiAgICBAT3V0cHV0KCkgZm9jdXM6IEV2ZW50RW1pdHRlcjxEeW5hbWljRm9ybUNvbnRyb2xFdmVudD47XHJcblxyXG4gICAgQENvbnRlbnRDaGlsZHJlbihEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmUpIGNvbnRlbnRUZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmU+O1xyXG4gICAgQFZpZXdDaGlsZHJlbihEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmUpIHZpZXdUZW1wbGF0ZXM6IFF1ZXJ5TGlzdDxEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmU+O1xyXG5cclxuICAgIGdldCBzdGF0dXMoKTogRHluYW1pY0Zvcm1TdGF0ZSB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLmdyb3VwID8gbnVsbCA6IHRoaXMuZ3JvdXAuc3RhdHVzIGFzIER5bmFtaWNGb3JtU3RhdGU7XHJcbiAgICB9XHJcblxyXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IG9uVmFsdWVDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJRHluYW1pY0Zvcm1FdmVudD47XHJcbiAgICBAT3V0cHV0KCkgcmVhZG9ubHkgb25TdGF0dXNDaGFuZ2U6IEV2ZW50RW1pdHRlcjxJRHluYW1pY0Zvcm0+O1xyXG4gICAgQE91dHB1dCgpIHJlYWRvbmx5IG9uU3VibWl0OiBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPjtcclxuICAgIEBPdXRwdXQoKSByZWFkb25seSBvbkRldGVjdENoYW5nZXM6IEV2ZW50RW1pdHRlcjxJRHluYW1pY0Zvcm0+O1xyXG5cclxuICAgIHByb3RlY3RlZCBzdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcclxuICAgIHByb3RlY3RlZCBncm91cFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoRHluYW1pY0Zvcm1TZXJ2aWNlKSByZWFkb25seSBmb3JtU2VydmljZTogRHluYW1pY0Zvcm1TZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgQEluamVjdChFdmVudHNTZXJ2aWNlKSByZWFkb25seSBldmVudHM6IEV2ZW50c1NlcnZpY2UsXHJcbiAgICAgICAgICAgICAgICBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgICAgICAgICBjb21wb25lbnRTZXJ2aWNlOiBEeW5hbWljRm9ybUNvbXBvbmVudFNlcnZpY2UsKSB7XHJcbiAgICAgICAgc3VwZXIoY2hhbmdlRGV0ZWN0b3JSZWYsIGNvbXBvbmVudFNlcnZpY2UpO1xyXG4gICAgICAgIHRoaXMuYmx1ciA9IG5ldyBFdmVudEVtaXR0ZXI8RHluYW1pY0Zvcm1Db250cm9sRXZlbnQ+KCk7XHJcbiAgICAgICAgdGhpcy5jaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPER5bmFtaWNGb3JtQ29udHJvbEV2ZW50PigpO1xyXG4gICAgICAgIHRoaXMuZm9jdXMgPSBuZXcgRXZlbnRFbWl0dGVyPER5bmFtaWNGb3JtQ29udHJvbEV2ZW50PigpO1xyXG4gICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtRXZlbnQ+KCk7XHJcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPigpO1xyXG4gICAgICAgIHRoaXMub25TdWJtaXQgPSBuZXcgRXZlbnRFbWl0dGVyPElEeW5hbWljRm9ybT4oKTtcclxuICAgICAgICB0aGlzLm9uRGV0ZWN0Q2hhbmdlcyA9IG5ldyBFdmVudEVtaXR0ZXI8SUR5bmFtaWNGb3JtPigpO1xyXG4gICAgICAgIHRoaXMudGVtcGxhdGVzID0gbmV3IFF1ZXJ5TGlzdDxEeW5hbWljVGVtcGxhdGVEaXJlY3RpdmU+KCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcbiAgICAgICAgdGhpcy5ncm91cFN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcclxuICAgICAgICB0aGlzLmxhYmVsUHJlZml4ID0gXCJsYWJlbFwiO1xyXG4gICAgICAgIHRoaXMuZ2V0Q29tcG9uZW50VHlwZSA9ICgpID0+IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgc3VibWl0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMub25TdWJtaXQuZW1pdCh0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5ncm91cFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIGlmICh0aGlzLmdyb3VwKSB7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXBTdWJzY3JpcHRpb24gPSBPYnNlcnZhYmxlVXRpbHMubXVsdGlTdWJzY3JpcHRpb24oXHJcbiAgICAgICAgICAgICAgICB0aGlzLmdyb3VwLnN0YXR1c0NoYW5nZXMuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLm9uU3RhdHVzQ2hhbmdlLmVtaXQodGhpcyk7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIHRoaXMuZ3JvdXAudmFsdWVDaGFuZ2VzLnBpcGUoZGVib3VuY2VUaW1lKDUwMCkpLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtU2VydmljZS5ub3RpZnlDaGFuZ2VzKHRoaXMubW9kZWwsIHRoaXMuZ3JvdXApO1xyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICB0aGlzLmNoYW5nZS5waXBlKGdyb3VwQnkoZXYgPT4gZXYubW9kZWwpKVxyXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKG1lcmdlTWFwKHQgPT4gdC5waXBlKGRlYm91bmNlVGltZSg1MDApKSkpXHJcbiAgICAgICAgICAgICAgICAgICAgLnN1YnNjcmliZShldiA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMub25WYWx1ZUNoYW5nZS5lbWl0KHsuLi5ldiwgZm9ybTogdGhpc30pO1xyXG4gICAgICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbiA9IE9ic2VydmFibGVVdGlscy5tdWx0aVN1YnNjcmlwdGlvbihcclxuICAgICAgICAgICAgT2JzZXJ2YWJsZVV0aWxzLnN1YnNjcmliZShcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgICBzdWJqZWN0czogW3RoaXMuY29udGVudFRlbXBsYXRlcy5jaGFuZ2VzLCB0aGlzLnZpZXdUZW1wbGF0ZXMuY2hhbmdlc10sXHJcbiAgICAgICAgICAgICAgICAgICAgY2I6ICgpID0+IHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgdGVtcGxhdGVzID0gdGhpcy5jb250ZW50VGVtcGxhdGVzLnRvQXJyYXkoKS5jb25jYXQodGhpcy52aWV3VGVtcGxhdGVzLnRvQXJyYXkoKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudGVtcGxhdGVzLnJlc2V0KHRlbXBsYXRlcyk7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICAgICB0aGlzLmV2ZW50cy5sYW5ndWFnZUNoYW5nZWQuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybVNlcnZpY2Uubm90aWZ5Q2hhbmdlcyh0aGlzLm1vZGVsLCB0aGlzLmdyb3VwKTtcclxuICAgICAgICAgICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuZGV0ZWN0Q2hhbmdlcyh0aGlzKTtcclxuICAgICAgICAgICAgfSlcclxuICAgICAgICApO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XHJcbiAgICAgICAgdGhpcy5zdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICAgICAgICB0aGlzLmdyb3VwU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgdGhpcy5vbkRldGVjdENoYW5nZXMuZW1pdCh0aGlzKTtcclxuICAgIH1cclxuXHJcbiAgICBpbnNlcnRGb3JtQXJyYXlHcm91cChpbmRleDogbnVtYmVyLCBmb3JtQXJyYXk6IEZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWw6IER5bmFtaWNGb3JtQXJyYXlNb2RlbCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuZm9ybVNlcnZpY2UuaW5zZXJ0Rm9ybUFycmF5R3JvdXAoaW5kZXgsIGZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWwpO1xyXG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGNsb25lRm9ybUFycmF5R3JvdXAoaW5kZXg6IG51bWJlciwgZm9ybUFycmF5OiBGb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsOiBEeW5hbWljRm9ybUFycmF5TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLmNsb25lRm9ybUFycmF5R3JvdXAoaW5kZXgsIGZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWwpO1xyXG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHJlbW92ZUZvcm1BcnJheUdyb3VwKGluZGV4OiBudW1iZXIsIGZvcm1BcnJheTogRm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbDogRHluYW1pY0Zvcm1BcnJheU1vZGVsKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5mb3JtU2VydmljZS5yZW1vdmVGb3JtQXJyYXlHcm91cChpbmRleCwgZm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgbW92ZUZvcm1BcnJheUdyb3VwKGluZGV4OiBudW1iZXIsIHN0ZXA6IG51bWJlciwgZm9ybUFycmF5OiBGb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsOiBEeW5hbWljRm9ybUFycmF5TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLm1vdmVGb3JtQXJyYXlHcm91cChpbmRleCwgc3RlcCwgZm9ybUFycmF5LCBmb3JtQXJyYXlNb2RlbCk7XHJcbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgY2xlYXJGb3JtQXJyYXkoZm9ybUFycmF5OiBGb3JtQXJyYXksIGZvcm1BcnJheU1vZGVsOiBEeW5hbWljRm9ybUFycmF5TW9kZWwpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmZvcm1TZXJ2aWNlLmNsZWFyRm9ybUFycmF5KGZvcm1BcnJheSwgZm9ybUFycmF5TW9kZWwpO1xyXG4gICAgICAgIHRoaXMuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENsYXNzKG1vZGVsPzogRHluYW1pY0Zvcm1Db250cm9sTW9kZWwpOiBzdHJpbmcge1xyXG4gICAgICAgIGNvbnN0IHBhcnRzID0gY29sbGVjdFBhdGhBYmxlKG1vZGVsLCBwID0+IHAuaWQpO1xyXG4gICAgICAgIGlmIChwYXJ0cy5sZW5ndGggPT0gMCkgcmV0dXJuIFwiXCI7XHJcbiAgICAgICAgaWYgKG1vZGVsIGluc3RhbmNlb2YgRHluYW1pY0Zvcm1Hcm91cE1vZGVsKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBgZm9ybS1ncm91cC0ke3BhcnRzLmpvaW4oXCItXCIpfWA7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiBgZm9ybS1jb250cm9sLSR7cGFydHMuam9pbihcIi1cIil9YDtcclxuICAgIH1cclxuXHJcbiAgICB2YWxpZGF0ZShzaG93RXJyb3JzOiBib29sZWFuID0gdHJ1ZSk6IFByb21pc2U8YW55PiB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmdyb3VwKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCk7XHJcbiAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGFueT4oKHJlc29sdmUsIHJlamVjdCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmdyb3VwLnN0YXR1c0NoYW5nZXMucGlwZShmaXJzdChzdGF0dXMgPT4gc3RhdHVzID09IFwiVkFMSURcIiB8fCBzdGF0dXMgPT0gXCJJTlZBTElEXCIpKS5zdWJzY3JpYmUoc3RhdHVzID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChzaG93RXJyb3JzKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5mb3JtU2VydmljZS5zaG93RXJyb3JzKHRoaXMpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgaWYgKHN0YXR1cyA9PSBcIlZBTElEXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICByZXNvbHZlKG51bGwpO1xyXG4gICAgICAgICAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIHJlamVjdChudWxsKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMuZ3JvdXAudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGFzeW5jIHNlcmlhbGl6ZSh2YWxpZGF0ZT86IGJvb2xlYW4pOiBQcm9taXNlPGFueT4ge1xyXG4gICAgICAgIGlmICghdGhpcy5ncm91cCkgcmV0dXJuIG51bGw7XHJcbiAgICAgICAgaWYgKHZhbGlkYXRlKSB7XHJcbiAgICAgICAgICAgIGF3YWl0IHRoaXMudmFsaWRhdGUoKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGF3YWl0IHRoaXMuZm9ybVNlcnZpY2Uuc2VyaWFsaXplKHRoaXMubW9kZWwsIHRoaXMuZ3JvdXApO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Directive, EventEmitter, HostBinding, HostListener, Inject, Input, Output } from "@angular/core";
|
|
2
|
+
import { debounceTime } from "rxjs/operators";
|
|
2
3
|
import { TOASTER_SERVICE } from "@stemy/ngx-utils";
|
|
3
4
|
import { getFormValidationErrors } from "../utils/validation-errors";
|
|
4
5
|
import * as i0 from "@angular/core";
|
|
@@ -43,7 +44,7 @@ export class AsyncSubmitDirective {
|
|
|
43
44
|
}
|
|
44
45
|
this.callback = null;
|
|
45
46
|
});
|
|
46
|
-
this.onSubmit = this.form.onSubmit.subscribe(() => this.callMethod());
|
|
47
|
+
this.onSubmit = this.form.onSubmit.pipe(debounceTime(200)).subscribe(() => this.callMethod());
|
|
47
48
|
}
|
|
48
49
|
ngOnDestroy() {
|
|
49
50
|
if (this.onStatusChange)
|
|
@@ -112,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
112
113
|
type: HostListener,
|
|
113
114
|
args: ["click"]
|
|
114
115
|
}] } });
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtc3VibWl0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtZHluYW1pYy1mb3JtL2RpcmVjdGl2ZXMvYXN5bmMtc3VibWl0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUVULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBaUMsZUFBZSxFQUFDLE1BQU0sa0JBQWtCLENBQUM7QUFFakYsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sNEJBQTRCLENBQUM7O0FBTW5FLE1BQU0sT0FBTyxvQkFBb0I7SUFrQzdCLFlBQTZDLE9BQXdCLEVBQ2hELEdBQXNCLEVBQ3RCLElBQWdCLEVBQ2hCLFFBQW1CO1FBSEssWUFBTyxHQUFQLE9BQU8sQ0FBaUI7UUFDaEQsUUFBRyxHQUFILEdBQUcsQ0FBbUI7UUFDdEIsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFXO1FBQ3BDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFDbkQsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLFlBQVksRUFBaUIsQ0FBQztRQUNqRCxJQUFJLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxLQUFLLFFBQVE7WUFBRSxPQUFPO1FBQ3BELFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsUUFBUSxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQTNCRCxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDekIsQ0FBQztJQUVELElBQUksVUFBVSxDQUFDLEtBQWM7UUFDekIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7UUFDdEIs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QU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQzthQUN4RDtRQUNMLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRTtZQUNSLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDMUIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQ0FBK0MsQ0FBQyxDQUFDO1lBQ3JFLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO1lBQ3JCLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3ZELENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs7aUhBNUZRLG9CQUFvQixrQkFrQ1QsZUFBZTtxR0FsQzFCLG9CQUFvQjsyRkFBcEIsb0JBQW9CO2tCQUpoQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUMzQjs7MEJBbUNnQixNQUFNOzJCQUFDLGVBQWU7NkhBaENaLE1BQU07c0JBQTVCLEtBQUs7dUJBQUMsY0FBYztnQkFDWixJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUVJLFNBQVM7c0JBQWxCLE1BQU07Z0JBQ0csT0FBTztzQkFBaEIsTUFBTTtnQkFTSCxVQUFVO3NCQURiLFdBQVc7dUJBQUMsZ0JBQWdCO2dCQWV6QixTQUFTO3NCQURaLFdBQVc7dUJBQUMsZUFBZTtnQkFxQzVCLEtBQUs7c0JBREosWUFBWTt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICAgIENoYW5nZURldGVjdG9yUmVmLFxyXG4gICAgRGlyZWN0aXZlLFxyXG4gICAgRWxlbWVudFJlZixcclxuICAgIEV2ZW50RW1pdHRlcixcclxuICAgIEhvc3RCaW5kaW5nLFxyXG4gICAgSG9zdExpc3RlbmVyLFxyXG4gICAgSW5qZWN0LFxyXG4gICAgSW5wdXQsXHJcbiAgICBPbkRlc3Ryb3ksXHJcbiAgICBPbkluaXQsXHJcbiAgICBPdXRwdXQsXHJcbiAgICBSZW5kZXJlcjJcclxufSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSBcInJ4anNcIjtcclxuaW1wb3J0IHtJQXN5bmNNZXNzYWdlLCBJVG9hc3RlclNlcnZpY2UsIFRPQVNURVJfU0VSVklDRX0gZnJvbSBcIkBzdGVteS9uZ3gtdXRpbHNcIjtcclxuaW1wb3J0IHtBc3luY1N1Ym1pdE1ldGhvZCwgSUR5bmFtaWNGb3JtfSBmcm9tIFwiLi4vY29tbW9uLXR5cGVzXCI7XHJcbmltcG9ydCB7Z2V0Rm9ybVZhbGlkYXRpb25FcnJvcnN9IGZyb20gXCIuLi91dGlscy92YWxpZGF0aW9uLWVycm9yc1wiO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogXCJbYXN5bmMtc3VibWl0XVwiLFxyXG4gICAgZXhwb3J0QXM6IFwiYXN5bmMtc3VibWl0XCJcclxufSlcclxuZXhwb3J0IGNsYXNzIEFzeW5jU3VibWl0RGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIEBJbnB1dChcImFzeW5jLXN1Ym1pdFwiKSBtZXRob2Q6IEFzeW5jU3VibWl0TWV0aG9kO1xyXG4gICAgQElucHV0KCkgZm9ybTogSUR5bmFtaWNGb3JtO1xyXG4gICAgQElucHV0KCkgY29udGV4dDogYW55O1xyXG5cclxuICAgIEBPdXRwdXQoKSBvblN1Y2Nlc3M6IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPjtcclxuICAgIEBPdXRwdXQoKSBvbkVycm9yOiBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT47XHJcblxyXG4gICAgcHJpdmF0ZSBsb2FkaW5nOiBib29sZWFuO1xyXG4gICAgcHJpdmF0ZSBkaXNhYmxlZDogYm9vbGVhbjtcclxuICAgIHByaXZhdGUgY2FsbGJhY2s6IEZ1bmN0aW9uO1xyXG4gICAgcHJpdmF0ZSBvblN0YXR1c0NoYW5nZTogU3Vic2NyaXB0aW9uO1xyXG4gICAgcHJpdmF0ZSBvblN1Ym1pdDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAgIEBIb3N0QmluZGluZyhcImNsYXNzLmRpc2FibGVkXCIpXHJcbiAgICBnZXQgaXNEaXNhYmxlZCgpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5kaXNhYmxlZDtcclxuICAgIH1cclxuXHJcbiAgICBzZXQgaXNEaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikge1xyXG4gICAgICAgIHRoaXMuZGlzYWJsZWQgPSB2YWx1ZTtcclxuICAgICAgICBpZiAodmFsdWUpIHtcclxuICAgICAgICAgICAgdGhpcy5yZW5kZXJlci5zZXRBdHRyaWJ1dGUodGhpcy5lbGVtLm5hdGl2ZUVsZW1lbnQsIFwiZGlzYWJsZWRcIiwgXCJkaXNhYmxlZFwiKTtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUF0dHJpYnV0ZSh0aGlzLmVsZW0ubmF0aXZlRWxlbWVudCwgXCJkaXNhYmxlZFwiKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5sb2FkaW5nXCIpXHJcbiAgICBnZXQgaXNMb2FkaW5nKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiB0aGlzLmxvYWRpbmc7XHJcbiAgICB9XHJcblxyXG4gICAgY29uc3RydWN0b3IoQEluamVjdChUT0FTVEVSX1NFUlZJQ0UpIHByaXZhdGUgdG9hc3RlcjogSVRvYXN0ZXJTZXJ2aWNlLFxyXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IGVsZW06IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSByZW5kZXJlcjogUmVuZGVyZXIyKSB7XHJcbiAgICAgICAgdGhpcy5vblN1Y2Nlc3MgPSBuZXcgRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+KCk7XHJcbiAgICAgICAgdGhpcy5vbkVycm9yID0gbmV3IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPigpO1xyXG4gICAgICAgIGlmIChlbGVtLm5hdGl2ZUVsZW1lbnQudGFnTmFtZSAhPT0gXCJCVVRUT05cIikgcmV0dXJuO1xyXG4gICAgICAgIHJlbmRlcmVyLnNldEF0dHJpYnV0ZShlbGVtLm5hdGl2ZUVsZW1lbnQsIFwidHlwZVwiLCBcImJ1dHRvblwiKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoIXRoaXMuZm9ybSkgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMuaXNEaXNhYmxlZCA9IHRoaXMuZm9ybS5zdGF0dXMgIT09IFwiVkFMSURcIjtcclxuICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgdGhpcy5vblN0YXR1c0NoYW5nZSA9IHRoaXMuZm9ybS5vblN0YXR1c0NoYW5nZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSB0aGlzLmZvcm0uc3RhdHVzICE9PSBcIlZBTElEXCI7XHJcbiAgICAgICAgICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmNhbGxiYWNrIHx8IHRoaXMuZm9ybS5zdGF0dXMgPT0gXCJQRU5ESU5HXCIpIHJldHVybjtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLmNhbGxiYWNrKCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGw7XHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgdGhpcy5vblN1Ym1pdCA9IHRoaXMuZm9ybS5vblN1Ym1pdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jYWxsTWV0aG9kKCkpO1xyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLm9uU3RhdHVzQ2hhbmdlKSB0aGlzLm9uU3RhdHVzQ2hhbmdlLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgaWYgKHRoaXMub25TdWJtaXQpIHRoaXMub25TdWJtaXQudW5zdWJzY3JpYmUoKTtcclxuICAgIH1cclxuXHJcbiAgICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIilcclxuICAgIGNsaWNrKCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuY2FsbGJhY2sgPSAoKSA9PiB0aGlzLmNhbGxNZXRob2QoKTtcclxuICAgICAgICBpZiAodGhpcy5mb3JtLnN0YXR1cyA9PT0gXCJJTlZBTElEXCIpIHtcclxuICAgICAgICAgICAgY29uc29sZS5sb2coZ2V0Rm9ybVZhbGlkYXRpb25FcnJvcnModGhpcy5mb3JtLmdyb3VwLmNvbnRyb2xzKSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmZvcm0uc3RhdHVzICE9PSBcIlZBTElEXCIgJiYgdGhpcy5mb3JtLnN0YXR1cyAhPT0gXCJJTlZBTElEXCIpIHJldHVybjtcclxuICAgICAgICB0aGlzLmNhbGxiYWNrKCk7XHJcbiAgICAgICAgdGhpcy5jYWxsYmFjayA9IG51bGw7XHJcbiAgICB9XHJcblxyXG4gICAgY2FsbE1ldGhvZCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5sb2FkaW5nKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcclxuICAgICAgICB0aGlzLm1ldGhvZCh0aGlzLmZvcm0sIHRoaXMuY29udGV4dCkudGhlbihyZXN1bHQgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmxvYWRpbmcgPSBmYWxzZTtcclxuICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5vblN1Y2Nlc3MuZW1pdChyZXN1bHQpO1xyXG4gICAgICAgICAgICAgICAgdGhpcy50b2FzdGVyLnN1Y2Nlc3MocmVzdWx0Lm1lc3NhZ2UsIHJlc3VsdC5jb250ZXh0KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0sIHJlYXNvbiA9PiB7XHJcbiAgICAgICAgICAgIGlmICghcmVhc29uIHx8ICFyZWFzb24ubWVzc2FnZSlcclxuICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIlJlYXNvbiBtdXN0IGltcGxlbWVudCBJQXN5bmNNZXNzYWdlIGludGVyZmFjZVwiKTtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIHRoaXMub25FcnJvci5lbWl0KHJlYXNvbik7XHJcbiAgICAgICAgICAgIHRoaXMudG9hc3Rlci5lcnJvcihyZWFzb24ubWVzc2FnZSwgcmVhc29uLmNvbnRleHQpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG59XHJcbiJdfQ==
|
|
116
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXN5bmMtc3VibWl0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9uZ3gtZHluYW1pYy1mb3JtL2RpcmVjdGl2ZXMvYXN5bmMtc3VibWl0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRUgsU0FBUyxFQUVULFlBQVksRUFDWixXQUFXLEVBQ1gsWUFBWSxFQUNaLE1BQU0sRUFDTixLQUFLLEVBR0wsTUFBTSxFQUVULE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxZQUFZLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUM1QyxPQUFPLEVBQWlDLGVBQWUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBRWpGLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDOztBQU1uRSxNQUFNLE9BQU8sb0JBQW9CO0lBa0M3QixZQUE2QyxPQUF3QixFQUNoRCxHQUFzQixFQUN0QixJQUFnQixFQUNoQixRQUFtQjtRQUhLLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ2hELFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNwQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksWUFBWSxFQUFpQixDQUFDO1FBQ25ELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxZQUFZLEVBQWlCLENBQUM7UUFDakQsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sS0FBSyxRQUFRO1lBQUUsT0FBTztRQUNwRCxRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7SUEzQkQsSUFDSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxJQUFJLFVBQVUsQ0FBQyxLQUFjO1FBQ3pCLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO1FBQ3RCLElBQUksS0FBSyxFQUFFO1lBQ1AsSUFBSSxDQUFDLFFBQVEsQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzVFLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3ZFLENBQUM7SUFFRCxJQUNJLFNBQVM7UUFDVCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQVlELFFBQVE7UUFDSixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUk7WUFBRSxPQUFPO1FBQ3ZCLElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDO1FBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDekIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzFELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxDQUFDO1lBQy9DLElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksU0FBUztnQkFBRSxPQUFPO1lBQzVELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNoQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7YUFDbkI7WUFDRCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQztRQUN6QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUNsRyxDQUFDO0lBRUQsV0FBVztRQUNQLElBQUksSUFBSSxDQUFDLGNBQWM7WUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQzNELElBQUksSUFBSSxDQUFDLFFBQVE7WUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ25ELENBQUM7SUFHRCxLQUFLO1FBQ0QsSUFBSSxDQUFDLFFBQVEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDeEMsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxTQUFTLEVBQUU7WUFDaEMsT0FBTyxDQUFDLEdBQUcsQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1NBQ2xFO1FBQ0QsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sS0FBSyxPQUFPLElBQUksSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLEtBQUssU0FBUztZQUFFLE9BQU87UUFDM0UsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO0lBQ3pCLENBQUM7SUFFRCxVQUFVO1FBQ04sSUFBSSxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFDekIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDcEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDL0MsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxNQUFNLEVBQUU7Z0JBQ1IsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQzVCLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2FBQ3hEO1FBQ0wsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxFQUFFO1lBQ1IsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPO2dCQUMxQixNQUFNLElBQUksS0FBSyxDQUFDLCtDQUErQyxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7WUFDckIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdkQsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOztpSEE1RlEsb0JBQW9CLGtCQWtDVCxlQUFlO3FHQWxDMUIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBSmhDLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLGdCQUFnQjtvQkFDMUIsUUFBUSxFQUFFLGNBQWM7aUJBQzNCOzswQkFtQ2dCLE1BQU07MkJBQUMsZUFBZTs2SEFoQ1osTUFBTTtzQkFBNUIsS0FBSzt1QkFBQyxjQUFjO2dCQUNaLElBQUk7c0JBQVosS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBRUksU0FBUztzQkFBbEIsTUFBTTtnQkFDRyxPQUFPO3NCQUFoQixNQUFNO2dCQVNILFVBQVU7c0JBRGIsV0FBVzt1QkFBQyxnQkFBZ0I7Z0JBZXpCLFNBQVM7c0JBRFosV0FBVzt1QkFBQyxlQUFlO2dCQXFDNUIsS0FBSztzQkFESixZQUFZO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBEaXJlY3RpdmUsXHJcbiAgICBFbGVtZW50UmVmLFxyXG4gICAgRXZlbnRFbWl0dGVyLFxyXG4gICAgSG9zdEJpbmRpbmcsXHJcbiAgICBIb3N0TGlzdGVuZXIsXHJcbiAgICBJbmplY3QsXHJcbiAgICBJbnB1dCxcclxuICAgIE9uRGVzdHJveSxcclxuICAgIE9uSW5pdCxcclxuICAgIE91dHB1dCxcclxuICAgIFJlbmRlcmVyMlxyXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tIFwicnhqc1wiO1xyXG5pbXBvcnQge2RlYm91bmNlVGltZX0gZnJvbSBcInJ4anMvb3BlcmF0b3JzXCI7XHJcbmltcG9ydCB7SUFzeW5jTWVzc2FnZSwgSVRvYXN0ZXJTZXJ2aWNlLCBUT0FTVEVSX1NFUlZJQ0V9IGZyb20gXCJAc3RlbXkvbmd4LXV0aWxzXCI7XHJcbmltcG9ydCB7QXN5bmNTdWJtaXRNZXRob2QsIElEeW5hbWljRm9ybX0gZnJvbSBcIi4uL2NvbW1vbi10eXBlc1wiO1xyXG5pbXBvcnQge2dldEZvcm1WYWxpZGF0aW9uRXJyb3JzfSBmcm9tIFwiLi4vdXRpbHMvdmFsaWRhdGlvbi1lcnJvcnNcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6IFwiW2FzeW5jLXN1Ym1pdF1cIixcclxuICAgIGV4cG9ydEFzOiBcImFzeW5jLXN1Ym1pdFwiXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBc3luY1N1Ym1pdERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoXCJhc3luYy1zdWJtaXRcIikgbWV0aG9kOiBBc3luY1N1Ym1pdE1ldGhvZDtcclxuICAgIEBJbnB1dCgpIGZvcm06IElEeW5hbWljRm9ybTtcclxuICAgIEBJbnB1dCgpIGNvbnRleHQ6IGFueTtcclxuXHJcbiAgICBAT3V0cHV0KCkgb25TdWNjZXNzOiBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT47XHJcbiAgICBAT3V0cHV0KCkgb25FcnJvcjogRXZlbnRFbWl0dGVyPElBc3luY01lc3NhZ2U+O1xyXG5cclxuICAgIHByaXZhdGUgbG9hZGluZzogYm9vbGVhbjtcclxuICAgIHByaXZhdGUgZGlzYWJsZWQ6IGJvb2xlYW47XHJcbiAgICBwcml2YXRlIGNhbGxiYWNrOiBGdW5jdGlvbjtcclxuICAgIHByaXZhdGUgb25TdGF0dXNDaGFuZ2U6IFN1YnNjcmlwdGlvbjtcclxuICAgIHByaXZhdGUgb25TdWJtaXQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBASG9zdEJpbmRpbmcoXCJjbGFzcy5kaXNhYmxlZFwiKVxyXG4gICAgZ2V0IGlzRGlzYWJsZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuZGlzYWJsZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgc2V0IGlzRGlzYWJsZWQodmFsdWU6IGJvb2xlYW4pIHtcclxuICAgICAgICB0aGlzLmRpc2FibGVkID0gdmFsdWU7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuc2V0QXR0cmlidXRlKHRoaXMuZWxlbS5uYXRpdmVFbGVtZW50LCBcImRpc2FibGVkXCIsIFwiZGlzYWJsZWRcIik7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5yZW5kZXJlci5yZW1vdmVBdHRyaWJ1dGUodGhpcy5lbGVtLm5hdGl2ZUVsZW1lbnQsIFwiZGlzYWJsZWRcIik7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RCaW5kaW5nKFwiY2xhc3MubG9hZGluZ1wiKVxyXG4gICAgZ2V0IGlzTG9hZGluZygpOiBib29sZWFuIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5sb2FkaW5nO1xyXG4gICAgfVxyXG5cclxuICAgIGNvbnN0cnVjdG9yKEBJbmplY3QoVE9BU1RFUl9TRVJWSUNFKSBwcml2YXRlIHRvYXN0ZXI6IElUb2FzdGVyU2VydmljZSxcclxuICAgICAgICAgICAgICAgIHJlYWRvbmx5IGNkcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICAgICAgICAgICAgICByZWFkb25seSBlbGVtOiBFbGVtZW50UmVmLFxyXG4gICAgICAgICAgICAgICAgcmVhZG9ubHkgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xyXG4gICAgICAgIHRoaXMub25TdWNjZXNzID0gbmV3IEV2ZW50RW1pdHRlcjxJQXN5bmNNZXNzYWdlPigpO1xyXG4gICAgICAgIHRoaXMub25FcnJvciA9IG5ldyBFdmVudEVtaXR0ZXI8SUFzeW5jTWVzc2FnZT4oKTtcclxuICAgICAgICBpZiAoZWxlbS5uYXRpdmVFbGVtZW50LnRhZ05hbWUgIT09IFwiQlVUVE9OXCIpIHJldHVybjtcclxuICAgICAgICByZW5kZXJlci5zZXRBdHRyaWJ1dGUoZWxlbS5uYXRpdmVFbGVtZW50LCBcInR5cGVcIiwgXCJidXR0b25cIik7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCF0aGlzLmZvcm0pIHJldHVybjtcclxuICAgICAgICB0aGlzLmlzRGlzYWJsZWQgPSB0aGlzLmZvcm0uc3RhdHVzICE9PSBcIlZBTElEXCI7XHJcbiAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgICAgIHRoaXMub25TdGF0dXNDaGFuZ2UgPSB0aGlzLmZvcm0ub25TdGF0dXNDaGFuZ2Uuc3Vic2NyaWJlKCgpID0+IHtcclxuICAgICAgICAgICAgdGhpcy5pc0Rpc2FibGVkID0gdGhpcy5mb3JtLnN0YXR1cyAhPT0gXCJWQUxJRFwiO1xyXG4gICAgICAgICAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5jYWxsYmFjayB8fCB0aGlzLmZvcm0uc3RhdHVzID09IFwiUEVORElOR1wiKSByZXR1cm47XHJcbiAgICAgICAgICAgIGlmICghdGhpcy5kaXNhYmxlZCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5jYWxsYmFjaygpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsO1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIHRoaXMub25TdWJtaXQgPSB0aGlzLmZvcm0ub25TdWJtaXQucGlwZShkZWJvdW5jZVRpbWUoMjAwKSkuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2FsbE1ldGhvZCgpKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5vblN0YXR1c0NoYW5nZSkgdGhpcy5vblN0YXR1c0NoYW5nZS51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIGlmICh0aGlzLm9uU3VibWl0KSB0aGlzLm9uU3VibWl0LnVuc3Vic2NyaWJlKCk7XHJcbiAgICB9XHJcblxyXG4gICAgQEhvc3RMaXN0ZW5lcihcImNsaWNrXCIpXHJcbiAgICBjbGljaygpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLmNhbGxiYWNrID0gKCkgPT4gdGhpcy5jYWxsTWV0aG9kKCk7XHJcbiAgICAgICAgaWYgKHRoaXMuZm9ybS5zdGF0dXMgPT09IFwiSU5WQUxJRFwiKSB7XHJcbiAgICAgICAgICAgIGNvbnNvbGUubG9nKGdldEZvcm1WYWxpZGF0aW9uRXJyb3JzKHRoaXMuZm9ybS5ncm91cC5jb250cm9scykpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5mb3JtLnN0YXR1cyAhPT0gXCJWQUxJRFwiICYmIHRoaXMuZm9ybS5zdGF0dXMgIT09IFwiSU5WQUxJRFwiKSByZXR1cm47XHJcbiAgICAgICAgdGhpcy5jYWxsYmFjaygpO1xyXG4gICAgICAgIHRoaXMuY2FsbGJhY2sgPSBudWxsO1xyXG4gICAgfVxyXG5cclxuICAgIGNhbGxNZXRob2QoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMubG9hZGluZykgcmV0dXJuO1xyXG4gICAgICAgIHRoaXMubG9hZGluZyA9IHRydWU7XHJcbiAgICAgICAgdGhpcy5tZXRob2QodGhpcy5mb3JtLCB0aGlzLmNvbnRleHQpLnRoZW4ocmVzdWx0ID0+IHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgIGlmIChyZXN1bHQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMub25TdWNjZXNzLmVtaXQocmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIHRoaXMudG9hc3Rlci5zdWNjZXNzKHJlc3VsdC5tZXNzYWdlLCByZXN1bHQuY29udGV4dCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9LCByZWFzb24gPT4ge1xyXG4gICAgICAgICAgICBpZiAoIXJlYXNvbiB8fCAhcmVhc29uLm1lc3NhZ2UpXHJcbiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJSZWFzb24gbXVzdCBpbXBsZW1lbnQgSUFzeW5jTWVzc2FnZSBpbnRlcmZhY2VcIik7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZGluZyA9IGZhbHNlO1xyXG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IuZW1pdChyZWFzb24pO1xyXG4gICAgICAgICAgICB0aGlzLnRvYXN0ZXIuZXJyb3IocmVhc29uLm1lc3NhZ2UsIHJlYXNvbi5jb250ZXh0KTtcclxuICAgICAgICB9KTtcclxuICAgIH1cclxufVxyXG4iXX0=
|
|
@@ -4,11 +4,11 @@ import { __decorate, __awaiter } from 'tslib';
|
|
|
4
4
|
import * as i1 from '@ng-dynamic-forms/core';
|
|
5
5
|
import { DynamicInputControlModel, DYNAMIC_FORM_CONTROL_TYPE_EDITOR, serializable, DynamicFormArrayGroupModel as DynamicFormArrayGroupModel$1, DynamicFormArrayModel as DynamicFormArrayModel$1, DynamicFormOption as DynamicFormOption$1, DynamicSelectModel as DynamicSelectModel$1, DynamicFormService as DynamicFormService$1, DynamicDatePickerModel, DynamicFormGroupModel, DynamicInputModel, DynamicFormValueControlModel, DynamicFileUploadModel, DynamicCheckboxModel, DynamicTextAreaModel, DynamicFormComponent, DynamicTemplateDirective, DynamicFormControlContainerComponent, DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DynamicFormArrayComponent, DynamicFormControlComponent, DynamicFormGroupComponent, DYNAMIC_FORM_CONTROL_MAP_FN, DYNAMIC_VALIDATORS } from '@ng-dynamic-forms/core';
|
|
6
6
|
export { DYNAMIC_FORM_CONTROL_TYPE_ARRAY, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX, DYNAMIC_FORM_CONTROL_TYPE_CHECKBOX_GROUP, DYNAMIC_FORM_CONTROL_TYPE_DATEPICKER, DYNAMIC_FORM_CONTROL_TYPE_EDITOR, DYNAMIC_FORM_CONTROL_TYPE_FILE_UPLOAD, DYNAMIC_FORM_CONTROL_TYPE_GROUP, DYNAMIC_FORM_CONTROL_TYPE_INPUT, DYNAMIC_FORM_CONTROL_TYPE_RADIO_GROUP, DYNAMIC_FORM_CONTROL_TYPE_SELECT, DYNAMIC_FORM_CONTROL_TYPE_TEXTAREA, DynamicCheckboxGroupModel, DynamicCheckboxModel, DynamicDatePickerModel, DynamicFileUploadModel, DynamicFormControlComponent, DynamicFormGroupModel, DynamicFormsCoreModule, DynamicInputModel, DynamicListDirective, DynamicRadioGroupModel, DynamicTemplateDirective, DynamicTextAreaModel } from '@ng-dynamic-forms/core';
|
|
7
|
-
import { BehaviorSubject, of, isObservable, map, Subject, firstValueFrom, Subscription, debounceTime, groupBy, mergeMap } from 'rxjs';
|
|
7
|
+
import { BehaviorSubject, of, isObservable, map, Subject, firstValueFrom, Subscription, debounceTime as debounceTime$1, groupBy, mergeMap } from 'rxjs';
|
|
8
8
|
import * as i0 from '@angular/core';
|
|
9
|
-
import { Injector, Injectable, Inject, EventEmitter, Directive, Input, Output, HostBinding, HostListener, QueryList, Component, ChangeDetectionStrategy, ContentChildren, ViewChildren,
|
|
10
|
-
import { FormGroup, FormArray,
|
|
11
|
-
import { first } from 'rxjs/operators';
|
|
9
|
+
import { Injector, Injectable, Inject, EventEmitter, Directive, Input, Output, HostBinding, HostListener, QueryList, Component, ChangeDetectionStrategy, ContentChildren, ViewChildren, ViewContainerRef, ViewChild, forwardRef, NgModule } from '@angular/core';
|
|
10
|
+
import { FormGroup, FormArray, FormsModule, ReactiveFormsModule, NG_VALIDATORS } from '@angular/forms';
|
|
11
|
+
import { debounceTime, first } from 'rxjs/operators';
|
|
12
12
|
import { CommonModule } from '@angular/common';
|
|
13
13
|
|
|
14
14
|
// --- Decorator functions ---
|
|
@@ -1043,7 +1043,7 @@ class AsyncSubmitDirective {
|
|
|
1043
1043
|
}
|
|
1044
1044
|
this.callback = null;
|
|
1045
1045
|
});
|
|
1046
|
-
this.onSubmit = this.form.onSubmit.subscribe(() => this.callMethod());
|
|
1046
|
+
this.onSubmit = this.form.onSubmit.pipe(debounceTime(200)).subscribe(() => this.callMethod());
|
|
1047
1047
|
}
|
|
1048
1048
|
ngOnDestroy() {
|
|
1049
1049
|
if (this.onStatusChange)
|
|
@@ -1136,15 +1136,18 @@ class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
1136
1136
|
get status() {
|
|
1137
1137
|
return !this.group ? null : this.group.status;
|
|
1138
1138
|
}
|
|
1139
|
+
submit() {
|
|
1140
|
+
this.onSubmit.emit(this);
|
|
1141
|
+
}
|
|
1139
1142
|
ngOnChanges(changes) {
|
|
1140
1143
|
this.groupSubscription.unsubscribe();
|
|
1141
1144
|
if (this.group) {
|
|
1142
1145
|
this.groupSubscription = ObservableUtils.multiSubscription(this.group.statusChanges.subscribe(() => {
|
|
1143
1146
|
this.onStatusChange.emit(this);
|
|
1144
|
-
}), this.group.valueChanges.pipe(debounceTime(500)).subscribe(() => {
|
|
1147
|
+
}), this.group.valueChanges.pipe(debounceTime$1(500)).subscribe(() => {
|
|
1145
1148
|
this.formService.notifyChanges(this.model, this.group);
|
|
1146
1149
|
}), this.change.pipe(groupBy(ev => ev.model))
|
|
1147
|
-
.pipe(mergeMap(t => t.pipe(debounceTime(500))))
|
|
1150
|
+
.pipe(mergeMap(t => t.pipe(debounceTime$1(500))))
|
|
1148
1151
|
.subscribe(ev => {
|
|
1149
1152
|
this.onValueChange.emit(Object.assign(Object.assign({}, ev), { form: this }));
|
|
1150
1153
|
}));
|
|
@@ -1160,8 +1163,6 @@ class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
1160
1163
|
}), this.events.languageChanged.subscribe(() => {
|
|
1161
1164
|
this.formService.notifyChanges(this.model, this.group);
|
|
1162
1165
|
this.formService.detectChanges(this);
|
|
1163
|
-
}), this.ngForm.ngSubmit.subscribe(() => {
|
|
1164
|
-
this.onSubmit.emit(this);
|
|
1165
1166
|
}));
|
|
1166
1167
|
}
|
|
1167
1168
|
ngOnDestroy() {
|
|
@@ -1231,7 +1232,7 @@ class DynamicBaseFormComponent extends DynamicFormComponent {
|
|
|
1231
1232
|
}
|
|
1232
1233
|
}
|
|
1233
1234
|
DynamicBaseFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormComponent, deps: [{ token: DynamicFormService }, { token: EventsService }, { token: i0.ChangeDetectorRef }, { token: i1.DynamicFormComponentService }], target: i0.ɵɵFactoryTarget.Component });
|
|
1234
|
-
DynamicBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormComponent, selector: "dynamic-base-form", inputs: { group: "group", model: "model", layout: "layout", labelPrefix: "labelPrefix", getComponentType: "getComponentType" }, outputs: { blur: "blur", change: "change", focus: "focus", onValueChange: "onValueChange", onStatusChange: "onStatusChange", onSubmit: "onSubmit", onDetectChanges: "onDetectChanges" }, queries: [{ propertyName: "contentTemplates", predicate: DynamicTemplateDirective }], viewQueries: [{ propertyName: "
|
|
1235
|
+
DynamicBaseFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormComponent, selector: "dynamic-base-form", inputs: { group: "group", model: "model", layout: "layout", labelPrefix: "labelPrefix", getComponentType: "getComponentType" }, outputs: { blur: "blur", change: "change", focus: "focus", onValueChange: "onValueChange", onStatusChange: "onStatusChange", onSubmit: "onSubmit", onDetectChanges: "onDetectChanges" }, queries: [{ propertyName: "contentTemplates", predicate: DynamicTemplateDirective }], viewQueries: [{ propertyName: "viewTemplates", predicate: DynamicTemplateDirective, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.Default });
|
|
1235
1236
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormComponent, decorators: [{
|
|
1236
1237
|
type: Component,
|
|
1237
1238
|
args: [{
|
|
@@ -1277,9 +1278,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1277
1278
|
type: Output
|
|
1278
1279
|
}], onDetectChanges: [{
|
|
1279
1280
|
type: Output
|
|
1280
|
-
}], ngForm: [{
|
|
1281
|
-
type: ViewChild,
|
|
1282
|
-
args: [NgForm]
|
|
1283
1281
|
}] } });
|
|
1284
1282
|
|
|
1285
1283
|
class DynamicBaseFormControlContainerComponent extends DynamicFormControlContainerComponent {
|
|
@@ -1502,15 +1500,17 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1502
1500
|
}] } });
|
|
1503
1501
|
|
|
1504
1502
|
class DynamicBaseFormControlComponent extends DynamicFormControlComponent {
|
|
1505
|
-
constructor(
|
|
1503
|
+
constructor(layoutService, validationService, form, injector, cdr) {
|
|
1506
1504
|
super(layoutService, validationService);
|
|
1505
|
+
this.form = form;
|
|
1506
|
+
this.injector = injector;
|
|
1507
1507
|
this.cdr = cdr;
|
|
1508
1508
|
this.blur = new EventEmitter();
|
|
1509
1509
|
this.change = new EventEmitter();
|
|
1510
1510
|
this.focus = new EventEmitter();
|
|
1511
1511
|
}
|
|
1512
1512
|
ngAfterViewInit() {
|
|
1513
|
-
this.subscription = this.control.valueChanges.pipe(debounceTime(500)).subscribe(value => {
|
|
1513
|
+
this.subscription = this.control.valueChanges.pipe(debounceTime$1(500)).subscribe(value => {
|
|
1514
1514
|
this.onValueChanged(value);
|
|
1515
1515
|
});
|
|
1516
1516
|
}
|
|
@@ -1519,10 +1519,13 @@ class DynamicBaseFormControlComponent extends DynamicFormControlComponent {
|
|
|
1519
1519
|
return;
|
|
1520
1520
|
this.subscription.unsubscribe();
|
|
1521
1521
|
}
|
|
1522
|
+
submit() {
|
|
1523
|
+
this.form.submit();
|
|
1524
|
+
}
|
|
1522
1525
|
onValueChanged(value) {
|
|
1523
1526
|
}
|
|
1524
1527
|
}
|
|
1525
|
-
DynamicBaseFormControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, deps: [{ token:
|
|
1528
|
+
DynamicBaseFormControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, deps: [{ token: i1.DynamicFormLayoutService }, { token: i1.DynamicFormValidationService }, { token: DynamicBaseFormComponent }, { token: i0.Injector }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1526
1529
|
DynamicBaseFormControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.8", type: DynamicBaseFormControlComponent, selector: "dynamic-base-form-control", inputs: { formLayout: "formLayout", group: "group", layout: "layout", model: "model" }, outputs: { blur: "blur", change: "change", focus: "focus" }, usesInheritance: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
1527
1530
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImport: i0, type: DynamicBaseFormControlComponent, decorators: [{
|
|
1528
1531
|
type: Component,
|
|
@@ -1531,7 +1534,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.8", ngImpor
|
|
|
1531
1534
|
template: "",
|
|
1532
1535
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
1533
1536
|
}]
|
|
1534
|
-
}], ctorParameters: function () { return [{ type:
|
|
1537
|
+
}], ctorParameters: function () { return [{ type: i1.DynamicFormLayoutService }, { type: i1.DynamicFormValidationService }, { type: DynamicBaseFormComponent }, { type: i0.Injector }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { formLayout: [{
|
|
1535
1538
|
type: Input
|
|
1536
1539
|
}], group: [{
|
|
1537
1540
|
type: Input
|