@colijnit/corecomponents_v12 256.1.2 → 256.1.4

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.
@@ -75,14 +75,14 @@ export class ScreenConfigurationDirective {
75
75
  const myCfgObj = this._configService.getObjectConfigurationFor(this.screenConfigurationObject);
76
76
  if (myCfgObj) {
77
77
  this._setHostVisible(myCfgObj.immediatelyVisible());
78
- // if (this.hostComponent instanceof GridColumnComponent) {
79
- // this.hostComponent.rights = myCfgObj.rights;
80
- // }
81
78
  if (!this.screenConfigNativeElement) {
82
79
  this.hostComponent.required = myCfgObj.isRequired();
83
80
  this.hostComponent.readonly = this.hostComponent.forceReadonly || this._moduleInReadonlyMode() || myCfgObj.isReadonly();
84
81
  this.hostComponent.decimals = myCfgObj.scale;
85
82
  this.hostComponent.maxLength = myCfgObj.maxLength;
83
+ if ('configObject' in this.hostComponent) {
84
+ this.hostComponent.configObject = myCfgObj;
85
+ }
86
86
  }
87
87
  }
88
88
  else {
@@ -155,4 +155,4 @@ __decorate([
155
155
  __decorate([
156
156
  InputBoolean()
157
157
  ], ScreenConfigurationDirective.prototype, "noModuleService", void 0);
158
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLWNvbmZpZ3VyYXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9kaXJlY3RpdmVzL3NjcmVlbi1jb25maWd1cmF0aW9uL3NjcmVlbi1jb25maWd1cmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sRUFBQyw4Q0FBOEMsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBRS9ILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBS3BFLGlHQUFpRztBQUNqRyx5SUFBeUk7QUFJekksTUFBTSxPQUFPLDRCQUE0QjtJQWlDckMsWUFFVyxhQUEyQyxFQUMxQyxRQUFvQjtJQUM1QixvRUFBb0U7SUFDNUQsY0FBNkMsRUFDN0MsU0FBb0I7SUFDNUIsMERBQTBEO0lBQ2xELGNBQWtDO1FBTm5DLGtCQUFhLEdBQWIsYUFBYSxDQUE4QjtRQUMxQyxhQUFRLEdBQVIsUUFBUSxDQUFZO1FBRXBCLG1CQUFjLEdBQWQsY0FBYyxDQUErQjtRQUM3QyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRXBCLG1CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQXZCdkMsOEJBQXlCLEdBQVksS0FBSyxDQUFDO1FBSTNDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBTXhDLDBKQUEwSjtRQUNsSixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU5QixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVkvQixJQUFJLENBQUMs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O1lBTTFELGlCQUFpQjs7O3dDQVdwQixLQUFLLFNBQUMsMkJBQTJCO3VCQVlqQyxLQUFLO3dDQUdMLEtBQUs7OEJBSUwsS0FBSzs7QUFGTjtJQURDLFlBQVksRUFBRTsrRUFDbUM7QUFJbEQ7SUFEQyxZQUFZLEVBQUU7cUVBQ3lCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIEVsZW1lbnRSZWYsIEluamVjdCwgSW5wdXQsIE9uRGVzdHJveSwgUmVuZGVyZXIyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtJbnB1dEJvb2xlYW59IGZyb20gJy4uLy4uL2NvcmUvZGVjb3JhdG9yL2lucHV0LWJvb2xlYW4uZGVjb3JhdG9yJztcclxuaW1wb3J0IHtTY3JlZW5Db25maWdBZGFwdGVyQ29tcG9uZW50fSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjcmVlbi1jb25maWctYWRhcHRlci5jb21wb25lbnQuaW50ZXJmYWNlJztcclxuaW1wb3J0IHtTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL3NjcmVlbi1jb25maWctYWRhcHRlci1jb21wb25lbnQtaW50ZXJmYWNlLW5hbWUnO1xyXG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7QmFzZU1vZHVsZVNjcmVlbkNvbmZpZ1NlcnZpY2V9IGZyb20gJy4uLy4uL3NlcnZpY2UvYmFzZS1tb2R1bGUtc2NyZWVuLWNvbmZpZy5zZXJ2aWNlJztcclxuaW1wb3J0IHtCYXNlTW9kdWxlU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9iYXNlLW1vZHVsZS5zZXJ2aWNlJztcclxuaW1wb3J0IHtWYWxpZGF0aW9uUmVzdWx0fSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC92YWxpZGF0aW9uLXJlc3VsdCc7XHJcbmltcG9ydCB7VmFsaWRhdGlvbk1lc3NhZ2V9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tbWVzc2FnZSc7XHJcbmltcG9ydCB7T2JqZWN0Q29uZmlndXJhdGlvbn0gZnJvbSAnQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvbW9kZWwvb2JqZWN0LWNvbmZpZ3VyYXRpb24nO1xyXG5cclxuLy8gRGlyZWN0aXZlIHRvIHJlcHJlc2VudHMgdGhlIG1hcmtlciBvZiBcInNjcmVlbiBjb25maWcgbmFtZSBJRCdzXCIgb2YgY29tcG9uZW50cyB3aXRoaW4gYSBtb2R1bGUuXHJcbi8vIE1hbmlwdWxhdGVzIHZpc2liaWxpdHksIHJlYWRvbmx5IGFuZCBvdGhlciBkeW5hbWljIHN0YXRlcyBvZiBhbiBpbnB1dCBlbGVtZW50IGFjY29yZGluZyB0byBpdHMgZGItZmV0Y2hlZCBzY3JlZW4gY29uZmlndXJhdGlvbiBvYmplY3QuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdF0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTY3JlZW5Db25maWd1cmF0aW9uRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95IHtcclxuICAgIEBJbnB1dCgnc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCcpXHJcbiAgICBwdWJsaWMgc2V0IHNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3QodmFsdWU6IHN0cmluZykge1xyXG4gICAgICAgIGlmICh2YWx1ZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0ID0gdmFsdWU7XHJcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZUhvc3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0KCk6IHN0cmluZyB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3Q7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBkYXRhTmFtZTogc3RyaW5nO1xyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBASW5wdXRCb29sZWFuKClcclxuICAgIHB1YmxpYyBzY3JlZW5Db25maWdOYXRpdmVFbGVtZW50OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIEBJbnB1dEJvb2xlYW4oKVxyXG4gICAgcHVibGljIG5vTW9kdWxlU2VydmljZTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgX2lzSGVhZGVyOiBib29sZWFuO1xyXG5cclxuICAgIHByaXZhdGUgX3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3Q6IHN0cmluZztcclxuXHJcbiAgICAvLyBmZWF0dXJlIHRvZ2dsZSBmb3IgZGV2cyBzbyB5b3UgY2FuIHNlZSB0aGUgd2hvbGUgc2NyZWVuIHdpdGggYWxsIGlucHV0cyBldGMgYnkgdGVtcG9yYXJpbHkgdHVybmluZyBvZmYgdGhlIGhpZGluZyBlZmZlY3RzIG9mIHRoaXMgZGlyZWN0aXZlIG9uIGl0cyBob3N0XHJcbiAgICBwcml2YXRlIF9pc1R1cm5lZE9mZjogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAgIHByaXZhdGUgX3N1YnM6IFN1YnNjcmlwdGlvbltdID0gW107XHJcblxyXG4gICAgY29uc3RydWN0b3IoXHJcbiAgICAgICAgQEluamVjdChTQ1JFRU5fQ09ORklHX0FEQVBURVJfQ09NUE9ORU5UX0lOVEVSRkFDRV9OQU1FKVxyXG4gICAgICAgIHB1YmxpYyBob3N0Q29tcG9uZW50OiBTY3JlZW5Db25maWdBZGFwdGVyQ29tcG9uZW50LFxyXG4gICAgICAgIHByaXZhdGUgX2VsZW1lbnQ6IEVsZW1lbnRSZWYsXHJcbiAgICAgICAgLy8gd2UgbXVzdCBhbHdheXMgaGF2ZSBhIGNvbmZpZyBzZXJ2aWNlIHRvIGZldGNoIGNvbmZpZyBvYmplY3RzIHdpdGhcclxuICAgICAgICBwcml2YXRlIF9jb25maWdTZXJ2aWNlOiBCYXNlTW9kdWxlU2NyZWVuQ29uZmlnU2VydmljZSxcclxuICAgICAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxyXG4gICAgICAgIC8vIHRvIG1ha2UgaG9zdCByZWFkb25seSB3aGVuIE1PRFVMRSBzd2l0Y2hlcyB0byByZWFkb25seTpcclxuICAgICAgICBwcml2YXRlIF9tb2R1bGVTZXJ2aWNlPzogQmFzZU1vZHVsZVNlcnZpY2VcclxuICAgICkge1xyXG4gICAgICAgIHRoaXMuX3N1YnMucHVzaCh0aGlzLl9jb25maWdTZXJ2aWNlLmNvbmZpZ1NldC5zdWJzY3JpYmUoKGNvbmZpZ09iamVjdHM6IHN0cmluZ1tdKSA9PiB7XHJcbiAgICAgICAgICAgIGlmIChjb25maWdPYmplY3RzICYmIGNvbmZpZ09iamVjdHMubGVuZ3RoID4gMCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fdXBkYXRlSG9zdCgpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfSkpO1xyXG5cclxuICAgICAgICBpZiAodGhpcy5fbW9kdWxlU2VydmljZSAmJiAhdGhpcy5ub01vZHVsZVNlcnZpY2UpIHtcclxuICAgICAgICAgICAgdGhpcy5fc3Vicy5wdXNoKFxyXG4gICAgICAgICAgICAgICAgdGhpcy5fbW9kdWxlU2VydmljZS5yZWFkb25seUNoYW5nZS5zdWJzY3JpYmUoKG1vZHVsZUluUmVhZG9ubHlTdGF0ZTogYm9vbGVhbikgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmhvc3RDb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Q29tcG9uZW50LnJlYWRvbmx5ID0gdGhpcy5ob3N0Q29tcG9uZW50LmZvcmNlUmVhZG9ubHkgfHwgbW9kdWxlSW5SZWFkb25seVN0YXRlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgdGhpcy5fbW9kdWxlU2VydmljZS5lcnJvclZhbGlkYXRpb25SZWNlaXZlZC5zdWJzY3JpYmUoKHZhbGlkYXRpb25SZXN1bHQ6IGFueSkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3NldEVycm9yUmVkQmFja2dyb3VuZEFmdGVyU2NyQ2ZnVmFsaWRhdGUodmFsaWRhdGlvblJlc3VsdCk7XHJcbiAgICAgICAgICAgICAgICB9KSxcclxuICAgICAgICAgICAgICAgIHRoaXMuX21vZHVsZVNlcnZpY2Uuc3VjY2Vzc2Z1bFVwZGF0ZS5zdWJzY3JpYmUoKCkgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICh0aGlzLmhvc3RDb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Q29tcG9uZW50LnJlZEVycm9yQmFja2dyb3VuZCA9IGZhbHNlO1xyXG4gICAgICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3VwZGF0ZUhvc3QoKTtcclxuXHJcbiAgICAgICAgLy8gdGhpcy5fdXBkYXRlSGVhZGVyU3RhdGVPbkhvc3RDb21wb25lbnQodHJ1ZSk7XHJcblxyXG4gICAgICAgIC8vIHNob3cgaW5pdGlhbCBlcnJvciBtZXNzYWdlIGlmIGFueVxyXG4gICAgICAgIGlmICghdGhpcy5ub01vZHVsZVNlcnZpY2UpIHtcclxuICAgICAgICAgICAgLy8gdGhpcy5fc2V0RXJyb3JSZWRCYWNrZ3JvdW5kQWZ0ZXJTY3JDZmdWYWxpZGF0ZSh0aGlzLl9tb2R1bGVTZXJ2aWNlLmxhc3RFcnJvcik7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuX3N1YnMuZm9yRWFjaChzdWIgPT4gc3ViLnVuc3Vic2NyaWJlKCkpO1xyXG4gICAgICAgIGlmICh0aGlzLl9pc0hlYWRlcikge1xyXG4gICAgICAgICAgICAvLyB0aGlzLl9kb3VibGVDbGlja0hlYWRlcnMuaGFuZGxlQ29sbGFwc2VhYmxlRGVzdHJveSh0aGlzLnNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3QpO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLl9lbGVtZW50ID0gdW5kZWZpbmVkO1xyXG4gICAgICAgIHRoaXMuaG9zdENvbXBvbmVudCA9IHVuZGVmaW5lZDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBTZXRzIGhvc3QgY29tcG9uZW50IHZpc2liaWxpdHksIHJlcXVpcmVkLCByZWFkb25seSBldGMuIGlmIHNwZWNpZmllZCBpbiBiYWNrZW5kIHNjcmVlbiBjb25maWcgT1IgbW9kdWxlIHJlYWRvbmx5IHN0YXR1cy5cclxuICAgIHByaXZhdGUgX3VwZGF0ZUhvc3QoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMuX21heVVwZGF0ZUhvc3QoKSB8fCB0aGlzLnNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgaWYgKCF0aGlzLnNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5vYmplY3RDb25maWdOYW1lID0gdGhpcy5zY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0O1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGNvbnN0IG15Q2ZnT2JqOiBPYmplY3RDb25maWd1cmF0aW9uID0gdGhpcy5fY29uZmlnU2VydmljZS5nZXRPYmplY3RDb25maWd1cmF0aW9uRm9yKHRoaXMuc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCk7XHJcbiAgICAgICAgICAgIGlmIChteUNmZ09iaikge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5fc2V0SG9zdFZpc2libGUobXlDZmdPYmouaW1tZWRpYXRlbHlWaXNpYmxlKCkpO1xyXG4gICAgICAgICAgICAgICAgLy8gaWYgKHRoaXMuaG9zdENvbXBvbmVudCBpbnN0YW5jZW9mIEdyaWRDb2x1bW5Db21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgIC8vICAgdGhpcy5ob3N0Q29tcG9uZW50LnJpZ2h0cyA9IG15Q2ZnT2JqLnJpZ2h0cztcclxuICAgICAgICAgICAgICAgIC8vIH1cclxuICAgICAgICAgICAgICAgIGlmICghdGhpcy5zY3JlZW5Db25maWdOYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5ob3N0Q29tcG9uZW50LnJlcXVpcmVkID0gbXlDZmdPYmouaXNSZXF1aXJlZCgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZWFkb25seSA9IHRoaXMuaG9zdENvbXBvbmVudC5mb3JjZVJlYWRvbmx5IHx8IHRoaXMuX21vZHVsZUluUmVhZG9ubHlNb2RlKCkgfHwgbXlDZmdPYmouaXNSZWFkb25seSgpO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5kZWNpbWFscyA9IG15Q2ZnT2JqLnNjYWxlO1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5tYXhMZW5ndGggPSBteUNmZ09iai5tYXhMZW5ndGg7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRIb3N0VmlzaWJsZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZWFkb25seSA9IHRoaXMuX21vZHVsZUluUmVhZG9ubHlNb2RlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTcGF3biBlcnJvciBtZXNzYWdlIHRvb2x0aXAgb250byBvdXIgaG9zdCBjb21wLCBpZiBhbnkgZXJyb3Igd2FzIG1lYW50IGZvciB0aGUgaG9zdCAoZm91bmQgYnkgc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCk7XHJcbiAgICAgKiBAcGFyYW0gZXJyb3JWYWxpZGF0aW9uIEEgdG9wLWxldmVsIGZ1bGwgdmFsaWRhdGlvbiByZXN1bHQsIGVpdGhlciBmcm9tIHRoZSBiYWNrZW5kIG9yIGZyb20gc29tZSBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIGVycm9yLlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIF9zZXRFcnJvclJlZEJhY2tncm91bmRBZnRlclNjckNmZ1ZhbGlkYXRlKGVycm9yVmFsaWRhdGlvbjogVmFsaWRhdGlvblJlc3VsdCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmhvc3RDb21wb25lbnQgJiYgZXJyb3JWYWxpZGF0aW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZXM6IFZhbGlkYXRpb25NZXNzYWdlW10gPSBlcnJvclZhbGlkYXRpb24uZ2V0QWxsRXJyb3JNZXNzYWdlc09mTXlWYWxpZGF0aW9uRmllbGRzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gZXJyb3JNZXNzYWdlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZXJyb3JNc2c6IFZhbGlkYXRpb25NZXNzYWdlID0gZXJyb3JNZXNzYWdlc1tpXTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbmZpZ05hbWU6IHN0cmluZyA9IHRoaXMuZGF0YU5hbWUgPyB0aGlzLmRhdGFOYW1lIDogdGhpcy5zY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0O1xyXG4gICAgICAgICAgICAgICAgaWYgKGVycm9yTXNnLmZpZWxkSWQgPT09IGNvbmZpZ05hbWUgJiYgdGhpcy5fZWxlbWVudCAvKiYmIHRoaXMuX3Byb3Blckhvc3QoZXJyb3JNc2cuYm9JZCkqLykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZWRFcnJvckJhY2tncm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX21vZHVsZUluUmVhZG9ubHlNb2RlKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5ub01vZHVsZVNlcnZpY2UgPyAodGhpcy5fbW9kdWxlU2VydmljZSA/IHRoaXMuX21vZHVsZVNlcnZpY2UucmVhZG9ubHkgOiBmYWxzZSkgOiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9tYXlVcGRhdGVIb3N0KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhIXRoaXMuaG9zdENvbXBvbmVudCAmJiAhdGhpcy5faXNUdXJuZWRPZmYgJiYgISF0aGlzLnNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3Q7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2V0SG9zdFZpc2libGUodmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5zY3JlZW5Db25maWdOYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5oaWRkZW4gPSAhdmlzaWJsZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdmlzaWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2hpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdoaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
158
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLWNvbmZpZ3VyYXRpb24uZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29yZWNvbXBvbmVudHMvc3JjL2xpYi9kaXJlY3RpdmVzL3NjcmVlbi1jb25maWd1cmF0aW9uL3NjcmVlbi1jb25maWd1cmF0aW9uLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBYSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sRUFBQyw4Q0FBOEMsRUFBQyxNQUFNLGlFQUFpRSxDQUFDO0FBRS9ILE9BQU8sRUFBQyw2QkFBNkIsRUFBQyxNQUFNLGlEQUFpRCxDQUFDO0FBQzlGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLG1DQUFtQyxDQUFDO0FBS3BFLGlHQUFpRztBQUNqRyx5SUFBeUk7QUFJekksTUFBTSxPQUFPLDRCQUE0QjtJQWlDckMsWUFFVyxhQUEyQyxFQUMxQyxRQUFvQjtJQUM1QixvRUFBb0U7SUFDNUQsY0FBNkMsRUFDN0MsU0FBb0I7SUFDNUIsMERBQTBEO0lBQ2xELGNBQWtDO1FBTm5DLGtCQUFhLEdBQWIsYUFBYSxDQUE4QjtRQUMxQyxhQUFRLEdBQVIsUUFBUSxDQUFZO1FBRXBCLG1CQUFjLEdBQWQsY0FBYyxDQUErQjtRQUM3QyxjQUFTLEdBQVQsU0FBUyxDQUFXO1FBRXBCLG1CQUFjLEdBQWQsY0FBYyxDQUFvQjtRQXZCdkMsOEJBQXlCLEdBQVksS0FBSyxDQUFDO1FBSTNDLG9CQUFlLEdBQVksS0FBSyxDQUFDO1FBTXhDLDBKQUEwSjtRQUNsSixpQkFBWSxHQUFZLEtBQUssQ0FBQztRQUU5QixVQUFLLEdBQW1CLEVBQUUsQ0FBQztRQVkvQixJQUFJLENBQUMs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bUNRLE1BQU0sU0FBQyw4Q0FBOEM7WUFsRDNDLFVBQVU7WUFLckIsNkJBQTZCO1lBTG9CLFNBQVM7WUFNMUQsaUJBQWlCOzs7d0NBV3BCLEtBQUssU0FBQywyQkFBMkI7dUJBWWpDLEtBQUs7d0NBR0wsS0FBSzs4QkFJTCxLQUFLOztBQUZOO0lBREMsWUFBWSxFQUFFOytFQUNtQztBQUlsRDtJQURDLFlBQVksRUFBRTtxRUFDeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0RpcmVjdGl2ZSwgRWxlbWVudFJlZiwgSW5qZWN0LCBJbnB1dCwgT25EZXN0cm95LCBSZW5kZXJlcjJ9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge0lucHV0Qm9vbGVhbn0gZnJvbSAnLi4vLi4vY29yZS9kZWNvcmF0b3IvaW5wdXQtYm9vbGVhbi5kZWNvcmF0b3InO1xyXG5pbXBvcnQge1NjcmVlbkNvbmZpZ0FkYXB0ZXJDb21wb25lbnR9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2NyZWVuLWNvbmZpZy1hZGFwdGVyLmNvbXBvbmVudC5pbnRlcmZhY2UnO1xyXG5pbXBvcnQge1NDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUV9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvc2NyZWVuLWNvbmZpZy1hZGFwdGVyLWNvbXBvbmVudC1pbnRlcmZhY2UtbmFtZSc7XHJcbmltcG9ydCB7U3Vic2NyaXB0aW9ufSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHtCYXNlTW9kdWxlU2NyZWVuQ29uZmlnU2VydmljZX0gZnJvbSAnLi4vLi4vc2VydmljZS9iYXNlLW1vZHVsZS1zY3JlZW4tY29uZmlnLnNlcnZpY2UnO1xyXG5pbXBvcnQge0Jhc2VNb2R1bGVTZXJ2aWNlfSBmcm9tICcuLi8uLi9zZXJ2aWNlL2Jhc2UtbW9kdWxlLnNlcnZpY2UnO1xyXG5pbXBvcnQge1ZhbGlkYXRpb25SZXN1bHR9IGZyb20gJ0Bjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL3ZhbGlkYXRpb24tcmVzdWx0JztcclxuaW1wb3J0IHtWYWxpZGF0aW9uTWVzc2FnZX0gZnJvbSAnQGNvbGlqbml0L2lvbmVjb25uZWN0b3IvYnVpbGQvbW9kZWwvdmFsaWRhdGlvbi1tZXNzYWdlJztcclxuaW1wb3J0IHtPYmplY3RDb25maWd1cmF0aW9ufSBmcm9tICdAY29saWpuaXQvaW9uZWNvbm5lY3Rvci9idWlsZC9tb2RlbC9vYmplY3QtY29uZmlndXJhdGlvbic7XHJcblxyXG4vLyBEaXJlY3RpdmUgdG8gcmVwcmVzZW50cyB0aGUgbWFya2VyIG9mIFwic2NyZWVuIGNvbmZpZyBuYW1lIElEJ3NcIiBvZiBjb21wb25lbnRzIHdpdGhpbiBhIG1vZHVsZS5cclxuLy8gTWFuaXB1bGF0ZXMgdmlzaWJpbGl0eSwgcmVhZG9ubHkgYW5kIG90aGVyIGR5bmFtaWMgc3RhdGVzIG9mIGFuIGlucHV0IGVsZW1lbnQgYWNjb3JkaW5nIHRvIGl0cyBkYi1mZXRjaGVkIHNjcmVlbiBjb25maWd1cmF0aW9uIG9iamVjdC5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0XSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNjcmVlbkNvbmZpZ3VyYXRpb25EaXJlY3RpdmUgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xyXG4gICAgQElucHV0KCdzY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0JylcclxuICAgIHB1YmxpYyBzZXQgc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCh2YWx1ZTogc3RyaW5nKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3NjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3QgPSB2YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5fdXBkYXRlSG9zdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3QoKTogc3RyaW5nIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdDtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIGRhdGFOYW1lOiBzdHJpbmc7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIEBJbnB1dEJvb2xlYW4oKVxyXG4gICAgcHVibGljIHNjcmVlbkNvbmZpZ05hdGl2ZUVsZW1lbnQ6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgQElucHV0Qm9vbGVhbigpXHJcbiAgICBwdWJsaWMgbm9Nb2R1bGVTZXJ2aWNlOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBfaXNIZWFkZXI6IGJvb2xlYW47XHJcblxyXG4gICAgcHJpdmF0ZSBfc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdDogc3RyaW5nO1xyXG5cclxuICAgIC8vIGZlYXR1cmUgdG9nZ2xlIGZvciBkZXZzIHNvIHlvdSBjYW4gc2VlIHRoZSB3aG9sZSBzY3JlZW4gd2l0aCBhbGwgaW5wdXRzIGV0YyBieSB0ZW1wb3JhcmlseSB0dXJuaW5nIG9mZiB0aGUgaGlkaW5nIGVmZmVjdHMgb2YgdGhpcyBkaXJlY3RpdmUgb24gaXRzIGhvc3RcclxuICAgIHByaXZhdGUgX2lzVHVybmVkT2ZmOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBfc3ViczogU3Vic2NyaXB0aW9uW10gPSBbXTtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcihcclxuICAgICAgICBASW5qZWN0KFNDUkVFTl9DT05GSUdfQURBUFRFUl9DT01QT05FTlRfSU5URVJGQUNFX05BTUUpXHJcbiAgICAgICAgcHVibGljIGhvc3RDb21wb25lbnQ6IFNjcmVlbkNvbmZpZ0FkYXB0ZXJDb21wb25lbnQsXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICAvLyB3ZSBtdXN0IGFsd2F5cyBoYXZlIGEgY29uZmlnIHNlcnZpY2UgdG8gZmV0Y2ggY29uZmlnIG9iamVjdHMgd2l0aFxyXG4gICAgICAgIHByaXZhdGUgX2NvbmZpZ1NlcnZpY2U6IEJhc2VNb2R1bGVTY3JlZW5Db25maWdTZXJ2aWNlLFxyXG4gICAgICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXHJcbiAgICAgICAgLy8gdG8gbWFrZSBob3N0IHJlYWRvbmx5IHdoZW4gTU9EVUxFIHN3aXRjaGVzIHRvIHJlYWRvbmx5OlxyXG4gICAgICAgIHByaXZhdGUgX21vZHVsZVNlcnZpY2U/OiBCYXNlTW9kdWxlU2VydmljZVxyXG4gICAgKSB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5wdXNoKHRoaXMuX2NvbmZpZ1NlcnZpY2UuY29uZmlnU2V0LnN1YnNjcmliZSgoY29uZmlnT2JqZWN0czogc3RyaW5nW10pID0+IHtcclxuICAgICAgICAgICAgaWYgKGNvbmZpZ09iamVjdHMgJiYgY29uZmlnT2JqZWN0cy5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl91cGRhdGVIb3N0KCk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9KSk7XHJcblxyXG4gICAgICAgIGlmICh0aGlzLl9tb2R1bGVTZXJ2aWNlICYmICF0aGlzLm5vTW9kdWxlU2VydmljZSkge1xyXG4gICAgICAgICAgICB0aGlzLl9zdWJzLnB1c2goXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9tb2R1bGVTZXJ2aWNlLnJlYWRvbmx5Q2hhbmdlLnN1YnNjcmliZSgobW9kdWxlSW5SZWFkb25seVN0YXRlOiBib29sZWFuKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaG9zdENvbXBvbmVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3RDb21wb25lbnQucmVhZG9ubHkgPSB0aGlzLmhvc3RDb21wb25lbnQuZm9yY2VSZWFkb25seSB8fCBtb2R1bGVJblJlYWRvbmx5U3RhdGU7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICB0aGlzLl9tb2R1bGVTZXJ2aWNlLmVycm9yVmFsaWRhdGlvblJlY2VpdmVkLnN1YnNjcmliZSgodmFsaWRhdGlvblJlc3VsdDogYW55KSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fc2V0RXJyb3JSZWRCYWNrZ3JvdW5kQWZ0ZXJTY3JDZmdWYWxpZGF0ZSh2YWxpZGF0aW9uUmVzdWx0KTtcclxuICAgICAgICAgICAgICAgIH0pLFxyXG4gICAgICAgICAgICAgICAgdGhpcy5fbW9kdWxlU2VydmljZS5zdWNjZXNzZnVsVXBkYXRlLnN1YnNjcmliZSgoKSA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuaG9zdENvbXBvbmVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3RDb21wb25lbnQucmVkRXJyb3JCYWNrZ3JvdW5kID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fdXBkYXRlSG9zdCgpO1xyXG5cclxuICAgICAgICAvLyB0aGlzLl91cGRhdGVIZWFkZXJTdGF0ZU9uSG9zdENvbXBvbmVudCh0cnVlKTtcclxuXHJcbiAgICAgICAgLy8gc2hvdyBpbml0aWFsIGVycm9yIG1lc3NhZ2UgaWYgYW55XHJcbiAgICAgICAgaWYgKCF0aGlzLm5vTW9kdWxlU2VydmljZSkge1xyXG4gICAgICAgICAgICAvLyB0aGlzLl9zZXRFcnJvclJlZEJhY2tncm91bmRBZnRlclNjckNmZ1ZhbGlkYXRlKHRoaXMuX21vZHVsZVNlcnZpY2UubGFzdEVycm9yKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5fc3Vicy5mb3JFYWNoKHN1YiA9PiBzdWIudW5zdWJzY3JpYmUoKSk7XHJcbiAgICAgICAgaWYgKHRoaXMuX2lzSGVhZGVyKSB7XHJcbiAgICAgICAgICAgIC8vIHRoaXMuX2RvdWJsZUNsaWNrSGVhZGVycy5oYW5kbGVDb2xsYXBzZWFibGVEZXN0cm95KHRoaXMuc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2VsZW1lbnQgPSB1bmRlZmluZWQ7XHJcbiAgICAgICAgdGhpcy5ob3N0Q29tcG9uZW50ID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG5cclxuICAgIC8vIFNldHMgaG9zdCBjb21wb25lbnQgdmlzaWJpbGl0eSwgcmVxdWlyZWQsIHJlYWRvbmx5IGV0Yy4gaWYgc3BlY2lmaWVkIGluIGJhY2tlbmQgc2NyZWVuIGNvbmZpZyBPUiBtb2R1bGUgcmVhZG9ubHkgc3RhdHVzLlxyXG4gICAgcHJpdmF0ZSBfdXBkYXRlSG9zdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5fbWF5VXBkYXRlSG9zdCgpIHx8IHRoaXMuc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICBpZiAoIXRoaXMuc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5ob3N0Q29tcG9uZW50Lm9iamVjdENvbmZpZ05hbWUgPSB0aGlzLnNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3Q7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgY29uc3QgbXlDZmdPYmo6IE9iamVjdENvbmZpZ3VyYXRpb24gPSB0aGlzLl9jb25maWdTZXJ2aWNlLmdldE9iamVjdENvbmZpZ3VyYXRpb25Gb3IodGhpcy5zY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0KTtcclxuICAgICAgICAgICAgaWYgKG15Q2ZnT2JqKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRIb3N0VmlzaWJsZShteUNmZ09iai5pbW1lZGlhdGVseVZpc2libGUoKSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZXF1aXJlZCA9IG15Q2ZnT2JqLmlzUmVxdWlyZWQoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3RDb21wb25lbnQucmVhZG9ubHkgPSB0aGlzLmhvc3RDb21wb25lbnQuZm9yY2VSZWFkb25seSB8fCB0aGlzLl9tb2R1bGVJblJlYWRvbmx5TW9kZSgpIHx8IG15Q2ZnT2JqLmlzUmVhZG9ubHkoKTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3RDb21wb25lbnQuZGVjaW1hbHMgPSBteUNmZ09iai5zY2FsZTtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLmhvc3RDb21wb25lbnQubWF4TGVuZ3RoID0gbXlDZmdPYmoubWF4TGVuZ3RoO1xyXG4gICAgICAgICAgICAgICAgICAgIGlmICgnY29uZmlnT2JqZWN0JyBpbiB0aGlzLmhvc3RDb21wb25lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5jb25maWdPYmplY3QgPSBteUNmZ09iajtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLl9zZXRIb3N0VmlzaWJsZShmYWxzZSk7XHJcbiAgICAgICAgICAgICAgICBpZiAoIXRoaXMuc2NyZWVuQ29uZmlnTmF0aXZlRWxlbWVudCkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZWFkb25seSA9IHRoaXMuX21vZHVsZUluUmVhZG9ubHlNb2RlKCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBTcGF3biBlcnJvciBtZXNzYWdlIHRvb2x0aXAgb250byBvdXIgaG9zdCBjb21wLCBpZiBhbnkgZXJyb3Igd2FzIG1lYW50IGZvciB0aGUgaG9zdCAoZm91bmQgYnkgc2NyZWVuQ29uZmlndXJhdGlvbk9iamVjdCk7XHJcbiAgICAgKiBAcGFyYW0gZXJyb3JWYWxpZGF0aW9uIEEgdG9wLWxldmVsIGZ1bGwgdmFsaWRhdGlvbiByZXN1bHQsIGVpdGhlciBmcm9tIHRoZSBiYWNrZW5kIG9yIGZyb20gc29tZSBjbGllbnQtc2lkZSB2YWxpZGF0aW9uIGVycm9yLlxyXG4gICAgICovXHJcbiAgICBwcml2YXRlIF9zZXRFcnJvclJlZEJhY2tncm91bmRBZnRlclNjckNmZ1ZhbGlkYXRlKGVycm9yVmFsaWRhdGlvbjogVmFsaWRhdGlvblJlc3VsdCk6IHZvaWQge1xyXG4gICAgICAgIGlmICh0aGlzLmhvc3RDb21wb25lbnQgJiYgZXJyb3JWYWxpZGF0aW9uKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGVycm9yTWVzc2FnZXM6IFZhbGlkYXRpb25NZXNzYWdlW10gPSBlcnJvclZhbGlkYXRpb24uZ2V0QWxsRXJyb3JNZXNzYWdlc09mTXlWYWxpZGF0aW9uRmllbGRzKCk7XHJcbiAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gZXJyb3JNZXNzYWdlcy5sZW5ndGg7IGkgPCBsZW47IGkrKykge1xyXG4gICAgICAgICAgICAgICAgY29uc3QgZXJyb3JNc2c6IFZhbGlkYXRpb25NZXNzYWdlID0gZXJyb3JNZXNzYWdlc1tpXTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IGNvbmZpZ05hbWU6IHN0cmluZyA9IHRoaXMuZGF0YU5hbWUgPyB0aGlzLmRhdGFOYW1lIDogdGhpcy5zY3JlZW5Db25maWd1cmF0aW9uT2JqZWN0O1xyXG4gICAgICAgICAgICAgICAgaWYgKGVycm9yTXNnLmZpZWxkSWQgPT09IGNvbmZpZ05hbWUgJiYgdGhpcy5fZWxlbWVudCAvKiYmIHRoaXMuX3Byb3Blckhvc3QoZXJyb3JNc2cuYm9JZCkqLykge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5yZWRFcnJvckJhY2tncm91bmQgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgX21vZHVsZUluUmVhZG9ubHlNb2RlKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhdGhpcy5ub01vZHVsZVNlcnZpY2UgPyAodGhpcy5fbW9kdWxlU2VydmljZSA/IHRoaXMuX21vZHVsZVNlcnZpY2UucmVhZG9ubHkgOiBmYWxzZSkgOiBmYWxzZTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIF9tYXlVcGRhdGVIb3N0KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiAhIXRoaXMuaG9zdENvbXBvbmVudCAmJiAhdGhpcy5faXNUdXJuZWRPZmYgJiYgISF0aGlzLnNjcmVlbkNvbmZpZ3VyYXRpb25PYmplY3Q7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBfc2V0SG9zdFZpc2libGUodmlzaWJsZTogYm9vbGVhbik6IHZvaWQge1xyXG4gICAgICAgIGlmICghdGhpcy5zY3JlZW5Db25maWdOYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgIHRoaXMuaG9zdENvbXBvbmVudC5oaWRkZW4gPSAhdmlzaWJsZTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5fZWxlbWVudCAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgIGlmICghdmlzaWJsZSkge1xyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudCwgJ2hpZGRlbicpO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5yZW1vdmVDbGFzcyh0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQsICdoaWRkZW4nKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLWNvbmZpZy1hZGFwdGVyLmNvbXBvbmVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvc2NyZWVuLWNvbmZpZy1hZGFwdGVyLmNvbXBvbmVudC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgU2NyZWVuQ29uZmlnQWRhcHRlckNvbXBvbmVudCB7XHJcbiAgb2JqZWN0Q29uZmlnTmFtZTogc3RyaW5nO1xyXG4gIGhpZGRlbjogYm9vbGVhbjtcclxuICByZXF1aXJlZDogYm9vbGVhbjtcclxuICBmb3JjZVJlYWRvbmx5OiBib29sZWFuO1xyXG4gIHJlYWRvbmx5OiBib29sZWFuO1xyXG4gIG1heExlbmd0aDogbnVtYmVyO1xyXG4gIGRlY2ltYWxzOiBudW1iZXI7XHJcbiAgcmVkRXJyb3JCYWNrZ3JvdW5kOiBib29sZWFuO1xyXG59XHJcbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2NyZWVuLWNvbmZpZy1hZGFwdGVyLmNvbXBvbmVudC5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb3JlY29tcG9uZW50cy9zcmMvbGliL2ludGVyZmFjZXMvc2NyZWVuLWNvbmZpZy1hZGFwdGVyLmNvbXBvbmVudC5pbnRlcmZhY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7T2JqZWN0Q29uZmlndXJhdGlvbn0gZnJvbSBcIkBjb2xpam5pdC9pb25lY29ubmVjdG9yL2J1aWxkL21vZGVsL29iamVjdC1jb25maWd1cmF0aW9uXCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNjcmVlbkNvbmZpZ0FkYXB0ZXJDb21wb25lbnQge1xyXG4gIG9iamVjdENvbmZpZ05hbWU6IHN0cmluZztcclxuICBoaWRkZW46IGJvb2xlYW47XHJcbiAgcmVxdWlyZWQ6IGJvb2xlYW47XHJcbiAgZm9yY2VSZWFkb25seTogYm9vbGVhbjtcclxuICByZWFkb25seTogYm9vbGVhbjtcclxuICBtYXhMZW5ndGg6IG51bWJlcjtcclxuICBkZWNpbWFsczogbnVtYmVyO1xyXG4gIHJlZEVycm9yQmFja2dyb3VuZDogYm9vbGVhbjtcclxuICBjb25maWdPYmplY3Q/OiBPYmplY3RDb25maWd1cmF0aW9uO1xyXG5cclxufVxyXG4iXX0=
@@ -17,6 +17,7 @@ import * as i1 from '@angular/cdk/overlay';
17
17
  import { OverlayConfig, Overlay } from '@angular/cdk/overlay';
18
18
  import { ComponentPortal } from '@angular/cdk/portal';
19
19
  import * as XLSX from 'xlsx';
20
+ import { UserRightType } from '@colijnit/ioneconnector/build/enum/user-right-type.enum';
20
21
  import { ScrollingModule } from '@angular/cdk/scrolling';
21
22
  import { ArrayUtils as ArrayUtils$1 } from '@colijnit/ioneconnector/build/utils/array-utils';
22
23
  import { DEFAULT_GET_OBJECT_CONFIGURATION_PARAMS } from '@colijnit/ioneconnector/build/model/default-get-object-configurations-params';
@@ -10636,9 +10637,6 @@ class ViewModeButtonsComponent {
10636
10637
  this.showViewModes = [this.viewModes.List, this.viewModes.Grid, this.viewModes.Tiles];
10637
10638
  this.viewModeChange = new EventEmitter();
10638
10639
  }
10639
- showClass() {
10640
- return true;
10641
- }
10642
10640
  set activeViewMode(value) {
10643
10641
  this._activeViewMode = value;
10644
10642
  this.viewModeChange.emit(this._activeViewMode);
@@ -10646,8 +10644,13 @@ class ViewModeButtonsComponent {
10646
10644
  get activeViewMode() {
10647
10645
  return this._activeViewMode;
10648
10646
  }
10647
+ showClass() {
10648
+ return true;
10649
+ }
10649
10650
  ngOnInit() {
10650
- this.activeViewMode = this.showViewModes.includes(ContentViewMode.List) ? ContentViewMode.List : this.showViewModes[0];
10651
+ if (!this.activeViewMode) {
10652
+ this.activeViewMode = this.showViewModes.includes(ContentViewMode.List) ? ContentViewMode.List : this.showViewModes[0];
10653
+ }
10651
10654
  }
10652
10655
  }
10653
10656
  ViewModeButtonsComponent.decorators = [
@@ -10682,6 +10685,7 @@ ViewModeButtonsComponent.ctorParameters = () => [
10682
10685
  ViewModeButtonsComponent.propDecorators = {
10683
10686
  showViewModes: [{ type: Input }],
10684
10687
  viewModeChange: [{ type: Output }],
10688
+ activeViewMode: [{ type: Input }],
10685
10689
  showClass: [{ type: HostBinding, args: ["class.co-view-mode-buttons",] }]
10686
10690
  };
10687
10691
 
@@ -11346,7 +11350,7 @@ class ListOfIconsComponent {
11346
11350
  this.showMenu = !this.showMenu;
11347
11351
  }
11348
11352
  selectItem(item) {
11349
- if (item.label === "Logistiek") {
11353
+ if (item.label.toUpperCase() === 'LOGISTICS') {
11350
11354
  this.showSubCategories = !this.showSubCategories;
11351
11355
  return;
11352
11356
  }
@@ -11845,6 +11849,14 @@ class FilterItemComponent {
11845
11849
  get model() {
11846
11850
  return this._model;
11847
11851
  }
11852
+ set configObject(value) {
11853
+ this._configObject = value;
11854
+ this.expanded = (this._configObject.rights === UserRightType.ReadWrite);
11855
+ this.hidden = (this._configObject.rights < UserRightType.Read);
11856
+ }
11857
+ get configObject() {
11858
+ return this._configObject;
11859
+ }
11848
11860
  ngOnInit() {
11849
11861
  this.setToInitialLimit();
11850
11862
  this.showButton = this.valueSelected();
@@ -12274,6 +12286,7 @@ FilterItemComponent.decorators = [
12274
12286
  [placeholder]="searchPlaceholder"
12275
12287
  [model]="filterText"
12276
12288
  (modelChange)="applyFilter($event)"
12289
+ [readonly]="readonly"
12277
12290
  >
12278
12291
  </co-input-text>
12279
12292
  <div class="no-results" *ngIf="filteredCollection?.length === 0">
@@ -12288,11 +12301,13 @@ FilterItemComponent.decorators = [
12288
12301
  [model]="option.checked"
12289
12302
  [clickableLabel]="false"
12290
12303
  (modelChange)="handleModelChange(option)"
12304
+ [readonly]="readonly"
12291
12305
  ></co-input-checkbox>
12292
12306
  <co-input-radio-button *ngIf="mode === modes.SingleSelectList"
12293
12307
  [label]="option.description"
12294
12308
  [model]="option.checked"
12295
12309
  (modelChange)="handleModelChange(option)"
12310
+ [readonly]="readonly"
12296
12311
  ></co-input-radio-button>
12297
12312
  <div class="co-filter-item-amount" *ngIf="option.count"
12298
12313
  [textContent]="option.count.toString() | append: ')' | prepend: ' ('"
@@ -12327,6 +12342,7 @@ FilterItemComponent.decorators = [
12327
12342
  [excludePlusMinus]="true"
12328
12343
  [label]="'FROM' | coreLocalize"
12329
12344
  [(model)]="sliderMin"
12345
+ [readonly]="readonly"
12330
12346
  (focusout)="handleModelChange(sliderMin)"
12331
12347
  ></co-input-text>
12332
12348
  <co-input-text
@@ -12337,6 +12353,7 @@ FilterItemComponent.decorators = [
12337
12353
  [excludePlusMinus]="true"
12338
12354
  [label]="'TO' | coreLocalize"
12339
12355
  [(model)]="sliderMax"
12356
+ [readonly]="readonly"
12340
12357
  (focusout)="handleModelChange(sliderMax)"
12341
12358
  ></co-input-text>
12342
12359
  </div>
@@ -12349,6 +12366,7 @@ FilterItemComponent.decorators = [
12349
12366
  [excludePlusMinus]="true"
12350
12367
  [label]="'FROM' | coreLocalize"
12351
12368
  [(model)]="sliderMin"
12369
+ [readonly]="readonly"
12352
12370
  (focusout)="handleModelChange(sliderMin)"
12353
12371
  ></co-input-text>
12354
12372
  <co-input-text
@@ -12359,6 +12377,7 @@ FilterItemComponent.decorators = [
12359
12377
  [excludePlusMinus]="true"
12360
12378
  [label]="'TO' | coreLocalize"
12361
12379
  [(model)]="sliderMax"
12380
+ [readonly]="readonly"
12362
12381
  (focusout)="handleModelChange(sliderMax)"
12363
12382
  ></co-input-text>
12364
12383
  </div>
@@ -12366,6 +12385,7 @@ FilterItemComponent.decorators = [
12366
12385
  <co-input-checkbox
12367
12386
  [(model)]="model"
12368
12387
  (modelChange)="handleModelChange($event)"
12388
+ [readonly]="readonly"
12369
12389
  [label]="placeholder">
12370
12390
  </co-input-checkbox>
12371
12391
  </div>
@@ -12374,21 +12394,22 @@ FilterItemComponent.decorators = [
12374
12394
  <co-input-checkbox
12375
12395
  [(model)]="checkBoxToTextModel"
12376
12396
  (modelChange)="handleModelChange($event)"
12397
+ [readonly]="readonly"
12377
12398
  [label]="placeholder"></co-input-checkbox>
12378
12399
  </div>
12379
12400
  <div class="co-filter-item-textfield-content" *ngIf="mode === modes.TextField">
12380
12401
  <co-input-text
12381
- [(model)]="model"
12402
+ [(model)]="model" [readonly]="readonly"
12382
12403
  (modelChange)="handleModelChange($event)"></co-input-text>
12383
12404
  </div>
12384
12405
  <div class="co-filter-item-dateField-content" *ngIf="mode === modes.DateField">
12385
12406
  <co-input-date
12386
- [(model)]="model"
12407
+ [(model)]="model" [readonly]="readonly"
12387
12408
  (modelChange)="handleModelChange($event)"
12388
12409
  ></co-input-date>
12389
12410
  </div>
12390
12411
  <div class="co-filter-item-dateField-content" *ngIf="mode === modes.DateRangeField">
12391
- <co-input-date-range
12412
+ <co-input-date-range [readonly]="readonly"
12392
12413
  [model]="[dateRangeStart, dateRangeEnd]"
12393
12414
  (modelChange)="handleModelChange($event)"
12394
12415
  [placeholder]="'SELECT_DATE' | coreLocalize">
@@ -12401,7 +12422,11 @@ FilterItemComponent.decorators = [
12401
12422
 
12402
12423
  `,
12403
12424
  encapsulation: ViewEncapsulation.None,
12404
- changeDetection: ChangeDetectionStrategy.OnPush
12425
+ changeDetection: ChangeDetectionStrategy.OnPush,
12426
+ providers: [{
12427
+ provide: SCREEN_CONFIG_ADAPTER_COMPONENT_INTERFACE_NAME,
12428
+ useExisting: forwardRef(() => FilterItemComponent)
12429
+ }]
12405
12430
  },] }
12406
12431
  ];
12407
12432
  FilterItemComponent.ctorParameters = () => [
@@ -12430,7 +12455,8 @@ FilterItemComponent.propDecorators = {
12430
12455
  modelChange: [{ type: Output }],
12431
12456
  collectionChange: [{ type: Output }],
12432
12457
  filterButtonClicked: [{ type: Output }],
12433
- filteredCollection: [{ type: HostBinding, args: ["class.co-filter-item",] }]
12458
+ filteredCollection: [{ type: HostBinding, args: ["class.co-filter-item",] }],
12459
+ hidden: [{ type: HostBinding, args: ['class.co-hidden',] }]
12434
12460
  };
12435
12461
 
12436
12462
  // A pipe for prepending strings to other strings in view templates.
@@ -13465,14 +13491,14 @@ class ScreenConfigurationDirective {
13465
13491
  const myCfgObj = this._configService.getObjectConfigurationFor(this.screenConfigurationObject);
13466
13492
  if (myCfgObj) {
13467
13493
  this._setHostVisible(myCfgObj.immediatelyVisible());
13468
- // if (this.hostComponent instanceof GridColumnComponent) {
13469
- // this.hostComponent.rights = myCfgObj.rights;
13470
- // }
13471
13494
  if (!this.screenConfigNativeElement) {
13472
13495
  this.hostComponent.required = myCfgObj.isRequired();
13473
13496
  this.hostComponent.readonly = this.hostComponent.forceReadonly || this._moduleInReadonlyMode() || myCfgObj.isReadonly();
13474
13497
  this.hostComponent.decimals = myCfgObj.scale;
13475
13498
  this.hostComponent.maxLength = myCfgObj.maxLength;
13499
+ if ('configObject' in this.hostComponent) {
13500
+ this.hostComponent.configObject = myCfgObj;
13501
+ }
13476
13502
  }
13477
13503
  }
13478
13504
  else {