@wemake4u/form-player-se 1.0.26 → 1.0.28
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/components/actionsCellRenderer/actionsCellRenderer.component.mjs +3 -3
- package/esm2022/lib/components/deleteRowRenderer/deleteRowRenderer.component.mjs +3 -3
- package/esm2022/lib/components/hostCellRenderer/hostCellRenderer.component.mjs +3 -3
- package/esm2022/lib/components/objectURLRenderer/objectURLRenderer.component.mjs +3 -3
- package/esm2022/lib/components/setFilter/setFilter.component.mjs +3 -3
- package/esm2022/lib/dialog/dialog.component.mjs +3 -3
- package/esm2022/lib/directives/accordion.directive.mjs +3 -3
- package/esm2022/lib/directives/accordionpanel.directive.mjs +3 -3
- package/esm2022/lib/directives/adorner.directive.mjs +3 -3
- package/esm2022/lib/directives/change.directive.mjs +3 -3
- package/esm2022/lib/directives/collapse.directive.mjs +3 -3
- package/esm2022/lib/directives/date.directive.mjs +3 -3
- package/esm2022/lib/directives/dialog.directive.mjs +3 -3
- package/esm2022/lib/directives/display.directive.mjs +3 -3
- package/esm2022/lib/directives/dropdown.directive.mjs +3 -3
- package/esm2022/lib/directives/formIndex.directive.mjs +3 -3
- package/esm2022/lib/directives/framesecurity.directive.mjs +3 -3
- package/esm2022/lib/directives/grid.directive.mjs +49 -13
- package/esm2022/lib/directives/number.directive.mjs +5 -8
- package/esm2022/lib/directives/readonly.directive.mjs +3 -3
- package/esm2022/lib/directives/refresh.directive.mjs +3 -3
- package/esm2022/lib/directives/register.directive.mjs +3 -3
- package/esm2022/lib/directives/repeat.directive.mjs +8 -7
- package/esm2022/lib/directives/tab.directive.mjs +3 -3
- package/esm2022/lib/directives/tabcontrol.directive.mjs +3 -3
- package/esm2022/lib/directives/text.directive.mjs +3 -3
- package/esm2022/lib/directives/updateblur.directive.mjs +3 -3
- package/esm2022/lib/directives/validationpatch.directive.mjs +34 -0
- package/esm2022/lib/dynamic-fields/dynamic-fields.component.mjs +36 -16
- package/esm2022/lib/dynamic-form/dynamic-form.component.mjs +15 -10
- package/esm2022/lib/dynamic-host/dynamic-host.component.mjs +3 -3
- package/esm2022/lib/interact/confirmation.mjs +3 -3
- package/esm2022/lib/interact/notification.mjs +3 -3
- package/esm2022/lib/interact/prompt.mjs +3 -3
- package/esm2022/lib/services/chart.service.mjs +3 -3
- package/esm2022/lib/services/data.service.mjs +3 -3
- package/esm2022/lib/services/dialog.service.mjs +3 -3
- package/esm2022/lib/services/event.service.mjs +3 -3
- package/esm2022/lib/services/feel.service.mjs +3 -3
- package/esm2022/lib/services/form.service.mjs +3 -3
- package/esm2022/lib/services/formatter.service.mjs +3 -3
- package/esm2022/lib/services/function.service.mjs +3 -3
- package/esm2022/lib/services/global.service.mjs +3 -3
- package/esm2022/lib/services/grid.service.mjs +3 -3
- package/esm2022/lib/services/markdown.service.mjs +3 -3
- package/esm2022/lib/services/metadata.service.mjs +3 -3
- package/esm2022/lib/services/mime.service.mjs +3 -3
- package/esm2022/lib/services/programmability.service.mjs +85 -35
- package/esm2022/lib/services/register.service.mjs +3 -3
- package/esm2022/lib/services/sanitize.service.mjs +3 -3
- package/esm2022/lib/services/scope.service.mjs +3 -3
- package/esm2022/lib/services/toast.service.mjs +3 -3
- package/esm2022/lib/services/weak.service.mjs +3 -3
- package/esm2022/lib/shared/template-wrapper/template-wrapper.component.mjs +3 -3
- package/esm2022/lib/utils/syncronize.mjs +34 -0
- package/esm2022/public-api.mjs +2 -1
- package/fesm2022/wemake4u-form-player-se.mjs +395 -225
- package/fesm2022/wemake4u-form-player-se.mjs.map +1 -1
- package/lib/directives/grid.directive.d.ts +2 -0
- package/lib/directives/validationpatch.directive.d.ts +7 -0
- package/lib/dynamic-fields/dynamic-fields.component.d.ts +5 -1
- package/lib/dynamic-form/dynamic-form.component.d.ts +2 -1
- package/lib/services/programmability.service.d.ts +3 -3
- package/lib/utils/syncronize.d.ts +1 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -60,10 +60,10 @@ export class RegisterDirective {
|
|
|
60
60
|
});
|
|
61
61
|
return newRegister;
|
|
62
62
|
}
|
|
63
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
64
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
63
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RegisterDirective, deps: [{ token: i0.ElementRef }, { token: i1.RegisterService }], target: i0.ɵɵFactoryTarget.Directive });
|
|
64
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: RegisterDirective, isStandalone: true, selector: "[register]", inputs: { register: "register", componentRef: "componentRef" }, queries: [{ propertyName: "dynamicField", first: true, predicate: i0.forwardRef(() => DynamicFieldsComponent), descendants: true }, { propertyName: "itemFields", predicate: i0.forwardRef(() => DynamicFieldsComponent), descendants: true }], ngImport: i0 });
|
|
65
65
|
}
|
|
66
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
66
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RegisterDirective, decorators: [{
|
|
67
67
|
type: Directive,
|
|
68
68
|
args: [{
|
|
69
69
|
selector: '[register]',
|
|
@@ -14,15 +14,16 @@ export class RepeatDirective {
|
|
|
14
14
|
if (Number.isInteger(this.repeat) && this.repeat >= 0) {
|
|
15
15
|
formArray.resize(this.repeat);
|
|
16
16
|
}
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
17
|
+
// commentato, perchè se arriva un value gia con un array vuoto senza allowAddRemove lo azzera
|
|
18
|
+
//else if (this.allowAddRemove !== true) {
|
|
19
|
+
// (formArray as any).resize(0);
|
|
20
|
+
//}
|
|
20
21
|
}
|
|
21
22
|
}
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
23
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
23
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RepeatDirective, deps: [{ token: i1.ControlContainer }], target: i0.ɵɵFactoryTarget.Directive });
|
|
24
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: RepeatDirective, isStandalone: true, selector: "[repeat], [allowAddRemove]", inputs: { repeat: "repeat", allowAddRemove: "allowAddRemove" }, usesOnChanges: true, ngImport: i0 });
|
|
24
25
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RepeatDirective, decorators: [{
|
|
26
27
|
type: Directive,
|
|
27
28
|
args: [{
|
|
28
29
|
selector: '[repeat], [allowAddRemove]',
|
|
@@ -33,4 +34,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
33
34
|
}], allowAddRemove: [{
|
|
34
35
|
type: Input
|
|
35
36
|
}] } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
37
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwZWF0LmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2RpcmVjdGl2ZXMvcmVwZWF0LmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBNEIsTUFBTSxlQUFlLENBQUM7OztBQU8zRSxNQUFNLE9BQU8sZUFBZTtJQUlOO0lBSFgsTUFBTSxHQUFRLElBQUksQ0FBQztJQUNuQixjQUFjLEdBQW1CLElBQUksQ0FBQztJQUUvQyxZQUFvQixnQkFBa0M7UUFBbEMscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtJQUFJLENBQUM7SUFFM0QsV0FBVyxDQUFDLE9BQXNCO1FBQ2hDLElBQUksT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7WUFDbkQsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLE9BQW9CLENBQUM7WUFDN0QsSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsRUFBRSxDQUFDO2dCQUNyRCxTQUFpQixDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDekMsQ0FBQztZQUNELDhGQUE4RjtZQUM5RiwwQ0FBMEM7WUFDMUMsaUNBQWlDO1lBQ2pDLFFBQVE7UUFDVixDQUFDO0lBQ0gsQ0FBQzt3R0FqQlUsZUFBZTs0RkFBZixlQUFlOzs0RkFBZixlQUFlO2tCQUozQixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSw0QkFBNEI7b0JBQ3RDLFVBQVUsRUFBRSxJQUFJO2lCQUNqQjtxRkFFVSxNQUFNO3NCQUFkLEtBQUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBGb3JtQXJyYXksIENvbnRyb2xDb250YWluZXIgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tyZXBlYXRdLCBbYWxsb3dBZGRSZW1vdmVdJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBSZXBlYXREaXJlY3RpdmUgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpIHJlcGVhdDogYW55ID0gbnVsbDtcclxuICBASW5wdXQoKSBhbGxvd0FkZFJlbW92ZTogYm9vbGVhbiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNvbnRyb2xDb250YWluZXI6IENvbnRyb2xDb250YWluZXIpIHsgfVxyXG5cclxuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XHJcbiAgICBpZiAoY2hhbmdlc1tcInJlcGVhdFwiXSB8fCBjaGFuZ2VzW1wiYWxsb3dBZGRSZW1vdmVcIl0pIHtcclxuICAgICAgY29uc3QgZm9ybUFycmF5ID0gdGhpcy5jb250cm9sQ29udGFpbmVyLmNvbnRyb2wgYXMgRm9ybUFycmF5O1xyXG4gICAgICBpZiAoTnVtYmVyLmlzSW50ZWdlcih0aGlzLnJlcGVhdCkgJiYgdGhpcy5yZXBlYXQgPj0gMCkge1xyXG4gICAgICAgIChmb3JtQXJyYXkgYXMgYW55KS5yZXNpemUodGhpcy5yZXBlYXQpO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGNvbW1lbnRhdG8sIHBlcmNow6ggc2UgYXJyaXZhIHVuIHZhbHVlIGdpYSBjb24gdW4gYXJyYXkgdnVvdG8gc2VuemEgYWxsb3dBZGRSZW1vdmUgbG8gYXp6ZXJhXHJcbiAgICAgIC8vZWxzZSBpZiAodGhpcy5hbGxvd0FkZFJlbW92ZSAhPT0gdHJ1ZSkge1xyXG4gICAgICAvLyAgKGZvcm1BcnJheSBhcyBhbnkpLnJlc2l6ZSgwKTtcclxuICAgICAgLy99ICAgICBcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|
|
@@ -46,10 +46,10 @@ export class TabDirective {
|
|
|
46
46
|
});
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
50
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
49
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabDirective, deps: [{ token: i1.SirioTabComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
50
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: TabDirective, isStandalone: true, selector: "[tabCount]", inputs: { tabCount: "tabCount" }, usesOnChanges: true, ngImport: i0 });
|
|
51
51
|
}
|
|
52
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
52
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabDirective, decorators: [{
|
|
53
53
|
type: Directive,
|
|
54
54
|
args: [{
|
|
55
55
|
selector: '[tabCount]',
|
|
@@ -31,10 +31,10 @@ export class TabControlDirective {
|
|
|
31
31
|
}
|
|
32
32
|
return index;
|
|
33
33
|
}
|
|
34
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
35
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabControlDirective, deps: [{ token: i1.SirioTabComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
35
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: TabControlDirective, isStandalone: true, selector: "[tabControl]", ngImport: i0 });
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TabControlDirective, decorators: [{
|
|
38
38
|
type: Directive,
|
|
39
39
|
args: [{
|
|
40
40
|
selector: '[tabControl]',
|
|
@@ -84,10 +84,10 @@ export class TextDirective {
|
|
|
84
84
|
input.setSelectionRange(start, end);
|
|
85
85
|
}, 0);
|
|
86
86
|
}
|
|
87
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
88
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
87
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextDirective, deps: [{ token: i1.SirioInputComponent, host: true }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
|
|
88
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: TextDirective, isStandalone: true, selector: "[textcase], [maxlength]", inputs: { textcase: "textcase", maxlength: "maxlength" }, usesOnChanges: true, ngImport: i0 });
|
|
89
89
|
}
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: TextDirective, decorators: [{
|
|
91
91
|
type: Directive,
|
|
92
92
|
args: [{
|
|
93
93
|
selector: '[textcase], [maxlength]',
|
|
@@ -24,10 +24,10 @@ export class UpdateBlurDirective {
|
|
|
24
24
|
};
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.
|
|
28
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.
|
|
27
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UpdateBlurDirective, deps: [{ token: i1.SirioInputComponent, host: true }], target: i0.ɵɵFactoryTarget.Directive });
|
|
28
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: UpdateBlurDirective, isStandalone: true, selector: "[updateBlur]", ngImport: i0 });
|
|
29
29
|
}
|
|
30
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.
|
|
30
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UpdateBlurDirective, decorators: [{
|
|
31
31
|
type: Directive,
|
|
32
32
|
args: [{
|
|
33
33
|
selector: '[updateBlur]',
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { Directive } from '@angular/core';
|
|
2
|
+
import { SirioValidationDirective } from 'ngx-sirio-lib';
|
|
3
|
+
import { debounceTime, merge } from 'rxjs';
|
|
4
|
+
import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export class ValidationPatchDirective extends SirioValidationDirective {
|
|
7
|
+
subscribeToNgControlChanges() {
|
|
8
|
+
const thisRef = this;
|
|
9
|
+
const control = thisRef.host.control;
|
|
10
|
+
if (!control) {
|
|
11
|
+
console.error("can't find a control. Please provide a formControl for", thisRef.elementRef.nativeElement);
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
thisRef.elementControl = control;
|
|
15
|
+
merge(control.valueChanges, control.statusChanges)
|
|
16
|
+
.pipe(takeUntilDestroyed(thisRef.destroyRef), debounceTime(0))
|
|
17
|
+
.subscribe(() => {
|
|
18
|
+
if (thisRef.canValidate) {
|
|
19
|
+
thisRef.checkValidation();
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ValidationPatchDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
25
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: ValidationPatchDirective, isStandalone: true, selector: "[validation]", usesInheritance: true, ngImport: i0 });
|
|
26
|
+
}
|
|
27
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ValidationPatchDirective, decorators: [{
|
|
28
|
+
type: Directive,
|
|
29
|
+
args: [{
|
|
30
|
+
selector: '[validation]',
|
|
31
|
+
standalone: true
|
|
32
|
+
}]
|
|
33
|
+
}] });
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdGlvbnBhdGNoLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1zaXJpby9zcmMvbGliL2RpcmVjdGl2ZXMvdmFsaWRhdGlvbnBhdGNoLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7QUFNaEUsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHdCQUF3QjtJQUUzRCwyQkFBMkI7UUFDbEMsTUFBTSxPQUFPLEdBQUcsSUFBVyxDQUFDO1FBRTVCLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNiLE9BQU8sQ0FBQyxLQUFLLENBQUMsd0RBQXdELEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUM1RyxDQUFDO2FBQ0ksQ0FBQztZQUNKLE9BQU8sQ0FBQyxjQUFjLEdBQUcsT0FBTyxDQUFDO1lBQ2pDLEtBQUssQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxhQUFhLENBQUM7aUJBQy9DLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUM3RCxTQUFTLENBQUMsR0FBRyxFQUFFO2dCQUNkLElBQUksT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO29CQUN4QixPQUFPLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQzVCLENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUM7SUFDSCxDQUFDO3dHQW5CVSx3QkFBd0I7NEZBQXhCLHdCQUF3Qjs7NEZBQXhCLHdCQUF3QjtrQkFKcEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsY0FBYztvQkFDeEIsVUFBVSxFQUFFLElBQUk7aUJBQ2pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNpcmlvVmFsaWRhdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ25neC1zaXJpby1saWInO1xyXG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIG1lcmdlIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3ZhbGlkYXRpb25dJyxcclxuICBzdGFuZGFsb25lOiB0cnVlXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBWYWxpZGF0aW9uUGF0Y2hEaXJlY3RpdmUgZXh0ZW5kcyBTaXJpb1ZhbGlkYXRpb25EaXJlY3RpdmUgIHtcclxuXHJcbiAgb3ZlcnJpZGUgc3Vic2NyaWJlVG9OZ0NvbnRyb2xDaGFuZ2VzKCkge1xyXG4gICAgY29uc3QgdGhpc1JlZiA9IHRoaXMgYXMgYW55O1xyXG5cclxuICAgIGNvbnN0IGNvbnRyb2wgPSB0aGlzUmVmLmhvc3QuY29udHJvbDtcclxuICAgIGlmICghY29udHJvbCkge1xyXG4gICAgICBjb25zb2xlLmVycm9yKFwiY2FuJ3QgZmluZCBhIGNvbnRyb2wuIFBsZWFzZSBwcm92aWRlIGEgZm9ybUNvbnRyb2wgZm9yXCIsIHRoaXNSZWYuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50KTtcclxuICAgIH1cclxuICAgIGVsc2Uge1xyXG4gICAgICB0aGlzUmVmLmVsZW1lbnRDb250cm9sID0gY29udHJvbDtcclxuICAgICAgbWVyZ2UoY29udHJvbC52YWx1ZUNoYW5nZXMsIGNvbnRyb2wuc3RhdHVzQ2hhbmdlcylcclxuICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpc1JlZi5kZXN0cm95UmVmKSwgZGVib3VuY2VUaW1lKDApKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgaWYgKHRoaXNSZWYuY2FuVmFsaWRhdGUpIHtcclxuICAgICAgICAgICAgdGhpc1JlZi5jaGVja1ZhbGlkYXRpb24oKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9KTtcclxuICAgIH1cclxuICB9XHJcbn1cclxuIl19
|