@netgrif/components-core 6.2.1 → 6.2.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.
Files changed (29) hide show
  1. package/commons/schema.d.ts +1 -0
  2. package/esm2020/assets/i18n/de.json +9 -8
  3. package/esm2020/assets/i18n/en.json +2 -1
  4. package/esm2020/assets/i18n/sk.json +2 -1
  5. package/esm2020/commons/schema.mjs +1 -1
  6. package/esm2020/lib/authorization/permission/access.service.mjs +2 -2
  7. package/esm2020/lib/authorization/role/role-guard.service.mjs +36 -11
  8. package/esm2020/lib/data-fields/file-field/abstract-file-field.component.mjs +6 -3
  9. package/esm2020/lib/data-fields/file-list-field/abstract-file-list-field.component.mjs +5 -2
  10. package/esm2020/lib/data-fields/number-field/currency-number-field/abstract-currency-number-field.component.mjs +3 -2
  11. package/esm2020/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.mjs +7 -4
  12. package/esm2020/lib/resources/engine-endpoint/task-resource.service.mjs +3 -3
  13. package/esm2020/lib/search/models/category/case/case-dataset.mjs +7 -4
  14. package/esm2020/lib/search/search-operand-input-component/abstract-search-operand-input.component.mjs +3 -3
  15. package/esm2020/lib/side-menu/content-components/new-case/abstract-new-case.component.mjs +22 -11
  16. package/esm2020/lib/task-content/field-component-resolver/abstract-field-component-resolver.component.mjs +2 -3
  17. package/fesm2015/netgrif-components-core.mjs +96 -47
  18. package/fesm2015/netgrif-components-core.mjs.map +1 -1
  19. package/fesm2020/netgrif-components-core.mjs +96 -47
  20. package/fesm2020/netgrif-components-core.mjs.map +1 -1
  21. package/lib/authorization/role/role-guard.service.d.ts +2 -1
  22. package/lib/data-fields/number-field/currency-number-field/abstract-currency-number-field.component.d.ts +1 -0
  23. package/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.d.ts +1 -1
  24. package/lib/resources/engine-endpoint/task-resource.service.d.ts +2 -1
  25. package/lib/search/search-operand-input-component/abstract-search-operand-input.component.d.ts +1 -1
  26. package/package.json +1 -1
  27. package/src/assets/i18n/de.json +9 -8
  28. package/src/assets/i18n/en.json +2 -1
  29. package/src/assets/i18n/sk.json +2 -1
@@ -103,16 +103,27 @@ export class AbstractNewCaseComponent {
103
103
  };
104
104
  this._caseResourceService.createCase(newCase)
105
105
  .subscribe((response) => {
106
- this._snackBarService.openSuccessSnackBar(response.outcome.message === undefined
107
- ? this._translate.instant('side-menu.new-case.createCase') + ' ' + newCase.title
108
- : response.outcome.message);
109
- this._sideMenuControl.close({
110
- opened: false,
111
- message: response.outcome.message === undefined
112
- ? 'Confirm new case setup'
113
- : response.outcome.message,
114
- data: response.outcome.aCase
115
- });
106
+ if (!!response.outcome) {
107
+ this._snackBarService.openSuccessSnackBar(response.outcome.message === undefined
108
+ ? this._translate.instant('side-menu.new-case.createCase') + ' ' + newCase.title
109
+ : response.outcome.message);
110
+ this._sideMenuControl.close({
111
+ opened: false,
112
+ message: response.outcome.message === undefined
113
+ ? 'Confirm new case setup'
114
+ : response.outcome.message,
115
+ data: response.outcome.aCase
116
+ });
117
+ }
118
+ else if (!!response.error) {
119
+ this._snackBarService.openWarningSnackBar(this._translate.instant('side-menu.new-case.createCaseError') + ' ' + newCase.title);
120
+ this._sideMenuControl.close({
121
+ opened: false,
122
+ message: response.error === undefined
123
+ ? 'Confirm new case setup'
124
+ : response.error
125
+ });
126
+ }
116
127
  }, error => this._snackBarService.openErrorSnackBar(error.message ? error.message : error));
117
128
  }
118
129
  }
@@ -241,4 +252,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
241
252
  type: ViewChild,
242
253
  args: ['stepper2']
243
254
  }] } });
