@netgrif/components-core 6.4.0-rc.1 → 6.4.0-rc.2
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/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.mjs +10 -3
- package/esm2020/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.mjs +10 -3
- package/esm2020/lib/data-fields/enumeration-field/enumeration-icon-field/abstract-enumeration-icon-field.component.mjs +18 -8
- package/esm2020/lib/data-fields/enumeration-field/enumeration-stepper-field/abstract-enumeration-stepper-field.component.mjs +8 -1
- package/esm2020/lib/data-fields/models/abstract-data-field.mjs +9 -1
- package/esm2020/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.mjs +15 -4
- package/esm2020/lib/data-fields/string-collection-field/string-collection-default-field/abstract-string-collection-default-field.component.mjs +15 -5
- package/esm2020/lib/data-fields/user-field/user-default-field/abstract-user-default-field.component.mjs +2 -2
- package/esm2020/lib/task/services/task-data.service.mjs +2 -2
- package/esm2020/lib/task-content/services/field-converter.service.mjs +5 -2
- package/fesm2015/netgrif-components-core.mjs +86 -24
- package/fesm2015/netgrif-components-core.mjs.map +1 -1
- package/fesm2020/netgrif-components-core.mjs +84 -21
- package/fesm2020/netgrif-components-core.mjs.map +1 -1
- package/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.d.ts +2 -0
- package/lib/data-fields/enumeration-field/enumeration-caseref-field/abstract-enumeration-caseref-field.component.d.ts +2 -0
- package/lib/data-fields/enumeration-field/enumeration-icon-field/abstract-enumeration-icon-field.component.d.ts +10 -4
- package/lib/data-fields/enumeration-field/enumeration-stepper-field/abstract-enumeration-stepper-field.component.d.ts +5 -2
- package/lib/data-fields/models/abstract-data-field.d.ts +6 -0
- package/lib/data-fields/multichoice-field/multichoice-caseref-field/abstract-multichoice-caseref-field.component.d.ts +7 -2
- package/lib/data-fields/string-collection-field/string-collection-default-field/abstract-string-collection-default-field.component.d.ts +4 -0
- package/package.json +1 -1
package/esm2020/lib/data-fields/case-ref-field/case-ref-default/case-ref-default.component.mjs
CHANGED
|
@@ -9,14 +9,21 @@ export class AbstractCaseRefDefaultComponent extends AbstractCaseRefBaseFieldCom
|
|
|
9
9
|
this.caseViewType = caseViewType;
|
|
10
10
|
}
|
|
11
11
|
ngAfterViewInit() {
|
|
12
|
-
this.
|
|
12
|
+
this.callCreateFilter();
|
|
13
13
|
this._sub = this.dataField.valueChanges().subscribe(() => {
|
|
14
|
-
this.
|
|
14
|
+
this.callCreateFilter();
|
|
15
|
+
});
|
|
16
|
+
this._subComp = this.dataField.componentChange$().subscribe(() => {
|
|
17
|
+
this.callCreateFilter();
|
|
15
18
|
});
|
|
16
19
|
}
|
|
20
|
+
callCreateFilter() {
|
|
21
|
+
this.createFilter(this.dataField.value.length > 0 ? this.dataField.value : '');
|
|
22
|
+
}
|
|
17
23
|
ngOnDestroy() {
|
|
18
24
|
super.ngOnDestroy();
|
|
19
25
|
this._sub.unsubscribe();
|
|
26
|
+
this._subComp.unsubscribe();
|
|
20
27
|
}
|
|
21
28
|
}
|
|
22
29
|
AbstractCaseRefDefaultComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractCaseRefDefaultComponent, deps: [{ token: i0.Injector }, { token: i0.Type }, { token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -33,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
33
40
|
type: Inject,
|
|
34
41
|
args: [DATA_FIELD_PORTAL_DATA]
|
|
35
42
|
}] }]; } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FzZS1yZWYtZGVmYXVsdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL2Nhc2UtcmVmLWZpZWxkL2Nhc2UtcmVmLWRlZmF1bHQvY2FzZS1yZWYtZGVmYXVsdC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLHFEQUFxRCxDQUFDO0FBR2hILE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLGlEQUFpRCxDQUFDOztBQU1sRyxNQUFNLE9BQWdCLCtCQUFnQyxTQUFRLGlDQUErQztJQUt6RyxZQUFnQyxRQUFrQixFQUNsQixZQUF1QixFQUNXLG1CQUFzRDtRQUNwSCxLQUFLLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBSHZCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsaUJBQVksR0FBWixZQUFZLENBQVc7SUFHdkQsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUNyRCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDN0QsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRVMsZ0JBQWdCO1FBQ3RCLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ25GLENBQUM7SUFFRCxXQUFXO1FBQ1AsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsQ0FBQTtJQUMvQixDQUFDOzs2SEE3QmlCLCtCQUErQiw4REFPUCxzQkFBc0I7aUhBUDlDLCtCQUErQiw0RkFGdkMsRUFBRTs0RkFFTSwrQkFBK0I7a0JBSnBELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLCtCQUErQjtvQkFDekMsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7OzBCQVEwQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBJbmplY3QsIEluamVjdG9yLCBPbkRlc3Ryb3ksIE9wdGlvbmFsLCBUeXBlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtEQVRBX0ZJRUxEX1BPUlRBTF9EQVRBLCBEYXRhRmllbGRQb3J0YWxEYXRhfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2RhdGEtZmllbGQtcG9ydGFsLWRhdGEtaW5qZWN0aW9uLXRva2VuXCI7XG5pbXBvcnQge0Nhc2VSZWZGaWVsZH0gZnJvbSAnLi4vbW9kZWwvY2FzZS1yZWYtZmllbGQnO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtBYnN0cmFjdENhc2VSZWZCYXNlRmllbGRDb21wb25lbnR9IGZyb20gJy4uL21vZGVsL2Fic3RyYWN0LWNhc2UtcmVmLWJhc2UtZmllbGQtY29tcG9uZW50JztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtY2FzZS1yZWYtZGVmYXVsdCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0Q2FzZVJlZkRlZmF1bHRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdENhc2VSZWZCYXNlRmllbGRDb21wb25lbnQ8Q2FzZVJlZkZpZWxkPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgICBwcm90ZWN0ZWQgX3N1YjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfc3ViQ29tcDogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBjYXNlVmlld1R5cGU6IFR5cGU8YW55PixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChEQVRBX0ZJRUxEX1BPUlRBTF9EQVRBKSBkYXRhRmllbGRQb3J0YWxEYXRhOiBEYXRhRmllbGRQb3J0YWxEYXRhPENhc2VSZWZGaWVsZD4pIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IsIGNhc2VWaWV3VHlwZSwgZGF0YUZpZWxkUG9ydGFsRGF0YSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhbGxDcmVhdGVGaWx0ZXIoKTtcbiAgICAgICAgdGhpcy5fc3ViID0gdGhpcy5kYXRhRmllbGQudmFsdWVDaGFuZ2VzKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2FsbENyZWF0ZUZpbHRlcigpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fc3ViQ29tcCA9IHRoaXMuZGF0YUZpZWxkLmNvbXBvbmVudENoYW5nZSQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jYWxsQ3JlYXRlRmlsdGVyKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjYWxsQ3JlYXRlRmlsdGVyKCkge1xuICAgICAgICB0aGlzLmNyZWF0ZUZpbHRlcih0aGlzLmRhdGFGaWVsZC52YWx1ZS5sZW5ndGggPiAwID8gdGhpcy5kYXRhRmllbGQudmFsdWUgOiAnJyk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHN1cGVyLm5nT25EZXN0cm95KCk7XG4gICAgICAgIHRoaXMuX3N1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgICB0aGlzLl9zdWJDb21wLnVuc3Vic2NyaWJlKClcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -9,14 +9,21 @@ export class AbstractEnumerationCaseRefComponent extends AbstractCaseRefBaseFiel
|
|
|
9
9
|
this.caseViewType = caseViewType;
|
|
10
10
|
}
|
|
11
11
|
ngAfterViewInit() {
|
|
12
|
-
this.
|
|
12
|
+
this.callCreateFilter();
|
|
13
13
|
this._sub = this.dataField.updatedChoices.subscribe(() => {
|
|
14
|
-
this.
|
|
14
|
+
this.callCreateFilter();
|
|
15
|
+
});
|
|
16
|
+
this._subComp = this.dataField.componentChange$().subscribe(() => {
|
|
17
|
+
this.callCreateFilter();
|
|
15
18
|
});
|
|
16
19
|
}
|
|
20
|
+
callCreateFilter() {
|
|
21
|
+
this.createFilter(this.dataField.choices.length > 0 ? this.dataField.choices.map(value => value.key) : '');
|
|
22
|
+
}
|
|
17
23
|
ngOnDestroy() {
|
|
18
24
|
super.ngOnDestroy();
|
|
19
25
|
this._sub.unsubscribe();
|
|
26
|
+
this._subComp.unsubscribe();
|
|
20
27
|
}
|
|
21
28
|
}
|
|
22
29
|
AbstractEnumerationCaseRefComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractEnumerationCaseRefComponent, deps: [{ token: i0.Injector }, { token: i0.Type }, { token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
@@ -33,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
33
40
|
type: Inject,
|
|
34
41
|
args: [DATA_FIELD_PORTAL_DATA]
|
|
35
42
|
}] }]; } });
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZW51bWVyYXRpb24tY2FzZXJlZi1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWNhc2VyZWYtZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24tY2FzZXJlZi1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLHFEQUFxRCxDQUFDO0FBR2hILE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLG1FQUFtRSxDQUFDOztBQU1wSCxNQUFNLE9BQWdCLG1DQUFvQyxTQUFRLGlDQUFtRDtJQUtqSCxZQUFnQyxRQUFrQixFQUNsQixZQUF1QixFQUNXLG1CQUEwRDtRQUN4SCxLQUFLLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBSHZCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsaUJBQVksR0FBWixZQUFZLENBQVc7SUFHdkQsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVELFdBQVc7UUFDUCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O2lJQTdCaUIsbUNBQW1DLDhEQU9YLHNCQUFzQjtxSEFQOUMsbUNBQW1DLDRGQUYzQyxFQUFFOzRGQUVNLG1DQUFtQztrQkFKeEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsK0JBQStCO29CQUN6QyxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBUTBCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT3B0aW9uYWwsIFR5cGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RBVEFfRklFTERfUE9SVEFMX0RBVEEsIERhdGFGaWVsZFBvcnRhbERhdGF9IGZyb20gXCIuLi8uLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW5cIjtcbmltcG9ydCB7RW51bWVyYXRpb25GaWVsZH0gZnJvbSAnLi4vbW9kZWxzL2VudW1lcmF0aW9uLWZpZWxkJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7QWJzdHJhY3RDYXNlUmVmQmFzZUZpZWxkQ29tcG9uZW50fSBmcm9tICcuLi8uLi9jYXNlLXJlZi1maWVsZC9tb2RlbC9hYnN0cmFjdC1jYXNlLXJlZi1iYXNlLWZpZWxkLWNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LWNhc2UtcmVmLWRlZmF1bHQnLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEVudW1lcmF0aW9uQ2FzZVJlZkNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0Q2FzZVJlZkJhc2VGaWVsZENvbXBvbmVudDxFbnVtZXJhdGlvbkZpZWxkPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG5cbiAgICBwcm90ZWN0ZWQgX3N1YjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfc3ViQ29tcDogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByb3RlY3RlZCBjYXNlVmlld1R5cGU6IFR5cGU8YW55PixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChEQVRBX0ZJRUxEX1BPUlRBTF9EQVRBKSBkYXRhRmllbGRQb3J0YWxEYXRhOiBEYXRhRmllbGRQb3J0YWxEYXRhPEVudW1lcmF0aW9uRmllbGQ+KSB7XG4gICAgICAgIHN1cGVyKGluamVjdG9yLCBjYXNlVmlld1R5cGUsIGRhdGFGaWVsZFBvcnRhbERhdGEpO1xuICAgIH1cblxuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jYWxsQ3JlYXRlRmlsdGVyKCk7XG4gICAgICAgIHRoaXMuX3N1YiA9IHRoaXMuZGF0YUZpZWxkLnVwZGF0ZWRDaG9pY2VzLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNhbGxDcmVhdGVGaWx0ZXIoKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3N1YkNvbXAgPSB0aGlzLmRhdGFGaWVsZC5jb21wb25lbnRDaGFuZ2UkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2FsbENyZWF0ZUZpbHRlcigpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2FsbENyZWF0ZUZpbHRlcigpIHtcbiAgICAgICAgdGhpcy5jcmVhdGVGaWx0ZXIodGhpcy5kYXRhRmllbGQuY2hvaWNlcy5sZW5ndGggPiAwID8gdGhpcy5kYXRhRmllbGQuY2hvaWNlcy5tYXAodmFsdWUgPT4gdmFsdWUua2V5KSA6ICcnKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5fc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgIHRoaXMuX3N1YkNvbXAudW5zdWJzY3JpYmUoKTtcbiAgICB9XG5cbn1cbiJdfQ==
|
|
@@ -7,9 +7,15 @@ export class AbstractEnumerationIconFieldComponent extends AbstractBaseDataField
|
|
|
7
7
|
super(dataFieldPortalData);
|
|
8
8
|
}
|
|
9
9
|
ngOnInit() {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
10
|
+
this.checkProperties();
|
|
11
|
+
this.subComp = this.dataField.componentChange$().subscribe(() => {
|
|
12
|
+
this.checkProperties();
|
|
13
|
+
});
|
|
14
|
+
}
|
|
15
|
+
checkProperties() {
|
|
16
|
+
this.horizontal = this.dataField.component?.properties?.horizontal === 'true';
|
|
17
|
+
this.arrow = this.dataField.component?.properties?.arrow === 'true';
|
|
18
|
+
this.divider = this.dataField.component?.properties?.divider === 'true';
|
|
13
19
|
}
|
|
14
20
|
resolveIconValue(key) {
|
|
15
21
|
return this.dataField.component?.optionIcons.find(icon => icon.key === key)?.value;
|
|
@@ -17,11 +23,11 @@ export class AbstractEnumerationIconFieldComponent extends AbstractBaseDataField
|
|
|
17
23
|
resolveIconType(key) {
|
|
18
24
|
return this.dataField.component?.optionIcons.find(icon => icon.key === key)?.type;
|
|
19
25
|
}
|
|
20
|
-
|
|
21
|
-
return this.
|
|
26
|
+
isArrow() {
|
|
27
|
+
return this.arrow;
|
|
22
28
|
}
|
|
23
|
-
|
|
24
|
-
return this.
|
|
29
|
+
isDivider() {
|
|
30
|
+
return this.divider;
|
|
25
31
|
}
|
|
26
32
|
setEnumValue(key) {
|
|
27
33
|
if (!this.formControlRef.disabled) {
|
|
@@ -31,6 +37,10 @@ export class AbstractEnumerationIconFieldComponent extends AbstractBaseDataField
|
|
|
31
37
|
isSelected(key) {
|
|
32
38
|
return key === this.dataField.value;
|
|
33
39
|
}
|
|
40
|
+
ngOnDestroy() {
|
|
41
|
+
super.ngOnDestroy();
|
|
42
|
+
this.subComp.unsubscribe();
|
|
43
|
+
}
|
|
34
44
|
}
|
|
35
45
|
AbstractEnumerationIconFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractEnumerationIconFieldComponent, deps: [{ token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
36
46
|
AbstractEnumerationIconFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractEnumerationIconFieldComponent, selector: "ncc-abstract-enumerataion-icon-field", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
@@ -46,4 +56,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
46
56
|
type: Inject,
|
|
47
57
|
args: [DATA_FIELD_PORTAL_DATA]
|
|
48
58
|
}] }]; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
59
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZW51bWVyYXRpb24taWNvbi1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLWljb24tZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24taWNvbi1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBVSxNQUFNLEVBQUUsUUFBUSxFQUFZLE1BQU0sZUFBZSxDQUFDO0FBRTdFLE9BQU8sRUFBQyxzQkFBc0IsRUFBc0IsTUFBTSxxREFBcUQsQ0FBQztBQUNoSCxPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQzs7QUFPdkcsTUFBTSxPQUFnQixxQ0FBc0MsU0FBUSw4QkFBZ0Q7SUFNaEgsWUFBd0QsbUJBQTBEO1FBQzlHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQ3ZCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDNUQsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBQzNCLENBQUMsQ0FBQyxDQUFBO0lBQ04sQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLEtBQUssTUFBTSxDQUFDO1FBQzlFLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssS0FBSyxNQUFNLENBQUM7UUFDcEUsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsT0FBTyxLQUFLLE1BQU0sQ0FBQztJQUM1RSxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsR0FBVztRQUN4QixPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUN2RixDQUFDO0lBRUQsZUFBZSxDQUFDLEdBQVc7UUFDdkIsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLEdBQUcsS0FBSyxHQUFHLENBQUMsRUFBRSxJQUFJLENBQUM7SUFDdEYsQ0FBQztJQUVELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDdEIsQ0FBQztJQUVELFNBQVM7UUFDTCxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDeEIsQ0FBQztJQUVELFlBQVksQ0FBQyxHQUFXO1FBQ3BCLElBQUksQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsRUFBRTtZQUMvQixJQUFJLENBQUMsY0FBYyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFRCxVQUFVLENBQUMsR0FBVztRQUNsQixPQUFPLEdBQUcsS0FBSyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztJQUN4QyxDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9CLENBQUM7O21JQXBEaUIscUNBQXFDLGtCQU12QixzQkFBc0I7dUhBTnBDLHFDQUFxQyxtR0FGN0MsRUFBRTs0RkFFTSxxQ0FBcUM7a0JBSjFELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHNDQUFzQztvQkFDaEQsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7OzBCQU9nQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBPbkluaXQsIEluamVjdCwgT3B0aW9uYWwsIE9uRGVzdHJveX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0VudW1lcmF0aW9uRmllbGR9IGZyb20gJy4uL21vZGVscy9lbnVtZXJhdGlvbi1maWVsZCc7XG5pbXBvcnQge0RBVEFfRklFTERfUE9SVEFMX0RBVEEsIERhdGFGaWVsZFBvcnRhbERhdGF9IGZyb20gXCIuLi8uLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW5cIjtcbmltcG9ydCB7QWJzdHJhY3RCYXNlRGF0YUZpZWxkQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vYmFzZS1jb21wb25lbnQvYWJzdHJhY3QtYmFzZS1kYXRhLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtTdWJzY3JpcHRpb259IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1lbnVtZXJhdGFpb24taWNvbi1maWVsZCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RW51bWVyYXRpb25JY29uRmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEJhc2VEYXRhRmllbGRDb21wb25lbnQ8RW51bWVyYXRpb25GaWVsZD4gaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveXtcbiAgICBwdWJsaWMgaG9yaXpvbnRhbDogYm9vbGVhbjtcbiAgICBwcm90ZWN0ZWQgYXJyb3c6IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIGRpdmlkZXI6IGJvb2xlYW47XG4gICAgcHJvdGVjdGVkIHN1YkNvbXA6IFN1YnNjcmlwdGlvbjtcblxuICAgIGNvbnN0cnVjdG9yKEBPcHRpb25hbCgpIEBJbmplY3QoREFUQV9GSUVMRF9QT1JUQUxfREFUQSkgZGF0YUZpZWxkUG9ydGFsRGF0YTogRGF0YUZpZWxkUG9ydGFsRGF0YTxFbnVtZXJhdGlvbkZpZWxkPikge1xuICAgICAgICBzdXBlcihkYXRhRmllbGRQb3J0YWxEYXRhKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGVja1Byb3BlcnRpZXMoKTtcbiAgICAgICAgdGhpcy5zdWJDb21wID0gdGhpcy5kYXRhRmllbGQuY29tcG9uZW50Q2hhbmdlJCgpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmNoZWNrUHJvcGVydGllcygpO1xuICAgICAgICB9KVxuICAgIH1cblxuICAgIGNoZWNrUHJvcGVydGllcygpIHtcbiAgICAgICAgdGhpcy5ob3Jpem9udGFsID0gdGhpcy5kYXRhRmllbGQuY29tcG9uZW50Py5wcm9wZXJ0aWVzPy5ob3Jpem9udGFsID09PSAndHJ1ZSc7XG4gICAgICAgIHRoaXMuYXJyb3cgPSB0aGlzLmRhdGFGaWVsZC5jb21wb25lbnQ/LnByb3BlcnRpZXM/LmFycm93ID09PSAndHJ1ZSc7XG4gICAgICAgIHRoaXMuZGl2aWRlciA9IHRoaXMuZGF0YUZpZWxkLmNvbXBvbmVudD8ucHJvcGVydGllcz8uZGl2aWRlciA9PT0gJ3RydWUnO1xuICAgIH1cblxuICAgIHJlc29sdmVJY29uVmFsdWUoa2V5OiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YUZpZWxkLmNvbXBvbmVudD8ub3B0aW9uSWNvbnMuZmluZChpY29uID0+IGljb24ua2V5ID09PSBrZXkpPy52YWx1ZTtcbiAgICB9XG5cbiAgICByZXNvbHZlSWNvblR5cGUoa2V5OiBzdHJpbmcpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YUZpZWxkLmNvbXBvbmVudD8ub3B0aW9uSWNvbnMuZmluZChpY29uID0+IGljb24ua2V5ID09PSBrZXkpPy50eXBlO1xuICAgIH1cblxuICAgIGlzQXJyb3coKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmFycm93O1xuICAgIH1cblxuICAgIGlzRGl2aWRlcigpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGl2aWRlcjtcbiAgICB9XG5cbiAgICBzZXRFbnVtVmFsdWUoa2V5OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sUmVmLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1Db250cm9sUmVmLnNldFZhbHVlKGtleSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBpc1NlbGVjdGVkKGtleTogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBrZXkgPT09IHRoaXMuZGF0YUZpZWxkLnZhbHVlO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLnN1YkNvbXAudW5zdWJzY3JpYmUoKTtcbiAgICB9XG59XG4iXX0=
|
|
@@ -10,6 +10,9 @@ export class AbstractEnumerationStepperFieldComponent extends AbstractBaseDataFi
|
|
|
10
10
|
}
|
|
11
11
|
ngOnInit() {
|
|
12
12
|
this.arrowStepper = this.dataField.component?.properties?.arrowStepper === 'true';
|
|
13
|
+
this.subComp = this.dataField.componentChange$().subscribe(() => {
|
|
14
|
+
this.arrowStepper = this.dataField.component?.properties?.arrowStepper === 'true';
|
|
15
|
+
});
|
|
13
16
|
}
|
|
14
17
|
canShowDoneIcon(index) {
|
|
15
18
|
return index <= this.dataField.choices.findIndex(choice => choice.key === this.dataField.value);
|
|
@@ -37,6 +40,10 @@ export class AbstractEnumerationStepperFieldComponent extends AbstractBaseDataFi
|
|
|
37
40
|
resolveValue(key) {
|
|
38
41
|
return this.dataField.choices.find(k => k.key === key)?.value;
|
|
39
42
|
}
|
|
43
|
+
ngOnDestroy() {
|
|
44
|
+
super.ngOnDestroy();
|
|
45
|
+
this.subComp.unsubscribe();
|
|
46
|
+
}
|
|
40
47
|
}
|
|
41
48
|
AbstractEnumerationStepperFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractEnumerationStepperFieldComponent, deps: [{ token: i0.ElementRef }, { token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
42
49
|
AbstractEnumerationStepperFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractEnumerationStepperFieldComponent, selector: "ncc-abstract-enumeration-stepper-field", viewQueries: [{ propertyName: "steps", predicate: ["oneStep"], descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
@@ -55,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
55
62
|
type: ViewChildren,
|
|
56
63
|
args: ['oneStep']
|
|
57
64
|
}] } });
|
|
58
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZW51bWVyYXRpb24tc3RlcHBlci1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL2VudW1lcmF0aW9uLWZpZWxkL2VudW1lcmF0aW9uLXN0ZXBwZXItZmllbGQvYWJzdHJhY3QtZW51bWVyYXRpb24tc3RlcHBlci1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVILFNBQVMsRUFFVCxNQUFNLEVBRU4sUUFBUSxFQUVSLFlBQVksRUFDZixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUMsc0JBQXNCLEVBQXNCLE1BQU0scURBQXFELENBQUM7QUFDaEgsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0seURBQXlELENBQUM7O0FBT3ZHLE1BQU0sT0FBZ0Isd0NBQXlDLFNBQVEsOEJBQWdEO0lBTW5ILFlBQXNCLEdBQWUsRUFDbUIsbUJBQTBEO1FBQzlHLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBRlQsUUFBRyxHQUFILEdBQUcsQ0FBWTtRQUdqQyxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRUQsUUFBUTtRQUNKLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsVUFBVSxFQUFFLFlBQVksS0FBSyxNQUFNLENBQUM7UUFDbEYsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1RCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEtBQUssTUFBTSxDQUFDO1FBQ3RGLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGVBQWUsQ0FBQyxLQUFhO1FBQ3pCLE9BQU8sS0FBSyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNwRyxDQUFDO0lBRUQsVUFBVSxDQUFDLEdBQVc7UUFDbEIsT0FBTyxHQUFHLEtBQUssSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUM7SUFDeEMsQ0FBQztJQUVELGtCQUFrQjtRQUNkLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEVBQUU7WUFDeEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQztZQUMvRCxNQUFNLFFBQVEsR0FBRyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUM7WUFDcEcsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUU7Z0JBQ2hDLElBQUksQ0FBQyxhQUFhLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDbEYsQ0FBQyxDQUFDLENBQUM7U0FDTjtJQUNMLENBQUM7SUFFRCxlQUFlLENBQUMsR0FBVztRQUN2QixJQUFJLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLEVBQUU7WUFDL0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDckM7SUFDTCxDQUFDO0lBRU0sUUFBUTtRQUNYLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEtBQUssU0FBUyxJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxLQUFLLEVBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRU0sWUFBWSxDQUFDLEdBQVc7UUFDM0IsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLEdBQUcsQ0FBQyxFQUFFLEtBQUssQ0FBQztJQUNsRSxDQUFDO0lBRUQsV0FBVztRQUNQLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQy9CLENBQUM7O3NJQXREaUIsd0NBQXdDLDRDQU8xQixzQkFBc0I7MEhBUHBDLHdDQUF3QywwTEFGaEQsRUFBRTs0RkFFTSx3Q0FBd0M7a0JBSjdELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHdDQUF3QztvQkFDbEQsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7OzBCQVFnQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQjs0Q0FMN0IsS0FBSztzQkFBN0IsWUFBWTt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBBZnRlclZpZXdDaGVja2VkLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEluamVjdCwgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBPcHRpb25hbCxcbiAgICBRdWVyeUxpc3QsXG4gICAgVmlld0NoaWxkcmVuXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtFbnVtZXJhdGlvbkZpZWxkfSBmcm9tICcuLi9tb2RlbHMvZW51bWVyYXRpb24tZmllbGQnO1xuaW1wb3J0IHtEQVRBX0ZJRUxEX1BPUlRBTF9EQVRBLCBEYXRhRmllbGRQb3J0YWxEYXRhfSBmcm9tIFwiLi4vLi4vbW9kZWxzL2RhdGEtZmllbGQtcG9ydGFsLWRhdGEtaW5qZWN0aW9uLXRva2VuXCI7XG5pbXBvcnQge0Fic3RyYWN0QmFzZURhdGFGaWVsZENvbXBvbmVudH0gZnJvbSBcIi4uLy4uL2Jhc2UtY29tcG9uZW50L2Fic3RyYWN0LWJhc2UtZGF0YS1maWVsZC5jb21wb25lbnRcIjtcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtZW51bWVyYXRpb24tc3RlcHBlci1maWVsZCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0RW51bWVyYXRpb25TdGVwcGVyRmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEJhc2VEYXRhRmllbGRDb21wb25lbnQ8RW51bWVyYXRpb25GaWVsZD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0NoZWNrZWQsIE9uRGVzdHJveSB7XG5cbiAgICBAVmlld0NoaWxkcmVuKCdvbmVTdGVwJykgc3RlcHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPjtcbiAgICBwdWJsaWMgYXJyb3dTdGVwcGVyOiBib29sZWFuO1xuICAgIHByb3RlY3RlZCBzdWJDb21wOiBTdWJzY3JpcHRpb247XG5cbiAgICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgcmVmOiBFbGVtZW50UmVmLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoREFUQV9GSUVMRF9QT1JUQUxfREFUQSkgZGF0YUZpZWxkUG9ydGFsRGF0YTogRGF0YUZpZWxkUG9ydGFsRGF0YTxFbnVtZXJhdGlvbkZpZWxkPikge1xuICAgICAgICBzdXBlcihkYXRhRmllbGRQb3J0YWxEYXRhKTtcbiAgICAgICAgdGhpcy5hcnJvd1N0ZXBwZXIgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgdGhpcy5hcnJvd1N0ZXBwZXIgPSB0aGlzLmRhdGFGaWVsZC5jb21wb25lbnQ/LnByb3BlcnRpZXM/LmFycm93U3RlcHBlciA9PT0gJ3RydWUnO1xuICAgICAgICB0aGlzLnN1YkNvbXAgPSB0aGlzLmRhdGFGaWVsZC5jb21wb25lbnRDaGFuZ2UkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuYXJyb3dTdGVwcGVyID0gdGhpcy5kYXRhRmllbGQuY29tcG9uZW50Py5wcm9wZXJ0aWVzPy5hcnJvd1N0ZXBwZXIgPT09ICd0cnVlJztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgY2FuU2hvd0RvbmVJY29uKGluZGV4OiBudW1iZXIpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGluZGV4IDw9IHRoaXMuZGF0YUZpZWxkLmNob2ljZXMuZmluZEluZGV4KGNob2ljZSA9PiBjaG9pY2Uua2V5ID09PSB0aGlzLmRhdGFGaWVsZC52YWx1ZSk7XG4gICAgfVxuXG4gICAgaXNTZWxlY3RlZChrZXk6IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4ga2V5ID09PSB0aGlzLmRhdGFGaWVsZC52YWx1ZTtcbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0NoZWNrZWQoKSB7XG4gICAgICAgIGlmICghIXRoaXMuc3RlcHMgJiYgISF0aGlzLnN0ZXBzLnRvQXJyYXkoKSkge1xuICAgICAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLnJlZi5uYXRpdmVFbGVtZW50LnBhcmVudEVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgICAgICAgICBjb25zdCBtYXhXaWR0aCA9ICh3aWR0aCArICh0aGlzLmRhdGFGaWVsZC5jaG9pY2VzLmxlbmd0aCAtIDEpICogMjApIC8gdGhpcy5kYXRhRmllbGQuY2hvaWNlcy5sZW5ndGg7XG4gICAgICAgICAgICB0aGlzLnN0ZXBzLnRvQXJyYXkoKS5mb3JFYWNoKHN0ZXAgPT4ge1xuICAgICAgICAgICAgICAgIHN0ZXAubmF0aXZlRWxlbWVudC5zdHlsZS5tYXhXaWR0aCA9IG1heFdpZHRoID49IDcyID8gbWF4V2lkdGggKyAncHgnIDogJzcycHgnO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBzZXRTdGVwcGVyVmFsdWUoa2V5OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLmZvcm1Db250cm9sUmVmLmRpc2FibGVkKSB7XG4gICAgICAgICAgICB0aGlzLmZvcm1Db250cm9sUmVmLnNldFZhbHVlKGtleSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwdWJsaWMgaGFzVGl0bGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGFGaWVsZC50aXRsZSAhPT0gdW5kZWZpbmVkICYmIHRoaXMuZGF0YUZpZWxkLnRpdGxlICE9PSAnJztcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzb2x2ZVZhbHVlKGtleTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YUZpZWxkLmNob2ljZXMuZmluZChrID0+IGsua2V5ID09PSBrZXkpPy52YWx1ZTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICAgICAgdGhpcy5zdWJDb21wLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxufVxuIl19
|
|
@@ -49,6 +49,7 @@ export class DataField {
|
|
|
49
49
|
this._update = new Subject();
|
|
50
50
|
this._block = new Subject();
|
|
51
51
|
this._touch = new Subject();
|
|
52
|
+
this._componentChange$ = new Subject();
|
|
52
53
|
this._validRequired = true;
|
|
53
54
|
this.layoutSubject = new BehaviorSubject(_layout);
|
|
54
55
|
this.resetLocalLayout();
|
|
@@ -156,6 +157,13 @@ export class DataField {
|
|
|
156
157
|
get component() {
|
|
157
158
|
return this._component;
|
|
158
159
|
}
|
|
160
|
+
set component(component) {
|
|
161
|
+
this._component = component;
|
|
162
|
+
this._componentChange$.next(component);
|
|
163
|
+
}
|
|
164
|
+
componentChange$() {
|
|
165
|
+
return this._componentChange$.asObservable();
|
|
166
|
+
}
|
|
159
167
|
revertToPreviousValue() {
|
|
160
168
|
this.changed = false;
|
|
161
169
|
this._reverting = true;
|
|
@@ -431,4 +439,4 @@ export class DataField {
|
|
|
431
439
|
}
|
|
432
440
|
}
|
|
433
441
|
}
|
|
434
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZGF0YS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvbW9kZWxzL2Fic3RyYWN0LWRhdGEtZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGVBQWUsRUFBYyxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDeEUsT0FBTyxFQUEyQixVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2xFLE9BQU8sRUFBWSxPQUFPLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFHL0MsT0FBTyxFQUFtQixjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRTs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLFNBQVM7SUFtSDNCOzs7Ozs7Ozs7Ozs7T0FZRztJQUNILFlBQThCLFNBQWlCLEVBQVUsTUFBYyxFQUFFLFlBQWUsRUFDMUQsU0FBbUIsRUFBVSxZQUFxQixFQUNsRCxZQUFxQixFQUFVLE9BQWdCLEVBQVMsV0FBK0IsRUFDdkYsVUFBc0IsRUFBVSxhQUFzQixFQUFVLGFBQXNCO1FBSHRGLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNsRCxpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDdkYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQVM7UUEvRHBIOztXQUVH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LFdBQVcsQ0FBQyxzQkFBc0IsRUFBRSxDQUFDO1FBQ3JDLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyw2QkFBNkIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNqRSxVQUFVLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxDQUFDO1FBQzFELE9BQU8sUUFBUSxDQUFDO0lBQ3BCLENBQUM7SUFFTSxTQUFTLENBQUMsV0FBd0I7UUFDckMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxRQUFRLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxJQUFJLFdBQVcsQ0FBQyxPQUFPLENBQUM7SUFDOUUsQ0FBQztJQUVEOztPQUVHO0lBQ0ksZ0JBQWdCO1FBQ25CLElBQUksSUFBSSxDQUFDLE9BQU8sS0FBSyxTQUFTLEVBQUU7WUFDNUIsSUFBSSxDQUFDLFlBQVksR0FBRyxFQUFDLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBQyxDQUFDO1NBQ3pDO2FBQU07WUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLFNBQVMsQ0FBQztTQUNqQztJQUNMLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QmVoYXZpb3J9IGZyb20gJy4vYmVoYXZpb3InO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YmplY3QsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0Zvcm1Db250cm9sLCBWYWxpZGF0b3JGbiwgVmFsaWRhdG9yc30gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHtDaGFuZ2V9IGZyb20gJy4vY2hhbmdlZC1maWVsZHMnO1xuaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCB0YWtlfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0xheW91dH0gZnJvbSAnLi9sYXlvdXQnO1xuaW1wb3J0IHtDb25maWd1cmF0aW9uU2VydmljZX0gZnJvbSAnLi4vLi4vY29uZmlndXJhdGlvbi9jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHtDb21wb25lbnQsIERFRkFVTFR9IGZyb20gJy4vY29tcG9uZW50JztcbmltcG9ydCB7VmFsaWRhdGlvbn0gZnJvbSAnLi92YWxpZGF0aW9uJztcbmltcG9ydCB7RWxlbWVudFJlZn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7VXBkYXRlT25TdHJhdGVneSwgVXBkYXRlU3RyYXRlZ3l9IGZyb20gXCIuL3VwZGF0ZS1zdHJhdGVneVwiO1xuXG4vKipcbiAqIEhvbGRzIHRoZSBsb2dpYyBjb21tb24gdG8gYWxsIGRhdGEgZmllbGQgTW9kZWwgb2JqZWN0cy5cbiAqIEB0eXBlcGFyYW0gVCAtIHR5cGUgb2YgdGhlIGB2YWx1ZWAgcHJvcGVydHkgb2YgdGhlIGRhdGEgZmllbGRcbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERhdGFGaWVsZDxUPiB7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIEN1cnJlbnQgdmFsdWUgb2YgdGhlIGRhdGEgZmllbGRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3ZhbHVlOiBCZWhhdmlvclN1YmplY3Q8VD47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIFByZXZpb3VzIHZhbHVlIG9mIHRoZSBkYXRhIGZpZWxkXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9wcmV2aW91c1ZhbHVlOiBCZWhhdmlvclN1YmplY3Q8VD47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIFdoZXRoZXIgdGhlIGRhdGEgZmllbGQgTW9kZWwgb2JqZWN0IHdhcyBpbml0aWFsaXplZCwgd2UgcHVzaCB0aGF0IGluZm8gaW50byBzdHJlYW1cbiAgICAgKlxuICAgICAqIFNlZSBbcmVnaXN0ZXJGb3JtQ29udHJvbCgpXXtAbGluayBEYXRhRmllbGQjcmVnaXN0ZXJGb3JtQ29udHJvbH0gZm9yIG1vcmUgaW5mb3JtYXRpb24uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9pbml0aWFsaXplZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogV2hldGhlciB0aGUgZmllbGQgZnVsZmlsbHMgYWxsIG9mIGl0J3MgdmFsaWRhdG9ycy5cbiAgICAgKi9cbiAgICBwcml2YXRlIF92YWxpZDogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogV2hldGhlciB0aGUgYHZhbHVlYCBvZiB0aGUgZmllbGQgY2hhbmdlZCByZWNlbnRseS4gVGhlIGZsYWcgaXMgY2xlYXJlZCB3aGVuIGNoYW5nZXMgYXJlIHNlbmQgdG8gYmFja2VuZC5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9jaGFuZ2VkOiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBEYXRhIGZpZWxkIHN1YnNjcmliZXMgdGhpcyBzdHJlYW0uXG4gICAgICogVGhlIGRhdGEgZmllbGQgdXBkYXRlcyBpdCdzIFZhbGlkYXRvcnMsIHZhbGlkaXR5IGFuZCBlbmFibGVkL2Rpc2FibGVkIGFjY29yZGluZyB0byBpdCdzIGJlaGF2aW9yLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdXBkYXRlOiBTdWJqZWN0PHZvaWQ+O1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBEYXRhIGZpZWxkIHN1YnNjcmliZXMgdGhpcyBzdHJlYW0uIFdoZW4gYSBgdHJ1ZWAgdmFsdWUgaXMgcmVjZWl2ZWQgdGhlIGRhdGEgZmllbGQgZGlzYWJsZXMgaXRzZWxmLlxuICAgICAqIFdoZW4gYSBgZmFsc2VgdmFsdWUgaXMgcmVjZWl2ZWQgZGF0YSBmaWVsZCBkaXNhYmxlcy9lbmFibGVzIGl0c2VsZiBiYXNlZCBvbiBpdCdzIGJlaGF2aW9yLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfYmxvY2s6IFN1YmplY3Q8Ym9vbGVhbj47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIFdoZW4gYSBgdHJ1ZWAgdmFsdWUgaXMgdGhlcmUsIHRoZSBkYXRhIGZpZWxkIGlzIGRpc2FibGVkLlxuICAgICAqIFdoZW4gYSBgZmFsc2VgIHZhbHVlIGlzIHJlY2VpdmVkLCBkYXRhIGZpZWxkIGlzIGRpc2FibGVkL2VuYWJsZWQgYmFzZWQgb24gaXQncyBiZWhhdmlvci5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2Jsb2NrZWQ6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIERhdGEgZmllbGQgc3Vic2NyaWJlcyB0aGlzIHN0cmVhbS4gU2V0cyB0aGUgc3RhdGUgb2YgdGhlIGRhdGEgZmllbGQgdG8gXCJ0b3VjaGVkXCIgb3IgXCJ1bnRvdWNoZWRcIiAoYHRydWVgL2BmYWxzZWApLlxuICAgICAqIFZhbGlkaXR5IG9mIHRoZSBkYXRhIGZpZWxkIGlzIG5vdCBjaGVja2VkIGluIGFuIFwidW50b3VjaGVkXCIgc3RhdGUuXG4gICAgICogQWxsIGZpZWxkcyBhcmUgdG91Y2hlZCBiZWZvcmUgYSB0YXNrIGlzIGZpbmlzaGVkIHRvIGNoZWNrIHRoZWlyIHZhbGlkaXR5LlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdG91Y2g6IFN1YmplY3Q8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF91cGRhdGVTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgX2Jsb2NrU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF90b3VjaFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfZm9ybUNvbnRyb2xWYWx1ZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfbXlWYWx1ZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBBcHBlYXJhbmNlIG9mIGRhdGFGaWVsZHMsIHBvc3NpYmxlIHZhbHVlcyAtIG91dGxpbmUsIHN0YW5kYXJkLCBmaWxsLCBsZWdhY3lcbiAgICAgKi9cbiAgICBwdWJsaWMgbWF0ZXJpYWxBcHBlYXJhbmNlOiBzdHJpbmc7XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIFdoZXRoZXIgdGhlIGZpZWxkIGZ1bGZpbGxzIHJlcXVpcmVkIHZhbGlkYXRvci5cbiAgICAgKi9cbiAgICBwcml2YXRlIF92YWxpZFJlcXVpcmVkOiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgaW52YWxpZCBmaWVsZCB2YWx1ZXMgc2hvdWxkIGJlIHNlbnQgdG8gYmFja2VuZC5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9zZW5kSW52YWxpZFZhbHVlcyA9IHRydWU7XG4gICAgLyoqXG4gICAgICogRmxhZyB0aGF0IGlzIHNldCBkdXJpbmcgcmV2ZXJ0aW5nXG4gICAgICovXG4gICAgcHJpdmF0ZSBfcmV2ZXJ0aW5nID0gZmFsc2U7XG5cbiAgICAvKipcbiAgICAgKiBWYWxpZGF0b3JzIHJlc29sdmVkIGZyb20gZmllbGQgdmFsaWRhdGlvbnNcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3ZhbGlkYXRvcnM6IEFycmF5PFZhbGlkYXRvckZuPjtcblxuICAgIC8qKlxuICAgICAqIFN0b3JlcyB0aGUgbGFzdCBzdWJzY3JpcHRpb24gdG8gdGhlIFtfaW5pdGlhbGl6ZWQkXXtAbGluayBBYnN0cmFjdERhdGFGaWVsZCNfaW5pdGlhbGl6ZWQkfSBTdHJlYW0sIHRvIHByZXZlbnQgbXVsdGlwbGUgYmxvY2sgZXZlbnRzXG4gICAgICogZnJvbSBleGVjdXRpbmcgYXQgdGhlIHNhbWUgdGltZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfaW5pdGlhbGl6ZWRTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcblxuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBXaGV0aGVyIHRoZSBjaGFuZ2VzIGZyb20gaGFzIGJlZW4gcmVxdWVzdGVkLiBUaGUgZmxhZyBpcyBjbGVhcmVkIHdoZW4gY2hhbmdlcyBhcmUgcmVjZWl2ZWQgZnJvbSBiYWNrZW5kLlxuICAgICAqL1xuICAgIHByaXZhdGUgX3dhaXRpbmdGb3JSZXNwb25zZTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFN0b3JlcyBhIGNvcHkgb2YgdGhlIGZpZWxkcyBsYXlvdXQsIHRoYXQgY2FuIGJlIG1vZGlmaWVkIGJ5IHRoZSBsYXlvdXRpbmcgYWxnb3JpdGhtIGFzIG5lZWRlZFxuICAgICAqIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBiYXNlIGNvbmZpZ3VyYXRpb24uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9sb2NhbExheW91dDogTGF5b3V0O1xuXG4gICAgLyoqXG4gICAgICogTGlzdGVucyBmb3IgbGF5b3V0IGNoYW5nZXNcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgbGF5b3V0U3ViamVjdDogQmVoYXZpb3JTdWJqZWN0PExheW91dD47XG5cbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gcmVuZGVyZWQgZWxlbWVudFxuICAgICAqICovXG4gICAgcHJpdmF0ZSBfaW5wdXQ6IEVsZW1lbnRSZWY7XG5cbiAgICAvKipcbiAgICAgKiBSZWZlcmVuY2UgdG8gZm9ybSBjb250cm9sXG4gICAgICogKi9cbiAgICBwcml2YXRlIF9mb3JtQ29udHJvbFJlZjogRm9ybUNvbnRyb2w7XG5cbiAgICAvKipcbiAgICAgKiBAcGFyYW0gX3N0cmluZ0lkIC0gSUQgb2YgdGhlIGRhdGEgZmllbGQgZnJvbSBiYWNrZW5kXG4gICAgICogQHBhcmFtIF90aXRsZSAtIGRpc3BsYXllZCB0aXRsZSBvZiB0aGUgZGF0YSBmaWVsZCBmcm9tIGJhY2tlbmRcbiAgICAgKiBAcGFyYW0gaW5pdGlhbFZhbHVlIC0gaW5pdGlhbCB2YWx1ZSBvZiB0aGUgZGF0YSBmaWVsZFxuICAgICAqIEBwYXJhbSBfYmVoYXZpb3IgLSBkYXRhIGZpZWxkIGJlaGF2aW9yXG4gICAgICogQHBhcmFtIF9wbGFjZWhvbGRlciAtIHBsYWNlaG9sZGVyIGRpc3BsYXllZCBpbiB0aGUgZGF0YWZpZWxkXG4gICAgICogQHBhcmFtIF9kZXNjcmlwdGlvbiAtIHRvb2x0aXAgb2YgdGhlIGRhdGFmaWVsZFxuICAgICAqIEBwYXJhbSBfbGF5b3V0IC0gaW5mb3JtYXRpb24gcmVnYXJkaW5nIHRoZSBjb21wb25lbnQgcmVuZGVyaW5nXG4gICAgICogQHBhcmFtIHZhbGlkYXRpb25zXG4gICAgICogQHBhcmFtIF9jb21wb25lbnQgLSBjb21wb25lbnQgZGF0YSBvZiBkYXRhZmllbGRcbiAgICAgKiBAcGFyYW0gX3BhcmVudFRhc2tJZCAtIHN0cmluZ0lkIG9mIHBhcmVudCB0YXNrLCBvbmx5IGRlZmluZWQgaWYgZmllbGQgaXMgbG9hZGVkIHVzaW5nIHtAbGluayBUYXNrUmVmRmllbGR9XG4gICAgICogQHBhcmFtIF9wYXJlbnRDYXNlSWQgLSBzdHJpbmdJZCBvZiBwYXJlbnQgY2FzZSwgb25seSBkZWZpbmVkIGlmIGZpZWxkIGlzIGxvYWRlZCB1c2luZyB7QGxpbmsgVGFza1JlZkZpZWxkfVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcml2YXRlIF9zdHJpbmdJZDogc3RyaW5nLCBwcml2YXRlIF90aXRsZTogc3RyaW5nLCBpbml0aWFsVmFsdWU6IFQsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByaXZhdGUgX2JlaGF2aW9yOiBCZWhhdmlvciwgcHJpdmF0ZSBfcGxhY2Vob2xkZXI/OiBzdHJpbmcsXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByaXZhdGUgX2Rlc2NyaXB0aW9uPzogc3RyaW5nLCBwcml2YXRlIF9sYXlvdXQ/OiBMYXlvdXQsIHB1YmxpYyB2YWxpZGF0aW9ucz86IEFycmF5PFZhbGlkYXRpb24+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcml2YXRlIF9jb21wb25lbnQ/OiBDb21wb25lbnQsIHByaXZhdGUgX3BhcmVudFRhc2tJZD86IHN0cmluZywgcHJpdmF0ZSBfcGFyZW50Q2FzZUlkPzogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3ZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihpbml0aWFsVmFsdWUpO1xuICAgICAgICB0aGlzLl9wcmV2aW91c1ZhbHVlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUPihpbml0aWFsVmFsdWUpO1xuICAgICAgICB0aGlzLl9pbml0aWFsaXplZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcbiAgICAgICAgdGhpcy5fdmFsaWQgPSB0cnVlO1xuICAgICAgICB0aGlzLl9jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3dhaXRpbmdGb3JSZXNwb25zZSA9IGZhbHNlO1xuICAgICAgICB0aGlzLl91cGRhdGUgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuICAgICAgICB0aGlzLl9ibG9jayA9IG5ldyBTdWJqZWN0PGJvb2xlYW4+KCk7XG4gICAgICAgIHRoaXMuX3RvdWNoID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICAgICAgdGhpcy5fdmFsaWRSZXF1aXJlZCA9IHRydWU7XG4gICAgICAgIHRoaXMubGF5b3V0U3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8TGF5b3V0PihfbGF5b3V0KTtcbiAgICAgICAgdGhpcy5yZXNldExvY2FsTGF5b3V0KCk7XG4gICAgfVxuXG4gICAgZ2V0IHN0cmluZ0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9zdHJpbmdJZDtcbiAgICB9XG5cbiAgICBzZXQgdGl0bGUodGl0bGU6IHN0cmluZykge1xuICAgICAgICB0aGlzLl90aXRsZSA9IHRpdGxlO1xuICAgIH1cblxuICAgIGdldCB0aXRsZSgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGl0bGU7XG4gICAgfVxuXG4gICAgc2V0IHBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fcGxhY2Vob2xkZXIgPSBwbGFjZWhvbGRlcjtcbiAgICB9XG5cbiAgICBnZXQgcGxhY2Vob2xkZXIoKTogc3RyaW5nIHwgdW5kZWZpbmVkIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIHNldCBkZXNjcmlwdGlvbihkZXNjOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fZGVzY3JpcHRpb24gPSBkZXNjO1xuICAgIH1cblxuICAgIGdldCBkZXNjcmlwdGlvbigpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fZGVzY3JpcHRpb247XG4gICAgfVxuXG4gICAgc2V0IGJlaGF2aW9yKGJlaGF2aW9yOiBCZWhhdmlvcikge1xuICAgICAgICB0aGlzLl9iZWhhdmlvciA9IGJlaGF2aW9yO1xuICAgIH1cblxuICAgIGdldCBiZWhhdmlvcigpOiBCZWhhdmlvciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9iZWhhdmlvcjtcbiAgICB9XG5cbiAgICBnZXQgdmFsdWUoKTogVCB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWx1ZS5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHNldCB2YWx1ZSh2YWx1ZTogVCkge1xuICAgICAgICBpZiAoIXRoaXMudmFsdWVFcXVhbGl0eSh0aGlzLl92YWx1ZS5nZXRWYWx1ZSgpLCB2YWx1ZSkgJiYgIXRoaXMuX3JldmVydGluZykge1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlZCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLl93YWl0aW5nRm9yUmVzcG9uc2UgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5yZXNvbHZlUHJldlZhbHVlKHZhbHVlKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl92YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICAgICAgdGhpcy5fcmV2ZXJ0aW5nID0gZmFsc2U7XG4gICAgfVxuXG4gICAgZ2V0IHBhcmVudFRhc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyZW50VGFza0lkO1xuICAgIH1cblxuICAgIGdldCBwYXJlbnRDYXNlSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3BhcmVudENhc2VJZDtcbiAgICB9XG5cbiAgICBnZXQgcHJldmlvdXNWYWx1ZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ByZXZpb3VzVmFsdWUuZ2V0VmFsdWUoKTtcbiAgICB9XG5cbiAgICBzZXQgcHJldmlvdXNWYWx1ZSh2YWx1ZTogVCkge1xuICAgICAgICB0aGlzLl9wcmV2aW91c1ZhbHVlLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHB1YmxpYyB2YWx1ZVdpdGhvdXRDaGFuZ2UodmFsdWU6IFQpIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLl92YWx1ZS5uZXh0KHZhbHVlKTtcbiAgICB9XG5cbiAgICBzZXQgbGF5b3V0KGxheW91dDogTGF5b3V0KSB7XG4gICAgICAgIHRoaXMuX2xheW91dCA9IGxheW91dDtcbiAgICAgICAgdGhpcy5sYXlvdXRTdWJqZWN0Lm5leHQobGF5b3V0KTtcbiAgICB9XG5cbiAgICBnZXQgbGF5b3V0KCk6IExheW91dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sYXlvdXQ7XG4gICAgfVxuXG4gICAgZ2V0IGxvY2FsTGF5b3V0KCk6IExheW91dCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9sb2NhbExheW91dDtcbiAgICB9XG5cbiAgICBnZXQgZGlzYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhIXRoaXMuX2JlaGF2aW9yLnZpc2libGUgJiYgIXRoaXMuX2JlaGF2aW9yLmVkaXRhYmxlO1xuICAgIH1cblxuICAgIGdldCBpbml0aWFsaXplZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2luaXRpYWxpemVkJC52YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgaW5pdGlhbGl6ZWQkKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWQkLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIHNldCB2YWxpZChzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fdmFsaWQgPSBzZXQ7XG4gICAgfVxuXG4gICAgZ2V0IHZhbGlkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsaWQ7XG4gICAgfVxuXG4gICAgc2V0IGNoYW5nZWQoc2V0OiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX2NoYW5nZWQgPSBzZXQ7XG4gICAgfVxuXG4gICAgZ2V0IGNoYW5nZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jaGFuZ2VkO1xuICAgIH1cblxuICAgIHNldCBibG9jayhzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgaWYgKHRoaXMuX2luaXRpYWxpemVkU3Vic2NyaXB0aW9uICE9PSB1bmRlZmluZWQgJiYgIXRoaXMuX2luaXRpYWxpemVkU3Vic2NyaXB0aW9uLmNsb3NlZCkge1xuICAgICAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWRTdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9pbml0aWFsaXplZFN1YnNjcmlwdGlvbiA9IHRoaXMuaW5pdGlhbGl6ZWQkLnBpcGUoZmlsdGVyKGkgPT4gaSksIHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl9ibG9jay5uZXh0KHNldCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHNldCB0b3VjaChzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fdG91Y2gubmV4dChzZXQpO1xuICAgIH1cblxuICAgIGdldCB0b3VjaCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90b3VjaC5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBnZXQgY29tcG9uZW50KCk6IENvbXBvbmVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb21wb25lbnQ7XG4gICAgfVxuXG4gICAgcHVibGljIHJldmVydFRvUHJldmlvdXNWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3JldmVydGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgc2V0IHZhbGlkUmVxdWlyZWQoc2V0OiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3ZhbGlkUmVxdWlyZWQgPSBzZXQ7XG4gICAgfVxuXG4gICAgZ2V0IHZhbGlkUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWxpZFJlcXVpcmVkO1xuICAgIH1cblxuICAgIGdldCBzZW5kSW52YWxpZFZhbHVlcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbmRJbnZhbGlkVmFsdWVzO1xuICAgIH1cblxuICAgIHNldCBzZW5kSW52YWxpZFZhbHVlcyh2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fc2VuZEludmFsaWRWYWx1ZXMgPSB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgd2FpdGluZ0ZvclJlc3BvbnNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclJlc3BvbnNlO1xuICAgIH1cblxuICAgIHNldCB3YWl0aW5nRm9yUmVzcG9uc2UodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fd2FpdGluZ0ZvclJlc3BvbnNlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXBkYXRlLm5leHQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmFsdWVDaGFuZ2VzKCk6IE9ic2VydmFibGU8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWUuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgc2V0IHJldmVydGluZyhzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fcmV2ZXJ0aW5nID0gc2V0O1xuICAgIH1cblxuICAgIGdldCByZXZlcnRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXZlcnRpbmc7XG4gICAgfVxuXG4gICAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoISF0aGlzLl9pbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0KCk6IEVsZW1lbnRSZWYge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5wdXQ7XG4gICAgfVxuXG4gICAgc2V0IGlucHV0KHZhbHVlOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2lucHV0ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm1Db250cm9sUmVmKCk6IEZvcm1Db250cm9sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1Db250cm9sUmVmO1xuICAgIH1cblxuICAgIHNldCBmb3JtQ29udHJvbFJlZihmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5fZm9ybUNvbnRyb2xSZWYgPSBmb3JtQ29udHJvbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VXBkYXRlT25TdHJhdGVneSgpOiBVcGRhdGVPblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIFVwZGF0ZVN0cmF0ZWd5LkJMVVI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiByZXNvbHZlIHR5cGUgb2YgY29tcG9uZW50IGZvciBIVE1MXG4gICAgICogQHJldHVybnMgdHlwZSBvZiBjb21wb25lbnQgaW4gc3RyaW5nXG4gICAgICovXG4gICAgcHVibGljIGdldENvbXBvbmVudFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50Py5uYW1lID8/IERFRkFVTFQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFic3RyYWN0IGdldFR5cGVkQ29tcG9uZW50VHlwZSgpOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsdWUuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fcHJldmlvdXNWYWx1ZS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl91cGRhdGUuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fdG91Y2guY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fYmxvY2suY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWQkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMubGF5b3V0U3ViamVjdC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3RlckZvcm1Db250cm9sKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhIGZpZWxkIGNhbiBiZSBpbml0aWFsaXplZCBvbmx5IG9uY2UhJ1xuICAgICAgICAgICAgICAgICsgJyBEaXNjb25uZWN0IHRoZSBwcmV2aW91cyBmb3JtIGNvbnRyb2wgYmVmb3JlIGluaXRpYWxpemluZyB0aGUgZGF0YSBmaWVsZCBhZ2FpbiEnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2xSZWYgPSBmb3JtQ29udHJvbDtcbiAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLnJlc29sdmVGb3JtQ29udHJvbFZhbGlkYXRvcnMoKSk7XG5cbiAgICAgICAgdGhpcy5fZm9ybUNvbnRyb2xWYWx1ZVN1YnNjcmlwdGlvbiA9IGZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQodGhpcy52YWx1ZUVxdWFsaXR5KVxuICAgICAgICApLnN1YnNjcmliZShuZXdWYWx1ZSA9PiB7XG4gICAgICAgICAgICB0aGlzLl92YWxpZCA9IHRoaXMuX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2wpO1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9teVZhbHVlU3Vic2NyaXB0aW9uID0gdGhpcy5fdmFsdWUucGlwZShcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMudmFsdWVFcXVhbGl0eSlcbiAgICAgICAgKS5zdWJzY3JpYmUobmV3VmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdmFsaWQgPSB0aGlzLl9kZXRlcm1pbmVGb3JtQ29udHJvbFZhbGlkaXR5KGZvcm1Db250cm9sKTtcbiAgICAgICAgICAgIGZvcm1Db250cm9sLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZShmb3JtQ29udHJvbCk7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3dhaXRpbmdGb3JSZXNwb25zZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNjb25uZWN0Rm9ybUNvbnRyb2woKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgY29uc3Qgc3VicyA9IFtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgIHRoaXMuX2Jsb2NrU3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgdGhpcy5fdG91Y2hTdWJzY3JpcHRpb24sXG4gICAgICAgICAgICB0aGlzLl9mb3JtQ29udHJvbFZhbHVlU3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgdGhpcy5fbXlWYWx1ZVN1YnNjcmlwdGlvblxuICAgICAgICBdO1xuICAgICAgICBmb3IgKGNvbnN0IHN1YiBvZiBzdWJzKSB7XG4gICAgICAgICAgICBpZiAoc3ViKSB7XG4gICAgICAgICAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybUNvbnRyb2xTdGF0ZShmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpOiB2b2lkIHtcbiAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9Jbm5lclN1YmplY3RzKGZvcm1Db250cm9sKTtcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc3Vic2NyaWJlVG9Jbm5lclN1YmplY3RzKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgICAgICB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb24gPSB0aGlzLl91cGRhdGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudmFsaWRSZXF1aXJlZCA9IHRoaXMuY2FsY3VsYXRlVmFsaWRpdHkodHJ1ZSwgZm9ybUNvbnRyb2wpO1xuICAgICAgICAgICAgdGhpcy52YWxpZCA9IHRoaXMuY2FsY3VsYXRlVmFsaWRpdHkoZmFsc2UsIGZvcm1Db250cm9sKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5fYmxvY2tlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPyBmb3JtQ29udHJvbC5kaXNhYmxlKCkgOiBmb3JtQ29udHJvbC5lbmFibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fYmxvY2tTdWJzY3JpcHRpb24gPSB0aGlzLl9ibG9jay5zdWJzY3JpYmUoYm9vbCA9PiB7XG4gICAgICAgICAgICBpZiAoYm9vbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Jsb2NrZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYmxvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPyBmb3JtQ29udHJvbC5kaXNhYmxlKCkgOiBmb3JtQ29udHJvbC5lbmFibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fdG91Y2hTdWJzY3JpcHRpb24gPSB0aGlzLl90b3VjaC5zdWJzY3JpYmUoYm9vbCA9PiB7XG4gICAgICAgICAgICBpZiAoYm9vbCkge1xuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2wubWFya0FzVW50b3VjaGVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbXB1dGVzIHdoZXRoZXIgdGhlIEZvcm1Db250cm9sIHNpIHZhbGlkLlxuICAgICAqIEBwYXJhbSBmb3JtQ29udHJvbCBjaGVjayBmb3JtIGNvbnRyb2xcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sKTogYm9vbGVhbiB7XG4gICAgICAgIC8vIGRpc2FibGVkIGZvcm0gY29udHJvbHMgYXJlIG1hcmtlZCBhcyBpbnZhbGlkIGFzIHBlciBXM0Mgc3RhbmRhcmQsIHRoaXMgc29sdmVzIHRoYXQgcHJvYmxlbVxuICAgICAgICByZXR1cm4gZm9ybUNvbnRyb2wuZGlzYWJsZWQgfHwgZm9ybUNvbnRyb2wudmFsaWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBWYWxpZGF0b3Igb2JqZWN0cyBiYXNlZCBvbiBmaWVsZCBgYmVoYXZpb3JgLiBPbmx5IHRoZSBgcmVxdWlyZWRgIGJlaGF2aW9yIGlzIHJlc29sdmVkIGJ5IGRlZmF1bHQuXG4gICAgICogUmVxdWlyZWQgaXMgcmVzb2x2ZWQgYXMgYFZhbGlkYXRvcnMucmVxdWlyZWRgLlxuICAgICAqIElmIHlvdSBuZWVkIHRvIHJlc29sdmUgYWRkaXRpb25hbCBWYWxpZGF0b3JzIG9yIG5lZWQgYSBkaWZmZXJlbnQgcmVzb2x1dGlvbiBmb3IgdGhlIGByZXF1aXJlZGAgVmFsaWRhdG9yIG92ZXJyaWRlIHRoaXMgbWV0aG9kLlxuICAgICAqXG4gICAgICogU2VlIHtAbGluayBCZWhhdmlvcn0gZm9yIGluZm9ybWF0aW9uIGFib3V0IGRhdGEgZmllbGQgYmVoYXZpb3IuXG4gICAgICpcbiAgICAgKiBTZWUge0BsaW5rIFZhbGlkYXRvckZufSBhbmQge0BsaW5rIFZhbGlkYXRvcnN9IGZvciBpbmZvcm1hdGlvbiBhYm91dCBWYWxpZGF0b3JzLlxuICAgICAqXG4gICAgICogQWx0ZXJuYXRpdmVseSBzZWUgW0Zvcm0gVmFsaWRhdGlvbiBndWlkZV17QGxpbmsgaHR0cHM6Ly9hbmd1bGFyLmlvL2d1aWRlL2Zvcm0tdmFsaWRhdGlvbiNyZWFjdGl2ZS1mb3JtLXZhbGlkYXRpb259IGZyb20gQW5ndWxhci5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZUZvcm1Db250cm9sVmFsaWRhdG9ycygpOiBBcnJheTxWYWxpZGF0b3JGbj4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcblxuICAgICAgICBpZiAodGhpcy5iZWhhdmlvci5yZXF1aXJlZCkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9ucykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3ZhbGlkYXRvcnMpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCguLi50aGlzLl92YWxpZGF0b3JzKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmFsaWRhdG9ycyA9IHRoaXMucmVzb2x2ZVZhbGlkYXRpb25zKCk7XG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goLi4udGhpcy5fdmFsaWRhdG9ycyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyByZXBsYWNlVmFsaWRhdGlvbnModmFsaWRhdGlvbnM6IEFycmF5PFZhbGlkYXRpb24+KSB7XG4gICAgICAgIHRoaXMuY2xlYXJWYWxpZGF0b3JzKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbnMgPSB2YWxpZGF0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXJWYWxpZGF0b3JzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92YWxpZGF0b3JzID0gbnVsbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZVZhbGlkYXRpb25zKCk6IEFycmF5PFZhbGlkYXRvckZuPiB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIHR3byB2YWx1ZXMgb2YgdGhlIGRhdGEgZmllbGQgYXJlIGVxdWFsLlxuICAgICAqXG4gICAgICogYGEgPT09IGJgIGVxdWFsaXR5IGlzIHVzZWQgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgZGlmZmVyZW50IGJlaGF2aW9yIG92ZXJyaWRlIHRoaXMgbWV0aG9kLlxuICAgICAqIEBwYXJhbSBhIC0gZmlyc3QgY29tcGFyZWQgdmFsdWVcbiAgICAgKiBAcGFyYW0gYiAtIHNlY29uZCBjb21wYXJlZCB2YWx1ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCB2YWx1ZUVxdWFsaXR5KGE6IFQsIGI6IFQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGEgPT09IGIgfHwgKE51bWJlci5pc05hTihhKSAmJiBOdW1iZXIuaXNOYU4oYikpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgdGhlIHN0YXRlIG9mIHRoaXMgZGF0YSBmaWVsZCBtb2RlbCBvYmplY3QuXG4gICAgICogQHBhcmFtIGNoYW5nZSAtIG9iamVjdCBkZXNjcmliaW5nIHRoZSBjaGFuZ2VzIC0gcmV0dXJuZWQgZnJvbSBiYWNrZW5kXG4gICAgICpcbiAgICAgKiBBbHNvIHNlZSB7QGxpbmsgQ2hhbmdlZEZpZWxkc30uXG4gICAgICovXG4gICAgcHVibGljIGFwcGx5Q2hhbmdlKGNoYW5nZTogQ2hhbmdlKTogdm9pZCB7XG4gICAgICAgIE9iamVjdC5rZXlzKGNoYW5nZSkuZm9yRWFjaChjaGFuZ2VkQXR0cmlidXRlID0+IHtcbiAgICAgICAgICAgIHN3aXRjaCAoY2hhbmdlZEF0dHJpYnV0ZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3ZhbHVlJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGNoYW5nZVtjaGFuZ2VkQXR0cmlidXRlXTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYmVoYXZpb3InOlxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuYmVoYXZpb3IsIGNoYW5nZVtjaGFuZ2VkQXR0cmlidXRlXSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBhdHRyaWJ1dGUgJyR7Y2hhbmdlZEF0dHJpYnV0ZX0nIGluIGNoYW5nZSBvYmplY3RgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc29sdmVBcHBlYXJhbmNlKGNvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2UpOiB2b2lkIHtcbiAgICAgICAgbGV0IGFwcGVhcmFuY2UgPSAnb3V0bGluZSc7XG4gICAgICAgIGlmICh0aGlzLmxheW91dCAmJiB0aGlzLmxheW91dC5hcHBlYXJhbmNlKSB7XG4gICAgICAgICAgICBhcHBlYXJhbmNlID0gdGhpcy5sYXlvdXQuYXBwZWFyYW5jZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFmaWVsZENvbmZpZ3VyYXRpb24gPSBjb25maWcuZ2V0RGF0YWZpZWxkQ29uZmlndXJhdGlvbigpO1xuICAgICAgICAgICAgaWYgKGRhdGFmaWVsZENvbmZpZ3VyYXRpb24gJiYgZGF0YWZpZWxkQ29uZmlndXJhdGlvbi5hcHBlYXJhbmNlKSB7XG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZSA9IGRhdGFmaWVsZENvbmZpZ3VyYXRpb24uYXBwZWFyYW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1hdGVyaWFsQXBwZWFyYW5jZSA9IGFwcGVhcmFuY2U7XG5cbiAgICAgICAgLyogTGlzdGVuIGZvciBjaGFuZ2VzIG9mIGxheW91dCBpbiBmdXR1cmUgKi9cbiAgICAgICAgdGhpcy5sYXlvdXRTdWJqZWN0LnN1YnNjcmliZShsYXlvdXQgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubGF5b3V0ICYmIHRoaXMubGF5b3V0LmFwcGVhcmFuY2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hdGVyaWFsQXBwZWFyYW5jZSA9IHRoaXMubGF5b3V0LmFwcGVhcmFuY2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNvbHZlUHJldlZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl92YWx1ZS5nZXRWYWx1ZSgpICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICYmIHRoaXMuX3ZhbHVlLmdldFZhbHVlKCkgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9wcmV2aW91c1ZhbHVlLm5leHQodGhpcy5fdmFsdWUuZ2V0VmFsdWUoKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2FsY3VsYXRlVmFsaWRpdHkoZm9yVmFsaWRSZXF1aXJlZDogYm9vbGVhbiwgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGlzRGlzYWJsZWQgPSBmb3JtQ29udHJvbC5kaXNhYmxlZDtcbiAgICAgICAgaWYgKGZvclZhbGlkUmVxdWlyZWQpIHtcbiAgICAgICAgICAgIGZvcm1Db250cm9sLmVuYWJsZSgpO1xuICAgICAgICB9XG4gICAgICAgIGZvcm1Db250cm9sLmNsZWFyVmFsaWRhdG9ycygpO1xuICAgICAgICBpZiAoZm9yVmFsaWRSZXF1aXJlZCkge1xuICAgICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLmJlaGF2aW9yLnJlcXVpcmVkID8gW1ZhbGlkYXRvcnMucmVxdWlyZWRdIDogW10pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLnJlc29sdmVGb3JtQ29udHJvbFZhbGlkYXRvcnMoKSk7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgICBjb25zdCB2YWxpZGl0eSA9IHRoaXMuX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2wpO1xuICAgICAgICBpc0Rpc2FibGVkID8gZm9ybUNvbnRyb2wuZGlzYWJsZSgpIDogZm9ybUNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgIHJldHVybiB2YWxpZGl0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNJbnZhbGlkKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIWZvcm1Db250cm9sLmRpc2FibGVkICYmICFmb3JtQ29udHJvbC52YWxpZCAmJiBmb3JtQ29udHJvbC50b3VjaGVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcGllcyB0aGUgbGF5b3V0IHNldHRpbmdzIGludG8gdGhlIGxvY2FsIGxheW91dC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVzZXRMb2NhbExheW91dCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2xheW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2NhbExheW91dCA9IHsuLi50aGlzLl9sYXlvdXR9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fbG9jYWxMYXlvdXQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
442
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZGF0YS1maWVsZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvbW9kZWxzL2Fic3RyYWN0LWRhdGEtZmllbGQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFDLGVBQWUsRUFBYyxPQUFPLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFDeEUsT0FBTyxFQUEyQixVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUMsb0JBQW9CLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBR2xFLE9BQU8sRUFBWSxPQUFPLEVBQUMsTUFBTSxhQUFhLENBQUM7QUFHL0MsT0FBTyxFQUFtQixjQUFjLEVBQUMsTUFBTSxtQkFBbUIsQ0FBQztBQUVuRTs7O0dBR0c7QUFDSCxNQUFNLE9BQWdCLFNBQVM7SUF3SDNCOzs7Ozs7Ozs7Ozs7T0FZRztJQUNILFlBQThCLFNBQWlCLEVBQVUsTUFBYyxFQUFFLFlBQWUsRUFDMUQsU0FBbUIsRUFBVSxZQUFxQixFQUNsRCxZQUFxQixFQUFVLE9BQWdCLEVBQVMsV0FBK0IsRUFDdkYsVUFBc0IsRUFBVSxhQUFzQixFQUFVLGFBQXNCO1FBSHRGLGNBQVMsR0FBVCxTQUFTLENBQVE7UUFBVSxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ3pDLGNBQVMsR0FBVCxTQUFTLENBQVU7UUFBVSxpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUNsRCxpQkFBWSxHQUFaLFlBQVksQ0FBUztRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFBUyxnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDdkYsZUFBVSxHQUFWLFVBQVUsQ0FBWTtRQUFVLGtCQUFhLEdBQWIsYUFBYSxDQUFTO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQVM7UUFwRXBIOztXQUVH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QVcsQ0FBQyxlQUFlLEVBQUUsQ0FBQztRQUM5QixJQUFJLGdCQUFnQixFQUFFO1lBQ2xCLFdBQVcsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNsRjthQUFNO1lBQ0gsV0FBVyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLEVBQUUsQ0FBQyxDQUFDO1NBQ2xFO1FBQ0QsV0FBVyxDQUFDLHNCQUFzQixFQUFFLENBQUM7UUFDckMsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLDZCQUE2QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ2pFLFVBQVUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDMUQsT0FBTyxRQUFRLENBQUM7SUFDcEIsQ0FBQztJQUVNLFNBQVMsQ0FBQyxXQUF3QjtRQUNyQyxPQUFPLENBQUMsV0FBVyxDQUFDLFFBQVEsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQztJQUM5RSxDQUFDO0lBRUQ7O09BRUc7SUFDSSxnQkFBZ0I7UUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxLQUFLLFNBQVMsRUFBRTtZQUM1QixJQUFJLENBQUMsWUFBWSxHQUFHLEVBQUMsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFDLENBQUM7U0FDekM7YUFBTTtZQUNILElBQUksQ0FBQyxZQUFZLEdBQUcsU0FBUyxDQUFDO1NBQ2pDO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtCZWhhdmlvcn0gZnJvbSAnLi9iZWhhdmlvcic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7Rm9ybUNvbnRyb2wsIFZhbGlkYXRvckZuLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge0NoYW5nZX0gZnJvbSAnLi9jaGFuZ2VkLWZpZWxkcyc7XG5pbXBvcnQge2Rpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7TGF5b3V0fSBmcm9tICcuL2xheW91dCc7XG5pbXBvcnQge0NvbmZpZ3VyYXRpb25TZXJ2aWNlfSBmcm9tICcuLi8uLi9jb25maWd1cmF0aW9uL2NvbmZpZ3VyYXRpb24uc2VydmljZSc7XG5pbXBvcnQge0NvbXBvbmVudCwgREVGQVVMVH0gZnJvbSAnLi9jb21wb25lbnQnO1xuaW1wb3J0IHtWYWxpZGF0aW9ufSBmcm9tICcuL3ZhbGlkYXRpb24nO1xuaW1wb3J0IHtFbGVtZW50UmVmfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtVcGRhdGVPblN0cmF0ZWd5LCBVcGRhdGVTdHJhdGVneX0gZnJvbSBcIi4vdXBkYXRlLXN0cmF0ZWd5XCI7XG5cbi8qKlxuICogSG9sZHMgdGhlIGxvZ2ljIGNvbW1vbiB0byBhbGwgZGF0YSBmaWVsZCBNb2RlbCBvYmplY3RzLlxuICogQHR5cGVwYXJhbSBUIC0gdHlwZSBvZiB0aGUgYHZhbHVlYCBwcm9wZXJ0eSBvZiB0aGUgZGF0YSBmaWVsZFxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0YUZpZWxkPFQ+IHtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogQ3VycmVudCB2YWx1ZSBvZiB0aGUgZGF0YSBmaWVsZFxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdmFsdWU6IEJlaGF2aW9yU3ViamVjdDxUPjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogUHJldmlvdXMgdmFsdWUgb2YgdGhlIGRhdGEgZmllbGRcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3ByZXZpb3VzVmFsdWU6IEJlaGF2aW9yU3ViamVjdDxUPjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogV2hldGhlciB0aGUgZGF0YSBmaWVsZCBNb2RlbCBvYmplY3Qgd2FzIGluaXRpYWxpemVkLCB3ZSBwdXNoIHRoYXQgaW5mbyBpbnRvIHN0cmVhbVxuICAgICAqXG4gICAgICogU2VlIFtyZWdpc3RlckZvcm1Db250cm9sKClde0BsaW5rIERhdGFGaWVsZCNyZWdpc3RlckZvcm1Db250cm9sfSBmb3IgbW9yZSBpbmZvcm1hdGlvbi5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2luaXRpYWxpemVkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+O1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBXaGV0aGVyIHRoZSBmaWVsZCBmdWxmaWxscyBhbGwgb2YgaXQncyB2YWxpZGF0b3JzLlxuICAgICAqL1xuICAgIHByaXZhdGUgX3ZhbGlkOiBib29sZWFuO1xuICAgIC8qKlxuICAgICAqIEBpZ25vcmVcbiAgICAgKiBXaGV0aGVyIHRoZSBgdmFsdWVgIG9mIHRoZSBmaWVsZCBjaGFuZ2VkIHJlY2VudGx5LiBUaGUgZmxhZyBpcyBjbGVhcmVkIHdoZW4gY2hhbmdlcyBhcmUgc2VuZCB0byBiYWNrZW5kLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NoYW5nZWQ6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIERhdGEgZmllbGQgc3Vic2NyaWJlcyB0aGlzIHN0cmVhbS5cbiAgICAgKiBUaGUgZGF0YSBmaWVsZCB1cGRhdGVzIGl0J3MgVmFsaWRhdG9ycywgdmFsaWRpdHkgYW5kIGVuYWJsZWQvZGlzYWJsZWQgYWNjb3JkaW5nIHRvIGl0J3MgYmVoYXZpb3IuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF91cGRhdGU6IFN1YmplY3Q8dm9pZD47XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIERhdGEgZmllbGQgc3Vic2NyaWJlcyB0aGlzIHN0cmVhbS4gV2hlbiBhIGB0cnVlYCB2YWx1ZSBpcyByZWNlaXZlZCB0aGUgZGF0YSBmaWVsZCBkaXNhYmxlcyBpdHNlbGYuXG4gICAgICogV2hlbiBhIGBmYWxzZWB2YWx1ZSBpcyByZWNlaXZlZCBkYXRhIGZpZWxkIGRpc2FibGVzL2VuYWJsZXMgaXRzZWxmIGJhc2VkIG9uIGl0J3MgYmVoYXZpb3IuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9ibG9jazogU3ViamVjdDxib29sZWFuPjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogV2hlbiBhIGB0cnVlYCB2YWx1ZSBpcyB0aGVyZSwgdGhlIGRhdGEgZmllbGQgaXMgZGlzYWJsZWQuXG4gICAgICogV2hlbiBhIGBmYWxzZWAgdmFsdWUgaXMgcmVjZWl2ZWQsIGRhdGEgZmllbGQgaXMgZGlzYWJsZWQvZW5hYmxlZCBiYXNlZCBvbiBpdCdzIGJlaGF2aW9yLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfYmxvY2tlZDogYm9vbGVhbjtcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogRGF0YSBmaWVsZCBzdWJzY3JpYmVzIHRoaXMgc3RyZWFtLiBTZXRzIHRoZSBzdGF0ZSBvZiB0aGUgZGF0YSBmaWVsZCB0byBcInRvdWNoZWRcIiBvciBcInVudG91Y2hlZFwiIChgdHJ1ZWAvYGZhbHNlYCkuXG4gICAgICogVmFsaWRpdHkgb2YgdGhlIGRhdGEgZmllbGQgaXMgbm90IGNoZWNrZWQgaW4gYW4gXCJ1bnRvdWNoZWRcIiBzdGF0ZS5cbiAgICAgKiBBbGwgZmllbGRzIGFyZSB0b3VjaGVkIGJlZm9yZSBhIHRhc2sgaXMgZmluaXNoZWQgdG8gY2hlY2sgdGhlaXIgdmFsaWRpdHkuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF90b3VjaDogU3ViamVjdDxib29sZWFuPjtcbiAgICBwcm90ZWN0ZWQgX3VwZGF0ZVN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuICAgIHByb3RlY3RlZCBfYmxvY2tTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcm90ZWN0ZWQgX3RvdWNoU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9mb3JtQ29udHJvbFZhbHVlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9teVZhbHVlU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIEFwcGVhcmFuY2Ugb2YgZGF0YUZpZWxkcywgcG9zc2libGUgdmFsdWVzIC0gb3V0bGluZSwgc3RhbmRhcmQsIGZpbGwsIGxlZ2FjeVxuICAgICAqL1xuICAgIHB1YmxpYyBtYXRlcmlhbEFwcGVhcmFuY2U6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBAaWdub3JlXG4gICAgICogV2hldGhlciB0aGUgZmllbGQgZnVsZmlsbHMgcmVxdWlyZWQgdmFsaWRhdG9yLlxuICAgICAqL1xuICAgIHByaXZhdGUgX3ZhbGlkUmVxdWlyZWQ6IGJvb2xlYW47XG4gICAgLyoqXG4gICAgICogV2hldGhlciBpbnZhbGlkIGZpZWxkIHZhbHVlcyBzaG91bGQgYmUgc2VudCB0byBiYWNrZW5kLlxuICAgICAqL1xuICAgIHByaXZhdGUgX3NlbmRJbnZhbGlkVmFsdWVzID0gdHJ1ZTtcbiAgICAvKipcbiAgICAgKiBGbGFnIHRoYXQgaXMgc2V0IGR1cmluZyByZXZlcnRpbmdcbiAgICAgKi9cbiAgICBwcml2YXRlIF9yZXZlcnRpbmcgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFZhbGlkYXRvcnMgcmVzb2x2ZWQgZnJvbSBmaWVsZCB2YWxpZGF0aW9uc1xuICAgICAqL1xuICAgIHByb3RlY3RlZCBfdmFsaWRhdG9yczogQXJyYXk8VmFsaWRhdG9yRm4+O1xuXG4gICAgLyoqXG4gICAgICogU3RvcmVzIHRoZSBsYXN0IHN1YnNjcmlwdGlvbiB0byB0aGUgW19pbml0aWFsaXplZCRde0BsaW5rIEFic3RyYWN0RGF0YUZpZWxkI19pbml0aWFsaXplZCR9IFN0cmVhbSwgdG8gcHJldmVudCBtdWx0aXBsZSBibG9jayBldmVudHNcbiAgICAgKiBmcm9tIGV4ZWN1dGluZyBhdCB0aGUgc2FtZSB0aW1lXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9pbml0aWFsaXplZFN1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgLyoqXG4gICAgICogQGlnbm9yZVxuICAgICAqIFdoZXRoZXIgdGhlIGNoYW5nZXMgZnJvbSBoYXMgYmVlbiByZXF1ZXN0ZWQuIFRoZSBmbGFnIGlzIGNsZWFyZWQgd2hlbiBjaGFuZ2VzIGFyZSByZWNlaXZlZCBmcm9tIGJhY2tlbmQuXG4gICAgICovXG4gICAgcHJpdmF0ZSBfd2FpdGluZ0ZvclJlc3BvbnNlOiBib29sZWFuO1xuXG4gICAgLyoqXG4gICAgICogU3RvcmVzIGEgY29weSBvZiB0aGUgZmllbGRzIGxheW91dCwgdGhhdCBjYW4gYmUgbW9kaWZpZWQgYnkgdGhlIGxheW91dGluZyBhbGdvcml0aG0gYXMgbmVlZGVkXG4gICAgICogd2l0aG91dCBhZmZlY3RpbmcgdGhlIGJhc2UgY29uZmlndXJhdGlvbi5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2xvY2FsTGF5b3V0OiBMYXlvdXQ7XG5cbiAgICAvKipcbiAgICAgKiBMaXN0ZW5zIGZvciBsYXlvdXQgY2hhbmdlc1xuICAgICAqL1xuICAgIHByb3RlY3RlZCBsYXlvdXRTdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8TGF5b3V0PjtcblxuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byByZW5kZXJlZCBlbGVtZW50XG4gICAgICogKi9cbiAgICBwcml2YXRlIF9pbnB1dDogRWxlbWVudFJlZjtcblxuICAgIC8qKlxuICAgICAqIFJlZmVyZW5jZSB0byBmb3JtIGNvbnRyb2xcbiAgICAgKiAqL1xuICAgIHByaXZhdGUgX2Zvcm1Db250cm9sUmVmOiBGb3JtQ29udHJvbDtcblxuICAgIC8qKlxuICAgICAqIGNoYW5nZSBvZiBjb21wb25lbnRcbiAgICAgKiAqL1xuICAgIHByaXZhdGUgX2NvbXBvbmVudENoYW5nZSQ6IFN1YmplY3Q8Q29tcG9uZW50PjtcblxuICAgIC8qKlxuICAgICAqIEBwYXJhbSBfc3RyaW5nSWQgLSBJRCBvZiB0aGUgZGF0YSBmaWVsZCBmcm9tIGJhY2tlbmRcbiAgICAgKiBAcGFyYW0gX3RpdGxlIC0gZGlzcGxheWVkIHRpdGxlIG9mIHRoZSBkYXRhIGZpZWxkIGZyb20gYmFja2VuZFxuICAgICAqIEBwYXJhbSBpbml0aWFsVmFsdWUgLSBpbml0aWFsIHZhbHVlIG9mIHRoZSBkYXRhIGZpZWxkXG4gICAgICogQHBhcmFtIF9iZWhhdmlvciAtIGRhdGEgZmllbGQgYmVoYXZpb3JcbiAgICAgKiBAcGFyYW0gX3BsYWNlaG9sZGVyIC0gcGxhY2Vob2xkZXIgZGlzcGxheWVkIGluIHRoZSBkYXRhZmllbGRcbiAgICAgKiBAcGFyYW0gX2Rlc2NyaXB0aW9uIC0gdG9vbHRpcCBvZiB0aGUgZGF0YWZpZWxkXG4gICAgICogQHBhcmFtIF9sYXlvdXQgLSBpbmZvcm1hdGlvbiByZWdhcmRpbmcgdGhlIGNvbXBvbmVudCByZW5kZXJpbmdcbiAgICAgKiBAcGFyYW0gdmFsaWRhdGlvbnNcbiAgICAgKiBAcGFyYW0gX2NvbXBvbmVudCAtIGNvbXBvbmVudCBkYXRhIG9mIGRhdGFmaWVsZFxuICAgICAqIEBwYXJhbSBfcGFyZW50VGFza0lkIC0gc3RyaW5nSWQgb2YgcGFyZW50IHRhc2ssIG9ubHkgZGVmaW5lZCBpZiBmaWVsZCBpcyBsb2FkZWQgdXNpbmcge0BsaW5rIFRhc2tSZWZGaWVsZH1cbiAgICAgKiBAcGFyYW0gX3BhcmVudENhc2VJZCAtIHN0cmluZ0lkIG9mIHBhcmVudCBjYXNlLCBvbmx5IGRlZmluZWQgaWYgZmllbGQgaXMgbG9hZGVkIHVzaW5nIHtAbGluayBUYXNrUmVmRmllbGR9XG4gICAgICovXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByaXZhdGUgX3N0cmluZ0lkOiBzdHJpbmcsIHByaXZhdGUgX3RpdGxlOiBzdHJpbmcsIGluaXRpYWxWYWx1ZTogVCxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZSBfYmVoYXZpb3I6IEJlaGF2aW9yLCBwcml2YXRlIF9wbGFjZWhvbGRlcj86IHN0cmluZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJpdmF0ZSBfZGVzY3JpcHRpb24/OiBzdHJpbmcsIHByaXZhdGUgX2xheW91dD86IExheW91dCwgcHVibGljIHZhbGlkYXRpb25zPzogQXJyYXk8VmFsaWRhdGlvbj4sXG4gICAgICAgICAgICAgICAgICAgICAgICAgIHByaXZhdGUgX2NvbXBvbmVudD86IENvbXBvbmVudCwgcHJpdmF0ZSBfcGFyZW50VGFza0lkPzogc3RyaW5nLCBwcml2YXRlIF9wYXJlbnRDYXNlSWQ/OiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5fdmFsdWUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KGluaXRpYWxWYWx1ZSk7XG4gICAgICAgIHRoaXMuX3ByZXZpb3VzVmFsdWUgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFQ+KGluaXRpYWxWYWx1ZSk7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICAgICAgICB0aGlzLl92YWxpZCA9IHRydWU7XG4gICAgICAgIHRoaXMuX2NoYW5nZWQgPSBmYWxzZTtcbiAgICAgICAgdGhpcy5fd2FpdGluZ0ZvclJlc3BvbnNlID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3VwZGF0ZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG4gICAgICAgIHRoaXMuX2Jsb2NrID0gbmV3IFN1YmplY3Q8Ym9vbGVhbj4oKTtcbiAgICAgICAgdGhpcy5fdG91Y2ggPSBuZXcgU3ViamVjdDxib29sZWFuPigpO1xuICAgICAgICB0aGlzLl9jb21wb25lbnRDaGFuZ2UkID0gbmV3IFN1YmplY3Q8Q29tcG9uZW50PigpO1xuICAgICAgICB0aGlzLl92YWxpZFJlcXVpcmVkID0gdHJ1ZTtcbiAgICAgICAgdGhpcy5sYXlvdXRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxMYXlvdXQ+KF9sYXlvdXQpO1xuICAgICAgICB0aGlzLnJlc2V0TG9jYWxMYXlvdXQoKTtcbiAgICB9XG5cbiAgICBnZXQgc3RyaW5nSWQoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3N0cmluZ0lkO1xuICAgIH1cblxuICAgIHNldCB0aXRsZSh0aXRsZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuX3RpdGxlID0gdGl0bGU7XG4gICAgfVxuXG4gICAgZ2V0IHRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl90aXRsZTtcbiAgICB9XG5cbiAgICBzZXQgcGxhY2Vob2xkZXIocGxhY2Vob2xkZXI6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9wbGFjZWhvbGRlciA9IHBsYWNlaG9sZGVyO1xuICAgIH1cblxuICAgIGdldCBwbGFjZWhvbGRlcigpOiBzdHJpbmcgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGxhY2Vob2xkZXI7XG4gICAgfVxuXG4gICAgc2V0IGRlc2NyaXB0aW9uKGRlc2M6IHN0cmluZykge1xuICAgICAgICB0aGlzLl9kZXNjcmlwdGlvbiA9IGRlc2M7XG4gICAgfVxuXG4gICAgZ2V0IGRlc2NyaXB0aW9uKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9kZXNjcmlwdGlvbjtcbiAgICB9XG5cbiAgICBzZXQgYmVoYXZpb3IoYmVoYXZpb3I6IEJlaGF2aW9yKSB7XG4gICAgICAgIHRoaXMuX2JlaGF2aW9yID0gYmVoYXZpb3I7XG4gICAgfVxuXG4gICAgZ2V0IGJlaGF2aW9yKCk6IEJlaGF2aW9yIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2JlaGF2aW9yO1xuICAgIH1cblxuICAgIGdldCB2YWx1ZSgpOiBUIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3ZhbHVlLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgc2V0IHZhbHVlKHZhbHVlOiBUKSB7XG4gICAgICAgIGlmICghdGhpcy52YWx1ZUVxdWFsaXR5KHRoaXMuX3ZhbHVlLmdldFZhbHVlKCksIHZhbHVlKSAmJiAhdGhpcy5fcmV2ZXJ0aW5nKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHRoaXMuX3dhaXRpbmdGb3JSZXNwb25zZSA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnJlc29sdmVQcmV2VmFsdWUodmFsdWUpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX3ZhbHVlLm5leHQodmFsdWUpO1xuICAgICAgICB0aGlzLl9yZXZlcnRpbmcgPSBmYWxzZTtcbiAgICB9XG5cbiAgICBnZXQgcGFyZW50VGFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLl9wYXJlbnRUYXNrSWQ7XG4gICAgfVxuXG4gICAgZ2V0IHBhcmVudENhc2VJZCgpOiBzdHJpbmcge1xuICAgICAgICByZXR1cm4gdGhpcy5fcGFyZW50Q2FzZUlkO1xuICAgIH1cblxuICAgIGdldCBwcmV2aW91c1ZhbHVlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fcHJldmlvdXNWYWx1ZS5nZXRWYWx1ZSgpO1xuICAgIH1cblxuICAgIHNldCBwcmV2aW91c1ZhbHVlKHZhbHVlOiBUKSB7XG4gICAgICAgIHRoaXMuX3ByZXZpb3VzVmFsdWUubmV4dCh2YWx1ZSk7XG4gICAgfVxuXG4gICAgcHVibGljIHZhbHVlV2l0aG91dENoYW5nZSh2YWx1ZTogVCkge1xuICAgICAgICB0aGlzLl9jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3ZhbHVlLm5leHQodmFsdWUpO1xuICAgIH1cblxuICAgIHNldCBsYXlvdXQobGF5b3V0OiBMYXlvdXQpIHtcbiAgICAgICAgdGhpcy5fbGF5b3V0ID0gbGF5b3V0O1xuICAgICAgICB0aGlzLmxheW91dFN1YmplY3QubmV4dChsYXlvdXQpO1xuICAgIH1cblxuICAgIGdldCBsYXlvdXQoKTogTGF5b3V0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xheW91dDtcbiAgICB9XG5cbiAgICBnZXQgbG9jYWxMYXlvdXQoKTogTGF5b3V0IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2xvY2FsTGF5b3V0O1xuICAgIH1cblxuICAgIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy5fYmVoYXZpb3IudmlzaWJsZSAmJiAhdGhpcy5fYmVoYXZpb3IuZWRpdGFibGU7XG4gICAgfVxuXG4gICAgZ2V0IGluaXRpYWxpemVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5pdGlhbGl6ZWQkLnZhbHVlO1xuICAgIH1cblxuICAgIGdldCBpbml0aWFsaXplZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pbml0aWFsaXplZCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgc2V0IHZhbGlkKHNldDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl92YWxpZCA9IHNldDtcbiAgICB9XG5cbiAgICBnZXQgdmFsaWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWxpZDtcbiAgICB9XG5cbiAgICBzZXQgY2hhbmdlZChzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fY2hhbmdlZCA9IHNldDtcbiAgICB9XG5cbiAgICBnZXQgY2hhbmdlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NoYW5nZWQ7XG4gICAgfVxuXG4gICAgc2V0IGJsb2NrKHNldDogYm9vbGVhbikge1xuICAgICAgICBpZiAodGhpcy5faW5pdGlhbGl6ZWRTdWJzY3JpcHRpb24gIT09IHVuZGVmaW5lZCAmJiAhdGhpcy5faW5pdGlhbGl6ZWRTdWJzY3JpcHRpb24uY2xvc2VkKSB7XG4gICAgICAgICAgICB0aGlzLl9pbml0aWFsaXplZFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkU3Vic2NyaXB0aW9uID0gdGhpcy5pbml0aWFsaXplZCQucGlwZShmaWx0ZXIoaSA9PiBpKSwgdGFrZSgxKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2Jsb2NrLm5leHQoc2V0KTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0IHRvdWNoKHNldDogYm9vbGVhbikge1xuICAgICAgICB0aGlzLl90b3VjaC5uZXh0KHNldCk7XG4gICAgfVxuXG4gICAgZ2V0IHRvdWNoJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RvdWNoLmFzT2JzZXJ2YWJsZSgpO1xuICAgIH1cblxuICAgIGdldCBjb21wb25lbnQoKTogQ29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvbmVudDtcbiAgICB9XG5cbiAgICBzZXQgY29tcG9uZW50KGNvbXBvbmVudDogQ29tcG9uZW50KSB7XG4gICAgICAgIHRoaXMuX2NvbXBvbmVudCA9IGNvbXBvbmVudDtcbiAgICAgICAgdGhpcy5fY29tcG9uZW50Q2hhbmdlJC5uZXh0KGNvbXBvbmVudCk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbXBvbmVudENoYW5nZSQoKTogT2JzZXJ2YWJsZTxDb21wb25lbnQ+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvbmVudENoYW5nZSQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHJldmVydFRvUHJldmlvdXNWYWx1ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3JldmVydGluZyA9IHRydWU7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLnByZXZpb3VzVmFsdWU7XG4gICAgfVxuXG4gICAgc2V0IHZhbGlkUmVxdWlyZWQoc2V0OiBib29sZWFuKSB7XG4gICAgICAgIHRoaXMuX3ZhbGlkUmVxdWlyZWQgPSBzZXQ7XG4gICAgfVxuXG4gICAgZ2V0IHZhbGlkUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl92YWxpZFJlcXVpcmVkO1xuICAgIH1cblxuICAgIGdldCBzZW5kSW52YWxpZFZhbHVlcygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NlbmRJbnZhbGlkVmFsdWVzO1xuICAgIH1cblxuICAgIHNldCBzZW5kSW52YWxpZFZhbHVlcyh2YWx1ZTogYm9vbGVhbiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fc2VuZEludmFsaWRWYWx1ZXMgPSB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZTtcbiAgICB9XG5cbiAgICBnZXQgd2FpdGluZ0ZvclJlc3BvbnNlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fd2FpdGluZ0ZvclJlc3BvbnNlO1xuICAgIH1cblxuICAgIHNldCB3YWl0aW5nRm9yUmVzcG9uc2UodmFsdWU6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fd2FpdGluZ0ZvclJlc3BvbnNlID0gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIHVwZGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdXBkYXRlLm5leHQoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgdmFsdWVDaGFuZ2VzKCk6IE9ic2VydmFibGU8VD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fdmFsdWUuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgc2V0IHJldmVydGluZyhzZXQ6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fcmV2ZXJ0aW5nID0gc2V0O1xuICAgIH1cblxuICAgIGdldCByZXZlcnRpbmcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9yZXZlcnRpbmc7XG4gICAgfVxuXG4gICAgcHVibGljIGZvY3VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoISF0aGlzLl9pbnB1dCkge1xuICAgICAgICAgICAgdGhpcy5faW5wdXQubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0IGlucHV0KCk6IEVsZW1lbnRSZWYge1xuICAgICAgICByZXR1cm4gdGhpcy5faW5wdXQ7XG4gICAgfVxuXG4gICAgc2V0IGlucHV0KHZhbHVlOiBFbGVtZW50UmVmKSB7XG4gICAgICAgIHRoaXMuX2lucHV0ID0gdmFsdWU7XG4gICAgfVxuXG4gICAgZ2V0IGZvcm1Db250cm9sUmVmKCk6IEZvcm1Db250cm9sIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2Zvcm1Db250cm9sUmVmO1xuICAgIH1cblxuICAgIHNldCBmb3JtQ29udHJvbFJlZihmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpIHtcbiAgICAgICAgdGhpcy5fZm9ybUNvbnRyb2xSZWYgPSBmb3JtQ29udHJvbDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VXBkYXRlT25TdHJhdGVneSgpOiBVcGRhdGVPblN0cmF0ZWd5IHtcbiAgICAgICAgcmV0dXJuIFVwZGF0ZVN0cmF0ZWd5LkJMVVI7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBmdW5jdGlvbiByZXNvbHZlIHR5cGUgb2YgY29tcG9uZW50IGZvciBIVE1MXG4gICAgICogQHJldHVybnMgdHlwZSBvZiBjb21wb25lbnQgaW4gc3RyaW5nXG4gICAgICovXG4gICAgcHVibGljIGdldENvbXBvbmVudFR5cGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29tcG9uZW50Py5uYW1lID8/IERFRkFVTFQ7XG4gICAgfVxuXG4gICAgcHVibGljIGFic3RyYWN0IGdldFR5cGVkQ29tcG9uZW50VHlwZSgpOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgZGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmFsdWUuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fcHJldmlvdXNWYWx1ZS5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl91cGRhdGUuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fdG91Y2guY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fYmxvY2suY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5faW5pdGlhbGl6ZWQkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMubGF5b3V0U3ViamVjdC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyByZWdpc3RlckZvcm1Db250cm9sKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdEYXRhIGZpZWxkIGNhbiBiZSBpbml0aWFsaXplZCBvbmx5IG9uY2UhJ1xuICAgICAgICAgICAgICAgICsgJyBEaXNjb25uZWN0IHRoZSBwcmV2aW91cyBmb3JtIGNvbnRyb2wgYmVmb3JlIGluaXRpYWxpemluZyB0aGUgZGF0YSBmaWVsZCBhZ2FpbiEnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZm9ybUNvbnRyb2xSZWYgPSBmb3JtQ29udHJvbDtcbiAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLnJlc29sdmVGb3JtQ29udHJvbFZhbGlkYXRvcnMoKSk7XG5cbiAgICAgICAgdGhpcy5fZm9ybUNvbnRyb2xWYWx1ZVN1YnNjcmlwdGlvbiA9IGZvcm1Db250cm9sLnZhbHVlQ2hhbmdlcy5waXBlKFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQodGhpcy52YWx1ZUVxdWFsaXR5KVxuICAgICAgICApLnN1YnNjcmliZShuZXdWYWx1ZSA9PiB7XG4gICAgICAgICAgICB0aGlzLl92YWxpZCA9IHRoaXMuX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2wpO1xuICAgICAgICAgICAgdGhpcy52YWx1ZSA9IG5ld1ZhbHVlO1xuICAgICAgICB9KTtcblxuICAgICAgICB0aGlzLl9teVZhbHVlU3Vic2NyaXB0aW9uID0gdGhpcy5fdmFsdWUucGlwZShcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMudmFsdWVFcXVhbGl0eSlcbiAgICAgICAgKS5zdWJzY3JpYmUobmV3VmFsdWUgPT4ge1xuICAgICAgICAgICAgdGhpcy5fdmFsaWQgPSB0aGlzLl9kZXRlcm1pbmVGb3JtQ29udHJvbFZhbGlkaXR5KGZvcm1Db250cm9sKTtcbiAgICAgICAgICAgIGZvcm1Db250cm9sLnNldFZhbHVlKG5ld1ZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMudXBkYXRlRm9ybUNvbnRyb2xTdGF0ZShmb3JtQ29udHJvbCk7XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KHRydWUpO1xuICAgICAgICB0aGlzLl9jaGFuZ2VkID0gZmFsc2U7XG4gICAgICAgIHRoaXMuX3dhaXRpbmdGb3JSZXNwb25zZSA9IGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyBkaXNjb25uZWN0Rm9ybUNvbnRyb2woKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5pbml0aWFsaXplZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2luaXRpYWxpemVkJC5uZXh0KGZhbHNlKTtcbiAgICAgICAgY29uc3Qgc3VicyA9IFtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZVN1YnNjcmlwdGlvbixcbiAgICAgICAgICAgIHRoaXMuX2Jsb2NrU3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgdGhpcy5fdG91Y2hTdWJzY3JpcHRpb24sXG4gICAgICAgICAgICB0aGlzLl9mb3JtQ29udHJvbFZhbHVlU3Vic2NyaXB0aW9uLFxuICAgICAgICAgICAgdGhpcy5fbXlWYWx1ZVN1YnNjcmlwdGlvblxuICAgICAgICBdO1xuICAgICAgICBmb3IgKGNvbnN0IHN1YiBvZiBzdWJzKSB7XG4gICAgICAgICAgICBpZiAoc3ViKSB7XG4gICAgICAgICAgICAgICAgc3ViLnVuc3Vic2NyaWJlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgdXBkYXRlRm9ybUNvbnRyb2xTdGF0ZShmb3JtQ29udHJvbDogRm9ybUNvbnRyb2wpOiB2b2lkIHtcbiAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgICAgIHRoaXMuc3Vic2NyaWJlVG9Jbm5lclN1YmplY3RzKGZvcm1Db250cm9sKTtcbiAgICAgICAgdGhpcy51cGRhdGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgc3Vic2NyaWJlVG9Jbm5lclN1YmplY3RzKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCkge1xuICAgICAgICB0aGlzLl91cGRhdGVTdWJzY3JpcHRpb24gPSB0aGlzLl91cGRhdGUuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMudmFsaWRSZXF1aXJlZCA9IHRoaXMuY2FsY3VsYXRlVmFsaWRpdHkodHJ1ZSwgZm9ybUNvbnRyb2wpO1xuICAgICAgICAgICAgdGhpcy52YWxpZCA9IHRoaXMuY2FsY3VsYXRlVmFsaWRpdHkoZmFsc2UsIGZvcm1Db250cm9sKTtcbiAgICAgICAgICAgIGlmICghdGhpcy5fYmxvY2tlZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPyBmb3JtQ29udHJvbC5kaXNhYmxlKCkgOiBmb3JtQ29udHJvbC5lbmFibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fYmxvY2tTdWJzY3JpcHRpb24gPSB0aGlzLl9ibG9jay5zdWJzY3JpYmUoYm9vbCA9PiB7XG4gICAgICAgICAgICBpZiAoYm9vbCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2Jsb2NrZWQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sLmRpc2FibGUoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYmxvY2tlZCA9IGZhbHNlO1xuICAgICAgICAgICAgICAgIHRoaXMuZGlzYWJsZWQgPyBmb3JtQ29udHJvbC5kaXNhYmxlKCkgOiBmb3JtQ29udHJvbC5lbmFibGUoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgdGhpcy5fdG91Y2hTdWJzY3JpcHRpb24gPSB0aGlzLl90b3VjaC5zdWJzY3JpYmUoYm9vbCA9PiB7XG4gICAgICAgICAgICBpZiAoYm9vbCkge1xuICAgICAgICAgICAgICAgIGZvcm1Db250cm9sLm1hcmtBc1RvdWNoZWQoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgZm9ybUNvbnRyb2wubWFya0FzVW50b3VjaGVkKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvbXB1dGVzIHdoZXRoZXIgdGhlIEZvcm1Db250cm9sIHNpIHZhbGlkLlxuICAgICAqIEBwYXJhbSBmb3JtQ29udHJvbCBjaGVjayBmb3JtIGNvbnRyb2xcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sKTogYm9vbGVhbiB7XG4gICAgICAgIC8vIGRpc2FibGVkIGZvcm0gY29udHJvbHMgYXJlIG1hcmtlZCBhcyBpbnZhbGlkIGFzIHBlciBXM0Mgc3RhbmRhcmQsIHRoaXMgc29sdmVzIHRoYXQgcHJvYmxlbVxuICAgICAgICByZXR1cm4gZm9ybUNvbnRyb2wuZGlzYWJsZWQgfHwgZm9ybUNvbnRyb2wudmFsaWQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ3JlYXRlcyBWYWxpZGF0b3Igb2JqZWN0cyBiYXNlZCBvbiBmaWVsZCBgYmVoYXZpb3JgLiBPbmx5IHRoZSBgcmVxdWlyZWRgIGJlaGF2aW9yIGlzIHJlc29sdmVkIGJ5IGRlZmF1bHQuXG4gICAgICogUmVxdWlyZWQgaXMgcmVzb2x2ZWQgYXMgYFZhbGlkYXRvcnMucmVxdWlyZWRgLlxuICAgICAqIElmIHlvdSBuZWVkIHRvIHJlc29sdmUgYWRkaXRpb25hbCBWYWxpZGF0b3JzIG9yIG5lZWQgYSBkaWZmZXJlbnQgcmVzb2x1dGlvbiBmb3IgdGhlIGByZXF1aXJlZGAgVmFsaWRhdG9yIG92ZXJyaWRlIHRoaXMgbWV0aG9kLlxuICAgICAqXG4gICAgICogU2VlIHtAbGluayBCZWhhdmlvcn0gZm9yIGluZm9ybWF0aW9uIGFib3V0IGRhdGEgZmllbGQgYmVoYXZpb3IuXG4gICAgICpcbiAgICAgKiBTZWUge0BsaW5rIFZhbGlkYXRvckZufSBhbmQge0BsaW5rIFZhbGlkYXRvcnN9IGZvciBpbmZvcm1hdGlvbiBhYm91dCBWYWxpZGF0b3JzLlxuICAgICAqXG4gICAgICogQWx0ZXJuYXRpdmVseSBzZWUgW0Zvcm0gVmFsaWRhdGlvbiBndWlkZV17QGxpbmsgaHR0cHM6Ly9hbmd1bGFyLmlvL2d1aWRlL2Zvcm0tdmFsaWRhdGlvbiNyZWFjdGl2ZS1mb3JtLXZhbGlkYXRpb259IGZyb20gQW5ndWxhci5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZUZvcm1Db250cm9sVmFsaWRhdG9ycygpOiBBcnJheTxWYWxpZGF0b3JGbj4ge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBbXTtcblxuICAgICAgICBpZiAodGhpcy5iZWhhdmlvci5yZXF1aXJlZCkge1xuICAgICAgICAgICAgcmVzdWx0LnB1c2goVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy52YWxpZGF0aW9ucykge1xuICAgICAgICAgICAgaWYgKHRoaXMuX3ZhbGlkYXRvcnMpIHtcbiAgICAgICAgICAgICAgICByZXN1bHQucHVzaCguLi50aGlzLl92YWxpZGF0b3JzKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fdmFsaWRhdG9ycyA9IHRoaXMucmVzb2x2ZVZhbGlkYXRpb25zKCk7XG4gICAgICAgICAgICAgICAgcmVzdWx0LnB1c2goLi4udGhpcy5fdmFsaWRhdG9ycyk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzdWx0O1xuICAgIH1cblxuICAgIHB1YmxpYyByZXBsYWNlVmFsaWRhdGlvbnModmFsaWRhdGlvbnM6IEFycmF5PFZhbGlkYXRpb24+KSB7XG4gICAgICAgIHRoaXMuY2xlYXJWYWxpZGF0b3JzKCk7XG4gICAgICAgIHRoaXMudmFsaWRhdGlvbnMgPSB2YWxpZGF0aW9ucztcbiAgICB9XG5cbiAgICBwdWJsaWMgY2xlYXJWYWxpZGF0b3JzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92YWxpZGF0b3JzID0gbnVsbDtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgcmVzb2x2ZVZhbGlkYXRpb25zKCk6IEFycmF5PFZhbGlkYXRvckZuPiB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIHR3byB2YWx1ZXMgb2YgdGhlIGRhdGEgZmllbGQgYXJlIGVxdWFsLlxuICAgICAqXG4gICAgICogYGEgPT09IGJgIGVxdWFsaXR5IGlzIHVzZWQgYnkgZGVmYXVsdC4gSWYgeW91IHdhbnQgZGlmZmVyZW50IGJlaGF2aW9yIG92ZXJyaWRlIHRoaXMgbWV0aG9kLlxuICAgICAqIEBwYXJhbSBhIC0gZmlyc3QgY29tcGFyZWQgdmFsdWVcbiAgICAgKiBAcGFyYW0gYiAtIHNlY29uZCBjb21wYXJlZCB2YWx1ZVxuICAgICAqL1xuICAgIHByb3RlY3RlZCB2YWx1ZUVxdWFsaXR5KGE6IFQsIGI6IFQpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIGEgPT09IGIgfHwgKE51bWJlci5pc05hTihhKSAmJiBOdW1iZXIuaXNOYU4oYikpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFVwZGF0ZXMgdGhlIHN0YXRlIG9mIHRoaXMgZGF0YSBmaWVsZCBtb2RlbCBvYmplY3QuXG4gICAgICogQHBhcmFtIGNoYW5nZSAtIG9iamVjdCBkZXNjcmliaW5nIHRoZSBjaGFuZ2VzIC0gcmV0dXJuZWQgZnJvbSBiYWNrZW5kXG4gICAgICpcbiAgICAgKiBBbHNvIHNlZSB7QGxpbmsgQ2hhbmdlZEZpZWxkc30uXG4gICAgICovXG4gICAgcHVibGljIGFwcGx5Q2hhbmdlKGNoYW5nZTogQ2hhbmdlKTogdm9pZCB7XG4gICAgICAgIE9iamVjdC5rZXlzKGNoYW5nZSkuZm9yRWFjaChjaGFuZ2VkQXR0cmlidXRlID0+IHtcbiAgICAgICAgICAgIHN3aXRjaCAoY2hhbmdlZEF0dHJpYnV0ZSkge1xuICAgICAgICAgICAgICAgIGNhc2UgJ3ZhbHVlJzpcbiAgICAgICAgICAgICAgICAgICAgdGhpcy52YWx1ZSA9IGNoYW5nZVtjaGFuZ2VkQXR0cmlidXRlXTtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAnYmVoYXZpb3InOlxuICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKHRoaXMuYmVoYXZpb3IsIGNoYW5nZVtjaGFuZ2VkQXR0cmlidXRlXSk7XG4gICAgICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlKCk7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBhdHRyaWJ1dGUgJyR7Y2hhbmdlZEF0dHJpYnV0ZX0nIGluIGNoYW5nZSBvYmplY3RgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlc29sdmVBcHBlYXJhbmNlKGNvbmZpZzogQ29uZmlndXJhdGlvblNlcnZpY2UpOiB2b2lkIHtcbiAgICAgICAgbGV0IGFwcGVhcmFuY2UgPSAnb3V0bGluZSc7XG4gICAgICAgIGlmICh0aGlzLmxheW91dCAmJiB0aGlzLmxheW91dC5hcHBlYXJhbmNlKSB7XG4gICAgICAgICAgICBhcHBlYXJhbmNlID0gdGhpcy5sYXlvdXQuYXBwZWFyYW5jZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGRhdGFmaWVsZENvbmZpZ3VyYXRpb24gPSBjb25maWcuZ2V0RGF0YWZpZWxkQ29uZmlndXJhdGlvbigpO1xuICAgICAgICAgICAgaWYgKGRhdGFmaWVsZENvbmZpZ3VyYXRpb24gJiYgZGF0YWZpZWxkQ29uZmlndXJhdGlvbi5hcHBlYXJhbmNlKSB7XG4gICAgICAgICAgICAgICAgYXBwZWFyYW5jZSA9IGRhdGFmaWVsZENvbmZpZ3VyYXRpb24uYXBwZWFyYW5jZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICB0aGlzLm1hdGVyaWFsQXBwZWFyYW5jZSA9IGFwcGVhcmFuY2U7XG5cbiAgICAgICAgLyogTGlzdGVuIGZvciBjaGFuZ2VzIG9mIGxheW91dCBpbiBmdXR1cmUgKi9cbiAgICAgICAgdGhpcy5sYXlvdXRTdWJqZWN0LnN1YnNjcmliZShsYXlvdXQgPT4ge1xuICAgICAgICAgICAgaWYgKHRoaXMubGF5b3V0ICYmIHRoaXMubGF5b3V0LmFwcGVhcmFuY2UpIHtcbiAgICAgICAgICAgICAgICB0aGlzLm1hdGVyaWFsQXBwZWFyYW5jZSA9IHRoaXMubGF5b3V0LmFwcGVhcmFuY2U7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNvbHZlUHJldlZhbHVlKHZhbHVlOiBUKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl92YWx1ZS5nZXRWYWx1ZSgpICE9PSB1bmRlZmluZWRcbiAgICAgICAgICAgICYmIHRoaXMuX3ZhbHVlLmdldFZhbHVlKCkgIT09IHZhbHVlKSB7XG4gICAgICAgICAgICB0aGlzLl9wcmV2aW91c1ZhbHVlLm5leHQodGhpcy5fdmFsdWUuZ2V0VmFsdWUoKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2FsY3VsYXRlVmFsaWRpdHkoZm9yVmFsaWRSZXF1aXJlZDogYm9vbGVhbiwgZm9ybUNvbnRyb2w6IEZvcm1Db250cm9sKTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IGlzRGlzYWJsZWQgPSBmb3JtQ29udHJvbC5kaXNhYmxlZDtcbiAgICAgICAgaWYgKGZvclZhbGlkUmVxdWlyZWQpIHtcbiAgICAgICAgICAgIGZvcm1Db250cm9sLmVuYWJsZSgpO1xuICAgICAgICB9XG4gICAgICAgIGZvcm1Db250cm9sLmNsZWFyVmFsaWRhdG9ycygpO1xuICAgICAgICBpZiAoZm9yVmFsaWRSZXF1aXJlZCkge1xuICAgICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLmJlaGF2aW9yLnJlcXVpcmVkID8gW1ZhbGlkYXRvcnMucmVxdWlyZWRdIDogW10pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9ybUNvbnRyb2wuc2V0VmFsaWRhdG9ycyh0aGlzLnJlc29sdmVGb3JtQ29udHJvbFZhbGlkYXRvcnMoKSk7XG4gICAgICAgIH1cbiAgICAgICAgZm9ybUNvbnRyb2wudXBkYXRlVmFsdWVBbmRWYWxpZGl0eSgpO1xuICAgICAgICBjb25zdCB2YWxpZGl0eSA9IHRoaXMuX2RldGVybWluZUZvcm1Db250cm9sVmFsaWRpdHkoZm9ybUNvbnRyb2wpO1xuICAgICAgICBpc0Rpc2FibGVkID8gZm9ybUNvbnRyb2wuZGlzYWJsZSgpIDogZm9ybUNvbnRyb2wuZW5hYmxlKCk7XG4gICAgICAgIHJldHVybiB2YWxpZGl0eTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNJbnZhbGlkKGZvcm1Db250cm9sOiBGb3JtQ29udHJvbCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gIWZvcm1Db250cm9sLmRpc2FibGVkICYmICFmb3JtQ29udHJvbC52YWxpZCAmJiBmb3JtQ29udHJvbC50b3VjaGVkO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIENvcGllcyB0aGUgbGF5b3V0IHNldHRpbmdzIGludG8gdGhlIGxvY2FsIGxheW91dC5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVzZXRMb2NhbExheW91dCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2xheW91dCAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLl9sb2NhbExheW91dCA9IHsuLi50aGlzLl9sYXlvdXR9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fbG9jYWxMYXlvdXQgPSB1bmRlZmluZWQ7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
|
@@ -9,11 +9,22 @@ export class AbstractMultichoiceCaseRefComponent extends AbstractCaseRefBaseFiel
|
|
|
9
9
|
this.caseViewType = caseViewType;
|
|
10
10
|
}
|
|
11
11
|
ngAfterViewInit() {
|
|
12
|
-
this.
|
|
13
|
-
this.dataField.updatedChoices.subscribe(() => {
|
|
14
|
-
this.
|
|
12
|
+
this.callCreateFilter();
|
|
13
|
+
this._sub = this.dataField.updatedChoices.subscribe(() => {
|
|
14
|
+
this.callCreateFilter();
|
|
15
|
+
});
|
|
16
|
+
this._subComp = this.dataField.componentChange$().subscribe(() => {
|
|
17
|
+
this.callCreateFilter();
|
|
15
18
|
});
|
|
16
19
|
}
|
|
20
|
+
callCreateFilter() {
|
|
21
|
+
this.createFilter(this.dataField.choices.length > 0 ? this.dataField.choices.map(value => value.key) : '');
|
|
22
|
+
}
|
|
23
|
+
ngOnDestroy() {
|
|
24
|
+
super.ngOnDestroy();
|
|
25
|
+
this._sub.unsubscribe();
|
|
26
|
+
this._subComp.unsubscribe();
|
|
27
|
+
}
|
|
17
28
|
}
|
|
18
29
|
AbstractMultichoiceCaseRefComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractMultichoiceCaseRefComponent, deps: [{ token: i0.Injector }, { token: i0.Type }, { token: DATA_FIELD_PORTAL_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
19
30
|
AbstractMultichoiceCaseRefComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractMultichoiceCaseRefComponent, selector: "ncc-abstract-case-ref-default", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
@@ -29,4 +40,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
29
40
|
type: Inject,
|
|
30
41
|
args: [DATA_FIELD_PORTAL_DATA]
|
|
31
42
|
}] }]; } });
|
|
32
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
43
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbXVsdGljaG9pY2UtY2FzZXJlZi1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL211bHRpY2hvaWNlLWZpZWxkL211bHRpY2hvaWNlLWNhc2VyZWYtZmllbGQvYWJzdHJhY3QtbXVsdGljaG9pY2UtY2FzZXJlZi1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixTQUFTLEVBQUUsTUFBTSxFQUF1QixRQUFRLEVBQU8sTUFBTSxlQUFlLENBQUM7QUFDcEcsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLHFEQUFxRCxDQUFDO0FBR2hILE9BQU8sRUFBQyxpQ0FBaUMsRUFBQyxNQUFNLG1FQUFtRSxDQUFDOztBQU9wSCxNQUFNLE9BQWdCLG1DQUFvQyxTQUFRLGlDQUFtRDtJQU1qSCxZQUFnQyxRQUFrQixFQUNsQixZQUF1QixFQUNXLG1CQUEwRDtRQUN4SCxLQUFLLENBQUMsUUFBUSxFQUFFLFlBQVksRUFBRSxtQkFBbUIsQ0FBQyxDQUFDO1FBSHZCLGFBQVEsR0FBUixRQUFRLENBQVU7UUFDbEIsaUJBQVksR0FBWixZQUFZLENBQVc7SUFHdkQsQ0FBQztJQUVELGVBQWU7UUFDWCxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDckQsSUFBSSxDQUFDLGdCQUFnQixFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQzdELElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVTLGdCQUFnQjtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDL0csQ0FBQztJQUVELFdBQVc7UUFDUCxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDcEIsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN4QixJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O2lJQTlCaUIsbUNBQW1DLDhEQVFYLHNCQUFzQjtxSEFSOUMsbUNBQW1DLDRGQUYzQyxFQUFFOzRGQUVNLG1DQUFtQztrQkFKeEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsK0JBQStCO29CQUN6QyxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBUzBCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsc0JBQXNCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEluamVjdCwgSW5qZWN0b3IsIE9uRGVzdHJveSwgT3B0aW9uYWwsIFR5cGV9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge0RBVEFfRklFTERfUE9SVEFMX0RBVEEsIERhdGFGaWVsZFBvcnRhbERhdGF9IGZyb20gXCIuLi8uLi9tb2RlbHMvZGF0YS1maWVsZC1wb3J0YWwtZGF0YS1pbmplY3Rpb24tdG9rZW5cIjtcbmltcG9ydCB7Q29tcG9uZW50UG9ydGFsfSBmcm9tIFwiQGFuZ3VsYXIvY2RrL3BvcnRhbFwiO1xuaW1wb3J0IHtNdWx0aWNob2ljZUZpZWxkfSBmcm9tICcuLi9tb2RlbHMvbXVsdGljaG9pY2UtZmllbGQnO1xuaW1wb3J0IHtBYnN0cmFjdENhc2VSZWZCYXNlRmllbGRDb21wb25lbnR9IGZyb20gJy4uLy4uL2Nhc2UtcmVmLWZpZWxkL21vZGVsL2Fic3RyYWN0LWNhc2UtcmVmLWJhc2UtZmllbGQtY29tcG9uZW50JztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtY2FzZS1yZWYtZGVmYXVsdCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0TXVsdGljaG9pY2VDYXNlUmVmQ29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RDYXNlUmVmQmFzZUZpZWxkQ29tcG9uZW50PE11bHRpY2hvaWNlRmllbGQ+IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcblxuICAgIHB1YmxpYyBjb21wb25lbnRQb3J0YWw6IENvbXBvbmVudFBvcnRhbDxhbnk+O1xuICAgIHByb3RlY3RlZCBfc3ViOiBTdWJzY3JpcHRpb247XG4gICAgcHJvdGVjdGVkIF9zdWJDb21wOiBTdWJzY3JpcHRpb247XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIGNhc2VWaWV3VHlwZTogVHlwZTxhbnk+LFxuICAgICAgICAgICAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KERBVEFfRklFTERfUE9SVEFMX0RBVEEpIGRhdGFGaWVsZFBvcnRhbERhdGE6IERhdGFGaWVsZFBvcnRhbERhdGE8TXVsdGljaG9pY2VGaWVsZD4pIHtcbiAgICAgICAgc3VwZXIoaW5qZWN0b3IsIGNhc2VWaWV3VHlwZSwgZGF0YUZpZWxkUG9ydGFsRGF0YSk7XG4gICAgfVxuXG4gICAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmNhbGxDcmVhdGVGaWx0ZXIoKTtcbiAgICAgICAgdGhpcy5fc3ViID0gdGhpcy5kYXRhRmllbGQudXBkYXRlZENob2ljZXMuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2FsbENyZWF0ZUZpbHRlcigpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fc3ViQ29tcCA9IHRoaXMuZGF0YUZpZWxkLmNvbXBvbmVudENoYW5nZSQoKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5jYWxsQ3JlYXRlRmlsdGVyKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjYWxsQ3JlYXRlRmlsdGVyKCkge1xuICAgICAgICB0aGlzLmNyZWF0ZUZpbHRlcih0aGlzLmRhdGFGaWVsZC5jaG9pY2VzLmxlbmd0aCA+IDAgPyB0aGlzLmRhdGFGaWVsZC5jaG9pY2VzLm1hcCh2YWx1ZSA9PiB2YWx1ZS5rZXkpIDogJycpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgICAgICB0aGlzLl9zdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgICAgdGhpcy5fc3ViQ29tcC51bnN1YnNjcmliZSgpO1xuICAgIH1cbn1cbiJdfQ==
|
|
@@ -11,11 +11,21 @@ export class AbstractStringCollectionDefaultFieldComponent extends AbstractBaseD
|
|
|
11
11
|
this.separatorKeysCodes = [ENTER];
|
|
12
12
|
}
|
|
13
13
|
ngOnInit() {
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
this.checkProperties();
|
|
15
|
+
this.subComp = this.dataField.componentChange$().subscribe(() => {
|
|
16
|
+
this.checkProperties();
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
checkProperties() {
|
|
20
|
+
this.checkPropertyForSeparator(this.dataField?.component?.properties?.semicolon === 'true', SEMICOLON);
|
|
21
|
+
this.checkPropertyForSeparator(this.dataField?.component?.properties?.comma === 'true', COMMA);
|
|
22
|
+
}
|
|
23
|
+
checkPropertyForSeparator(propertyBoolean, separator) {
|
|
24
|
+
if (propertyBoolean && !this.separatorKeysCodes.includes(separator)) {
|
|
25
|
+
this.separatorKeysCodes.push(separator);
|
|
16
26
|
}
|
|
17
|
-
if (this.
|
|
18
|
-
this.separatorKeysCodes.
|
|
27
|
+
else if (this.separatorKeysCodes.includes(separator)) {
|
|
28
|
+
this.separatorKeysCodes = this.separatorKeysCodes.filter(value => value !== separator);
|
|
19
29
|
}
|
|
20
30
|
}
|
|
21
31
|
remove(value) {
|
|
@@ -57,4 +67,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
57
67
|
type: ViewChild,
|
|
58
68
|
args: ['input']
|
|
59
69
|
}] } });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3Qtc3RyaW5nLWNvbGxlY3Rpb24tZGVmYXVsdC1maWVsZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZXRncmlmLWNvbXBvbmVudHMtY29yZS9zcmMvbGliL2RhdGEtZmllbGRzL3N0cmluZy1jb2xsZWN0aW9uLWZpZWxkL3N0cmluZy1jb2xsZWN0aW9uLWRlZmF1bHQtZmllbGQvYWJzdHJhY3Qtc3RyaW5nLWNvbGxlY3Rpb24tZGVmYXVsdC1maWVsZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBYyxNQUFNLEVBQVUsUUFBUSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQUMsOEJBQThCLEVBQUMsTUFBTSx5REFBeUQsQ0FBQztBQUV2RyxPQUFPLEVBQUMsc0JBQXNCLEVBQXNCLE1BQU0scURBQXFELENBQUM7QUFFaEgsT0FBTyxFQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFDLE1BQU0sdUJBQXVCLENBQUM7OztBQVE5RCxNQUFNLE9BQWdCLDZDQUE4QyxTQUFRLDhCQUFxRDtJQU03SCxZQUFnQyxVQUE0QixFQUNKLG1CQUErRDtRQUNuSCxLQUFLLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUZDLGVBQVUsR0FBVixVQUFVLENBQWtCO1FBSHJELHVCQUFrQixHQUFhLENBQUMsS0FBSyxDQUFDLENBQUM7SUFNOUMsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDdkIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLGdCQUFnQixFQUFFLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUM1RCxJQUFJLENBQUMsZUFBZSxFQUFFLENBQUE7UUFDMUIsQ0FBQyxDQUFDLENBQUE7SUFDTixDQUFDO0lBRUQsZUFBZTtRQUNYLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsU0FBUyxLQUFLLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQTtRQUN0RyxJQUFJLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssS0FBSyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUE7SUFDbEcsQ0FBQztJQUVTLHlCQUF5QixDQUFDLGVBQXdCLEVBQUUsU0FBaUI7UUFDM0UsSUFBSSxlQUFlLElBQUksQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxFQUFFO1lBQ2pFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7U0FDM0M7YUFBTSxJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDcEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLEtBQUssU0FBUyxDQUFDLENBQUM7U0FDMUY7SUFDTCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQWE7UUFDaEIsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRWxELElBQUksS0FBSyxJQUFJLENBQUMsRUFBRTtZQUNaLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzlDLFdBQVcsQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQztTQUN0QztJQUNMLENBQUM7SUFFRCxHQUFHLENBQUMsS0FBcUM7UUFDckMsTUFBTSxLQUFLLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxFQUFFLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUM7UUFFbkUsSUFBSSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7WUFDZixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxLQUFLLElBQUksSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssS0FBSyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQTtZQUN4SCxNQUFNLFdBQVcsR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUM5QyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3hCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxHQUFHLFdBQVcsQ0FBQztZQUNuQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ3ZDO2FBQU07WUFDSCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO1NBQ3ZDO0lBQ0wsQ0FBQzs7MklBckRpQiw2Q0FBNkMsa0RBTy9CLHNCQUFzQjsrSEFQcEMsNkNBQTZDLDJNQUZyRCxFQUFFOzRGQUVNLDZDQUE2QztrQkFKbEUsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsOENBQThDO29CQUN4RCxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBUWdCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsc0JBQXNCOzRDQUxsQyxLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgRWxlbWVudFJlZiwgSW5qZWN0LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3Q2hpbGR9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtBYnN0cmFjdEJhc2VEYXRhRmllbGRDb21wb25lbnR9IGZyb20gJy4uLy4uL2Jhc2UtY29tcG9uZW50L2Fic3RyYWN0LWJhc2UtZGF0YS1maWVsZC5jb21wb25lbnQnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7REFUQV9GSUVMRF9QT1JUQUxfREFUQSwgRGF0YUZpZWxkUG9ydGFsRGF0YX0gZnJvbSAnLi4vLi4vbW9kZWxzL2RhdGEtZmllbGQtcG9ydGFsLWRhdGEtaW5qZWN0aW9uLXRva2VuJztcbmltcG9ydCB7U3RyaW5nQ29sbGVjdGlvbkZpZWxkfSBmcm9tICcuLi9tb2RlbHMvc3RyaW5nLWNvbGxlY3Rpb24tZmllbGQnO1xuaW1wb3J0IHtFTlRFUiwgQ09NTUEsIFNFTUlDT0xPTn0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7TWF0Q2hpcElucHV0RXZlbnR9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NoaXBzJztcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3Qtc3RyaW5nLWNvbGxlY3Rpb24tZGVmYXVsdC1maWVsZCcsXG4gICAgdGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdFN0cmluZ0NvbGxlY3Rpb25EZWZhdWx0RmllbGRDb21wb25lbnQgZXh0ZW5kcyBBYnN0cmFjdEJhc2VEYXRhRmllbGRDb21wb25lbnQ8U3RyaW5nQ29sbGVjdGlvbkZpZWxkPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgICBAVmlld0NoaWxkKCdpbnB1dCcpIGlucHV0OiBFbGVtZW50UmVmO1xuICAgIHB1YmxpYyBzZXBhcmF0b3JLZXlzQ29kZXM6IG51bWJlcltdID0gW0VOVEVSXTtcbiAgICBwcm90ZWN0ZWQgc3ViQ29tcDogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCBfdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoREFUQV9GSUVMRF9QT1JUQUxfREFUQSkgZGF0YUZpZWxkUG9ydGFsRGF0YTogRGF0YUZpZWxkUG9ydGFsRGF0YTxTdHJpbmdDb2xsZWN0aW9uRmllbGQ+KSB7XG4gICAgICAgIHN1cGVyKGRhdGFGaWVsZFBvcnRhbERhdGEpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICB0aGlzLmNoZWNrUHJvcGVydGllcygpO1xuICAgICAgICB0aGlzLnN1YkNvbXAgPSB0aGlzLmRhdGFGaWVsZC5jb21wb25lbnRDaGFuZ2UkKCkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2hlY2tQcm9wZXJ0aWVzKClcbiAgICAgICAgfSlcbiAgICB9XG5cbiAgICBjaGVja1Byb3BlcnRpZXMoKSB7XG4gICAgICAgIHRoaXMuY2hlY2tQcm9wZXJ0eUZvclNlcGFyYXRvcih0aGlzLmRhdGFGaWVsZD8uY29tcG9uZW50Py5wcm9wZXJ0aWVzPy5zZW1pY29sb24gPT09ICd0cnVlJywgU0VNSUNPTE9OKVxuICAgICAgICB0aGlzLmNoZWNrUHJvcGVydHlGb3JTZXBhcmF0b3IodGhpcy5kYXRhRmllbGQ/LmNvbXBvbmVudD8ucHJvcGVydGllcz8uY29tbWEgPT09ICd0cnVlJywgQ09NTUEpXG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGNoZWNrUHJvcGVydHlGb3JTZXBhcmF0b3IocHJvcGVydHlCb29sZWFuOiBib29sZWFuLCBzZXBhcmF0b3I6IG51bWJlcikge1xuICAgICAgICBpZiAocHJvcGVydHlCb29sZWFuICYmICF0aGlzLnNlcGFyYXRvcktleXNDb2Rlcy5pbmNsdWRlcyhzZXBhcmF0b3IpKSB7XG4gICAgICAgICAgICB0aGlzLnNlcGFyYXRvcktleXNDb2Rlcy5wdXNoKHNlcGFyYXRvcik7XG4gICAgICAgIH0gZWxzZSBpZiAodGhpcy5zZXBhcmF0b3JLZXlzQ29kZXMuaW5jbHVkZXMoc2VwYXJhdG9yKSkge1xuICAgICAgICAgICAgdGhpcy5zZXBhcmF0b3JLZXlzQ29kZXMgPSB0aGlzLnNlcGFyYXRvcktleXNDb2Rlcy5maWx0ZXIodmFsdWUgPT4gdmFsdWUgIT09IHNlcGFyYXRvcik7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZW1vdmUodmFsdWU6IHN0cmluZyk6IHZvaWQge1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZGF0YUZpZWxkLnZhbHVlLmluZGV4T2YodmFsdWUpO1xuXG4gICAgICAgIGlmIChpbmRleCA+PSAwKSB7XG4gICAgICAgICAgICBjb25zdCBjaG9pY2VBcnJheSA9IFsuLi50aGlzLmRhdGFGaWVsZC52YWx1ZV07XG4gICAgICAgICAgICBjaG9pY2VBcnJheS5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICAgICAgdGhpcy5kYXRhRmllbGQudmFsdWUgPSBjaG9pY2VBcnJheTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGFkZChldmVudDogTWF0Q2hpcElucHV0RXZlbnQgfCBGb2N1c0V2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHZhbHVlID0gZXZlbnRbJ3ZhbHVlJ10gPz8gKGV2ZW50Wyd0YXJnZXQnXT8uWyd2YWx1ZSddID8/ICcnKTtcblxuICAgICAgICBpZiAodmFsdWU/LnRyaW0oKSkge1xuICAgICAgICAgICAgdGhpcy5kYXRhRmllbGQudmFsdWUgPSAodGhpcy5kYXRhRmllbGQudmFsdWUgPT09IG51bGwgfHwgdGhpcy5kYXRhRmllbGQudmFsdWUgPT09IHVuZGVmaW5lZCkgPyBbXSA6IHRoaXMuZGF0YUZpZWxkLnZhbHVlXG4gICAgICAgICAgICBjb25zdCBjaG9pY2VBcnJheSA9IFsuLi50aGlzLmRhdGFGaWVsZC52YWx1ZV07XG4gICAgICAgICAgICBjaG9pY2VBcnJheS5wdXNoKHZhbHVlKTtcbiAgICAgICAgICAgIHRoaXMuZGF0YUZpZWxkLnZhbHVlID0gY2hvaWNlQXJyYXk7XG4gICAgICAgICAgICB0aGlzLmlucHV0Lm5hdGl2ZUVsZW1lbnQudmFsdWUgPSAnJztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuaW5wdXQubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
|
|
@@ -45,7 +45,7 @@ export class AbstractUserDefaultFieldComponent extends AbstractBaseDataFieldComp
|
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
deleteUser() {
|
|
48
|
-
this.dataField.value =
|
|
48
|
+
this.dataField.value = null;
|
|
49
49
|
}
|
|
50
50
|
getCutProperty(i18nLabel) {
|
|
51
51
|
if (this.labelWidth !== i18nLabel.offsetWidth) {
|
|
@@ -70,4 +70,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
70
70
|
type: Inject,
|
|
71
71
|
args: [DATA_FIELD_PORTAL_DATA]
|
|
72
72
|
}] }]; } });
|
|
73
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
73
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtdXNlci1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvZGF0YS1maWVsZHMvdXNlci1maWVsZC91c2VyLWRlZmF1bHQtZmllbGQvYWJzdHJhY3QtdXNlci1kZWZhdWx0LWZpZWxkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFHMUQsT0FBTyxFQUFDLHNCQUFzQixFQUFzQixNQUFNLHFEQUFxRCxDQUFDO0FBSWhILE9BQU8sRUFBQyw4QkFBOEIsRUFBQyxNQUFNLHlEQUF5RCxDQUFDOzs7OztBQU92RyxNQUFNLE9BQWdCLGlDQUFrQyxTQUFRLDhCQUF5QztJQUtyRzs7Ozs7OztPQU9HO0lBQ0gsWUFBZ0MsT0FBa0IsRUFDbEIsU0FBMEIsRUFDMUIsVUFBNEIsRUFDTSxtQkFBbUQ7UUFDakgsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFKQyxZQUFPLEdBQVAsT0FBTyxDQUFXO1FBQ2xCLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQzFCLGVBQVUsR0FBVixVQUFVLENBQWtCO0lBRzVELENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSSxrQkFBa0IsQ0FBQyxTQUFTO1FBQy9CLElBQUksYUFBYSxHQUFHLEtBQUssQ0FBQztRQUMxQixNQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDM0MsVUFBVSxFQUFFLG1CQUFtQjtZQUMvQixJQUFJLEVBQUUsRUFBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUF5QjtTQUMzRixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3ZDLElBQUksTUFBTSxDQUFDLElBQUksRUFBRTtnQkFDYixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsSUFBaUIsQ0FBQztnQkFDaEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxtQkFBbUIsQ0FDOUIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsaUNBQWlDLEVBQUUsRUFBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsUUFBUSxFQUFDLENBQUMsRUFDckcsWUFBWSxDQUNmLENBQUM7Z0JBQ0YsYUFBYSxHQUFHLElBQUksQ0FBQzthQUN4QjtpQkFBTSxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLG1CQUFtQixDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLG9DQUFvQyxDQUFDLENBQUMsQ0FBQzthQUNyRztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFVBQVU7UUFDYixJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUM7SUFDaEMsQ0FBQztJQUVNLGNBQWMsQ0FBQyxTQUFTO1FBQzNCLElBQUksSUFBSSxDQUFDLFVBQVUsS0FBSyxTQUFTLENBQUMsV0FBVyxFQUFFO1lBQzNDLElBQUksQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDLFdBQVcsQ0FBQztZQUN4QyxNQUFNLGVBQWUsR0FBRyxlQUFlLEdBQUcsU0FBUyxDQUFDLFdBQVcsR0FBRyxDQUFDLEdBQUcsQ0FBQyxHQUFHLEtBQUssQ0FBQztZQUNoRixJQUFJLENBQUMsV0FBVyxHQUFHLDRDQUE0QyxlQUFlLE9BQU8sZUFBZSx5QkFBeUIsQ0FBQztTQUNqSTtRQUNELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUM1QixDQUFDOzsrSEExRGlCLGlDQUFpQywwR0FnQlQsc0JBQXNCO21IQWhCOUMsaUNBQWlDLDhGQUZ6QyxFQUFFOzRGQUVNLGlDQUFpQztrQkFKdEQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsaUNBQWlDO29CQUMzQyxRQUFRLEVBQUUsRUFBRTtpQkFDZjs7MEJBaUIwQixRQUFROzswQkFBSSxNQUFNOzJCQUFDLHNCQUFzQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIE9wdGlvbmFsfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtTbmFja0JhclNlcnZpY2V9IGZyb20gXCIuLi8uLi8uLi9zbmFjay1iYXIvc2VydmljZXMvc25hY2stYmFyLnNlcnZpY2VcIjtcbmltcG9ydCB7VHJhbnNsYXRlU2VydmljZX0gZnJvbSBcIkBuZ3gtdHJhbnNsYXRlL2NvcmVcIjtcbmltcG9ydCB7REFUQV9GSUVMRF9QT1JUQUxfREFUQSwgRGF0YUZpZWxkUG9ydGFsRGF0YX0gZnJvbSBcIi4uLy4uL21vZGVscy9kYXRhLWZpZWxkLXBvcnRhbC1kYXRhLWluamVjdGlvbi10b2tlblwiO1xuaW1wb3J0IHtVc2VyTGlzdEluamVjdGVkRGF0YX0gZnJvbSBcIi4uLy4uLy4uL3NpZGUtbWVudS9jb250ZW50LWNvbXBvbmVudHMvdXNlci1hc3NpZ24vbW9kZWwvdXNlci1saXN0LWluamVjdGVkLWRhdGFcIjtcbmltcG9ydCB7VXNlclZhbHVlfSBmcm9tIFwiLi4vbW9kZWxzL3VzZXItdmFsdWVcIjtcbmltcG9ydCB7VXNlckZpZWxkfSBmcm9tIFwiLi4vbW9kZWxzL3VzZXItZmllbGRcIjtcbmltcG9ydCB7QWJzdHJhY3RCYXNlRGF0YUZpZWxkQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vYmFzZS1jb21wb25lbnQvYWJzdHJhY3QtYmFzZS1kYXRhLWZpZWxkLmNvbXBvbmVudFwiO1xuaW1wb3J0IHtNYXREaWFsb2d9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpYWxvZyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LXVzZXItZGVmYXVsdC1maWVsZCcsXG4gICAgdGVtcGxhdGU6ICcnXG59KVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEFic3RyYWN0VXNlckRlZmF1bHRGaWVsZENvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0QmFzZURhdGFGaWVsZENvbXBvbmVudDxVc2VyRmllbGQ+e1xuXG4gICAgcHJpdmF0ZSBsYWJlbFdpZHRoOiBudW1iZXI7XG4gICAgcHVibGljIGN1dFByb3BlcnR5OiBzdHJpbmc7XG5cbiAgICAvKipcbiAgICAgKiBJbmplY3Qgc2VydmljZXMuXG4gICAgICogQHBhcmFtIF9kaWFsb2cgU2VydmljZSB0byBvcGVuIGFuZCBjbG9zZSBbVXNlckFzc2lnbkRpYWxvZ0NvbXBvbmVudF17QGxpbmsgVXNlckFzc2lnbkRpYWxvZ0NvbXBvbmVudH0gd2l0aCB1c2VyIGRhdGEuXG4gICAgICogQHBhcmFtIF9zbmFja2JhciBTZXJ2aWNlIHRvIGRpc3BsYXlpbmcgaW5mb3JtYXRpb24gdG8gdGhlIHVzZXIuXG4gICAgICogQHBhcmFtIF90cmFuc2xhdGUgU2VydmljZSB0byB0cmFuc2xhdGUgdGV4dC5cbiAgICAgKiBAcGFyYW0gaW5mb3JtQWJvdXRJbnZhbGlkRGF0YSB3aGV0aGVyIHRoZSBiYWNrZW5kIHNob3VsZCBiZSBub3RpZmllZCBhYm91dCBpbnZhbGlkIHZhbHVlcy5cbiAgICAgKiBPcHRpb24gaW5qZWN0ZWQgdHJvdWdoIGBOQUVfSU5GT1JNX0FCT1VUX0lOVkFMSURfREFUQWAgSW5qZWN0aW9uVG9rZW5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIF9kaWFsb2c6IE1hdERpYWxvZyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9zbmFja2JhcjogU25hY2tCYXJTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX3RyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChEQVRBX0ZJRUxEX1BPUlRBTF9EQVRBKSBkYXRhRmllbGRQb3J0YWxEYXRhOiBEYXRhRmllbGRQb3J0YWxEYXRhPFVzZXJGaWVsZD4pIHtcbiAgICAgICAgc3VwZXIoZGF0YUZpZWxkUG9ydGFsRGF0YSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2FsbCBhZnRlciBjbGljayBvbiB1c2VyIGZpZWxkIGJ1dHRvbi5cbiAgICAgKlxuICAgICAqIE9wZW4gW1VzZXJBc3NpZ25Db21wb25lbnRde0BsaW5rIEFic3RyYWN0VXNlckFzc2lnbkNvbXBvbmVudH0gaW4gc2lkZSBtZW51IHdpdGggZGF0YSByZXByZXNlbnRzIHByZXNlbGVjdGVkIHVzZXIgZnJvbSBiYWNrZW5kLlxuICAgICAqXG4gICAgICogQWZ0ZXIgY2xvc2Ugc2lkZSBtZW51LCB0aGUgc25hY2tiYXIgaW5mbyB3aWxsIGJlIGRpc3BsYXllZCBlaXRoZXIgZm9yIHRoZSB1bnNlbGVjdGVkIHVzZXIgb3IgdGhlIHNlbGVjdGVkIG9uZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgc2VsZWN0QWJzdHJhY3RVc2VyKGNvbXBvbmVudCkge1xuICAgICAgICBsZXQgdmFsdWVSZXR1cm5lZCA9IGZhbHNlO1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLl9kaWFsb2cub3Blbihjb21wb25lbnQsIHtcbiAgICAgICAgICAgIHBhbmVsQ2xhc3M6IFwiZGlhbG9nLXJlc3BvbnNpdmVcIixcbiAgICAgICAgICAgIGRhdGE6IHtyb2xlczogdGhpcy5kYXRhRmllbGQucm9sZXMsIHZhbHVlOiB0aGlzLmRhdGFGaWVsZC52YWx1ZX0gYXMgVXNlckxpc3RJbmplY3RlZERhdGEsXG4gICAgICAgIH0pO1xuICAgICAgICBkaWFsb2dSZWYuYWZ0ZXJDbG9zZWQoKS5zdWJzY3JpYmUoJGV2ZW50ID0+IHtcbiAgICAgICAgICAgIGlmICgkZXZlbnQuZGF0YSkge1xuICAgICAgICAgICAgICAgIHRoaXMuZGF0YUZpZWxkLnZhbHVlID0gJGV2ZW50LmRhdGEgYXMgVXNlclZhbHVlO1xuICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrYmFyLm9wZW5HZW5lcmljU25hY2tCYXIoXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdkYXRhRmllbGQuc25hY2tCYXIudXNlckFzc2lnbmVkJywge3VzZXJOYW1lOiB0aGlzLmRhdGFGaWVsZC52YWx1ZS5mdWxsTmFtZX0pLFxuICAgICAgICAgICAgICAgICAgICAnaG93X3RvX3JlZydcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgICAgIHZhbHVlUmV0dXJuZWQgPSB0cnVlO1xuICAgICAgICAgICAgfSBlbHNlIGlmICghdmFsdWVSZXR1cm5lZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrYmFyLm9wZW5XYXJuaW5nU25hY2tCYXIodGhpcy5fdHJhbnNsYXRlLmluc3RhbnQoJ2RhdGFGaWVsZC5zbmFja0Jhci5ub3RTZWxlY3RlZFVzZXInKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHB1YmxpYyBkZWxldGVVc2VyKCkge1xuICAgICAgICB0aGlzLmRhdGFGaWVsZC52YWx1ZSA9IG51bGw7XG4gICAgfVxuXG4gICAgcHVibGljIGdldEN1dFByb3BlcnR5KGkxOG5MYWJlbCk6IHN0cmluZyB7XG4gICAgICAgIGlmICh0aGlzLmxhYmVsV2lkdGggIT09IGkxOG5MYWJlbC5vZmZzZXRXaWR0aCkge1xuICAgICAgICAgICAgdGhpcy5sYWJlbFdpZHRoID0gaTE4bkxhYmVsLm9mZnNldFdpZHRoO1xuICAgICAgICAgICAgY29uc3QgY2FsY3VsYXRlZFdpZHRoID0gJ2NhbGMoMC41ZW0gKyAnICsgaTE4bkxhYmVsLm9mZnNldFdpZHRoIC8gNCAqIDMgKyAncHgpJztcbiAgICAgICAgICAgIHRoaXMuY3V0UHJvcGVydHkgPSBgcG9seWdvbigwIDAsIDAgMTAwJSwgMTAwJSAxMDAlLCAxMDAlIDAlLCAke2NhbGN1bGF0ZWRXaWR0aH0gMCwgJHtjYWxjdWxhdGVkV2lkdGh9IDYlLCAwLjVlbSA2JSwgMC41ZW0gMClgO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0aGlzLmN1dFByb3BlcnR5O1xuICAgIH1cblxufVxuIl19
|