244
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbmV3LWNhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL25ldy1jYXNlL2Fic3RyYWN0LW5ldy1jYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBYSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFjLFdBQVcsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxhQUFhLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFFN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFLdEUsT0FBTyxFQUFDLE1BQU0sRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7O0FBZTVCLE1BQU0sT0FBZ0Isd0JBQXdCO0lBdUIxQyxZQUErRCxnQkFBaUMsRUFDaEUsWUFBeUIsRUFDekIsZ0JBQWlDLEVBQ2pDLG9CQUF5QyxFQUN6QyxlQUErQixFQUMvQixVQUE0QjtRQUxHLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDaEUsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDekIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQTFCNUQsdUJBQWtCLEdB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T0FBTyxDQUFDO1FBQzFHLElBQUksYUFBYSxLQUFLLFNBQVMsRUFBRTtZQUM3QixJQUFJLENBQUMsVUFBVSxHQUFHLEVBQUUsQ0FBQztTQUN4QjtJQUNMLENBQUM7SUFFRCxVQUFVLENBQUMsU0FBYztRQUNyQixJQUFJLFNBQVMsS0FBSyxJQUFJLElBQUksU0FBUyxDQUFDLEtBQUssS0FBSyxTQUFTLEVBQUU7WUFDckQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztTQUN4QjtJQUNMLENBQUM7O3NIQTFQaUIsd0JBQXdCLGtCQXVCWixxQkFBcUI7MEdBdkJqQyx3QkFBd0IsK1VBRmhDLEVBQUU7NEZBRU0sd0JBQXdCO2tCQUo3QyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSx1QkFBdUI7b0JBQ2pDLFFBQVEsRUFBRSxFQUFFO2lCQUNmOzswQkF3QjBCLE1BQU07MkJBQUMscUJBQXFCO2tNQVg3QixPQUFPO3NCQUE1QixTQUFTO3VCQUFDLFNBQVM7Z0JBRUcsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVO2dCQUNFLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIE9uRGVzdHJveSwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1N0ZXBwZXJTZWxlY3Rpb25FdmVudH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3N0ZXBwZXInO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7U25hY2tCYXJTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zbmFjay1iYXIvc2VydmljZXMvc25hY2stYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHtOQUVfU0lERV9NRU5VX0NPTlRST0x9IGZyb20gJy4uLy4uL3NpZGUtbWVudS1pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHtTaWRlTWVudUNvbnRyb2x9IGZyb20gJy4uLy4uL21vZGVscy9zaWRlLW1lbnUtY29udHJvbCc7XG5pbXBvcnQge0Nhc2VSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvY2FzZS1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7TmV3Q2FzZUluamVjdGlvbkRhdGF9IGZyb20gJy4vbW9kZWwvbmV3LWNhc2UtaW5qZWN0aW9uLWRhdGEnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7SG90a2V5LCBIb3RrZXlzU2VydmljZX0gZnJvbSAnYW5ndWxhcjItaG90a2V5cyc7XG5pbXBvcnQge01hdFRvb2xiYXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHNlbXZlciBmcm9tICdzZW12ZXInO1xuaW1wb3J0IHtDcmVhdGVDYXNlRXZlbnRPdXRjb21lfSBmcm9tICcuLi8uLi8uLi9ldmVudC9tb2RlbC9ldmVudC1vdXRjb21lcy9jYXNlLW91dGNvbWVzL2NyZWF0ZS1jYXNlLWV2ZW50LW91dGNvbWUnO1xuaW1wb3J0IHtFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2V9IGZyb20gJy4uLy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge01hdE9wdGlvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmludGVyZmFjZSBGb3JtIHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIHZpZXdWYWx1ZTogc3RyaW5nO1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LW5ldy1jYXNlJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3ROZXdDYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIHByb2Nlc3NGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgdGl0bGVGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgbmV0VmVyc2lvbjogc3RyaW5nO1xuXG4gICAgb3B0aW9uczogQXJyYXk8Rm9ybT4gPSBbXTtcbiAgICBjb2xvcnM6IEFycmF5PEZvcm0+ID0gW1xuICAgICAgICB7dmFsdWU6ICdwYW5lbC1wcmltYXJ5LWljb24nLCB2aWV3VmFsdWU6ICdQcmltYXJ5J30sXG4gICAgICAgIHt2YWx1ZTogJ3BhbmVsLWFjY2VudC1pY29uJywgdmlld1ZhbHVlOiAnQWNjZW50J30sXG4gICAgXTtcbiAgICBmaWx0ZXJlZE9wdGlvbnMkOiBPYnNlcnZhYmxlPEFycmF5PEZvcm0+PjtcbiAgICBAVmlld0NoaWxkKCd0b29sYmFyJykgdG9vbGJhcjogTWF0VG9vbGJhcjtcblxuICAgIEBWaWV3Q2hpbGQoJ3N0ZXBwZXIxJykgc3RlcHBlcjE7XG4gICAgQFZpZXdDaGlsZCgnc3RlcHBlcjInKSBzdGVwcGVyMjtcblxuICAgIHByb3RlY3RlZCBfb3B0aW9ucyQ6IFJlcGxheVN1YmplY3Q8QXJyYXk8Rm9ybT4+O1xuICAgIHByb3RlY3RlZCBfaW5qZWN0ZWREYXRhOiBOZXdDYXNlSW5qZWN0aW9uRGF0YTtcbiAgICBwcm90ZWN0ZWQgX2hhc011bHRpcGxlTmV0cyQ6IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9ub3RJbml0aWFsaXplZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgICBwcml2YXRlIF9hbGxvd2VkTmV0c1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKEBJbmplY3QoTkFFX1NJREVfTUVOVV9DT05UUk9MKSBwcm90ZWN0ZWQgX3NpZGVNZW51Q29udHJvbDogU2lkZU1lbnVDb250cm9sLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9zbmFja0JhclNlcnZpY2U6IFNuYWNrQmFyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jYXNlUmVzb3VyY2VTZXJ2aWNlOiBDYXNlUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2hvdGtleXNTZXJ2aWNlOiBIb3RrZXlzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICAgICAgaWYgKHRoaXMuX3NpZGVNZW51Q29udHJvbC5kYXRhKSB7XG4gICAgICAgICAgICB0aGlzLl9pbmplY3RlZERhdGEgPSB0aGlzLl9zaWRlTWVudUNvbnRyb2wuZGF0YSBhcyBOZXdDYXNlSW5qZWN0aW9uRGF0YTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuX2luamVjdGVkRGF0YSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZU5vTmV0cygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2hvdGtleXNTZXJ2aWNlLmFkZChuZXcgSG90a2V5KCdlbnRlcicsIChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4gPT4ge1xuICAgICAgICAgICAgdGhpcy5uZXh0U3RlcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJCA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgICAgICB0aGlzLl9ub3RJbml0aWFsaXplZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICAgICAgICB0aGlzLl9vcHRpb25zJCA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuXG4gICAgICAgIHRoaXMuX2FsbG93ZWROZXRzU3Vic2NyaXB0aW9uID0gdGhpcy5faW5qZWN0ZWREYXRhLmFsbG93ZWROZXRzJC5waXBlKFxuICAgICAgICAgICAgbWFwKG5ldHMgPT4gbmV0cy5tYXAocGV0cmlOZXQgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogcGV0cmlOZXQuc3RyaW5nSWQsXG4gICAgICAgICAgICAgICAgdmlld1ZhbHVlOiBwZXRyaU5ldC50aXRsZSxcbiAgICAgICAgICAgICAgICB2ZXJzaW9uOiBwZXRyaU5ldC52ZXJzaW9uXG4gICAgICAgICAgICB9KSkpLFxuICAgICAgICAgICAgbWFwKG5ldHMgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fc2lkZU1lbnVDb250cm9sLmFsbFZlcnNpb25FbmFibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlbW92ZU9sZFZlcnNpb25zKG5ldHMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXRzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKG9wdGlvbnMgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlTm9OZXRzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgICAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJC5uZXh0KG9wdGlvbnMubGVuZ3RoID4gMSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApLnN1YnNjcmliZShvcHRpb25zID0+IHtcbiAgICAgICAgICAgIHRoaXMuX29wdGlvbnMkLm5leHQob3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX25vdEluaXRpYWxpemVkJC5jbG9zZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub3RJbml0aWFsaXplZCQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbm90SW5pdGlhbGl6ZWQkLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX29wdGlvbnMkLCB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoJycpKV0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoc291cmNlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHNvdXJjZXNbMF07XG4gICAgICAgICAgICAgICAgY29uc3QgaW5wdXQgPSB0eXBlb2Ygc291cmNlc1sxXSA9PT0gJ3N0cmluZycgfHwgc291cmNlc1sxXSA9PT0gbnVsbCA/IHNvdXJjZXNbMV0gOiBzb3VyY2VzWzFdLnZpZXdWYWx1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaW5wdXQgPyB0aGlzLl9maWx0ZXIoaW5wdXQsIG9wdGlvbnMpIDogb3B0aW9ucy5zbGljZSgpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoZmlsdGVyZWRPcHRpb25zID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyZWRPcHRpb25zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC5zZXRWYWx1ZShmaWx0ZXJlZE9wdGlvbnNbMF0sIHtlbWl0RXZlbnQ6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9hbGxvd2VkTmV0c1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzTXVsdGlwbGVOZXRzJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc011bHRpcGxlTmV0cyQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBub3RJbml0aWFsaXplZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ub3RJbml0aWFsaXplZCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0ZXBDaGFuZ2UoJGV2ZW50OiBTdGVwcGVyU2VsZWN0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2lkZU1lbnVDb250cm9sLnB1Ymxpc2goe1xuICAgICAgICAgICAgb3BlbmVkOiB0cnVlLFxuICAgICAgICAgICAgbWVzc2FnZTogJ0FjdGl2ZSBzdGVwIGhhcyBjaGFuZ2VkJyxcbiAgICAgICAgICAgIGRhdGE6ICRldmVudFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkaXNwbGF5Rm4ocHJvY2VzczogRm9ybSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzICYmIHByb2Nlc3Mudmlld1ZhbHVlID8gcHJvY2Vzcy52aWV3VmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlTmV3Q2FzZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudGl0bGVGb3JtQ29udHJvbC52YWxpZCB8fCAhdGhpcy5pc0Nhc2VUaXRsZVJlcXVpcmVkKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0Nhc2UgPSB7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudGl0bGVGb3JtQ29udHJvbC52YWx1ZSA9PT0gJycgPyBudWxsIDogdGhpcy50aXRsZUZvcm1Db250cm9sLnZhbHVlLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAncGFuZWwtcHJpbWFyeS1pY29uJyxcbiAgICAgICAgICAgICAgICBuZXRJZDogdGhpcy5vcHRpb25zLmxlbmd0aCA9PT0gMSA/IHRoaXMub3B0aW9uc1swXS52YWx1ZSA6IHRoaXMucHJvY2Vzc0Zvcm1Db250cm9sLnZhbHVlLnZhbHVlXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB0aGlzLl9jYXNlUmVzb3VyY2VTZXJ2aWNlLmNyZWF0ZUNhc2UobmV3Q2FzZSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2U6IEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5fc25hY2tCYXJTZXJ2aWNlLm9wZW5TdWNjZXNzU25hY2tCYXIocmVzcG9uc2Uub3V0Y29tZS5tZXNzYWdlID09PSB1bmRlZmluZWRcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA/IHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdzaWRlLW1lbnUubmV3LWNhc2UuY3JlYXRlQ2FzZScpICsgJyAnICsgbmV3Q2FzZS50aXRsZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogcmVzcG9uc2Uub3V0Y29tZS5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3NpZGVNZW51Q29udHJvbC5jbG9zZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BlbmVkOiBmYWxzZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXNwb25zZS5vdXRjb21lLm1lc3NhZ2UgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdDb25maXJtIG5ldyBjYXNlIHNldHVwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA6IHJlc3BvbnNlLm91dGNvbWUubWVzc2FnZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhOiAocmVzcG9uc2Uub3V0Y29tZSBhcyBDcmVhdGVDYXNlRXZlbnRPdXRjb21lKS5hQ2FzZVxuICAgICAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgICAgIGVycm9yID0+IHRoaXMuX3NuYWNrQmFyU2VydmljZS5vcGVuRXJyb3JTbmFja0JhcihlcnJvci5tZXNzYWdlID8gZXJyb3IubWVzc2FnZSA6IGVycm9yKVxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBGdW5jdGlvbiB0byBmaWx0ZXIgb3V0IG1hdGNobGVzcyBvcHRpb25zIHdpdGhvdXQgYWNjZW50IGFuZCBjYXNlLXNlbnNpdGl2ZSBkaWZmZXJlbmNlc1xuICAgICAqIEBwYXJhbSB2YWx1ZSB0byBjb21wYXJlIG1hdGNoaW5nIG9wdGlvbnNcbiAgICAgKiBAcGFyYW0gb3B0aW9ucyB0aGF0IHNob3VsZCBiZSBmaWx0ZXJlZFxuICAgICAqIEByZXR1cm4gIHJldHVybiBtYXRjaGVkIG9wdGlvbnNcbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX2ZpbHRlcih2YWx1ZTogc3RyaW5nLCBvcHRpb25zOiBBcnJheTxGb3JtPik6IEFycmF5PEZvcm0+IHtcbiAgICAgICAgY29uc3QgZmlsdGVyVmFsdWUgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpLm5vcm1hbGl6ZSgnTkZEJykucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgJycpO1xuXG4gICAgICAgIHJldHVybiBvcHRpb25zLmZpbHRlcihvcHRpb24gPT4gb3B0aW9uLnZpZXdWYWx1ZS50b0xvd2VyQ2FzZSgpLm5vcm1hbGl6ZSgnTkZEJylcbiAgICAgICAgICAgIC5yZXBsYWNlKC9bXFx1MDMwMC1cXHUwMzZmXS9nLCAnJykuaW5kZXhPZihmaWx0ZXJWYWx1ZSkgPT09IDApO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBjbG9zZU5vTmV0cygpIHtcbiAgICAgICAgdGhpcy5fc25hY2tCYXJTZXJ2aWNlLm9wZW5FcnJvclNuYWNrQmFyKHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdzaWRlLW1lbnUubmV3LWNhc2Uubm9OZXRzJykpO1xuICAgICAgICB0aGlzLl9zaWRlTWVudUNvbnRyb2wuY2xvc2Uoe1xuICAgICAgICAgICAgb3BlbmVkOiBmYWxzZVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBuZXh0U3RlcCgpIHtcbiAgICAgICAgaWYgKHRoaXMuc3RlcHBlcjEpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnN0ZXBwZXIxLnNlbGVjdGVkSW5kZXggPT09IDEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU5ld0Nhc2UoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGVwcGVyMS5uZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMuc3RlcHBlcjIpIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnN0ZXBwZXIyLnNlbGVjdGVkSW5kZXggPT09IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNyZWF0ZU5ld0Nhc2UoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5zdGVwcGVyMi5uZXh0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aXRsZVNob3J0ZW5pbmcoKSB7XG4gICAgICAgIGxldCBzaXplO1xuICAgICAgICBpZiAodGhpcy50b29sYmFyICYmIHRoaXMudG9vbGJhci5fZWxlbWVudFJlZiAmJiB0aGlzLnRvb2xiYXIuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCAmJlxuICAgICAgICAgICAgdGhpcy50b29sYmFyLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGgpIHtcbiAgICAgICAgICAgIHN3aXRjaCAodGhpcy50b29sYmFyLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGgpIHtcbiAgICAgICAgICAgICAgICBjYXNlIDI5NjpcbiAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDIyO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDQ5NjpcbiAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDQyO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBjYXNlIDI0NjpcbiAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDE4O1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgICAgICAgICAgICBzaXplID0gMzI7XG4gICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgc2l6ZSA9IDMyO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgY2F6ZSA9IHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdzaWRlLW1lbnUubmV3LWNhc2UuY2FzZScpO1xuICAgICAgICBjb25zdCBuYW1lID0gdHlwZW9mIHRoaXMucHJvY2Vzc0Zvcm1Db250cm9sLnZhbHVlID09PSAnc3RyaW5nJyB8fCB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC52YWx1ZSA9PT0gbnVsbCA/XG4gICAgICAgICAgICB1bmRlZmluZWQgOiB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC52YWx1ZS52aWV3VmFsdWU7XG4gICAgICAgIGNvbnN0IHRpdGxlID0gbmFtZSA9PT0gdW5kZWZpbmVkID8gY2F6ZSA6IGNhemUgKyAnIC0gJyArIG5hbWU7XG4gICAgICAgIGlmICh0aXRsZS5sZW5ndGggPiBzaXplKSB7XG4gICAgICAgICAgICBjb25zdCB0bXAgPSB0aXRsZS5zbGljZSgwLCBzaXplKTtcbiAgICAgICAgICAgIHJldHVybiB0bXAgKyAnLi4uJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdGl0bGU7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSByZW1vdmVPbGRWZXJzaW9ucyhvcHRpb25zOiBBcnJheTxGb3JtPik6IEFycmF5PEZvcm0+IHtcbiAgICAgICAgY29uc3QgdGVtcE5ldHMgPSBPYmplY3QuYXNzaWduKFtdLCBvcHRpb25zKTtcbiAgICAgICAgY29uc3QgcGV0cmlOZXRJZHMgPSBuZXcgU2V0KG9wdGlvbnMubWFwKGZvcm0gPT4gZm9ybS52YWx1ZSkpO1xuICAgICAgICBjb25zdCBuZXdlc3ROZXRzID0gbmV3IEFycmF5PEZvcm0+KCk7XG5cbiAgICAgICAgZm9yIChjb25zdCB2YWx1ZSBvZiBwZXRyaU5ldElkcykge1xuICAgICAgICAgICAgbGV0IGN1cnJlbnQ6IEZvcm0gPSB7dmFsdWUsIHZlcnNpb246ICcxLjAuMCcsIHZpZXdWYWx1ZTogJyd9O1xuICAgICAgICAgICAgZm9yIChjb25zdCBuZXQgb2YgdGVtcE5ldHMpIHtcbiAgICAgICAgICAgICAgICBpZiAodmFsdWUgPT09IG5ldC52YWx1ZSAmJiAhc2VtdmVyLmx0KG5ldC52ZXJzaW9uLCBjdXJyZW50LnZlcnNpb24pKSB7XG4gICAgICAgICAgICAgICAgICAgIGN1cnJlbnQgPSBuZXQ7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgbmV3ZXN0TmV0cy5wdXNoKGN1cnJlbnQpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBuZXdlc3ROZXRzO1xuICAgIH1cblxuICAgIGlzQ2FzZVRpdGxlRW5hYmxlZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhKHRoaXMuX2luamVjdGVkRGF0YT8ubmV3Q2FzZUNyZWF0aW9uQ29uZmlndXJhdGlvbj8uZW5hYmxlQ2FzZVRpdGxlID8/IHRydWUpO1xuICAgIH1cblxuICAgIGlzQ2FzZVRpdGxlUmVxdWlyZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzQ2FzZVRpdGxlRW5hYmxlZCgpICYmICEhKHRoaXMuX2luamVjdGVkRGF0YT8ubmV3Q2FzZUNyZWF0aW9uQ29uZmlndXJhdGlvbj8uaXNDYXNlVGl0bGVSZXF1aXJlZCA/PyB0cnVlKTtcbiAgICB9XG5cbiAgICBzaG93VmVyc2lvbihvcHRpb246IE1hdE9wdGlvbik6IHZvaWQge1xuICAgICAgICBpZiAob3B0aW9uICE9PSB1bmRlZmluZWQgJiYgb3B0aW9uLnZhbHVlICE9PSB1bmRlZmluZWQgJiYgb3B0aW9uLnZhbHVlLnZlcnNpb24gIT09IHVuZGVmaW5lZClcbiAgICAgICAgICAgIHRoaXMubmV0VmVyc2lvbiA9IG9wdGlvbi52YWx1ZS52ZXJzaW9uO1xuICAgIH1cblxuICAgIGNoZWNrVmVyc2lvbih2aWV3VmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50T3B0aW9uID0gdHlwZW9mIHZpZXdWYWx1ZSA9PT0gJ3N0cmluZycgfHwgdmlld1ZhbHVlID09PSBudWxsID8gdW5kZWZpbmVkIDogdmlld1ZhbHVlLnZlcnNpb247XG4gICAgICAgIGlmIChjdXJyZW50T3B0aW9uID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRoaXMubmV0VmVyc2lvbiA9ICcnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgdG9OZXh0U3RlcCh2aWV3VmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICBpZiAodmlld1ZhbHVlICE9PSBudWxsICYmIHZpZXdWYWx1ZS52YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLnN0ZXBwZXIxLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
255
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtbmV3LWNhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmV0Z3JpZi1jb21wb25lbnRzLWNvcmUvc3JjL2xpYi9zaWRlLW1lbnUvY29udGVudC1jb21wb25lbnRzL25ldy1jYXNlL2Fic3RyYWN0LW5ldy1jYXNlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLE1BQU0sRUFBYSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdEUsT0FBTyxFQUFjLFdBQVcsRUFBRSxVQUFVLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVwRSxPQUFPLEVBQUMsR0FBRyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUMsZUFBZSxFQUFFLGFBQWEsRUFBYyxhQUFhLEVBQWUsTUFBTSxNQUFNLENBQUM7QUFFN0YsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFLdEUsT0FBTyxFQUFDLE1BQU0sRUFBaUIsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7Ozs7Ozs7O0FBZTVCLE1BQU0sT0FBZ0Isd0JBQXdCO0lBdUIxQyxZQUErRCxnQkFBaUMsRUFDaEUsWUFBeUIsRUFDekIsZ0JBQWlDLEVBQ2pDLG9CQUF5QyxFQUN6QyxlQUErQixFQUMvQixVQUE0QjtRQUxHLHFCQUFnQixHQUFoQixnQkFBZ0IsQ0FBaUI7UUFDaEUsaUJBQVksR0FBWixZQUFZLENBQWE7UUFDekIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFpQjtRQUNqQyx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXFCO1FBQ3pDLG9CQUFlLEdBQWYsZUFBZSxDQUFnQjtRQUMvQixlQUFVLEdBQVYsVUFBVSxDQUFrQjtRQTFCNUQsdUJBQWtCLEdB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ZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbmplY3QsIE9uRGVzdHJveSwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7Rm9ybUJ1aWxkZXIsIEZvcm1Db250cm9sLCBWYWxpZGF0b3JzfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQge1N0ZXBwZXJTZWxlY3Rpb25FdmVudH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3N0ZXBwZXInO1xuaW1wb3J0IHttYXAsIHN0YXJ0V2l0aCwgdGFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdCwgY29tYmluZUxhdGVzdCwgT2JzZXJ2YWJsZSwgUmVwbGF5U3ViamVjdCwgU3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcbmltcG9ydCB7U25hY2tCYXJTZXJ2aWNlfSBmcm9tICcuLi8uLi8uLi9zbmFjay1iYXIvc2VydmljZXMvc25hY2stYmFyLnNlcnZpY2UnO1xuaW1wb3J0IHtOQUVfU0lERV9NRU5VX0NPTlRST0x9IGZyb20gJy4uLy4uL3NpZGUtbWVudS1pbmplY3Rpb24tdG9rZW4nO1xuaW1wb3J0IHtTaWRlTWVudUNvbnRyb2x9IGZyb20gJy4uLy4uL21vZGVscy9zaWRlLW1lbnUtY29udHJvbCc7XG5pbXBvcnQge0Nhc2VSZXNvdXJjZVNlcnZpY2V9IGZyb20gJy4uLy4uLy4uL3Jlc291cmNlcy9lbmdpbmUtZW5kcG9pbnQvY2FzZS1yZXNvdXJjZS5zZXJ2aWNlJztcbmltcG9ydCB7TmV3Q2FzZUluamVjdGlvbkRhdGF9IGZyb20gJy4vbW9kZWwvbmV3LWNhc2UtaW5qZWN0aW9uLWRhdGEnO1xuaW1wb3J0IHtUcmFuc2xhdGVTZXJ2aWNlfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7SG90a2V5LCBIb3RrZXlzU2VydmljZX0gZnJvbSAnYW5ndWxhcjItaG90a2V5cyc7XG5pbXBvcnQge01hdFRvb2xiYXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3Rvb2xiYXInO1xuaW1wb3J0IHNlbXZlciBmcm9tICdzZW12ZXInO1xuaW1wb3J0IHtDcmVhdGVDYXNlRXZlbnRPdXRjb21lfSBmcm9tICcuLi8uLi8uLi9ldmVudC9tb2RlbC9ldmVudC1vdXRjb21lcy9jYXNlLW91dGNvbWVzL2NyZWF0ZS1jYXNlLWV2ZW50LW91dGNvbWUnO1xuaW1wb3J0IHtFdmVudE91dGNvbWVNZXNzYWdlUmVzb3VyY2V9IGZyb20gJy4uLy4uLy4uL3Jlc291cmNlcy9pbnRlcmZhY2UvbWVzc2FnZS1yZXNvdXJjZSc7XG5pbXBvcnQge01hdE9wdGlvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY29yZSc7XG5cbmludGVyZmFjZSBGb3JtIHtcbiAgICB2YWx1ZTogc3RyaW5nO1xuICAgIHZpZXdWYWx1ZTogc3RyaW5nO1xuICAgIHZlcnNpb24/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnbmNjLWFic3RyYWN0LW5ldy1jYXNlJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3ROZXdDYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25EZXN0cm95IHtcblxuICAgIHByb2Nlc3NGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgdGl0bGVGb3JtQ29udHJvbCA9IG5ldyBGb3JtQ29udHJvbCgnJywgVmFsaWRhdG9ycy5yZXF1aXJlZCk7XG4gICAgbmV0VmVyc2lvbjogc3RyaW5nO1xuXG4gICAgb3B0aW9uczogQXJyYXk8Rm9ybT4gPSBbXTtcbiAgICBjb2xvcnM6IEFycmF5PEZvcm0+ID0gW1xuICAgICAgICB7dmFsdWU6ICdwYW5lbC1wcmltYXJ5LWljb24nLCB2aWV3VmFsdWU6ICdQcmltYXJ5J30sXG4gICAgICAgIHt2YWx1ZTogJ3BhbmVsLWFjY2VudC1pY29uJywgdmlld1ZhbHVlOiAnQWNjZW50J30sXG4gICAgXTtcbiAgICBmaWx0ZXJlZE9wdGlvbnMkOiBPYnNlcnZhYmxlPEFycmF5PEZvcm0+PjtcbiAgICBAVmlld0NoaWxkKCd0b29sYmFyJykgdG9vbGJhcjogTWF0VG9vbGJhcjtcblxuICAgIEBWaWV3Q2hpbGQoJ3N0ZXBwZXIxJykgc3RlcHBlcjE7XG4gICAgQFZpZXdDaGlsZCgnc3RlcHBlcjInKSBzdGVwcGVyMjtcblxuICAgIHByb3RlY3RlZCBfb3B0aW9ucyQ6IFJlcGxheVN1YmplY3Q8QXJyYXk8Rm9ybT4+O1xuICAgIHByb3RlY3RlZCBfaW5qZWN0ZWREYXRhOiBOZXdDYXNlSW5qZWN0aW9uRGF0YTtcbiAgICBwcm90ZWN0ZWQgX2hhc011bHRpcGxlTmV0cyQ6IFJlcGxheVN1YmplY3Q8Ym9vbGVhbj47XG4gICAgcHJvdGVjdGVkIF9ub3RJbml0aWFsaXplZCQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgICBwcml2YXRlIF9hbGxvd2VkTmV0c1N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gICAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKEBJbmplY3QoTkFFX1NJREVfTUVOVV9DT05UUk9MKSBwcm90ZWN0ZWQgX3NpZGVNZW51Q29udHJvbDogU2lkZU1lbnVDb250cm9sLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2Zvcm1CdWlsZGVyOiBGb3JtQnVpbGRlcixcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9zbmFja0JhclNlcnZpY2U6IFNuYWNrQmFyU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF9jYXNlUmVzb3VyY2VTZXJ2aWNlOiBDYXNlUmVzb3VyY2VTZXJ2aWNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICBwcm90ZWN0ZWQgX2hvdGtleXNTZXJ2aWNlOiBIb3RrZXlzU2VydmljZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdGVjdGVkIF90cmFuc2xhdGU6IFRyYW5zbGF0ZVNlcnZpY2UpIHtcbiAgICAgICAgaWYgKHRoaXMuX3NpZGVNZW51Q29udHJvbC5kYXRhKSB7XG4gICAgICAgICAgICB0aGlzLl9pbmplY3RlZERhdGEgPSB0aGlzLl9zaWRlTWVudUNvbnRyb2wuZGF0YSBhcyBOZXdDYXNlSW5qZWN0aW9uRGF0YTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoIXRoaXMuX2luamVjdGVkRGF0YSkge1xuICAgICAgICAgICAgdGhpcy5jbG9zZU5vTmV0cygpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2hvdGtleXNTZXJ2aWNlLmFkZChuZXcgSG90a2V5KCdlbnRlcicsIChldmVudDogS2V5Ym9hcmRFdmVudCk6IGJvb2xlYW4gPT4ge1xuICAgICAgICAgICAgdGhpcy5uZXh0U3RlcCgpO1xuICAgICAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgICAgICB9KSk7XG5cbiAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJCA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuICAgICAgICB0aGlzLl9ub3RJbml0aWFsaXplZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuICAgICAgICB0aGlzLl9vcHRpb25zJCA9IG5ldyBSZXBsYXlTdWJqZWN0KDEpO1xuXG4gICAgICAgIHRoaXMuX2FsbG93ZWROZXRzU3Vic2NyaXB0aW9uID0gdGhpcy5faW5qZWN0ZWREYXRhLmFsbG93ZWROZXRzJC5waXBlKFxuICAgICAgICAgICAgbWFwKG5ldHMgPT4gbmV0cy5tYXAocGV0cmlOZXQgPT4gKHtcbiAgICAgICAgICAgICAgICB2YWx1ZTogcGV0cmlOZXQuc3RyaW5nSWQsXG4gICAgICAgICAgICAgICAgdmlld1ZhbHVlOiBwZXRyaU5ldC50aXRsZSxcbiAgICAgICAgICAgICAgICB2ZXJzaW9uOiBwZXRyaU5ldC52ZXJzaW9uXG4gICAgICAgICAgICB9KSkpLFxuICAgICAgICAgICAgbWFwKG5ldHMgPT4ge1xuICAgICAgICAgICAgICAgIGlmICghdGhpcy5fc2lkZU1lbnVDb250cm9sLmFsbFZlcnNpb25FbmFibGVkKSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLnJlbW92ZU9sZFZlcnNpb25zKG5ldHMpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBuZXRzO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgdGFwKG9wdGlvbnMgPT4ge1xuICAgICAgICAgICAgICAgIGlmIChvcHRpb25zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmNsb3NlTm9OZXRzKCk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIHRoaXMub3B0aW9ucyA9IG9wdGlvbnM7XG4gICAgICAgICAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJC5uZXh0KG9wdGlvbnMubGVuZ3RoID4gMSk7XG4gICAgICAgICAgICB9KVxuICAgICAgICApLnN1YnNjcmliZShvcHRpb25zID0+IHtcbiAgICAgICAgICAgIHRoaXMuX29wdGlvbnMkLm5leHQob3B0aW9ucyk7XG4gICAgICAgICAgICBpZiAoIXRoaXMuX25vdEluaXRpYWxpemVkJC5jbG9zZWQpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9ub3RJbml0aWFsaXplZCQubmV4dChmYWxzZSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fbm90SW5pdGlhbGl6ZWQkLmNvbXBsZXRlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyZWRPcHRpb25zJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX29wdGlvbnMkLCB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC52YWx1ZUNoYW5nZXMucGlwZShzdGFydFdpdGgoJycpKV0pLnBpcGUoXG4gICAgICAgICAgICBtYXAoc291cmNlcyA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3Qgb3B0aW9ucyA9IHNvdXJjZXNbMF07XG4gICAgICAgICAgICAgICAgY29uc3QgaW5wdXQgPSB0eXBlb2Ygc291cmNlc1sxXSA9PT0gJ3N0cmluZycgfHwgc291cmNlc1sxXSA9PT0gbnVsbCA/IHNvdXJjZXNbMV0gOiBzb3VyY2VzWzFdLnZpZXdWYWx1ZTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaW5wdXQgPyB0aGlzLl9maWx0ZXIoaW5wdXQsIG9wdGlvbnMpIDogb3B0aW9ucy5zbGljZSgpO1xuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICB0YXAoZmlsdGVyZWRPcHRpb25zID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoZmlsdGVyZWRPcHRpb25zLmxlbmd0aCA9PT0gMSkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC5zZXRWYWx1ZShmaWx0ZXJlZE9wdGlvbnNbMF0sIHtlbWl0RXZlbnQ6IGZhbHNlfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5faGFzTXVsdGlwbGVOZXRzJC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9hbGxvd2VkTmV0c1N1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaGFzTXVsdGlwbGVOZXRzJCgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc011bHRpcGxlTmV0cyQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBub3RJbml0aWFsaXplZCQoKTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ub3RJbml0aWFsaXplZCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0ZXBDaGFuZ2UoJGV2ZW50OiBTdGVwcGVyU2VsZWN0aW9uRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2lkZU1lbnVDb250cm9sLnB1Ymxpc2goe1xuICAgICAgICAgICAgb3BlbmVkOiB0cnVlLFxuICAgICAgICAgICAgbWVzc2FnZTogJ0FjdGl2ZSBzdGVwIGhhcyBjaGFuZ2VkJyxcbiAgICAgICAgICAgIGRhdGE6ICRldmVudFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBkaXNwbGF5Rm4ocHJvY2VzczogRm9ybSk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiBwcm9jZXNzICYmIHByb2Nlc3Mudmlld1ZhbHVlID8gcHJvY2Vzcy52aWV3VmFsdWUgOiAnJztcbiAgICB9XG5cbiAgICBwdWJsaWMgY3JlYXRlTmV3Q2FzZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMudGl0bGVGb3JtQ29udHJvbC52YWxpZCB8fCAhdGhpcy5pc0Nhc2VUaXRsZVJlcXVpcmVkKCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG5ld0Nhc2UgPSB7XG4gICAgICAgICAgICAgICAgdGl0bGU6IHRoaXMudGl0bGVGb3JtQ29udHJvbC52YWx1ZSA9PT0gJycgPyBudWxsIDogdGhpcy50aXRsZUZvcm1Db250cm9sLnZhbHVlLFxuICAgICAgICAgICAgICAgIGNvbG9yOiAncGFuZWwtcHJpbWFyeS1pY29uJyxcbiAgICAgICAgICAgICAgICBuZXRJZDogdGhpcy5vcHRpb25zLmxlbmd0aCA9PT0gMSA/IHRoaXMub3B0aW9uc1swXS52YWx1ZSA6IHRoaXMucHJvY2Vzc0Zvcm1Db250cm9sLnZhbHVlLnZhbHVlXG4gICAgICAgICAgICB9O1xuXG4gICAgICAgICAgICB0aGlzLl9jYXNlUmVzb3VyY2VTZXJ2aWNlLmNyZWF0ZUNhc2UobmV3Q2FzZSlcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgICAgICAgICAgICAocmVzcG9uc2U6IEV2ZW50T3V0Y29tZU1lc3NhZ2VSZXNvdXJjZSkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCEhcmVzcG9uc2Uub3V0Y29tZSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5vcGVuU3VjY2Vzc1NuYWNrQmFyKHJlc3BvbnNlLm91dGNvbWUubWVzc2FnZSA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gdGhpcy5fdHJhbnNsYXRlLmluc3RhbnQoJ3NpZGUtbWVudS5uZXctY2FzZS5jcmVhdGVDYXNlJykgKyAnICcgKyBuZXdDYXNlLnRpdGxlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogcmVzcG9uc2Uub3V0Y29tZS5tZXNzYWdlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zaWRlTWVudUNvbnRyb2wuY2xvc2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXNwb25zZS5vdXRjb21lLm1lc3NhZ2UgPT09IHVuZGVmaW5lZFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAnQ29uZmlybSBuZXcgY2FzZSBzZXR1cCdcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDogcmVzcG9uc2Uub3V0Y29tZS5tZXNzYWdlXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YTogKHJlc3BvbnNlLm91dGNvbWUgYXMgQ3JlYXRlQ2FzZUV2ZW50T3V0Y29tZSkuYUNhc2VcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAoISFyZXNwb25zZS5lcnJvcikge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5vcGVuV2FybmluZ1NuYWNrQmFyKHRoaXMuX3RyYW5zbGF0ZS5pbnN0YW50KCdzaWRlLW1lbnUubmV3LWNhc2UuY3JlYXRlQ2FzZUVycm9yJykgKyAnICcgKyBuZXdDYXNlLnRpdGxlKTtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLl9zaWRlTWVudUNvbnRyb2wuY2xvc2Uoe1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGVuZWQ6IGZhbHNlLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtZXNzYWdlOiByZXNwb25zZS5lcnJvciA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA/ICdDb25maXJtIG5ldyBjYXNlIHNldHVwJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgOiByZXNwb25zZS5lcnJvclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgICBlcnJvciA9PiB0aGlzLl9zbmFja0JhclNlcnZpY2Uub3BlbkVycm9yU25hY2tCYXIoZXJyb3IubWVzc2FnZSA/IGVycm9yLm1lc3NhZ2UgOiBlcnJvcilcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogRnVuY3Rpb24gdG8gZmlsdGVyIG91dCBtYXRjaGxlc3Mgb3B0aW9ucyB3aXRob3V0IGFjY2VudCBhbmQgY2FzZS1zZW5zaXRpdmUgZGlmZmVyZW5jZXNcbiAgICAgKiBAcGFyYW0gdmFsdWUgdG8gY29tcGFyZSBtYXRjaGluZyBvcHRpb25zXG4gICAgICogQHBhcmFtIG9wdGlvbnMgdGhhdCBzaG91bGQgYmUgZmlsdGVyZWRcbiAgICAgKiBAcmV0dXJuICByZXR1cm4gbWF0Y2hlZCBvcHRpb25zXG4gICAgICovXG4gICAgcHJvdGVjdGVkIF9maWx0ZXIodmFsdWU6IHN0cmluZywgb3B0aW9uczogQXJyYXk8Rm9ybT4pOiBBcnJheTxGb3JtPiB7XG4gICAgICAgIGNvbnN0IGZpbHRlclZhbHVlID0gdmFsdWUudG9Mb3dlckNhc2UoKS5ub3JtYWxpemUoJ05GRCcpLnJlcGxhY2UoL1tcXHUwMzAwLVxcdTAzNmZdL2csICcnKTtcblxuICAgICAgICByZXR1cm4gb3B0aW9ucy5maWx0ZXIob3B0aW9uID0+IG9wdGlvbi52aWV3VmFsdWUudG9Mb3dlckNhc2UoKS5ub3JtYWxpemUoJ05GRCcpXG4gICAgICAgICAgICAucmVwbGFjZSgvW1xcdTAzMDAtXFx1MDM2Zl0vZywgJycpLmluZGV4T2YoZmlsdGVyVmFsdWUpID09PSAwKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgY2xvc2VOb05ldHMoKSB7XG4gICAgICAgIHRoaXMuX3NuYWNrQmFyU2VydmljZS5vcGVuRXJyb3JTbmFja0Jhcih0aGlzLl90cmFuc2xhdGUuaW5zdGFudCgnc2lkZS1tZW51Lm5ldy1jYXNlLm5vTmV0cycpKTtcbiAgICAgICAgdGhpcy5fc2lkZU1lbnVDb250cm9sLmNsb3NlKHtcbiAgICAgICAgICAgIG9wZW5lZDogZmFsc2VcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmV4dFN0ZXAoKSB7XG4gICAgICAgIGlmICh0aGlzLnN0ZXBwZXIxKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zdGVwcGVyMS5zZWxlY3RlZEluZGV4ID09PSAxKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVOZXdDYXNlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RlcHBlcjEubmV4dCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGlmICh0aGlzLnN0ZXBwZXIyKSB7XG4gICAgICAgICAgICBpZiAodGhpcy5zdGVwcGVyMi5zZWxlY3RlZEluZGV4ID09PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVOZXdDYXNlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuc3RlcHBlcjIubmV4dCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuXG4gICAgdGl0bGVTaG9ydGVuaW5nKCkge1xuICAgICAgICBsZXQgc2l6ZTtcbiAgICAgICAgaWYgKHRoaXMudG9vbGJhciAmJiB0aGlzLnRvb2xiYXIuX2VsZW1lbnRSZWYgJiYgdGhpcy50b29sYmFyLl9lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQgJiZcbiAgICAgICAgICAgIHRoaXMudG9vbGJhci5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoKSB7XG4gICAgICAgICAgICBzd2l0Y2ggKHRoaXMudG9vbGJhci5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoKSB7XG4gICAgICAgICAgICAgICAgY2FzZSAyOTY6XG4gICAgICAgICAgICAgICAgICAgIHNpemUgPSAyMjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSA0OTY6XG4gICAgICAgICAgICAgICAgICAgIHNpemUgPSA0MjtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgY2FzZSAyNDY6XG4gICAgICAgICAgICAgICAgICAgIHNpemUgPSAxODtcbiAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICAgICAgICAgICAgc2l6ZSA9IDMyO1xuICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHNpemUgPSAzMjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGNhemUgPSB0aGlzLl90cmFuc2xhdGUuaW5zdGFudCgnc2lkZS1tZW51Lm5ldy1jYXNlLmNhc2UnKTtcbiAgICAgICAgY29uc3QgbmFtZSA9IHR5cGVvZiB0aGlzLnByb2Nlc3NGb3JtQ29udHJvbC52YWx1ZSA9PT0gJ3N0cmluZycgfHwgdGhpcy5wcm9jZXNzRm9ybUNvbnRyb2wudmFsdWUgPT09IG51bGwgP1xuICAgICAgICAgICAgdW5kZWZpbmVkIDogdGhpcy5wcm9jZXNzRm9ybUNvbnRyb2wudmFsdWUudmlld1ZhbHVlO1xuICAgICAgICBjb25zdCB0aXRsZSA9IG5hbWUgPT09IHVuZGVmaW5lZCA/IGNhemUgOiBjYXplICsgJyAtICcgKyBuYW1lO1xuICAgICAgICBpZiAodGl0bGUubGVuZ3RoID4gc2l6ZSkge1xuICAgICAgICAgICAgY29uc3QgdG1wID0gdGl0bGUuc2xpY2UoMCwgc2l6ZSk7XG4gICAgICAgICAgICByZXR1cm4gdG1wICsgJy4uLic7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRpdGxlO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVtb3ZlT2xkVmVyc2lvbnMob3B0aW9uczogQXJyYXk8Rm9ybT4pOiBBcnJheTxGb3JtPiB7XG4gICAgICAgIGNvbnN0IHRlbXBOZXRzID0gT2JqZWN0LmFzc2lnbihbXSwgb3B0aW9ucyk7XG4gICAgICAgIGNvbnN0IHBldHJpTmV0SWRzID0gbmV3IFNldChvcHRpb25zLm1hcChmb3JtID0+IGZvcm0udmFsdWUpKTtcbiAgICAgICAgY29uc3QgbmV3ZXN0TmV0cyA9IG5ldyBBcnJheTxGb3JtPigpO1xuXG4gICAgICAgIGZvciAoY29uc3QgdmFsdWUgb2YgcGV0cmlOZXRJZHMpIHtcbiAgICAgICAgICAgIGxldCBjdXJyZW50OiBGb3JtID0ge3ZhbHVlLCB2ZXJzaW9uOiAnMS4wLjAnLCB2aWV3VmFsdWU6ICcnfTtcbiAgICAgICAgICAgIGZvciAoY29uc3QgbmV0IG9mIHRlbXBOZXRzKSB7XG4gICAgICAgICAgICAgICAgaWYgKHZhbHVlID09PSBuZXQudmFsdWUgJiYgIXNlbXZlci5sdChuZXQudmVyc2lvbiwgY3VycmVudC52ZXJzaW9uKSkge1xuICAgICAgICAgICAgICAgICAgICBjdXJyZW50ID0gbmV0O1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIG5ld2VzdE5ldHMucHVzaChjdXJyZW50KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gbmV3ZXN0TmV0cztcbiAgICB9XG5cbiAgICBpc0Nhc2VUaXRsZUVuYWJsZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiAhISh0aGlzLl9pbmplY3RlZERhdGE/Lm5ld0Nhc2VDcmVhdGlvbkNvbmZpZ3VyYXRpb24/LmVuYWJsZUNhc2VUaXRsZSA/PyB0cnVlKTtcbiAgICB9XG5cbiAgICBpc0Nhc2VUaXRsZVJlcXVpcmVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc0Nhc2VUaXRsZUVuYWJsZWQoKSAmJiAhISh0aGlzLl9pbmplY3RlZERhdGE/Lm5ld0Nhc2VDcmVhdGlvbkNvbmZpZ3VyYXRpb24/LmlzQ2FzZVRpdGxlUmVxdWlyZWQgPz8gdHJ1ZSk7XG4gICAgfVxuXG4gICAgc2hvd1ZlcnNpb24ob3B0aW9uOiBNYXRPcHRpb24pOiB2b2lkIHtcbiAgICAgICAgaWYgKG9wdGlvbiAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbi52YWx1ZSAhPT0gdW5kZWZpbmVkICYmIG9wdGlvbi52YWx1ZS52ZXJzaW9uICE9PSB1bmRlZmluZWQpXG4gICAgICAgICAgICB0aGlzLm5ldFZlcnNpb24gPSBvcHRpb24udmFsdWUudmVyc2lvbjtcbiAgICB9XG5cbiAgICBjaGVja1ZlcnNpb24odmlld1ZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY3VycmVudE9wdGlvbiA9IHR5cGVvZiB2aWV3VmFsdWUgPT09ICdzdHJpbmcnIHx8IHZpZXdWYWx1ZSA9PT0gbnVsbCA/IHVuZGVmaW5lZCA6IHZpZXdWYWx1ZS52ZXJzaW9uO1xuICAgICAgICBpZiAoY3VycmVudE9wdGlvbiA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0aGlzLm5ldFZlcnNpb24gPSAnJztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRvTmV4dFN0ZXAodmlld1ZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKHZpZXdWYWx1ZSAhPT0gbnVsbCAmJiB2aWV3VmFsdWUudmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgdGhpcy5zdGVwcGVyMS5uZXh0KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -28,8 +28,7 @@ export class AbstractFieldComponentResolverComponent {
28
28
  return this.gridElement.item;
29
29
  }
30
30
  getTaskId() {
31
- const referencedTaskId = this.taskContentService.getReferencedFieldTask(this.getDataField().stringId);
32
- return referencedTaskId ?? this.taskContentService.task.stringId;
31
+ return this.taskContentService.task.stringId;
33
32
  }
34
33
  isField() {
35
34
  return this.gridElement.type !== TaskElementType.BLANK && this.gridElement.type !== TaskElementType.DATA_GROUP_TITLE;
@@ -52,4 +51,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.11", ngImpo
52
51
  }], ctorParameters: function () { return [{ type: i1.TaskContentService }]; }, propDecorators: { gridElement: [{
53
52
  type: Input
54
53
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZmllbGQtY29tcG9uZW50LXJlc29sdmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvdGFzay1jb250ZW50L2ZpZWxkLWNvbXBvbmVudC1yZXNvbHZlci9hYnN0cmFjdC1maWVsZC1jb21wb25lbnQtcmVzb2x2ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE9BQU8sRUFBeUIsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFM0YsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7OztBQUUvRDs7R0FFRztBQUtILE1BQU0sT0FBZ0IsdUNBQXVDO0lBTXpELFlBQWdDLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBSC9ELGtCQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFDbEMsb0JBQWUsR0FBRyxlQUFlLENBQUM7SUFHekMsQ0FBQztJQUVTLGVBQWU7UUFDckIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNuSSxDQUFDO0lBRUQsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUE4QixDQUFDO0lBQzNELENBQUM7SUFFRCxpQkFBaUI7UUFDYixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRUQsU0FBUztRQUNMLE1BQU0sZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUN0RyxPQUFPLGdCQUFnQixJQUFJLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3JFLENBQUM7SUFFRCxPQUFPO1FBQ0gsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksS0FBSyxlQUFlLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxnQkFBZ0IsQ0FBQztJQUN6SCxDQUFDO0lBRUQsY0FBYztRQUNWLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzlGLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssaUJBQWlCLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxTQUFTO2VBQy9ELENBQUMsU0FBUyxDQUFDLElBQUksS0FBSyxTQUFTO21CQUN6QixDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsVUFBVSxJQUFJLFdBQVcsSUFBSSxTQUFTLENBQUMsVUFBVSxJQUFJLFNBQVMsQ0FBQyxVQUFVLENBQUMsVUFBVSxLQUFLLE1BQU0sQ0FBQyxDQUNuSCxDQUFDO0lBQ1YsQ0FBQzs7cUlBNUNpQix1Q0FBdUM7eUhBQXZDLHVDQUF1QyxxSEFGL0MsRUFBRTs0RkFFTSx1Q0FBdUM7a0JBSjVELFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLHVDQUF1QztvQkFDakQsUUFBUSxFQUFFLEVBQUU7aUJBQ2Y7eUdBRVksV0FBVztzQkFBbkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1Rhc2tDb250ZW50U2VydmljZX0gZnJvbSAnLi4vc2VydmljZXMvdGFzay1jb250ZW50LnNlcnZpY2UnO1xuaW1wb3J0IHtEYXRhZmllbGRHcmlkTGF5b3V0RWxlbWVudH0gZnJvbSAnLi4vbW9kZWwvZGF0YWZpZWxkLWdyaWQtbGF5b3V0LWVsZW1lbnQnO1xuaW1wb3J0IHtUYXNrQ29udGVudEVsZW1lbnRUeXBlLCBUYXNrRWxlbWVudFR5cGV9IGZyb20gJy4uL21vZGVsL3Rhc2stY29udGVudC1lbGVtZW50LXR5cGUnO1xuaW1wb3J0IHtEYXRhRmllbGR9IGZyb20gJy4uLy4uL2RhdGEtZmllbGRzL21vZGVscy9hYnN0cmFjdC1kYXRhLWZpZWxkJztcbmltcG9ydCB7RmllbGRUeXBlUmVzb3VyY2V9IGZyb20gJy4uL21vZGVsL2ZpZWxkLXR5cGUtcmVzb3VyY2UnO1xuXG4vKipcbiAqIFJlc29sdmVzIHRoZSBjb3JyZWN0IHtAbGluayBBYnN0cmFjdERhdGFGaWVsZENvbXBvbmVudH0gaW1wbGVtZW50YXRpb24gZm9yIHRoZSBwcm92aWRlZCBkYXRhIGZpZWxkIG9iamVjdC5cbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICduY2MtYWJzdHJhY3QtZmllbGQtY29tcG9uZW50LXJlc29sdmVyJyxcbiAgICB0ZW1wbGF0ZTogJydcbn0pXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQWJzdHJhY3RGaWVsZENvbXBvbmVudFJlc29sdmVyQ29tcG9uZW50IHtcbiAgICBASW5wdXQoKSBncmlkRWxlbWVudDogRGF0YWZpZWxkR3JpZExheW91dEVsZW1lbnQ7XG5cbiAgICBwdWJsaWMgZmllbGRUeXBlRW51bSA9IEZpZWxkVHlwZVJlc291cmNlO1xuICAgIHB1YmxpYyB0YXNrRWxlbWVudEVudW0gPSBUYXNrRWxlbWVudFR5cGU7XG5cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IocHJvdGVjdGVkIHRhc2tDb250ZW50U2VydmljZTogVGFza0NvbnRlbnRTZXJ2aWNlKSB7XG4gICAgfVxuXG4gICAgcHJvdGVjdGVkIGlzT2Zmc2V0UHJlc2VudCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuICEhdGhpcy50YXNrQ29udGVudFNlcnZpY2UudGFzayAmJiAhIXRoaXMudGFza0NvbnRlbnRTZXJ2aWNlLnRhc2subGF5b3V0ICYmICEhdGhpcy50YXNrQ29udGVudFNlcnZpY2UudGFzay5sYXlvdXQub2Zmc2V0O1xuICAgIH1cblxuICAgIGdldEZpZWxkT2Zmc2V0KCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT2Zmc2V0UHJlc2VudCgpID8gdGhpcy50YXNrQ29udGVudFNlcnZpY2UudGFzay5sYXlvdXQub2Zmc2V0IDogMDtcbiAgICB9XG5cbiAgICBnZXRFbGVtZW50VHlwZSgpOiBUYXNrQ29udGVudEVsZW1lbnRUeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JpZEVsZW1lbnQudHlwZSBhcyBUYXNrQ29udGVudEVsZW1lbnRUeXBlO1xuICAgIH1cblxuICAgIGdldERhdGFHcm91cFRpdGxlKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRFbGVtZW50LnRpdGxlO1xuICAgIH1cblxuICAgIGdldERhdGFGaWVsZCgpOiBEYXRhRmllbGQ8dW5rbm93bj4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ncmlkRWxlbWVudC5pdGVtO1xuICAgIH1cblxuICAgIGdldFRhc2tJZCgpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCByZWZlcmVuY2VkVGFza0lkID0gdGhpcy50YXNrQ29udGVudFNlcnZpY2UuZ2V0UmVmZXJlbmNlZEZpZWxkVGFzayh0aGlzLmdldERhdGFGaWVsZCgpLnN0cmluZ0lkKTtcbiAgICAgICAgcmV0dXJuIHJlZmVyZW5jZWRUYXNrSWQgPz8gdGhpcy50YXNrQ29udGVudFNlcnZpY2UudGFzay5zdHJpbmdJZDtcbiAgICB9XG5cbiAgICBpc0ZpZWxkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5ncmlkRWxlbWVudC50eXBlICE9PSBUYXNrRWxlbWVudFR5cGUuQkxBTksgJiYgdGhpcy5ncmlkRWxlbWVudC50eXBlICE9PSBUYXNrRWxlbWVudFR5cGUuREFUQV9HUk9VUF9USVRMRTtcbiAgICB9XG5cbiAgICBpc0N1c3RvbUhlaWdodCgpOiBib29sZWFuIHtcbiAgICAgICAgY29uc3QgY29tcG9uZW50ID0gISF0aGlzLmdyaWRFbGVtZW50Lml0ZW0/LmNvbXBvbmVudCA/IHRoaXMuZ3JpZEVsZW1lbnQuaXRlbS5jb21wb25lbnQgOiBudWxsO1xuICAgICAgICByZXR1cm4gdGhpcy5ncmlkRWxlbWVudC50eXBlID09PSBGaWVsZFR5cGVSZXNvdXJjZS5JMThOICYmICEhY29tcG9uZW50XG4gICAgICAgICAgICAmJiAoY29tcG9uZW50Lm5hbWUgPT09ICdkaXZpZGVyJ1xuICAgICAgICAgICAgICAgIHx8ICghIWNvbXBvbmVudC5wcm9wZXJ0aWVzICYmICdwbGFpblRleHQnIGluIGNvbXBvbmVudC5wcm9wZXJ0aWVzICYmIGNvbXBvbmVudC5wcm9wZXJ0aWVzLnBsYWludFRleHQgPT09ICd0cnVlJylcbiAgICAgICAgICAgICk7XG4gICAgfVxufVxuIl19
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWJzdHJhY3QtZmllbGQtY29tcG9uZW50LXJlc29sdmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25ldGdyaWYtY29tcG9uZW50cy1jb3JlL3NyYy9saWIvdGFzay1jb250ZW50L2ZpZWxkLWNvbXBvbmVudC1yZXNvbHZlci9hYnN0cmFjdC1maWVsZC1jb21wb25lbnQtcmVzb2x2ZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBRy9DLE9BQU8sRUFBeUIsZUFBZSxFQUFDLE1BQU0sb0NBQW9DLENBQUM7QUFFM0YsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sOEJBQThCLENBQUM7OztBQUUvRDs7R0FFRztBQUtILE1BQU0sT0FBZ0IsdUNBQXVDO0lBTXpELFlBQWdDLGtCQUFzQztRQUF0Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW9CO1FBSC9ELGtCQUFhLEdBQUcsaUJBQWlCLENBQUM7UUFDbEMsb0JBQWUsR0FBRyxlQUFlLENBQUM7SUFHekMsQ0FBQztJQUVTLGVBQWU7UUFDckIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUNuSSxDQUFDO0lBRUQsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRixDQUFDO0lBRUQsY0FBYztRQUNWLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUE4QixDQUFDO0lBQzNELENBQUM7SUFFRCxpQkFBaUI7UUFDYixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxZQUFZO1FBQ1IsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztJQUNqQyxDQUFDO0lBRUQsU0FBUztRQUNMLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxRQUFRLENBQUM7SUFDakQsQ0FBQztJQUVELE9BQU87UUFDSCxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxLQUFLLGVBQWUsQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLEtBQUssZUFBZSxDQUFDLGdCQUFnQixDQUFDO0lBQ3pILENBQUM7SUFFRCxjQUFjO1FBQ1YsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUM7UUFDOUYsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksS0FBSyxpQkFBaUIsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLFNBQVM7ZUFDL0QsQ0FBQyxTQUFTLENBQUMsSUFBSSxLQUFLLFNBQVM7bUJBQ3pCLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxVQUFVLElBQUksV0FBVyxJQUFJLFNBQVMsQ0FBQyxVQUFVLElBQUksU0FBUyxDQUFDLFVBQVUsQ0FBQyxVQUFVLEtBQUssTUFBTSxDQUFDLENBQ25ILENBQUM7SUFDVixDQUFDOztxSUEzQ2lCLHVDQUF1Qzt5SEFBdkMsdUNBQXVDLHFIQUYvQyxFQUFFOzRGQUVNLHVDQUF1QztrQkFKNUQsU0FBUzttQkFBQztvQkFDUCxRQUFRLEVBQUUsdUNBQXVDO29CQUNqRCxRQUFRLEVBQUUsRUFBRTtpQkFDZjt5R0FFWSxXQUFXO3NCQUFuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIElucHV0fSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VGFza0NvbnRlbnRTZXJ2aWNlfSBmcm9tICcuLi9zZXJ2aWNlcy90YXNrLWNvbnRlbnQuc2VydmljZSc7XG5pbXBvcnQge0RhdGFmaWVsZEdyaWRMYXlvdXRFbGVtZW50fSBmcm9tICcuLi9tb2RlbC9kYXRhZmllbGQtZ3JpZC1sYXlvdXQtZWxlbWVudCc7XG5pbXBvcnQge1Rhc2tDb250ZW50RWxlbWVudFR5cGUsIFRhc2tFbGVtZW50VHlwZX0gZnJvbSAnLi4vbW9kZWwvdGFzay1jb250ZW50LWVsZW1lbnQtdHlwZSc7XG5pbXBvcnQge0RhdGFGaWVsZH0gZnJvbSAnLi4vLi4vZGF0YS1maWVsZHMvbW9kZWxzL2Fic3RyYWN0LWRhdGEtZmllbGQnO1xuaW1wb3J0IHtGaWVsZFR5cGVSZXNvdXJjZX0gZnJvbSAnLi4vbW9kZWwvZmllbGQtdHlwZS1yZXNvdXJjZSc7XG5cbi8qKlxuICogUmVzb2x2ZXMgdGhlIGNvcnJlY3Qge0BsaW5rIEFic3RyYWN0RGF0YUZpZWxkQ29tcG9uZW50fSBpbXBsZW1lbnRhdGlvbiBmb3IgdGhlIHByb3ZpZGVkIGRhdGEgZmllbGQgb2JqZWN0LlxuICovXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ25jYy1hYnN0cmFjdC1maWVsZC1jb21wb25lbnQtcmVzb2x2ZXInLFxuICAgIHRlbXBsYXRlOiAnJ1xufSlcbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBBYnN0cmFjdEZpZWxkQ29tcG9uZW50UmVzb2x2ZXJDb21wb25lbnQge1xuICAgIEBJbnB1dCgpIGdyaWRFbGVtZW50OiBEYXRhZmllbGRHcmlkTGF5b3V0RWxlbWVudDtcblxuICAgIHB1YmxpYyBmaWVsZFR5cGVFbnVtID0gRmllbGRUeXBlUmVzb3VyY2U7XG4gICAgcHVibGljIHRhc2tFbGVtZW50RW51bSA9IFRhc2tFbGVtZW50VHlwZTtcblxuICAgIHByb3RlY3RlZCBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgdGFza0NvbnRlbnRTZXJ2aWNlOiBUYXNrQ29udGVudFNlcnZpY2UpIHtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgaXNPZmZzZXRQcmVzZW50KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLnRhc2tDb250ZW50U2VydmljZS50YXNrICYmICEhdGhpcy50YXNrQ29udGVudFNlcnZpY2UudGFzay5sYXlvdXQgJiYgISF0aGlzLnRhc2tDb250ZW50U2VydmljZS50YXNrLmxheW91dC5vZmZzZXQ7XG4gICAgfVxuXG4gICAgZ2V0RmllbGRPZmZzZXQoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuaXNPZmZzZXRQcmVzZW50KCkgPyB0aGlzLnRhc2tDb250ZW50U2VydmljZS50YXNrLmxheW91dC5vZmZzZXQgOiAwO1xuICAgIH1cblxuICAgIGdldEVsZW1lbnRUeXBlKCk6IFRhc2tDb250ZW50RWxlbWVudFR5cGUge1xuICAgICAgICByZXR1cm4gdGhpcy5ncmlkRWxlbWVudC50eXBlIGFzIFRhc2tDb250ZW50RWxlbWVudFR5cGU7XG4gICAgfVxuXG4gICAgZ2V0RGF0YUdyb3VwVGl0bGUoKTogc3RyaW5nIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZ3JpZEVsZW1lbnQudGl0bGU7XG4gICAgfVxuXG4gICAgZ2V0RGF0YUZpZWxkKCk6IERhdGFGaWVsZDx1bmtub3duPiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRFbGVtZW50Lml0ZW07XG4gICAgfVxuXG4gICAgZ2V0VGFza0lkKCk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLnRhc2tDb250ZW50U2VydmljZS50YXNrLnN0cmluZ0lkO1xuICAgIH1cblxuICAgIGlzRmllbGQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRFbGVtZW50LnR5cGUgIT09IFRhc2tFbGVtZW50VHlwZS5CTEFOSyAmJiB0aGlzLmdyaWRFbGVtZW50LnR5cGUgIT09IFRhc2tFbGVtZW50VHlwZS5EQVRBX0dST1VQX1RJVExFO1xuICAgIH1cblxuICAgIGlzQ3VzdG9tSGVpZ2h0KCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCBjb21wb25lbnQgPSAhIXRoaXMuZ3JpZEVsZW1lbnQuaXRlbT8uY29tcG9uZW50ID8gdGhpcy5ncmlkRWxlbWVudC5pdGVtLmNvbXBvbmVudCA6IG51bGw7XG4gICAgICAgIHJldHVybiB0aGlzLmdyaWRFbGVtZW50LnR5cGUgPT09IEZpZWxkVHlwZVJlc291cmNlLkkxOE4gJiYgISFjb21wb25lbnRcbiAgICAgICAgICAgICYmIChjb21wb25lbnQubmFtZSA9PT0gJ2RpdmlkZXInXG4gICAgICAgICAgICAgICAgfHwgKCEhY29tcG9uZW50LnByb3BlcnRpZXMgJiYgJ3BsYWluVGV4dCcgaW4gY29tcG9uZW50LnByb3BlcnRpZXMgJiYgY29tcG9uZW50LnByb3BlcnRpZXMucGxhaW50VGV4dCA9PT0gJ3RydWUnKVxuICAgICAgICAgICAgKTtcbiAgICB9XG59XG4iXX0=
@@ -1186,7 +1186,8 @@ var en = {
1186
1186
  errThird: "Color is required.",
1187
1187
  noNets: "No allowed Nets",
1188
1188
  createCase: "Successful create new case",
1189
- defaultCaseName: "with default case name"
1189
+ defaultCaseName: "with default case name",
1190
+ createCaseError: "A new case was created, but an error occurred while executing actions"
1190
1191
  },
1191
1192
  user: {
1192
1193
  assign: "User Assign",
@@ -1664,7 +1665,8 @@ var sk = {
1664
1665
  errThird: "Farba je povinné pole.",
1665
1666
  noNets: "Žiadne povolené siete",
1666
1667
  createCase: "Úspešne vytvorený nový prípad",
1667
- defaultCaseName: "s prednastaveným názvom prípadu"
1668
+ defaultCaseName: "s prednastaveným názvom prípadu",
1669
+ createCaseError: "Nový prípad vytvorený, nastala však chyba pri vykonávaní akcií"
1668
1670
  },
1669
1671
  user: {
1670
1672
  assign: "Priradiť používateľa",
@@ -1942,8 +1944,8 @@ var forms = {
1942
1944
  enterEmail: "Ihre E-Mail Adresse eingeben"
1943
1945
  },
1944
1946
  login: {
1945
- length: "Das Benützername muss mindestens 4 Zeichen enthalten",
1946
- login: "Benützername",
1947
+ length: "Das Benutzername muss mindestens 4 Zeichen enthalten",
1948
+ login: "Benutzername",
1947
1949
  wrongCredentials: "Falsche Anmeldeinformationen!",
1948
1950
  loginButton: "Anmelden",
1949
1951
  reset: "Kennwort wiederherstellen",
@@ -2142,14 +2144,15 @@ var de = {
2142
2144
  errThird: "Sie müssen eine Farbe auswählen.",
2143
2145
  noNets: "Es gibt keine erlaubte Netze",
2144
2146
  createCase: "Neuen Fall würde erfolgreich erzeugt",
2145
- defaultCaseName: "mit einem Standardfallnamen"
2147
+ defaultCaseName: "mit einem Standardfallnamen",
2148
+ createCaseError: "Neuer Fall wurde erstellt, aber beim Ausführen von Aktionen ist ein Fehler aufgetreten"
2146
2149
  },
2147
2150
  user: {
2148
- assign: "Benützer zuweisen",
2149
- choose: "Benützer auswählen",
2150
- noUser: "Es gibt keine Benützer",
2151
- err: "Beim laden der Benützer ist eine Fehler aufgetreten",
2152
- showcase: "Benützeransichtmodus ist nicht ausgewählt!"
2151
+ assign: "Benutzer zuweisen",
2152
+ choose: "Benutzer auswählen",
2153
+ noUser: "Es gibt keine Benutzer",
2154
+ err: "Beim laden der Benutzer ist eine Fehler aufgetreten",
2155
+ showcase: "Die Benutzeransicht ist nicht gesetzt!"
2153
2156
  },
2154
2157
  ldapGroup: {
2155
2158
  choose: "LDAP-Gruppe suchen",
@@ -6319,9 +6322,9 @@ class TaskResourceService extends AbstractResourceService {
6319
6322
  * Delete file from the task
6320
6323
  * DELETE
6321
6324
  */
6322
- deleteFile(taskId, fieldId, name) {
6325
+ deleteFile(taskId, fieldId, name, param) {
6323
6326
  const url = !!name ? 'task/' + taskId + '/file/' + fieldId + '/' + name : 'task/' + taskId + '/file/' + fieldId;
6324
- return this._resourceProvider.delete$(url, this.SERVER_URL).pipe(map(r => this.changeType(r, undefined)));
6327
+ return this._resourceProvider.delete$(url, this.SERVER_URL, param).pipe(map(r => this.changeType(r, undefined)));
6325
6328
  }
6326
6329
  /**
6327
6330
  * Download task file preview for field value
@@ -6649,7 +6652,9 @@ class AbstractFileFieldComponent extends AbstractDataFieldComponent {
6649
6652
  this._log.error('File cannot be deleted. No task is set to the field.');
6650
6653
  return;
6651
6654
  }
6652
- this._taskResourceService.deleteFile(this.taskId, this.dataField.stringId).pipe(take(1)).subscribe(response => {
6655
+ let param = new HttpParams();
6656
+ param = param.set("parentTaskId", this.resolveParentTaskId());
6657
+ this._taskResourceService.deleteFile(this.taskId, this.dataField.stringId, undefined, param).pipe(take(1)).subscribe(response => {
6653
6658
  if (response.success) {
6654
6659
  const filename = this.dataField.value.name;
6655
6660
  this.dataField.value = {};
@@ -6733,7 +6738,7 @@ class AbstractFileFieldComponent extends AbstractDataFieldComponent {
6733
6738
  if (!this.checkFileBeforeDownload()) {
6734
6739
  return;
6735
6740
  }
6736
- this._taskResourceService.downloadFile(this.taskId, this.dataField.stringId).subscribe(response => {
6741
+ this._taskResourceService.downloadFile(this.resolveParentTaskId(), this.dataField.stringId).subscribe(response => {
6737
6742
  if (!response.type || response.type !== ProgressType.DOWNLOAD) {
6738
6743
  this._log.debug(`File [${this.dataField.stringId}] ${this.dataField.value.name} was successfully downloaded`);
6739
6744
  this.initDownloadFile(response);
@@ -7043,7 +7048,9 @@ class AbstractFileListFieldComponent extends AbstractDataFieldComponent {
7043
7048
  this._log.error('File cannot be deleted. No task is set to the field.');
7044
7049
  return;
7045
7050
  }
7046
- this._taskResourceService.deleteFile(this.taskId, this.dataField.stringId, fileName).pipe(take(1)).subscribe((response) => {
7051
+ let param = new HttpParams();
7052
+ param = param.set("parentTaskId", this.resolveParentTaskId());
7053
+ this._taskResourceService.deleteFile(this.taskId, this.dataField.stringId, fileName, param).pipe(take(1)).subscribe((response) => {
7047
7054
  if (response.success) {
7048
7055
  const changedFieldsMap = this._eventService.parseChangedFieldsFromOutcomeTree(response.outcome);
7049
7056
  this.dataField.emitChangedFields(changedFieldsMap);
@@ -7345,6 +7352,7 @@ class AbstractCurrencyNumberFieldComponent extends AbstractNumberErrorsComponent
7345
7352
  this._currencyPipe = _currencyPipe;
7346
7353
  this.NUMBER_TYPE = 'number';
7347
7354
  this.TEXT_TYPE = 'text';
7355
+ this.WHITESPACE = ' ';
7348
7356
  }
7349
7357
  ngAfterViewInit() {
7350
7358
  var _a;
@@ -7353,7 +7361,7 @@ class AbstractCurrencyNumberFieldComponent extends AbstractNumberErrorsComponent
7353
7361
  this.numberField.valueChanges().subscribe(value => {
7354
7362
  if (value !== undefined) {
7355
7363
  if (this.fieldType === this.TEXT_TYPE) {
7356
- this.transformedValue = this.transformCurrency(value.toString());
7364
+ this.transformedValue = this.transformCurrency(value.toString()) + this.WHITESPACE;
7357
7365
  }
7358
7366
  }
7359
7367
  else {
@@ -11142,14 +11150,17 @@ class CaseDataset extends Category {
11142
11150
  return resolver.getIndex(datafield.fieldId, SearchIndex.BOOLEAN);
11143
11151
  case 'file':
11144
11152
  case 'fileList':
11145
- return resolver.getIndex(datafield.fieldId, SearchIndex.FILE_NAME, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring));
11153
+ return resolver.getIndex(datafield.fieldId, SearchIndex.FILE_NAME, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring)
11154
+ || this.isSelectedOperator(IsNull));
11146
11155
  case 'user':
11147
11156
  case 'userList':
11148
11157
  return resolver.getIndex(datafield.fieldId, SearchIndex.USER_ID);
11149
11158
  case 'i18n':
11150
- return resolver.getIndex(datafield.fieldId, SearchIndex.TEXT, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring));
11159
+ return resolver.getIndex(datafield.fieldId, SearchIndex.TEXT, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring)
11160
+ || this.isSelectedOperator(IsNull));
11151
11161
  default:
11152
- return resolver.getIndex(datafield.fieldId, SearchIndex.FULLTEXT, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring));
11162
+ return resolver.getIndex(datafield.fieldId, SearchIndex.FULLTEXT, this.isSelectedOperator(Equals) || this.isSelectedOperator(NotEquals) || this.isSelectedOperator(Substring)
11163
+ || this.isSelectedOperator(IsNull));
11153
11164
  }
11154
11165
  }
11155
11166
  get inputPlaceholder() {
@@ -20163,16 +20174,27 @@ class AbstractNewCaseComponent {
20163
20174
  };
20164
20175
  this._caseResourceService.createCase(newCase)
20165
20176
  .subscribe((response) => {
20166
- this._snackBarService.openSuccessSnackBar(response.outcome.message === undefined
20167
- ? this._translate.instant('side-menu.new-case.createCase') + ' ' + newCase.title
20168
- : response.outcome.message);
20169
- this._sideMenuControl.close({
20170
- opened: false,
20171
- message: response.outcome.message === undefined
20172
- ? 'Confirm new case setup'
20173
- : response.outcome.message,
20174
- data: response.outcome.aCase
20175
- });
20177
+ if (!!response.outcome) {
20178
+ this._snackBarService.openSuccessSnackBar(response.outcome.message === undefined
20179
+ ? this._translate.instant('side-menu.new-case.createCase') + ' ' + newCase.title
20180
+ : response.outcome.message);
20181
+ this._sideMenuControl.close({
20182
+ opened: false,
20183
+ message: response.outcome.message === undefined
20184
+ ? 'Confirm new case setup'
20185
+ : response.outcome.message,
20186
+ data: response.outcome.aCase
20187
+ });
20188
+ }
20189
+ else if (!!response.error) {
20190
+ this._snackBarService.openWarningSnackBar(this._translate.instant('side-menu.new-case.createCaseError') + ' ' + newCase.title);
20191
+ this._sideMenuControl.close({
20192
+ opened: false,
20193
+ message: response.error === undefined
20194
+ ? 'Confirm new case setup'
20195
+ : response.error
20196
+ });
20197
+ }
20176
20198
  }, error => this._snackBarService.openErrorSnackBar(error.message ? error.message : error));
20177
20199
  }
20178
20200
  }
@@ -23544,16 +23566,35 @@ class RoleGuardService {
23544
23566
  return this.canAccessView(view, state.url.toString());
23545
23567
  }
23546
23568
  canAccessView(view, url) {
23547
- if (typeof view.access !== 'string' && view.access.hasOwnProperty('role')) {
23548
- const allowedRoles = this.parseRoleConstraints(view.access.role, url);
23549
- return allowedRoles.some(constraint => {
23550
- if (constraint.roleIdentifier) {
23551
- return this._userService.hasRoleByIdentifier(constraint.roleIdentifier, constraint.processIdentifier);
23569
+ if (typeof view.access !== 'string' && (view.access.hasOwnProperty('role') || view.access.hasOwnProperty('bannedRole'))) {
23570
+ if (view.access.hasOwnProperty('role') && view.access.hasOwnProperty('bannedRole')) {
23571
+ const bannedRoles = this.parseRoleConstraints(view.access.bannedRole, url);
23572
+ const allowedRoles = this.parseRoleConstraints(view.access.role, url);
23573
+ if (bannedRoles.some(role => this.decideAccessByRole(role))) {
23574
+ return false;
23552
23575
  }
23553
- else {
23554
- return this._userService.hasRoleByName(constraint.roleName, constraint.processIdentifier);
23576
+ if (allowedRoles.length === 0) {
23577
+ this._log.warn(`View at '${url}' defines role access constraint with an empty array!`
23578
+ + ` No users will be allowed to enter this view!`);
23555
23579
  }
23556
- });
23580
+ return allowedRoles.some(role => this.decideAccessByRole(role)); // user was not denied access by a banned role, they need at least one allowed role
23581
+ }
23582
+ if (view.access.hasOwnProperty('bannedRole')) {
23583
+ const bannedRoles = this.parseRoleConstraints(view.access.bannedRole, url);
23584
+ return !bannedRoles.some(constraint => {
23585
+ return this.decideAccessByRole(constraint);
23586
+ });
23587
+ }
23588
+ if (view.access.hasOwnProperty('role')) {
23589
+ const allowedRoles = this.parseRoleConstraints(view.access.role, url);
23590
+ if (allowedRoles.length === 0) {
23591
+ this._log.warn(`View at '${url}' defines role access constraint with an empty array!`
23592
+ + ` No users will be allowed to enter this view!`);
23593
+ }
23594
+ return allowedRoles.some(constraint => {
23595
+ return this.decideAccessByRole(constraint);
23596
+ });
23597
+ }
23557
23598
  }
23558
23599
  throw new Error('Role guard is declared for a view with no role guard configuration!'
23559
23600
  + ` Add role guard configuration for view at ${url}, or remove the guard.`);
@@ -23564,8 +23605,6 @@ class RoleGuardService {
23564
23605
  }
23565
23606
  if (Array.isArray(roleConstrains)) {
23566
23607
  if (roleConstrains.length === 0) {
23567
- this._log.warn(`View at '${viewUrl}' defines role access constraint with an empty array!`
23568
- + ` No users will be allowed to enter this view!`);
23569
23608
  return [];
23570
23609
  }
23571
23610
  if (typeof roleConstrains[0] === 'string') {
@@ -23603,6 +23642,14 @@ class RoleGuardService {
23603
23642
  return { processIdentifier: constraint.processId, roleIdentifier: constraint.roleId };
23604
23643
  });
23605
23644
  }
23645
+ decideAccessByRole(constraint) {
23646
+ if (constraint.roleIdentifier) {
23647
+ return this._userService.hasRoleByIdentifier(constraint.roleIdentifier, constraint.processIdentifier);
23648
+ }
23649
+ else {
23650
+ return this._userService.hasRoleByName(constraint.roleName, constraint.processIdentifier);
23651
+ }
23652
+ }
23606
23653
  }
23607
23654
  RoleGuardService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: RoleGuardService, deps: [{ token: RedirectService }, { token: UserService }, { token: ConfigurationService }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
23608
23655
  RoleGuardService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.11", ngImport: i0, type: RoleGuardService, providedIn: AuthenticationModule });
@@ -23811,7 +23858,7 @@ class AccessService {
23811
23858
  * @returns whether the user passes the role guard condition for accessing the specified view
23812
23859
  */
23813
23860
  passesRoleGuard(view, url) {
23814
- return !view.access.hasOwnProperty('role') || this._roleGuard.canAccessView(view, url);
23861
+ return (!view.access.hasOwnProperty('role') && !view.access.hasOwnProperty('bannedRole')) || this._roleGuard.canAccessView(view, url);
23815
23862
  }
23816
23863
  /**
23817
23864
  * @param view the view whose access permissions we want to check
@@ -25285,16 +25332,19 @@ class AbstractNavigationDoubleDrawerComponent {
25285
25332
  id: filter.stringId,
25286
25333
  resource: filter
25287
25334
  };
25288
- const resolvedRoles = this.resolveAccessRoles(filter);
25335
+ const resolvedRoles = this.resolveAccessRoles(filter, 'allowed_roles');
25336
+ const resolvedBannedRoles = this.resolveAccessRoles(filter, 'banned_roles');
25289
25337
  if (!!resolvedRoles)
25290
25338
  item.access['role'] = resolvedRoles;
25339
+ if (!!resolvedBannedRoles)
25340
+ item.access['bannedRole'] = resolvedBannedRoles;
25291
25341
  if (!this._accessService.canAccessView(item, item.routingPath))
25292
25342
  return;
25293
25343
  return item;
25294
25344
  }
25295
- resolveAccessRoles(filter) {
25345
+ resolveAccessRoles(filter, roleType) {
25296
25346
  var _a;
25297
- const allowedRoles = (_a = filter.immediateData.find(f => f.stringId === 'allowed_roles')) === null || _a === void 0 ? void 0 : _a.options;
25347
+ const allowedRoles = (_a = filter.immediateData.find(f => f.stringId === roleType)) === null || _a === void 0 ? void 0 : _a.options;
25298
25348
  if (!allowedRoles || Object.keys(allowedRoles).length === 0)
25299
25349
  return undefined;
25300
25350
  const roles = [];
@@ -28598,7 +28648,7 @@ class AbstractSearchOperandInputComponent {
28598
28648
  }
28599
28649
  return this._filteredOptions$;
28600
28650
  }
28601
- get isInputFilled() {
28651
+ isInputFilled() {
28602
28652
  if (!this._inputConfirmed) {
28603
28653
  return false;
28604
28654
  }
@@ -28611,7 +28661,7 @@ class AbstractSearchOperandInputComponent {
28611
28661
  return;
28612
28662
  }
28613
28663
  this._initialExpansion = false;
28614
- if (!this.isInputFilled) {
28664
+ if (!this.isInputFilled()) {
28615
28665
  setTimeout(() => {
28616
28666
  input.nativeElement.focus();
28617
28667
  });
@@ -31720,8 +31770,7 @@ class AbstractFieldComponentResolverComponent {
31720
31770
  return this.gridElement.item;
31721
31771
  }
31722
31772
  getTaskId() {
31723
- const referencedTaskId = this.taskContentService.getReferencedFieldTask(this.getDataField().stringId);
31724
- return referencedTaskId !== null && referencedTaskId !== void 0 ? referencedTaskId : this.taskContentService.task.stringId;
31773
+ return this.taskContentService.task.stringId;
31725
31774
  }
31726
31775
  isField() {
31727
31776
  return this.gridElement.type !== TaskElementType.BLANK && this.gridElement.type !== TaskElementType.DATA_GROUP_TITLE;