@indigina/kendo 1.2.64 → 1.2.66

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.
@@ -10,7 +10,7 @@ export class MenuItemGroupComponent {
10
10
  constructor(router) {
11
11
  this.router = router;
12
12
  this.collapsed = false;
13
- this.router.isActive = function (url, matchOptions) {
13
+ this.router.isActive = function (url) {
14
14
  return this.routerState.snapshot.root.children?.length
15
15
  ? url.toString() ===
16
16
  urlDelimiter +
@@ -55,12 +55,12 @@ export class MenuItemGroupComponent {
55
55
  }
56
56
  }
57
57
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MenuItemGroupComponent, deps: [{ token: i1.Router }], target: i0.ɵɵFactoryTarget.Component }); }
58
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: MenuItemGroupComponent, selector: "[menu-item-group]", inputs: { item: "item" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"item.items && item.items.length\">\n <a (click)=\"collapseChild(item, $event)\">\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <ul\n [ngClass]=\"\n item.expanded == true\n ? 'nav nav-second-level collapse in'\n : 'nav nav-second-level collapse'\n \"\n >\n <ng-template ngFor let-item [ngForOf]=\"item.items\">\n <li menu-item-group [item]=\"item\"></li>\n </ng-template>\n </ul>\n</ng-container>\n<ng-container *ngIf=\"!item.items || !item.items.length\">\n <a\n *ngIf=\"item.link\"\n routerLink=\"{{ item.link }}\"\n routerLinkActive=\"active-route\"\n class=\"sub-menu-link\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <a\n *ngIf=\"item.url\"\n class=\"sub-menu-link\"\n href=\"{{ item.url }}\"\n target=\"_blank\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n</ng-container>\n<ng-template #labelWithIcon>\n <i class=\"menu-icon fa {{ item.iconClass }}\"></i>\n <span class=\"nav-label\">{{ item.text | translate }}</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: MenuItemGroupComponent, selector: "[menu-item-group]", inputs: ["item"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
58
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: MenuItemGroupComponent, selector: "[menu-item-group]", inputs: { item: "item" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"item.items && item.items.length\">\n <a (click)=\"collapseChild(item, $event)\">\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <ul\n [ngClass]=\"\n item.expanded\n ? 'nav nav-second-level collapse in'\n : 'nav nav-second-level collapse'\n \"\n >\n <ng-template ngFor let-childItem [ngForOf]=\"item.items\">\n <li\n [ngClass]=\"\n childItem.expanded\n ? 'nav nav-third-level collapse in'\n : 'nav nav-third-level collapse'\n \"\n menu-item-group\n [item]=\"childItem\"\n ></li>\n </ng-template>\n </ul>\n</ng-container>\n<ng-container *ngIf=\"!item.items || !item.items.length\">\n <a\n *ngIf=\"item.link\"\n routerLink=\"{{ item.link }}\"\n routerLinkActive=\"active-route\"\n class=\"sub-menu-link\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <a\n *ngIf=\"item.url\"\n class=\"sub-menu-link\"\n href=\"{{ item.url }}\"\n target=\"_blank\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n</ng-container>\n<ng-template #labelWithIcon>\n <i class=\"menu-icon fa {{ item.iconClass }}\"></i>\n <span class=\"nav-label\">{{ item.text | translate }}</span>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i1.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "component", type: MenuItemGroupComponent, selector: "[menu-item-group]", inputs: ["item"] }, { kind: "pipe", type: i3.TranslatePipe, name: "translate" }] }); }
59
59
  }
60
60
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MenuItemGroupComponent, decorators: [{
61
61
  type: Component,
62
- args: [{ selector: '[menu-item-group]', template: "<ng-container *ngIf=\"item.items && item.items.length\">\n <a (click)=\"collapseChild(item, $event)\">\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <ul\n [ngClass]=\"\n item.expanded == true\n ? 'nav nav-second-level collapse in'\n : 'nav nav-second-level collapse'\n \"\n >\n <ng-template ngFor let-item [ngForOf]=\"item.items\">\n <li menu-item-group [item]=\"item\"></li>\n </ng-template>\n </ul>\n</ng-container>\n<ng-container *ngIf=\"!item.items || !item.items.length\">\n <a\n *ngIf=\"item.link\"\n routerLink=\"{{ item.link }}\"\n routerLinkActive=\"active-route\"\n class=\"sub-menu-link\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <a\n *ngIf=\"item.url\"\n class=\"sub-menu-link\"\n href=\"{{ item.url }}\"\n target=\"_blank\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n</ng-container>\n<ng-template #labelWithIcon>\n <i class=\"menu-icon fa {{ item.iconClass }}\"></i>\n <span class=\"nav-label\">{{ item.text | translate }}</span>\n</ng-template>\n" }]
62
+ args: [{ selector: '[menu-item-group]', template: "<ng-container *ngIf=\"item.items && item.items.length\">\n <a (click)=\"collapseChild(item, $event)\">\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <ul\n [ngClass]=\"\n item.expanded\n ? 'nav nav-second-level collapse in'\n : 'nav nav-second-level collapse'\n \"\n >\n <ng-template ngFor let-childItem [ngForOf]=\"item.items\">\n <li\n [ngClass]=\"\n childItem.expanded\n ? 'nav nav-third-level collapse in'\n : 'nav nav-third-level collapse'\n \"\n menu-item-group\n [item]=\"childItem\"\n ></li>\n </ng-template>\n </ul>\n</ng-container>\n<ng-container *ngIf=\"!item.items || !item.items.length\">\n <a\n *ngIf=\"item.link\"\n routerLink=\"{{ item.link }}\"\n routerLinkActive=\"active-route\"\n class=\"sub-menu-link\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n <a\n *ngIf=\"item.url\"\n class=\"sub-menu-link\"\n href=\"{{ item.url }}\"\n target=\"_blank\"\n (click)=\"collapseChild(item, $event)\"\n >\n <ng-container *ngIf=\"!item.iconClass; else labelWithIcon\">\n {{ item.text | translate }}\n </ng-container>\n </a>\n</ng-container>\n<ng-template #labelWithIcon>\n <i class=\"menu-icon fa {{ item.iconClass }}\"></i>\n <span class=\"nav-label\">{{ item.text | translate }}</span>\n</ng-template>\n" }]
63
63
  }], ctorParameters: () => [{ type: i1.Router }], propDecorators: { item: [{
64
64
  type: Input
65
65
  }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9tZW51LWl0ZW0tZ3JvdXAvbWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9tZW51LWl0ZW0tZ3JvdXAvbWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBRUwsYUFBYSxHQUlkLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBRXpCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUM7QUFPbkMsTUFBTSxPQUFPLHNCQUFzQjtJQUtqQyxZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUhsQyxjQUFTLEdBQVksS0FBSyxDQUFDO1FBSXpCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLFVBQ3JCLEdBQXFCLEVBQ3JCLFlBQTRDO1lBRTVDLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxNQUFNO2dCQUNwRCxDQUFDLENBQUMsR0FBRyxDQUFDLFFBQVEsRUFBRTtvQkFDWixZQUFZO3dCQUNWLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQy9ELElBQUksQ0FDTCxDQUFDLENBQUMsQ0FBQztnQkFDVixDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ1osQ0FBQyxDQUFDO0lBQ0osQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ3JELElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ3JDLElBQUksS0FBSyxZQUFZLGFBQWEsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsQ0FBQzthQUN0RDtRQUNILENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELGFBQWEsQ0FBQyxVQUFvQixFQUFFLEtBQWlCO1FBQ25ELElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtZQUNoQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsSUFBSTtnQkFDbEMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVE7Z0JBQ25CLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztRQUVwQixJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssSUFBSSxVQUFVLENBQUMsS0FBSyxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDdEQsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLElBQUksQ0FBQztTQUM5QjthQUFNO1lBQ0wsS0FBSyxDQUFDLGNBQWMsQ0FBQyxHQUFHLEtBQUssQ0FBQztTQUMvQjtJQUNILENBQUM7SUFFTyxhQUFhO1FBQ25CLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQy9DLE9BQU8sQ0FBQyxDQUFDLElBQUksS0FBSyxTQUFTLElBQUksQ0FBQyxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsVUFBVSxDQUFDO1FBQzVELENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVPLGFBQWEsQ0FBQyxRQUE2QjtRQUNqRCxJQUFJLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU0sRUFBRTtZQUNsQyxJQUFJLENBQUMsVUFBVTtnQkFDYixZQUFZO29CQUNaLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVELElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUN0QjtJQUNILENBQUM7OEdBM0RVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHdHQ2xCbkMsbTNDQThDQSwyMEJENUJhLHNCQUFzQjs7MkZBQXRCLHNCQUFzQjtrQkFMbEMsU0FBUzsrQkFDRSxtQkFBbUI7MkVBS3BCLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIE9uQ2hhbmdlcywgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNZW51SXRlbSB9IGZyb20gJy4uL01lbnVJdGVtJztcbmltcG9ydCB7XG4gIFJvdXRlcixcbiAgTmF2aWdhdGlvbkVuZCxcbiAgUm91dGVyU3RhdGVTbmFwc2hvdCxcbiAgVXJsVHJlZSxcbiAgSXNBY3RpdmVNYXRjaE9wdGlvbnMsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5cbmNvbnN0IHVybERlbGltaXRlciA9ICcvJztcbmNvbnN0IGNvbGxhcHNlZEV2ZW50ID0gJ2NvbGxhcHNlZCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ1ttZW51LWl0ZW0tZ3JvdXBdJyxcbiAgdGVtcGxhdGVVcmw6ICcuL21lbnUtaXRlbS1ncm91cC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21lbnUtaXRlbS1ncm91cC5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE1lbnVJdGVtR3JvdXBDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uSW5pdCB7XG4gIEBJbnB1dCgpIGl0ZW06IE1lbnVJdGVtO1xuICBjb2xsYXBzZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHJpdmF0ZSBhY3R1YWxQYXRoOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByb3V0ZXI6IFJvdXRlcikge1xuICAgIHRoaXMucm91dGVyLmlzQWN0aXZlID0gZnVuY3Rpb24gKFxuICAgICAgdXJsOiBzdHJpbmcgfCBVcmxUcmVlLFxuICAgICAgbWF0Y2hPcHRpb25zOiBib29sZWFuIHwgSXNBY3RpdmVNYXRjaE9wdGlvbnMsXG4gICAgKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5yb3V0ZXJTdGF0ZS5zbmFwc2hvdC5yb290LmNoaWxkcmVuPy5sZW5ndGhcbiAgICAgICAgPyB1cmwudG9TdHJpbmcoKSA9PT1cbiAgICAgICAgICAgIHVybERlbGltaXRlciArXG4gICAgICAgICAgICAgIHRoaXMucm91dGVyU3RhdGUuc25hcHNob3Qucm9vdC5jaGlsZHJlblswXS5yb3V0ZUNvbmZpZy5wYXRoLnNwbGl0KFxuICAgICAgICAgICAgICAgICcvOicsXG4gICAgICAgICAgICAgIClbMF1cbiAgICAgICAgOiBmYWxzZTtcbiAgICB9O1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRBY3R1YWxQYXRoKHRoaXMucm91dGVyLnJvdXRlclN0YXRlLnNuYXBzaG90KTtcbiAgICB0aGlzLnJvdXRlci5ldmVudHMuc3Vic2NyaWJlKChldmVudCkgPT4ge1xuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCkge1xuICAgICAgICB0aGlzLnNldEFjdHVhbFBhdGgodGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgdGhpcy5zZXRJdGVtRXhwYW5kKCk7XG4gIH1cblxuICBjb2xsYXBzZUNoaWxkKGFjdGl2ZUl0ZW06IE1lbnVJdGVtLCBldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuaXRlbS5leHBhbmRlZCA9XG4gICAgICB0aGlzLml0ZW0udGV4dCA9PT0gYWN0aXZlSXRlbS50ZXh0ICYmXG4gICAgICAhdGhpcy5pdGVtLmV4cGFuZGVkICYmXG4gICAgICAhIXRoaXMuaXRlbS5pdGVtcztcblxuICAgIGlmICghYWN0aXZlSXRlbS5pdGVtcyB8fCBhY3RpdmVJdGVtLml0ZW1zLmxlbmd0aCA9PT0gMCkge1xuICAgICAgZXZlbnRbY29sbGFwc2VkRXZlbnRdID0gdHJ1ZTtcbiAgICB9IGVsc2Uge1xuICAgICAgZXZlbnRbY29sbGFwc2VkRXZlbnRdID0gZmFsc2U7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRJdGVtRXhwYW5kKCkge1xuICAgIHRoaXMuaXRlbS5leHBhbmRlZCA9IHRoaXMuaXRlbS5pdGVtcz8uc29tZSgoeCkgPT4ge1xuICAgICAgcmV0dXJuIHgubGluayAhPT0gdW5kZWZpbmVkICYmIHgubGluayA9PT0gdGhpcy5hY3R1YWxQYXRoO1xuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzZXRBY3R1YWxQYXRoKHNuYXBzaG90OiBSb3V0ZXJTdGF0ZVNuYXBzaG90KTogdm9pZCB7XG4gICAgaWYgKHNuYXBzaG90LnJvb3QuY2hpbGRyZW4/Lmxlbmd0aCkge1xuICAgICAgdGhpcy5hY3R1YWxQYXRoID1cbiAgICAgICAgdXJsRGVsaW1pdGVyICtcbiAgICAgICAgc25hcHNob3Qucm9vdC5jaGlsZHJlblswXS5yb3V0ZUNvbmZpZy5wYXRoLnNwbGl0KCcvOicpWzBdO1xuICAgICAgdGhpcy5zZXRJdGVtRXhwYW5kKCk7XG4gICAgfVxuICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5pdGVtcyAmJiBpdGVtLml0ZW1zLmxlbmd0aFwiPlxuICA8YSAoY2xpY2spPVwiY29sbGFwc2VDaGlsZChpdGVtLCAkZXZlbnQpXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmljb25DbGFzczsgZWxzZSBsYWJlbFdpdGhJY29uXCI+XG4gICAgICB7eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuICA8dWxcbiAgICBbbmdDbGFzc109XCJcbiAgICAgIGl0ZW0uZXhwYW5kZWQgPT0gdHJ1ZVxuICAgICAgICA/ICduYXYgbmF2LXNlY29uZC1sZXZlbCBjb2xsYXBzZSBpbidcbiAgICAgICAgOiAnbmF2IG5hdi1zZWNvbmQtbGV2ZWwgY29sbGFwc2UnXG4gICAgXCJcbiAgPlxuICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtaXRlbSBbbmdGb3JPZl09XCJpdGVtLml0ZW1zXCI+XG4gICAgICA8bGkgbWVudS1pdGVtLWdyb3VwIFtpdGVtXT1cIml0ZW1cIj48L2xpPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvdWw+XG48L25nLWNvbnRhaW5lcj5cbjxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5pdGVtcyB8fCAhaXRlbS5pdGVtcy5sZW5ndGhcIj5cbiAgPGFcbiAgICAqbmdJZj1cIml0ZW0ubGlua1wiXG4gICAgcm91dGVyTGluaz1cInt7IGl0ZW0ubGluayB9fVwiXG4gICAgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZS1yb3V0ZVwiXG4gICAgY2xhc3M9XCJzdWItbWVudS1saW5rXCJcbiAgICAoY2xpY2spPVwiY29sbGFwc2VDaGlsZChpdGVtLCAkZXZlbnQpXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5pY29uQ2xhc3M7IGVsc2UgbGFiZWxXaXRoSWNvblwiPlxuICAgICAge3sgaXRlbS50ZXh0IHwgdHJhbnNsYXRlIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvYT5cbiAgPGFcbiAgICAqbmdJZj1cIml0ZW0udXJsXCJcbiAgICBjbGFzcz1cInN1Yi1tZW51LWxpbmtcIlxuICAgIGhyZWY9XCJ7eyBpdGVtLnVybCB9fVwiXG4gICAgdGFyZ2V0PVwiX2JsYW5rXCJcbiAgICAoY2xpY2spPVwiY29sbGFwc2VDaGlsZChpdGVtLCAkZXZlbnQpXCJcbiAgPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5pY29uQ2xhc3M7IGVsc2UgbGFiZWxXaXRoSWNvblwiPlxuICAgICAge3sgaXRlbS50ZXh0IHwgdHJhbnNsYXRlIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvYT5cbjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNsYWJlbFdpdGhJY29uPlxuICA8aSBjbGFzcz1cIm1lbnUtaWNvbiBmYSB7eyBpdGVtLmljb25DbGFzcyB9fVwiPjwvaT5cbiAgPHNwYW4gY2xhc3M9XCJuYXYtbGFiZWxcIj57eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG48L25nLXRlbXBsYXRlPlxuIl19
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9tZW51LWl0ZW0tZ3JvdXAvbWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9tZW51LWl0ZW0tZ3JvdXAvbWVudS1pdGVtLWdyb3VwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVwRSxPQUFPLEVBRUwsYUFBYSxHQUdkLE1BQU0saUJBQWlCLENBQUM7Ozs7O0FBRXpCLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQztBQUN6QixNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUM7QUFPbkMsTUFBTSxPQUFPLHNCQUFzQjtJQU1qQyxZQUFvQixNQUFjO1FBQWQsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUgzQixjQUFTLEdBQVksS0FBSyxDQUFDO1FBSWhDLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxHQUFHLFVBQVUsR0FBcUI7WUFDcEQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLE1BQU07Z0JBQ3BELENBQUMsQ0FBQyxHQUFHLENBQUMsUUFBUSxFQUFFO29CQUNaLFlBQVk7d0JBQ1YsSUFBSSxDQUFDLFdBQVcsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FDL0QsSUFBSSxDQUNMLENBQUMsQ0FBQyxDQUFDO2dCQUNWLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDWixDQUFDLENBQUM7SUFDSixDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDckQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDckMsSUFBSSxLQUFLLFlBQVksYUFBYSxFQUFFO2dCQUNsQyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQyxDQUFDO2FBQ3REO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztJQUN2QixDQUFDO0lBRU0sYUFBYSxDQUFDLFVBQW9CLEVBQUUsS0FBaUI7UUFDMUQsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRO1lBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxJQUFJO2dCQUNsQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsUUFBUTtnQkFDbkIsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxJQUFJLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN0RCxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsSUFBSSxDQUFDO1NBQzlCO2FBQU07WUFDTCxLQUFLLENBQUMsY0FBYyxDQUFDLEdBQUcsS0FBSyxDQUFDO1NBQy9CO0lBQ0gsQ0FBQztJQUVPLGFBQWE7UUFDbkIsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDL0MsT0FBTyxDQUFDLENBQUMsSUFBSSxLQUFLLFNBQVMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRU8sYUFBYSxDQUFDLFFBQTZCO1FBQ2pELElBQUksUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFO1lBQ2xDLElBQUksQ0FBQyxVQUFVO2dCQUNiLFlBQVk7b0JBQ1osUUFBUSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDNUQsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQ3RCO0lBQ0gsQ0FBQzs4R0F4RFUsc0JBQXNCO2tHQUF0QixzQkFBc0Isd0dDakJuQyw4aURBc0RBLDIwQkRyQ2Esc0JBQXNCOzsyRkFBdEIsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG1CQUFtQjsyRUFLcEIsSUFBSTtzQkFBWixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi4vTWVudUl0ZW0nO1xuaW1wb3J0IHtcbiAgUm91dGVyLFxuICBOYXZpZ2F0aW9uRW5kLFxuICBSb3V0ZXJTdGF0ZVNuYXBzaG90LFxuICBVcmxUcmVlLFxufSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuXG5jb25zdCB1cmxEZWxpbWl0ZXIgPSAnLyc7XG5jb25zdCBjb2xsYXBzZWRFdmVudCA9ICdjb2xsYXBzZWQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdbbWVudS1pdGVtLWdyb3VwXScsXG4gIHRlbXBsYXRlVXJsOiAnLi9tZW51LWl0ZW0tZ3JvdXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tZW51LWl0ZW0tZ3JvdXAuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBNZW51SXRlbUdyb3VwQ29tcG9uZW50IGltcGxlbWVudHMgT25DaGFuZ2VzLCBPbkluaXQge1xuICBASW5wdXQoKSBpdGVtOiBNZW51SXRlbTtcblxuICBwdWJsaWMgY29sbGFwc2VkOiBib29sZWFuID0gZmFsc2U7XG4gIHByaXZhdGUgYWN0dWFsUGF0aDogc3RyaW5nO1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcm91dGVyOiBSb3V0ZXIpIHtcbiAgICB0aGlzLnJvdXRlci5pc0FjdGl2ZSA9IGZ1bmN0aW9uICh1cmw6IHN0cmluZyB8IFVybFRyZWUpOiBib29sZWFuIHtcbiAgICAgIHJldHVybiB0aGlzLnJvdXRlclN0YXRlLnNuYXBzaG90LnJvb3QuY2hpbGRyZW4/Lmxlbmd0aFxuICAgICAgICA/IHVybC50b1N0cmluZygpID09PVxuICAgICAgICAgICAgdXJsRGVsaW1pdGVyICtcbiAgICAgICAgICAgICAgdGhpcy5yb3V0ZXJTdGF0ZS5zbmFwc2hvdC5yb290LmNoaWxkcmVuWzBdLnJvdXRlQ29uZmlnLnBhdGguc3BsaXQoXG4gICAgICAgICAgICAgICAgJy86JyxcbiAgICAgICAgICAgICAgKVswXVxuICAgICAgICA6IGZhbHNlO1xuICAgIH07XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnNldEFjdHVhbFBhdGgodGhpcy5yb3V0ZXIucm91dGVyU3RhdGUuc25hcHNob3QpO1xuICAgIHRoaXMucm91dGVyLmV2ZW50cy5zdWJzY3JpYmUoKGV2ZW50KSA9PiB7XG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRW5kKSB7XG4gICAgICAgIHRoaXMuc2V0QWN0dWFsUGF0aCh0aGlzLnJvdXRlci5yb3V0ZXJTdGF0ZS5zbmFwc2hvdCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uQ2hhbmdlcygpOiB2b2lkIHtcbiAgICB0aGlzLnNldEl0ZW1FeHBhbmQoKTtcbiAgfVxuXG4gIHB1YmxpYyBjb2xsYXBzZUNoaWxkKGFjdGl2ZUl0ZW06IE1lbnVJdGVtLCBldmVudDogTW91c2VFdmVudCkge1xuICAgIHRoaXMuaXRlbS5leHBhbmRlZCA9XG4gICAgICB0aGlzLml0ZW0udGV4dCA9PT0gYWN0aXZlSXRlbS50ZXh0ICYmXG4gICAgICAhdGhpcy5pdGVtLmV4cGFuZGVkICYmXG4gICAgICAhIXRoaXMuaXRlbS5pdGVtcztcbiAgICBpZiAoIWFjdGl2ZUl0ZW0uaXRlbXMgfHwgYWN0aXZlSXRlbS5pdGVtcy5sZW5ndGggPT09IDApIHtcbiAgICAgIGV2ZW50W2NvbGxhcHNlZEV2ZW50XSA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGV2ZW50W2NvbGxhcHNlZEV2ZW50XSA9IGZhbHNlO1xuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgc2V0SXRlbUV4cGFuZCgpIHtcbiAgICB0aGlzLml0ZW0uZXhwYW5kZWQgPSB0aGlzLml0ZW0uaXRlbXM/LnNvbWUoKHgpID0+IHtcbiAgICAgIHJldHVybiB4LmxpbmsgIT09IHVuZGVmaW5lZCAmJiB4LmxpbmsgPT09IHRoaXMuYWN0dWFsUGF0aDtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0QWN0dWFsUGF0aChzbmFwc2hvdDogUm91dGVyU3RhdGVTbmFwc2hvdCk6IHZvaWQge1xuICAgIGlmIChzbmFwc2hvdC5yb290LmNoaWxkcmVuPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuYWN0dWFsUGF0aCA9XG4gICAgICAgIHVybERlbGltaXRlciArXG4gICAgICAgIHNuYXBzaG90LnJvb3QuY2hpbGRyZW5bMF0ucm91dGVDb25maWcucGF0aC5zcGxpdCgnLzonKVswXTtcbiAgICAgIHRoaXMuc2V0SXRlbUV4cGFuZCgpO1xuICAgIH1cbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cIml0ZW0uaXRlbXMgJiYgaXRlbS5pdGVtcy5sZW5ndGhcIj5cbiAgPGEgKGNsaWNrKT1cImNvbGxhcHNlQ2hpbGQoaXRlbSwgJGV2ZW50KVwiPlxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXRlbS5pY29uQ2xhc3M7IGVsc2UgbGFiZWxXaXRoSWNvblwiPlxuICAgICAge3sgaXRlbS50ZXh0IHwgdHJhbnNsYXRlIH19XG4gICAgPC9uZy1jb250YWluZXI+XG4gIDwvYT5cbiAgPHVsXG4gICAgW25nQ2xhc3NdPVwiXG4gICAgICBpdGVtLmV4cGFuZGVkXG4gICAgICAgID8gJ25hdiBuYXYtc2Vjb25kLWxldmVsIGNvbGxhcHNlIGluJ1xuICAgICAgICA6ICduYXYgbmF2LXNlY29uZC1sZXZlbCBjb2xsYXBzZSdcbiAgICBcIlxuICA+XG4gICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1jaGlsZEl0ZW0gW25nRm9yT2ZdPVwiaXRlbS5pdGVtc1wiPlxuICAgICAgPGxpXG4gICAgICAgIFtuZ0NsYXNzXT1cIlxuICAgICAgICAgIGNoaWxkSXRlbS5leHBhbmRlZFxuICAgICAgICAgICAgPyAnbmF2IG5hdi10aGlyZC1sZXZlbCBjb2xsYXBzZSBpbidcbiAgICAgICAgICAgIDogJ25hdiBuYXYtdGhpcmQtbGV2ZWwgY29sbGFwc2UnXG4gICAgICAgIFwiXG4gICAgICAgIG1lbnUtaXRlbS1ncm91cFxuICAgICAgICBbaXRlbV09XCJjaGlsZEl0ZW1cIlxuICAgICAgPjwvbGk+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgPC91bD5cbjwvbmctY29udGFpbmVyPlxuPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLml0ZW1zIHx8ICFpdGVtLml0ZW1zLmxlbmd0aFwiPlxuICA8YVxuICAgICpuZ0lmPVwiaXRlbS5saW5rXCJcbiAgICByb3V0ZXJMaW5rPVwie3sgaXRlbS5saW5rIH19XCJcbiAgICByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlLXJvdXRlXCJcbiAgICBjbGFzcz1cInN1Yi1tZW51LWxpbmtcIlxuICAgIChjbGljayk9XCJjb2xsYXBzZUNoaWxkKGl0ZW0sICRldmVudClcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmljb25DbGFzczsgZWxzZSBsYWJlbFdpdGhJY29uXCI+XG4gICAgICB7eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuICA8YVxuICAgICpuZ0lmPVwiaXRlbS51cmxcIlxuICAgIGNsYXNzPVwic3ViLW1lbnUtbGlua1wiXG4gICAgaHJlZj1cInt7IGl0ZW0udXJsIH19XCJcbiAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgIChjbGljayk9XCJjb2xsYXBzZUNoaWxkKGl0ZW0sICRldmVudClcIlxuICA+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpdGVtLmljb25DbGFzczsgZWxzZSBsYWJlbFdpdGhJY29uXCI+XG4gICAgICB7eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfX1cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgPC9hPlxuPC9uZy1jb250YWluZXI+XG48bmctdGVtcGxhdGUgI2xhYmVsV2l0aEljb24+XG4gIDxpIGNsYXNzPVwibWVudS1pY29uIGZhIHt7IGl0ZW0uaWNvbkNsYXNzIH19XCI+PC9pPlxuICA8c3BhbiBjbGFzcz1cIm5hdi1sYWJlbFwiPnt7IGl0ZW0udGV4dCB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -35,4 +35,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
35
35
  }], logoClick: [{
36
36
  type: Output
37
37
  }] } });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9zaWRlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9hbmd1bGFyL3dpZGdldHMvc2lkZS1tZW51L3NpZGUtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQUl2RSxNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUM7QUFNbkMsTUFBTSxPQUFPLGlCQUFpQjtJQUw5QjtRQU9ZLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBc0IxQztJQXBCQyxXQUFXO1FBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUSxDQUNOLGFBQXFDLEVBQ3JDLFVBQW9CLEVBQ3BCLEtBQWlCO1FBRWpCLElBQUksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxJQUFJLENBQUMsSUFBSSxLQUFLLFVBQVUsQ0FBQyxJQUFJLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDbEQsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUM7YUFDdkI7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILElBQUksS0FBSyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQ3pCLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1NBQ2hDO2FBQU07WUFDTCxhQUFhLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztTQUNqQztJQUNILENBQUM7OEdBdkJVLGlCQUFpQjtrR0FBakIsaUJBQWlCLGtIQ1Y5Qix3bENBc0NBOzsyRkQ1QmEsaUJBQWlCO2tCQUw3QixTQUFTOytCQUNFLFdBQVc7OEJBS1osS0FBSztzQkFBYixLQUFLO2dCQUNJLFNBQVM7c0JBQWxCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWVudUl0ZW1Hcm91cENvbXBvbmVudCB9IGZyb20gJy4vbWVudS1pdGVtLWdyb3VwL21lbnUtaXRlbS1ncm91cC5jb21wb25lbnQnO1xuaW1wb3J0IHsgTWVudUl0ZW0gfSBmcm9tICcuL01lbnVJdGVtJztcblxuY29uc3QgY29sbGFwc2VkRXZlbnQgPSAnY29sbGFwc2VkJztcbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NpZGUtbWVudScsXG4gIHRlbXBsYXRlVXJsOiAnLi9zaWRlLW1lbnUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9zaWRlLW1lbnUuY29tcG9uZW50LmNzcyddLFxufSlcbmV4cG9ydCBjbGFzcyBTaWRlTWVudUNvbXBvbmVudCB7XG4gIEBJbnB1dCgpIGl0ZW1zOiBNZW51SXRlbVtdO1xuICBAT3V0cHV0KCkgbG9nb0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIG9uTG9nb0NsaWNrKCkge1xuICAgIHRoaXMubG9nb0NsaWNrLmVtaXQoKTtcbiAgfVxuXG4gIGNvbGxhcHNlKFxuICAgIGl0ZW1Db21wb25lbnQ6IE1lbnVJdGVtR3JvdXBDb21wb25lbnQsXG4gICAgYWN0aXZlSXRlbTogTWVudUl0ZW0sXG4gICAgZXZlbnQ6IE1vdXNlRXZlbnQsXG4gICkge1xuICAgIHRoaXMuaXRlbXM/LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGlmIChpdGVtLnRleHQgIT09IGFjdGl2ZUl0ZW0udGV4dCAmJiBpdGVtLmV4cGFuZGVkKSB7XG4gICAgICAgIGl0ZW0uZXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoZXZlbnRbY29sbGFwc2VkRXZlbnRdKSB7XG4gICAgICBpdGVtQ29tcG9uZW50LmNvbGxhcHNlZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZW1Db21wb25lbnQuY29sbGFwc2VkID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8bmF2XG4gIGlkPVwibWVudS1sZWZ0XCJcbiAgY2xhc3M9XCJuYXZiYXItZGVmYXVsdCBuYXZiYXItbWFpbiBuYXZiYXItc3RhdGljLXNpZGUgb3BlblwiXG4gIHJvbGU9XCJuYXZpZ2F0aW9uXCJcbj5cbiAgPGRpdiBjbGFzcz1cInNpZGViYXItY29sbGFwc2VcIj5cbiAgICA8dWwgaWQ9XCJzaWRlLW1lbnVcIiBjbGFzcz1cIm5hdlwiPlxuICAgICAgPGxpIGNsYXNzPVwibmF2LWhlYWRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1lbGVtZW50XCI+XG4gICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWycvJ11cIiBjbGFzcz1cImltZy1zdXBwbHlcIj5cbiAgICAgICAgICAgIDxpbWcgYWx0PVwiU3VwcGx5IFN0cmVhbSBsb2dvXCIgLz5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibG9nby1lbGVtZW50XCIgKGNsaWNrKT1cIm9uTG9nb0NsaWNrKClcIj5cbiAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2hhbmdlXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cblxuICAgIDxkaXYgY2xhc3M9XCJzaWRlYmFyLWNvbGxhcHNlXCI+XG4gICAgICA8dWwgY2xhc3M9XCJuYXZcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1pdGVtIFtuZ0Zvck9mXT1cIml0ZW1zXCI+XG4gICAgICAgICAgPGxpXG4gICAgICAgICAgICAjaXRlbUNvbXBvbmVudFxuICAgICAgICAgICAgbWVudS1pdGVtLWdyb3VwXG4gICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgbWVudTogdHJ1ZSxcbiAgICAgICAgICAgICAgYWN0aXZlOiBpdGVtLmV4cGFuZGVkID8gaXRlbS5leHBhbmRlZCA6IGZhbHNlLFxuICAgICAgICAgICAgICBjb2xsYXBzZWQ6IGl0ZW1Db21wb25lbnQuY29sbGFwc2VkXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIChjbGljayk9XCJjb2xsYXBzZShpdGVtQ29tcG9uZW50LCBpdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICA+PC9saT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uYXY+XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lkZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvYW5ndWxhci93aWRnZXRzL3NpZGUtbWVudS9zaWRlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi9hbmd1bGFyL3dpZGdldHMvc2lkZS1tZW51L3NpZGUtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7OztBQUl2RSxNQUFNLGNBQWMsR0FBRyxXQUFXLENBQUM7QUFNbkMsTUFBTSxPQUFPLGlCQUFpQjtJQUw5QjtRQU9ZLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO0tBc0IxQztJQXBCUSxXQUFXO1FBQ2hCLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDeEIsQ0FBQztJQUVNLFFBQVEsQ0FDYixhQUFxQyxFQUNyQyxVQUFvQixFQUNwQixLQUFpQjtRQUVqQixJQUFJLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQzNCLElBQUksSUFBSSxDQUFDLElBQUksS0FBSyxVQUFVLENBQUMsSUFBSSxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7Z0JBQ2xELElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDO2FBQ3ZCO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxJQUFJLEtBQUssQ0FBQyxjQUFjLENBQUMsRUFBRTtZQUN6QixhQUFhLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztTQUNoQzthQUFNO1lBQ0wsYUFBYSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7U0FDakM7SUFDSCxDQUFDOzhHQXZCVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixrSENWOUIsd2xDQXNDQTs7MkZENUJhLGlCQUFpQjtrQkFMN0IsU0FBUzsrQkFDRSxXQUFXOzhCQUtaLEtBQUs7c0JBQWIsS0FBSztnQkFDSSxTQUFTO3NCQUFsQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1lbnVJdGVtR3JvdXBDb21wb25lbnQgfSBmcm9tICcuL21lbnUtaXRlbS1ncm91cC9tZW51LWl0ZW0tZ3JvdXAuY29tcG9uZW50JztcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi9NZW51SXRlbSc7XG5cbmNvbnN0IGNvbGxhcHNlZEV2ZW50ID0gJ2NvbGxhcHNlZCc7XG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzaWRlLW1lbnUnLFxuICB0ZW1wbGF0ZVVybDogJy4vc2lkZS1tZW51LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2lkZS1tZW51LmNvbXBvbmVudC5jc3MnXSxcbn0pXG5leHBvcnQgY2xhc3MgU2lkZU1lbnVDb21wb25lbnQge1xuICBASW5wdXQoKSBpdGVtczogTWVudUl0ZW1bXTtcbiAgQE91dHB1dCgpIGxvZ29DbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBwdWJsaWMgb25Mb2dvQ2xpY2soKSB7XG4gICAgdGhpcy5sb2dvQ2xpY2suZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIGNvbGxhcHNlKFxuICAgIGl0ZW1Db21wb25lbnQ6IE1lbnVJdGVtR3JvdXBDb21wb25lbnQsXG4gICAgYWN0aXZlSXRlbTogTWVudUl0ZW0sXG4gICAgZXZlbnQ6IE1vdXNlRXZlbnQsXG4gICkge1xuICAgIHRoaXMuaXRlbXM/LmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIGlmIChpdGVtLnRleHQgIT09IGFjdGl2ZUl0ZW0udGV4dCAmJiBpdGVtLmV4cGFuZGVkKSB7XG4gICAgICAgIGl0ZW0uZXhwYW5kZWQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICBpZiAoZXZlbnRbY29sbGFwc2VkRXZlbnRdKSB7XG4gICAgICBpdGVtQ29tcG9uZW50LmNvbGxhcHNlZCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIGl0ZW1Db21wb25lbnQuY29sbGFwc2VkID0gZmFsc2U7XG4gICAgfVxuICB9XG59XG4iLCI8bmF2XG4gIGlkPVwibWVudS1sZWZ0XCJcbiAgY2xhc3M9XCJuYXZiYXItZGVmYXVsdCBuYXZiYXItbWFpbiBuYXZiYXItc3RhdGljLXNpZGUgb3BlblwiXG4gIHJvbGU9XCJuYXZpZ2F0aW9uXCJcbj5cbiAgPGRpdiBjbGFzcz1cInNpZGViYXItY29sbGFwc2VcIj5cbiAgICA8dWwgaWQ9XCJzaWRlLW1lbnVcIiBjbGFzcz1cIm5hdlwiPlxuICAgICAgPGxpIGNsYXNzPVwibmF2LWhlYWRlclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwicHJvZmlsZS1lbGVtZW50XCI+XG4gICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiWycvJ11cIiBjbGFzcz1cImltZy1zdXBwbHlcIj5cbiAgICAgICAgICAgIDxpbWcgYWx0PVwiU3VwcGx5IFN0cmVhbSBsb2dvXCIgLz5cbiAgICAgICAgICA8L2E+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwibG9nby1lbGVtZW50XCIgKGNsaWNrKT1cIm9uTG9nb0NsaWNrKClcIj5cbiAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLWV4Y2hhbmdlXCI+PC9pPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbGk+XG4gICAgPC91bD5cblxuICAgIDxkaXYgY2xhc3M9XCJzaWRlYmFyLWNvbGxhcHNlXCI+XG4gICAgICA8dWwgY2xhc3M9XCJuYXZcIj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1pdGVtIFtuZ0Zvck9mXT1cIml0ZW1zXCI+XG4gICAgICAgICAgPGxpXG4gICAgICAgICAgICAjaXRlbUNvbXBvbmVudFxuICAgICAgICAgICAgbWVudS1pdGVtLWdyb3VwXG4gICAgICAgICAgICBbaXRlbV09XCJpdGVtXCJcbiAgICAgICAgICAgIFtuZ0NsYXNzXT1cIntcbiAgICAgICAgICAgICAgbWVudTogdHJ1ZSxcbiAgICAgICAgICAgICAgYWN0aXZlOiBpdGVtLmV4cGFuZGVkID8gaXRlbS5leHBhbmRlZCA6IGZhbHNlLFxuICAgICAgICAgICAgICBjb2xsYXBzZWQ6IGl0ZW1Db21wb25lbnQuY29sbGFwc2VkXG4gICAgICAgICAgICB9XCJcbiAgICAgICAgICAgIChjbGljayk9XCJjb2xsYXBzZShpdGVtQ29tcG9uZW50LCBpdGVtLCAkZXZlbnQpXCJcbiAgICAgICAgICA+PC9saT5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uYXY+XG4iXX0=
@@ -196,11 +196,11 @@ export class EntityListComponent {
196
196
  this.getData();
197
197
  }
198
198
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EntityListComponent, deps: [{ token: i1.TranslateService }, { token: i2.ActivatedRoute }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component }); }
199
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: EntityListComponent, selector: "entity-list", inputs: { service: "service", filters: "filters", fields: "fields", commands: "commands", rowClass: "rowClass", defaultSort: "defaultSort", mapItemFn: "mapItemFn", pageButtonsCount: "pageButtonsCount" }, outputs: { filterChange: "filterChange" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["confirmDialog"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n", styles: [""], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.ConfirmDialogComponent, selector: "confirm-dialog" }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i6.PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons" }, { kind: "component", type: i6.PagerNextButtonsComponent, selector: "kendo-pager-next-buttons" }, { kind: "component", type: i6.PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: ["buttonCount"] }, { kind: "component", type: i6.PagerInfoComponent, selector: "kendo-pager-info" }, { kind: "directive", type: i6.PagerTemplateDirective, selector: "[kendoPagerTemplate]" }, { kind: "component", type: i6.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i6.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "component", type: i6.GridSpacerComponent, selector: "kendo-grid-spacer, kendo-pager-spacer", inputs: ["width"] }, { kind: "directive", type: i6.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "directive", type: i6.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i6.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i6.FocusableDirective, selector: "[kendoGridFocusable], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridCancelCommand], [kendoGridSelectionCheckbox] ", inputs: ["kendoGridFocusable"] }, { kind: "component", type: i6.CommandColumnComponent, selector: "kendo-grid-command-column" }, { kind: "directive", type: i6.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i6.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i6.RemoveCommandDirective, selector: "[kendoGridRemoveCommand]" }, { kind: "component", type: i6.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.DebounceDirective, selector: "[appDebounce]", inputs: ["debounceTime"], outputs: ["debounceKeyup"] }, { kind: "component", type: i9.ExcelExportButtonComponent, selector: "excel-export-button" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
199
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: EntityListComponent, selector: "entity-list", inputs: { service: "service", filters: "filters", fields: "fields", commands: "commands", rowClass: "rowClass", defaultSort: "defaultSort", mapItemFn: "mapItemFn", pageButtonsCount: "pageButtonsCount" }, outputs: { filterChange: "filterChange" }, viewQueries: [{ propertyName: "dialog", first: true, predicate: ["confirmDialog"], descendants: true, static: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <div class=\"pager\">\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </div>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n", styles: [".pager{display:flex;justify-content:center;align-items:center;width:100%}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i5.ConfirmDialogComponent, selector: "confirm-dialog" }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: i6.PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons" }, { kind: "component", type: i6.PagerNextButtonsComponent, selector: "kendo-pager-next-buttons" }, { kind: "component", type: i6.PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: ["buttonCount"] }, { kind: "component", type: i6.PagerInfoComponent, selector: "kendo-pager-info" }, { kind: "directive", type: i6.PagerTemplateDirective, selector: "[kendoPagerTemplate]" }, { kind: "component", type: i6.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i6.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "component", type: i6.GridSpacerComponent, selector: "kendo-grid-spacer, kendo-pager-spacer", inputs: ["width"] }, { kind: "directive", type: i6.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "directive", type: i6.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i6.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i6.FocusableDirective, selector: "[kendoGridFocusable], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridCancelCommand], [kendoGridSelectionCheckbox] ", inputs: ["kendoGridFocusable"] }, { kind: "component", type: i6.CommandColumnComponent, selector: "kendo-grid-command-column" }, { kind: "directive", type: i6.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i6.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i6.RemoveCommandDirective, selector: "[kendoGridRemoveCommand]" }, { kind: "component", type: i6.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"] }, { kind: "directive", type: i7.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i7.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i7.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i8.DebounceDirective, selector: "[appDebounce]", inputs: ["debounceTime"], outputs: ["debounceKeyup"] }, { kind: "component", type: i9.ExcelExportButtonComponent, selector: "excel-export-button" }, { kind: "pipe", type: i3.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
200
200
  }
201
201
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: EntityListComponent, decorators: [{
202
202
  type: Component,
203
- args: [{ selector: 'entity-list', template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n" }]
203
+ args: [{ selector: 'entity-list', template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <div class=\"pager\">\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </div>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n", styles: [".pager{display:flex;justify-content:center;align-items:center;width:100%}\n"] }]
204
204
  }], ctorParameters: () => [{ type: i1.TranslateService }, { type: i2.ActivatedRoute }, { type: i2.Router }], propDecorators: { service: [{
205
205
  type: Input
206
206
  }], filters: [{
@@ -223,4 +223,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
223
223
  type: ViewChild,
224
224
  args: ['confirmDialog', { static: true }]
225
225
  }] } });
226
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1saXN0L2VudGl0eS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvd2lkZ2V0cy9lbnRpdHktbGlzdC9lbnRpdHktbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQWF2QixPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVFyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7OztBQUUvRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUM7QUFPekIsTUFBTSxPQUFPLG1CQUFtQjtJQWlDOUIsWUFDVSxTQUEyQixFQUMzQixLQUFxQixFQUNyQixNQUFjO1FBRmQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXRCakIsY0FBUyxHQUFrRCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3pFLElBQUksQ0FBQztRQUNFLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUUvQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUE2QixDQUFDO1FBRzdELGNBQVMsR0FBVSxFQUFFLENBQUM7UUFDdEIsU0FBSSxHQUFzQyxJQUFJLGVBQWUsQ0FFbEUsSUFBSSxDQUFDLENBQUM7UUFDRCxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRWIs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LE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7OEdBcFBVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHNiQ3pDaEMsK2pIQW1HQTs7MkZEMURhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxhQUFhO3VJQU1oQixPQUFPO3NCQURiLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLE1BQU07c0JBRFosS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxLQUFLO2dCQUdDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFQyxZQUFZO3NCQURsQixNQUFNO2dCQUdBLE1BQU07c0JBRFosU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVtb3ZhYmxlIH0gZnJvbSAnLi4vLi4vYW5ndWxhci9tb2RlbHMvcmVtb3ZhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgRGF0YVN0YXRlQ2hhbmdlRXZlbnQsXG4gIFJvd0NsYXNzQXJncyxcbn0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZ3JpZCc7XG5pbXBvcnQge1xuICBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yLFxuICBGaWx0ZXJEZXNjcmlwdG9yLFxuICBTb3J0RGVzY3JpcHRvcixcbiAgU3RhdGUsXG59IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSWRlbnRpZmllZE1vZGVsIH0gZnJvbSAnLi4vLi4vYW5ndWxhci9tb2RlbHMvSWRlbnRpZmllZE1vZGVsJztcbmltcG9ydCB7IE5hbWVkTW9kZWwgfSBmcm9tICcuLi8uLi9hbmd1bGFyL21vZGVscy9OYW1lZE1vZGVsJztcbmltcG9ydCB7IFBhZ2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvUGFnZSc7XG5pbXBvcnQgeyBJRW50aXR5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL0lFbnRpdHlTZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4vQ29tbWFuZCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vRmllbGQnO1xuaW1wb3J0IHsgdXJsRGVzZXJpYWxpemUsIHVybFNlcmlhbGl6ZSB9IGZyb20gJy4vVXJsU2VyaWFsaXplcic7XG5cbmNvbnN0IG5hbWVGaWVsZCA9ICduYW1lJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50aXR5LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZW50aXR5LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktbGlzdC5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXJ2aWNlOiBJRW50aXR5U2VydmljZTxOYW1lZE1vZGVsPjtcbiAgQElucHV0KClcbiAgcHVibGljIGZpbHRlcnM6IChGaWx0ZXJEZXNjcmlwdG9yIHwgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcilbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGZpZWxkcz86IEZpZWxkW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb21tYW5kcz86IENvbW1hbmRbXTtcbiAgQElucHV0KClcbiAgcHVibGljIHJvd0NsYXNzPzogKGRhdGFJdGVtOiBOYW1lZE1vZGVsLCBpbmRleDogbnVtYmVyKSA9PiB7fTtcbiAgQElucHV0KClcbiAgcHVibGljIGRlZmF1bHRTb3J0PzogU29ydERlc2NyaXB0b3JbXTtcbiAgQElucHV0KClcbiAgcHVibGljIG1hcEl0ZW1Gbj86IChpdGVtOiBOYW1lZE1vZGVsKSA9PiBOYW1lZE1vZGVsICYgUmVtb3ZhYmxlID0gKGl0ZW0pID0+XG4gICAgaXRlbTtcbiAgQElucHV0KCkgcGFnZUJ1dHRvbnNDb3VudDogbnVtYmVyID0gNTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3I+KCk7XG4gIEBWaWV3Q2hpbGQoJ2NvbmZpcm1EaWFsb2cnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgZGlhbG9nOiBDb25maXJtRGlhbG9nQ29tcG9uZW50O1xuICBwdWJsaWMgZ3JpZFN0YXRlOiBTdGF0ZSA9IHt9O1xuICBwdWJsaWMgcGFnZTogQmVoYXZpb3JTdWJqZWN0PFBhZ2U8TmFtZWRNb2RlbD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxcbiAgICBQYWdlPE5hbWVkTW9kZWw+XG4gID4obnVsbCk7XG4gIHB1YmxpYyBsb2FkaW5ncyA9IDA7XG4gIHB1YmxpYyBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gIHB1YmxpYyBzZWxlY3RlZDogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIGdyaWRGaWVsZHM6IEZpZWxkW10gPSBbXTtcbiAgcHJpdmF0ZSBkZWZhdWx0RmllbGRzOiBGaWVsZFtdID0gW1xuICAgIHsgbmFtZTogJ25hbWUnLCBsYWJlbDogJ05hbWUnLCBzb3J0YWJsZTogdHJ1ZSwgcG9zaXRpb246IDAgfSxcbiAgXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICApIHtcbiAgICB0aGlzLmdldEFsbERhdGEgPSB0aGlzLmdldEFsbERhdGEuYmluZCh0aGlzKTtcbiAgICB0aGlzLmdldFJvd0NsYXNzID0gdGhpcy5nZXRSb3dDbGFzcy5iaW5kKHRoaXMpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICghY2hhbmdlcy5maWx0ZXJzIHx8IGNoYW5nZXMuZmlsdGVycy5maXJzdENoYW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZ2V0RmlsdGVyZWREYXRhKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmdyaWRGaWVsZHMgPSAodGhpcy5maWVsZHMgfHwgW10pXG4gICAgICAuY29uY2F0KHRoaXMuZGVmYXVsdEZpZWxkcylcbiAgICAgIC5zb3J0KChsZWZ0LCByaWdodCkgPT4gKGxlZnQucG9zaXRpb24gfHwgMCkgLSAocmlnaHQucG9zaXRpb24gfHwgMCkpO1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuZmlsdGVycyA/IHRoaXMuZmlsdGVycyA6IFtdO1xuICAgIHRoaXMuY29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzID8gdGhpcy5jb21tYW5kcyA6IFtdO1xuICAgIHRoaXMucm91dGUuZnJhZ21lbnQuc3Vic2NyaWJlKGFzeW5jIChmcmFnbWVudDogc3RyaW5nKSA9PiB7XG4gICAgICBhd2FpdCB0aGlzLnJlc3RvcmVHcmlkU3RhdGUobmV3IFVSTFNlYXJjaFBhcmFtcyhmcmFnbWVudCkpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yb3V0ZS5maXJzdENoaWxkLnBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogUGFyYW1zKSA9PiB7XG4gICAgICBpZiAocGFyYW1zLmlkKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRbMF0gPSBwYXJhbXMuaWQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkLnBvcCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUhhbmRsZXIoeyBkYXRhSXRlbSB9KSB7XG4gICAgdGhpcy5kaWFsb2cub3BlbihcbiAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0NvbmZpcm1hdGlvbi5EZWxldGUnKSArXG4gICAgICAgICc6IFwiJyArXG4gICAgICAgIGRhdGFJdGVtLm5hbWUgK1xuICAgICAgICAnXCI/JyxcbiAgICAgICgpID0+IHRoaXMucmVtb3ZlKGRhdGFJdGVtKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW0oeyBkYXRhSXRlbSB9KSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2RhdGFJdGVtLmlkXSwge1xuICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSxcbiAgICAgIGZyYWdtZW50OiB1cmxTZXJpYWxpemUodGhpcy5ncmlkU3RhdGUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uQWN0aXZhdGUoY2hpbGQ6IHsgc2F2ZWQ6IEV2ZW50RW1pdHRlcjxOYW1lZE1vZGVsPiB9KSB7XG4gICAgaWYgKGNoaWxkLnNhdmVkKSB7XG4gICAgICBjaGlsZC5zYXZlZC5zdWJzY3JpYmUoKGRhdGE6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH0pID0+XG4gICAgICAgIHRoaXMudXBkYXRlR3JpZChkYXRhKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uRGVhY3RpdmF0ZShjaGlsZDogeyBzYXZlZDogRXZlbnRFbWl0dGVyPE5hbWVkTW9kZWw+IH0pIHtcbiAgICBpZiAoY2hpbGQuc2F2ZWQpIHtcbiAgICAgIGNoaWxkLnNhdmVkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRhdGFTdGF0ZUNoYW5nZShzdGF0ZTogRGF0YVN0YXRlQ2hhbmdlRXZlbnQpIHtcbiAgICB0aGlzLmdyaWRTdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuZ3JpZFN0YXRlLmZpbHRlciA9IHRoaXMuZ2V0RmlsdGVyKCk7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICBmcmFnbWVudDogdXJsU2VyaWFsaXplKHRoaXMuZ3JpZFN0YXRlKSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlYXJjaCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWFyY2hUZXJtID0gdmFsdWU7XG4gICAgdGhpcy5ncmlkU3RhdGUuc2tpcCA9IDA7XG4gICAgdGhpcy5nZXRGaWx0ZXJlZERhdGEoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBbGxEYXRhKCk6IE9ic2VydmFibGU8UGFnZTxOYW1lZE1vZGVsICYgUmVtb3ZhYmxlPj4ge1xuICAgIGNvbnN0IHN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5ncmlkU3RhdGUpO1xuICAgIGRlbGV0ZSBzdGF0ZS5za2lwO1xuICAgIGRlbGV0ZSBzdGF0ZS50YWtlO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5nZXRQYWdlKHN0YXRlKS5waXBlKFxuICAgICAgbWFwKChwYWdlUmVzdWx0KSA9PiB7XG4gICAgICAgIHBhZ2VSZXN1bHQuZGF0YSA9IHBhZ2VSZXN1bHQuZGF0YS5tYXAodGhpcy5tYXBJdGVtRm4pO1xuXG4gICAgICAgIHJldHVybiBwYWdlUmVzdWx0O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSb3dDbGFzcyhjb250ZXh0OiBSb3dDbGFzc0FyZ3MpOiBPYmplY3Qge1xuICAgIHJldHVybiB0aGlzLnJvd0NsYXNzICYmIGNvbnRleHRcbiAgICAgID8gdGhpcy5yb3dDbGFzcyhjb250ZXh0LmRhdGFJdGVtLCBjb250ZXh0LmluZGV4KVxuICAgICAgOiB7fTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRGaWx0ZXJlZERhdGEoKSB7XG4gICAgdGhpcy5ncmlkU3RhdGUuZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIoKTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSxcbiAgICAgIGZyYWdtZW50OiB1cmxTZXJpYWxpemUodGhpcy5ncmlkU3RhdGUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUdyaWQoZGF0YTogTmFtZWRNb2RlbCkge1xuICAgIGNvbnN0IG5ld0l0ZW0gPSB0aGlzLm1hcEl0ZW1GbihkYXRhKTtcbiAgICBjb25zdCBjdXJyZW50UGFnZSA9IHsgLi4udGhpcy5wYWdlLnZhbHVlIH07XG4gICAgY29uc3QgZXhpc3RzID0gY3VycmVudFBhZ2UuZGF0YS5maWx0ZXIoKHgpID0+IHguaWQgPT09IGRhdGEuaWQpO1xuICAgIGlmIChleGlzdHMubGVuZ3RoKSB7XG4gICAgICBjdXJyZW50UGFnZS5kYXRhW2N1cnJlbnRQYWdlLmRhdGEuaW5kZXhPZihleGlzdHNbMF0pXSA9IG5ld0l0ZW07XG4gICAgICB0aGlzLnBhZ2UubmV4dChjdXJyZW50UGFnZSk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjdXJyZW50UGFnZS50b3RhbCsrO1xuICAgIGN1cnJlbnRQYWdlLmRhdGEuc3BsaWNlKDAsIDAsIGRhdGEpO1xuICAgIGlmIChjdXJyZW50UGFnZS5kYXRhLmxlbmd0aCA+IHRoaXMuZ3JpZFN0YXRlLnRha2UpIHtcbiAgICAgIGN1cnJlbnRQYWdlLmRhdGEuc3BsaWNlKHRoaXMucGFnZS52YWx1ZS5kYXRhLmxlbmd0aCAtIDEsIDEpO1xuICAgIH1cblxuICAgIHRoaXMucGFnZS5uZXh0KGN1cnJlbnRQYWdlKTtcbiAgICB0aGlzLnNlbGVjdGVkWzBdID0gZGF0YS5pZDtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZGF0YS5pZF0sIHtcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICBwcmVzZXJ2ZUZyYWdtZW50OiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldERhdGEoKSB7XG4gICAgdGhpcy5sb2FkaW5ncysrO1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VcbiAgICAgIC5nZXRQYWdlKHRoaXMuZ3JpZFN0YXRlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocGFnZVJlc3VsdCkgPT4ge1xuICAgICAgICAgIHBhZ2VSZXN1bHQuZGF0YSA9IHBhZ2VSZXN1bHQuZGF0YS5tYXAodGhpcy5tYXBJdGVtRm4pO1xuXG4gICAgICAgICAgcmV0dXJuIHBhZ2VSZXN1bHQ7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocGFnZSkgPT4ge1xuICAgICAgICB0aGlzLnBhZ2UubmV4dChwYWdlKTtcbiAgICAgICAgdGhpcy5sb2FkaW5ncy0tO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZShlbnRpdHk6IElkZW50aWZpZWRNb2RlbCkge1xuICAgIHRoaXMubG9hZGluZ3MrKztcbiAgICB0aGlzLnNlcnZpY2VcbiAgICAgIC5kZWxldGUoZW50aXR5LmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZC5sZW5ndGggJiZcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRbdGhpcy5zZWxlY3RlZC5sZW5ndGggLSAxXSA9PT0gZW50aXR5LmlkXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4uLyddLCB7XG4gICAgICAgICAgICAgIHByZXNlcnZlRnJhZ21lbnQ6IHRydWUsXG4gICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUuZmlyc3RDaGlsZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmxvYWRpbmdzLS07XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpbHRlcigpOiBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yIHtcbiAgICBjb25zdCBmaWx0ZXI6IENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IgPSB7XG4gICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICBmaWx0ZXJzOiB0aGlzLnNlYXJjaFRlcm1cbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7IGZpZWxkOiBuYW1lRmllbGQsIG9wZXJhdG9yOiAnY29udGFpbnMnLCB2YWx1ZTogdGhpcy5zZWFyY2hUZXJtIH0sXG4gICAgICAgICAgICAuLi50aGlzLmZpbHRlcnMsXG4gICAgICAgICAgXVxuICAgICAgICA6IHRoaXMuZmlsdGVycyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGZpbHRlcjtcbiAgfVxuXG4gIHByaXZhdGUgb25GaWx0ZXJDaGFuZ2UoKSB7XG4gICAgY29uc3QgZmlsdGVyOiBhbnkgPSB0aGlzLmdyaWRTdGF0ZS5maWx0ZXI/LmZpbHRlcnMuZmluZChcbiAgICAgICh4OiBGaWx0ZXJEZXNjcmlwdG9yKSA9PiB4LmZpZWxkID09PSBuYW1lRmllbGQsXG4gICAgKTtcbiAgICB0aGlzLnNlYXJjaFRlcm0gPSBmaWx0ZXI/LnZhbHVlO1xuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQodGhpcy5ncmlkU3RhdGUuZmlsdGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcmVzdG9yZUdyaWRTdGF0ZShwYXJhbXM6IFVSTFNlYXJjaFBhcmFtcykge1xuICAgIGNvbnN0IGRlZmF1bHRHcmlkU3RhdGU6IFN0YXRlID0ge1xuICAgICAgc29ydDogdGhpcy5kZWZhdWx0U29ydCB8fCBbeyBmaWVsZDogbmFtZUZpZWxkLCBkaXI6ICdhc2MnIH1dLFxuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwLFxuICAgICAgZmlsdGVyOiB0aGlzLmdldEZpbHRlcigpLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0ZSA9IHVybERlc2VyaWFsaXplKHBhcmFtcyk7XG4gICAgdGhpcy5ncmlkU3RhdGUgPSBzdGF0ZS5oYXNPd25Qcm9wZXJ0eSgndGFrZScpID8gc3RhdGUgOiBkZWZhdWx0R3JpZFN0YXRlO1xuICAgIHRoaXMuZ3JpZFN0YXRlLnNraXAgPSArdGhpcy5ncmlkU3RhdGUuc2tpcDtcbiAgICB0aGlzLmdyaWRTdGF0ZS50YWtlID0gK3RoaXMuZ3JpZFN0YXRlLnRha2U7XG4gICAgdGhpcy5vbkZpbHRlckNoYW5nZSgpO1xuICAgIHRoaXMuZ2V0RGF0YSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXItcGFnZS1iZ1wiPjwvaGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJwYW5lbCBzZWFyY2gtcGFuZWwgaGVyby11bml0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXNlbGVjdGlvbi1maWVsZFwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwic2VhcmNoaW5wdXRcIiBjbGFzcz1cInRpdGxlLWZpZWxkXCIgdHJhbnNsYXRlPVwiU2VhcmNoXCI+PC9sYWJlbD5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAga2VuZG9UZXh0Qm94XG4gICAgICAgICAgY2xhc3M9XCJxdWljay1maWx0ZXIgaW5wdXQgaW5wdXQtZmllbGRcIlxuICAgICAgICAgIHRpdGxlPVwiXCJcbiAgICAgICAgICBpZD1cInNlYXJjaGlucHV0XCJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgYXBwRGVib3VuY2VcbiAgICAgICAgICAoZGVib3VuY2VLZXl1cCk9XCJvblNlYXJjaCgkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoVGVybVwiXG4gICAgICAgICAgW2RlYm91bmNlVGltZV09XCI2MDBcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlLWxpbmVcIj48L2Rpdj5cblxuICAgICAgPGtlbmRvLWdyaWRcbiAgICAgICAgW2RhdGFdPVwicGFnZSB8IGFzeW5jXCJcbiAgICAgICAgW3BhZ2VTaXplXT1cImdyaWRTdGF0ZS50YWtlXCJcbiAgICAgICAgW3NraXBdPVwiZ3JpZFN0YXRlLnNraXBcIlxuICAgICAgICBbc29ydF09XCJncmlkU3RhdGUuc29ydFwiXG4gICAgICAgIFtwYWdlYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgW3NvcnRhYmxlXT1cInRydWVcIlxuICAgICAgICBbc3R5bGUubWF4SGVpZ2h0LnB4XT1cIjQ4MFwiXG4gICAgICAgIChyZW1vdmUpPVwicmVtb3ZlSGFuZGxlcigkZXZlbnQpXCJcbiAgICAgICAgKGRhdGFTdGF0ZUNoYW5nZSk9XCJkYXRhU3RhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdzID4gMFwiXG4gICAgICAgIChjZWxsQ2xpY2spPVwic2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICAgICAgY3VsdHVyZVxuICAgICAgICBjbGFzcz1cInJvd3MtcG9pbnRhYmxlXCJcbiAgICAgICAga2VuZG9HcmlkU2VsZWN0Qnk9XCJpZFwiXG4gICAgICAgIFtzZWxlY3RlZEtleXNdPVwic2VsZWN0ZWRcIlxuICAgICAgICBbcm93Q2xhc3NdPVwiZ2V0Um93Q2xhc3NcIlxuICAgICAgPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkVG9vbGJhclRlbXBsYXRlPlxuICAgICAgICAgIDxleGNlbC1leHBvcnQtYnV0dG9uPjwvZXhjZWwtZXhwb3J0LWJ1dHRvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPGtlbmRvLWdyaWQtZXhjZWwgW2ZldGNoRGF0YV09XCJnZXRBbGxEYXRhXCI+PC9rZW5kby1ncmlkLWV4Y2VsPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbiB3aWR0aD1cIjY1XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiIWRhdGFJdGVtLnN1cHByZXNzRGVsZXRpb25cIlxuICAgICAgICAgICAgICBrZW5kb0dyaWRSZW1vdmVDb21tYW5kXG4gICAgICAgICAgICAgIHJlcXVpcmVQZXJtaXNzaW9uXG4gICAgICAgICAgICAgIHBlcm1pc3Npb25UeXBlPVwiRGVsZXRlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGVtIGNsYXNzPVwiay1pY29uIGdseXBoaWNvbiBnbHlwaGljb24tdHJhc2hcIj48L2VtPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9rZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb2x1bW5cbiAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZ3JpZEZpZWxkc1wiXG4gICAgICAgICAgZmllbGQ9XCJ7eyBmaWVsZC5uYW1lIH19XCJcbiAgICAgICAgICB0aXRsZT1cInt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICBbc29ydGFibGVdPVwiZmllbGQuc29ydGFibGUgIT09IGZhbHNlXCJcbiAgICAgICAgPlxuICAgICAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbiB3aWR0aD1cIjY1XCIgKm5nSWY9XCJjb21tYW5kcy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb21tYW5kIG9mIGNvbW1hbmRzXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbW1hbmQuaGFuZGxlcihkYXRhSXRlbSlcIlxuICAgICAgICAgICAgICB0aXRsZT1cInt7IGNvbW1hbmQudGl0bGUgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICBjbGFzcz1cImstYnV0dG9uXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGVtXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJjb21tYW5kLmljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ7eyBjb21tYW5kLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgID48L2VtPlxuICAgICAgICAgICAgICB7eyBjb21tYW5kLm5hbWUgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwva2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZE5vUmVjb3Jkc1RlbXBsYXRlPlxuICAgICAgICAgIHt7IFwiTWVzc2FnZXMuTm9SZWNvcmRzXCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvUGFnZXJUZW1wbGF0ZT5cbiAgICAgICAgICA8a2VuZG8tZ3JpZC1zcGFjZXI+PC9rZW5kby1ncmlkLXNwYWNlcj5cbiAgICAgICAgICA8a2VuZG8tcGFnZXItcHJldi1idXR0b25zPjwva2VuZG8tcGFnZXItcHJldi1idXR0b25zPlxuICAgICAgICAgIDxrZW5kby1wYWdlci1udW1lcmljLWJ1dHRvbnNcbiAgICAgICAgICAgIFtidXR0b25Db3VudF09XCJwYWdlQnV0dG9uc0NvdW50XCJcbiAgICAgICAgICA+PC9rZW5kby1wYWdlci1udW1lcmljLWJ1dHRvbnM+XG4gICAgICAgICAgPGtlbmRvLXBhZ2VyLW5leHQtYnV0dG9ucz48L2tlbmRvLXBhZ2VyLW5leHQtYnV0dG9ucz5cbiAgICAgICAgICA8a2VuZG8tcGFnZXItaW5mbz48L2tlbmRvLXBhZ2VyLWluZm8+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICA8L2tlbmRvLWdyaWQ+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8cm91dGVyLW91dGxldFxuICAgIChhY3RpdmF0ZSk9XCJvbkFjdGl2YXRlKCRldmVudClcIlxuICAgIChkZWFjdGl2YXRlKT1cIm9uRGVhY3RpdmF0ZSgkZXZlbnQpXCJcbiAgPjwvcm91dGVyLW91dGxldD5cbjwvZGl2PlxuPGNvbmZpcm0tZGlhbG9nICNjb25maXJtRGlhbG9nPjwvY29uZmlybS1kaWFsb2c+XG4iXX0=
226
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1saXN0L2VudGl0eS1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvd2lkZ2V0cy9lbnRpdHktbGlzdC9lbnRpdHktbGlzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQ0wsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBR0wsTUFBTSxFQUVOLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQWF2QixPQUFPLEVBQUUsZUFBZSxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ25ELE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQVFyQyxPQUFPLEVBQUUsY0FBYyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDOzs7Ozs7Ozs7OztBQUUvRCxNQUFNLFNBQVMsR0FBRyxNQUFNLENBQUM7QUFPekIsTUFBTSxPQUFPLG1CQUFtQjtJQWlDOUIsWUFDVSxTQUEyQixFQUMzQixLQUFxQixFQUNyQixNQUFjO1FBRmQsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQXRCakIsY0FBUyxHQUFrRCxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3pFLElBQUksQ0FBQztRQUNFLHFCQUFnQixHQUFXLENBQUMsQ0FBQztRQUUvQixpQkFBWSxHQUFHLElBQUksWUFBWSxFQUE2QixDQUFDO1FBRzdELGNBQVMsR0FBVSxFQUFFLENBQUM7UUFDdEIsU0FBSSxHQUFzQyxJQUFJLGVBQWUsQ0FFbEUsSUFBSSxDQUFDLENBQUM7UUFDRCxhQUFRLEdBQUcsQ0FBQyxDQUFDO1FBRWIs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LE9BQU8sRUFBRSxDQUFDO0lBQ2pCLENBQUM7OEdBcFBVLG1CQUFtQjtrR0FBbkIsbUJBQW1CLHNiQ3pDaEMsZ29IQXFHQTs7MkZENURhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxhQUFhO3VJQU1oQixPQUFPO3NCQURiLEtBQUs7Z0JBR0MsT0FBTztzQkFEYixLQUFLO2dCQUdDLE1BQU07c0JBRFosS0FBSztnQkFHQyxRQUFRO3NCQURkLEtBQUs7Z0JBR0MsUUFBUTtzQkFEZCxLQUFLO2dCQUdDLFdBQVc7c0JBRGpCLEtBQUs7Z0JBR0MsU0FBUztzQkFEZixLQUFLO2dCQUdHLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFFQyxZQUFZO3NCQURsQixNQUFNO2dCQUdBLE1BQU07c0JBRFosU0FBUzt1QkFBQyxlQUFlLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVtb3ZhYmxlIH0gZnJvbSAnLi4vLi4vYW5ndWxhci9tb2RlbHMvcmVtb3ZhYmxlLmludGVyZmFjZSc7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25Jbml0LFxuICBPdXRwdXQsXG4gIFNpbXBsZUNoYW5nZXMsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUGFyYW1zLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHtcbiAgRGF0YVN0YXRlQ2hhbmdlRXZlbnQsXG4gIFJvd0NsYXNzQXJncyxcbn0gZnJvbSAnQHByb2dyZXNzL2tlbmRvLWFuZ3VsYXItZ3JpZCc7XG5pbXBvcnQge1xuICBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yLFxuICBGaWx0ZXJEZXNjcmlwdG9yLFxuICBTb3J0RGVzY3JpcHRvcixcbiAgU3RhdGUsXG59IGZyb20gJ0Bwcm9ncmVzcy9rZW5kby1kYXRhLXF1ZXJ5JztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgSWRlbnRpZmllZE1vZGVsIH0gZnJvbSAnLi4vLi4vYW5ndWxhci9tb2RlbHMvSWRlbnRpZmllZE1vZGVsJztcbmltcG9ydCB7IE5hbWVkTW9kZWwgfSBmcm9tICcuLi8uLi9hbmd1bGFyL21vZGVscy9OYW1lZE1vZGVsJztcbmltcG9ydCB7IFBhZ2UgfSBmcm9tICcuLi8uLi9tb2RlbHMvUGFnZSc7XG5pbXBvcnQgeyBJRW50aXR5U2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL0lFbnRpdHlTZXJ2aWNlJztcbmltcG9ydCB7IENvbmZpcm1EaWFsb2dDb21wb25lbnQgfSBmcm9tICcuLi9jb25maXJtLWRpYWxvZy9jb25maXJtLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQ29tbWFuZCB9IGZyb20gJy4vQ29tbWFuZCc7XG5pbXBvcnQgeyBGaWVsZCB9IGZyb20gJy4vRmllbGQnO1xuaW1wb3J0IHsgdXJsRGVzZXJpYWxpemUsIHVybFNlcmlhbGl6ZSB9IGZyb20gJy4vVXJsU2VyaWFsaXplcic7XG5cbmNvbnN0IG5hbWVGaWVsZCA9ICduYW1lJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZW50aXR5LWxpc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vZW50aXR5LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9lbnRpdHktbGlzdC5jb21wb25lbnQuY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eUxpc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZXJ2aWNlOiBJRW50aXR5U2VydmljZTxOYW1lZE1vZGVsPjtcbiAgQElucHV0KClcbiAgcHVibGljIGZpbHRlcnM6IChGaWx0ZXJEZXNjcmlwdG9yIHwgQ29tcG9zaXRlRmlsdGVyRGVzY3JpcHRvcilbXTtcbiAgQElucHV0KClcbiAgcHVibGljIGZpZWxkcz86IEZpZWxkW107XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBjb21tYW5kcz86IENvbW1hbmRbXTtcbiAgQElucHV0KClcbiAgcHVibGljIHJvd0NsYXNzPzogKGRhdGFJdGVtOiBOYW1lZE1vZGVsLCBpbmRleDogbnVtYmVyKSA9PiB7fTtcbiAgQElucHV0KClcbiAgcHVibGljIGRlZmF1bHRTb3J0PzogU29ydERlc2NyaXB0b3JbXTtcbiAgQElucHV0KClcbiAgcHVibGljIG1hcEl0ZW1Gbj86IChpdGVtOiBOYW1lZE1vZGVsKSA9PiBOYW1lZE1vZGVsICYgUmVtb3ZhYmxlID0gKGl0ZW0pID0+XG4gICAgaXRlbTtcbiAgQElucHV0KCkgcGFnZUJ1dHRvbnNDb3VudDogbnVtYmVyID0gNTtcbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBmaWx0ZXJDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3I+KCk7XG4gIEBWaWV3Q2hpbGQoJ2NvbmZpcm1EaWFsb2cnLCB7IHN0YXRpYzogdHJ1ZSB9KVxuICBwdWJsaWMgZGlhbG9nOiBDb25maXJtRGlhbG9nQ29tcG9uZW50O1xuICBwdWJsaWMgZ3JpZFN0YXRlOiBTdGF0ZSA9IHt9O1xuICBwdWJsaWMgcGFnZTogQmVoYXZpb3JTdWJqZWN0PFBhZ2U8TmFtZWRNb2RlbD4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdDxcbiAgICBQYWdlPE5hbWVkTW9kZWw+XG4gID4obnVsbCk7XG4gIHB1YmxpYyBsb2FkaW5ncyA9IDA7XG4gIHB1YmxpYyBzZWFyY2hUZXJtOiBzdHJpbmc7XG4gIHB1YmxpYyBzZWxlY3RlZDogc3RyaW5nW10gPSBbXTtcbiAgcHVibGljIGdyaWRGaWVsZHM6IEZpZWxkW10gPSBbXTtcbiAgcHJpdmF0ZSBkZWZhdWx0RmllbGRzOiBGaWVsZFtdID0gW1xuICAgIHsgbmFtZTogJ25hbWUnLCBsYWJlbDogJ05hbWUnLCBzb3J0YWJsZTogdHJ1ZSwgcG9zaXRpb246IDAgfSxcbiAgXTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHRyYW5zbGF0ZTogVHJhbnNsYXRlU2VydmljZSxcbiAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICBwcml2YXRlIHJvdXRlcjogUm91dGVyLFxuICApIHtcbiAgICB0aGlzLmdldEFsbERhdGEgPSB0aGlzLmdldEFsbERhdGEuYmluZCh0aGlzKTtcbiAgICB0aGlzLmdldFJvd0NsYXNzID0gdGhpcy5nZXRSb3dDbGFzcy5iaW5kKHRoaXMpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmICghY2hhbmdlcy5maWx0ZXJzIHx8IGNoYW5nZXMuZmlsdGVycy5maXJzdENoYW5nZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMuZ2V0RmlsdGVyZWREYXRhKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmdyaWRGaWVsZHMgPSAodGhpcy5maWVsZHMgfHwgW10pXG4gICAgICAuY29uY2F0KHRoaXMuZGVmYXVsdEZpZWxkcylcbiAgICAgIC5zb3J0KChsZWZ0LCByaWdodCkgPT4gKGxlZnQucG9zaXRpb24gfHwgMCkgLSAocmlnaHQucG9zaXRpb24gfHwgMCkpO1xuICAgIHRoaXMuZmlsdGVycyA9IHRoaXMuZmlsdGVycyA/IHRoaXMuZmlsdGVycyA6IFtdO1xuICAgIHRoaXMuY29tbWFuZHMgPSB0aGlzLmNvbW1hbmRzID8gdGhpcy5jb21tYW5kcyA6IFtdO1xuICAgIHRoaXMucm91dGUuZnJhZ21lbnQuc3Vic2NyaWJlKGFzeW5jIChmcmFnbWVudDogc3RyaW5nKSA9PiB7XG4gICAgICBhd2FpdCB0aGlzLnJlc3RvcmVHcmlkU3RhdGUobmV3IFVSTFNlYXJjaFBhcmFtcyhmcmFnbWVudCkpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5yb3V0ZS5maXJzdENoaWxkLnBhcmFtcy5zdWJzY3JpYmUoKHBhcmFtczogUGFyYW1zKSA9PiB7XG4gICAgICBpZiAocGFyYW1zLmlkKSB7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRbMF0gPSBwYXJhbXMuaWQ7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnNlbGVjdGVkLnBvcCgpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIHJlbW92ZUhhbmRsZXIoeyBkYXRhSXRlbSB9KSB7XG4gICAgdGhpcy5kaWFsb2cub3BlbihcbiAgICAgIHRoaXMudHJhbnNsYXRlLmluc3RhbnQoJ0NvbmZpcm1hdGlvbi5EZWxldGUnKSArXG4gICAgICAgICc6IFwiJyArXG4gICAgICAgIGRhdGFJdGVtLm5hbWUgK1xuICAgICAgICAnXCI/JyxcbiAgICAgICgpID0+IHRoaXMucmVtb3ZlKGRhdGFJdGVtKSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdEl0ZW0oeyBkYXRhSXRlbSB9KSB7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW2RhdGFJdGVtLmlkXSwge1xuICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSxcbiAgICAgIGZyYWdtZW50OiB1cmxTZXJpYWxpemUodGhpcy5ncmlkU3RhdGUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG9uQWN0aXZhdGUoY2hpbGQ6IHsgc2F2ZWQ6IEV2ZW50RW1pdHRlcjxOYW1lZE1vZGVsPiB9KSB7XG4gICAgaWYgKGNoaWxkLnNhdmVkKSB7XG4gICAgICBjaGlsZC5zYXZlZC5zdWJzY3JpYmUoKGRhdGE6IHsgaWQ6IHN0cmluZzsgbmFtZTogc3RyaW5nIH0pID0+XG4gICAgICAgIHRoaXMudXBkYXRlR3JpZChkYXRhKSxcbiAgICAgICk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG9uRGVhY3RpdmF0ZShjaGlsZDogeyBzYXZlZDogRXZlbnRFbWl0dGVyPE5hbWVkTW9kZWw+IH0pIHtcbiAgICBpZiAoY2hpbGQuc2F2ZWQpIHtcbiAgICAgIGNoaWxkLnNhdmVkLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGRhdGFTdGF0ZUNoYW5nZShzdGF0ZTogRGF0YVN0YXRlQ2hhbmdlRXZlbnQpIHtcbiAgICB0aGlzLmdyaWRTdGF0ZSA9IHN0YXRlO1xuICAgIHRoaXMuZ3JpZFN0YXRlLmZpbHRlciA9IHRoaXMuZ2V0RmlsdGVyKCk7XG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW10sIHtcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICBmcmFnbWVudDogdXJsU2VyaWFsaXplKHRoaXMuZ3JpZFN0YXRlKSxcbiAgICB9KTtcbiAgfVxuXG4gIHB1YmxpYyBvblNlYXJjaCh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5zZWFyY2hUZXJtID0gdmFsdWU7XG4gICAgdGhpcy5ncmlkU3RhdGUuc2tpcCA9IDA7XG4gICAgdGhpcy5nZXRGaWx0ZXJlZERhdGEoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRBbGxEYXRhKCk6IE9ic2VydmFibGU8UGFnZTxOYW1lZE1vZGVsICYgUmVtb3ZhYmxlPj4ge1xuICAgIGNvbnN0IHN0YXRlID0gT2JqZWN0LmFzc2lnbih7fSwgdGhpcy5ncmlkU3RhdGUpO1xuICAgIGRlbGV0ZSBzdGF0ZS5za2lwO1xuICAgIGRlbGV0ZSBzdGF0ZS50YWtlO1xuXG4gICAgcmV0dXJuIHRoaXMuc2VydmljZS5nZXRQYWdlKHN0YXRlKS5waXBlKFxuICAgICAgbWFwKChwYWdlUmVzdWx0KSA9PiB7XG4gICAgICAgIHBhZ2VSZXN1bHQuZGF0YSA9IHBhZ2VSZXN1bHQuZGF0YS5tYXAodGhpcy5tYXBJdGVtRm4pO1xuXG4gICAgICAgIHJldHVybiBwYWdlUmVzdWx0O1xuICAgICAgfSksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXRSb3dDbGFzcyhjb250ZXh0OiBSb3dDbGFzc0FyZ3MpOiBPYmplY3Qge1xuICAgIHJldHVybiB0aGlzLnJvd0NsYXNzICYmIGNvbnRleHRcbiAgICAgID8gdGhpcy5yb3dDbGFzcyhjb250ZXh0LmRhdGFJdGVtLCBjb250ZXh0LmluZGV4KVxuICAgICAgOiB7fTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXRGaWx0ZXJlZERhdGEoKSB7XG4gICAgdGhpcy5ncmlkU3RhdGUuZmlsdGVyID0gdGhpcy5nZXRGaWx0ZXIoKTtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbXSwge1xuICAgICAgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSxcbiAgICAgIGZyYWdtZW50OiB1cmxTZXJpYWxpemUodGhpcy5ncmlkU3RhdGUpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHVwZGF0ZUdyaWQoZGF0YTogTmFtZWRNb2RlbCkge1xuICAgIGNvbnN0IG5ld0l0ZW0gPSB0aGlzLm1hcEl0ZW1GbihkYXRhKTtcbiAgICBjb25zdCBjdXJyZW50UGFnZSA9IHsgLi4udGhpcy5wYWdlLnZhbHVlIH07XG4gICAgY29uc3QgZXhpc3RzID0gY3VycmVudFBhZ2UuZGF0YS5maWx0ZXIoKHgpID0+IHguaWQgPT09IGRhdGEuaWQpO1xuICAgIGlmIChleGlzdHMubGVuZ3RoKSB7XG4gICAgICBjdXJyZW50UGFnZS5kYXRhW2N1cnJlbnRQYWdlLmRhdGEuaW5kZXhPZihleGlzdHNbMF0pXSA9IG5ld0l0ZW07XG4gICAgICB0aGlzLnBhZ2UubmV4dChjdXJyZW50UGFnZSk7XG5cbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBjdXJyZW50UGFnZS50b3RhbCsrO1xuICAgIGN1cnJlbnRQYWdlLmRhdGEuc3BsaWNlKDAsIDAsIGRhdGEpO1xuICAgIGlmIChjdXJyZW50UGFnZS5kYXRhLmxlbmd0aCA+IHRoaXMuZ3JpZFN0YXRlLnRha2UpIHtcbiAgICAgIGN1cnJlbnRQYWdlLmRhdGEuc3BsaWNlKHRoaXMucGFnZS52YWx1ZS5kYXRhLmxlbmd0aCAtIDEsIDEpO1xuICAgIH1cblxuICAgIHRoaXMucGFnZS5uZXh0KGN1cnJlbnRQYWdlKTtcbiAgICB0aGlzLnNlbGVjdGVkWzBdID0gZGF0YS5pZDtcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbZGF0YS5pZF0sIHtcbiAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUsXG4gICAgICBwcmVzZXJ2ZUZyYWdtZW50OiB0cnVlLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldERhdGEoKSB7XG4gICAgdGhpcy5sb2FkaW5ncysrO1xuICAgIHJldHVybiB0aGlzLnNlcnZpY2VcbiAgICAgIC5nZXRQYWdlKHRoaXMuZ3JpZFN0YXRlKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgocGFnZVJlc3VsdCkgPT4ge1xuICAgICAgICAgIHBhZ2VSZXN1bHQuZGF0YSA9IHBhZ2VSZXN1bHQuZGF0YS5tYXAodGhpcy5tYXBJdGVtRm4pO1xuXG4gICAgICAgICAgcmV0dXJuIHBhZ2VSZXN1bHQ7XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgocGFnZSkgPT4ge1xuICAgICAgICB0aGlzLnBhZ2UubmV4dChwYWdlKTtcbiAgICAgICAgdGhpcy5sb2FkaW5ncy0tO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHJlbW92ZShlbnRpdHk6IElkZW50aWZpZWRNb2RlbCkge1xuICAgIHRoaXMubG9hZGluZ3MrKztcbiAgICB0aGlzLnNlcnZpY2VcbiAgICAgIC5kZWxldGUoZW50aXR5LmlkKVxuICAgICAgLnBpcGUoXG4gICAgICAgIG1hcCgoKSA9PiB7XG4gICAgICAgICAgaWYgKFxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZC5sZW5ndGggJiZcbiAgICAgICAgICAgIHRoaXMuc2VsZWN0ZWRbdGhpcy5zZWxlY3RlZC5sZW5ndGggLSAxXSA9PT0gZW50aXR5LmlkXG4gICAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy4uLyddLCB7XG4gICAgICAgICAgICAgIHByZXNlcnZlRnJhZ21lbnQ6IHRydWUsXG4gICAgICAgICAgICAgIHJlbGF0aXZlVG86IHRoaXMucm91dGUuZmlyc3RDaGlsZCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH1cbiAgICAgICAgICB0aGlzLmxvYWRpbmdzLS07XG4gICAgICAgIH0pLFxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuZ2V0RGF0YSgpO1xuICAgICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGdldEZpbHRlcigpOiBDb21wb3NpdGVGaWx0ZXJEZXNjcmlwdG9yIHtcbiAgICBjb25zdCBmaWx0ZXI6IENvbXBvc2l0ZUZpbHRlckRlc2NyaXB0b3IgPSB7XG4gICAgICBsb2dpYzogJ2FuZCcsXG4gICAgICBmaWx0ZXJzOiB0aGlzLnNlYXJjaFRlcm1cbiAgICAgICAgPyBbXG4gICAgICAgICAgICB7IGZpZWxkOiBuYW1lRmllbGQsIG9wZXJhdG9yOiAnY29udGFpbnMnLCB2YWx1ZTogdGhpcy5zZWFyY2hUZXJtIH0sXG4gICAgICAgICAgICAuLi50aGlzLmZpbHRlcnMsXG4gICAgICAgICAgXVxuICAgICAgICA6IHRoaXMuZmlsdGVycyxcbiAgICB9O1xuXG4gICAgcmV0dXJuIGZpbHRlcjtcbiAgfVxuXG4gIHByaXZhdGUgb25GaWx0ZXJDaGFuZ2UoKSB7XG4gICAgY29uc3QgZmlsdGVyOiBhbnkgPSB0aGlzLmdyaWRTdGF0ZS5maWx0ZXI/LmZpbHRlcnMuZmluZChcbiAgICAgICh4OiBGaWx0ZXJEZXNjcmlwdG9yKSA9PiB4LmZpZWxkID09PSBuYW1lRmllbGQsXG4gICAgKTtcbiAgICB0aGlzLnNlYXJjaFRlcm0gPSBmaWx0ZXI/LnZhbHVlO1xuICAgIHRoaXMuZmlsdGVyQ2hhbmdlLmVtaXQodGhpcy5ncmlkU3RhdGUuZmlsdGVyKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcmVzdG9yZUdyaWRTdGF0ZShwYXJhbXM6IFVSTFNlYXJjaFBhcmFtcykge1xuICAgIGNvbnN0IGRlZmF1bHRHcmlkU3RhdGU6IFN0YXRlID0ge1xuICAgICAgc29ydDogdGhpcy5kZWZhdWx0U29ydCB8fCBbeyBmaWVsZDogbmFtZUZpZWxkLCBkaXI6ICdhc2MnIH1dLFxuICAgICAgc2tpcDogMCxcbiAgICAgIHRha2U6IDEwLFxuICAgICAgZmlsdGVyOiB0aGlzLmdldEZpbHRlcigpLFxuICAgIH07XG5cbiAgICBjb25zdCBzdGF0ZSA9IHVybERlc2VyaWFsaXplKHBhcmFtcyk7XG4gICAgdGhpcy5ncmlkU3RhdGUgPSBzdGF0ZS5oYXNPd25Qcm9wZXJ0eSgndGFrZScpID8gc3RhdGUgOiBkZWZhdWx0R3JpZFN0YXRlO1xuICAgIHRoaXMuZ3JpZFN0YXRlLnNraXAgPSArdGhpcy5ncmlkU3RhdGUuc2tpcDtcbiAgICB0aGlzLmdyaWRTdGF0ZS50YWtlID0gK3RoaXMuZ3JpZFN0YXRlLnRha2U7XG4gICAgdGhpcy5vbkZpbHRlckNoYW5nZSgpO1xuICAgIHRoaXMuZ2V0RGF0YSgpO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicm93XCI+XG4gIDxkaXYgY2xhc3M9XCJjb2wtbWQtNFwiPlxuICAgIDxoZWFkZXIgY2xhc3M9XCJoZWFkZXItcGFnZS1iZ1wiPjwvaGVhZGVyPlxuICAgIDxkaXYgY2xhc3M9XCJwYW5lbCBzZWFyY2gtcGFuZWwgaGVyby11bml0XCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLXNlbGVjdGlvbi1maWVsZFwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwic2VhcmNoaW5wdXRcIiBjbGFzcz1cInRpdGxlLWZpZWxkXCIgdHJhbnNsYXRlPVwiU2VhcmNoXCI+PC9sYWJlbD5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAga2VuZG9UZXh0Qm94XG4gICAgICAgICAgY2xhc3M9XCJxdWljay1maWx0ZXIgaW5wdXQgaW5wdXQtZmllbGRcIlxuICAgICAgICAgIHRpdGxlPVwiXCJcbiAgICAgICAgICBpZD1cInNlYXJjaGlucHV0XCJcbiAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgYXBwRGVib3VuY2VcbiAgICAgICAgICAoZGVib3VuY2VLZXl1cCk9XCJvblNlYXJjaCgkZXZlbnQudGFyZ2V0LnZhbHVlKVwiXG4gICAgICAgICAgW25nTW9kZWxdPVwic2VhcmNoVGVybVwiXG4gICAgICAgICAgW2RlYm91bmNlVGltZV09XCI2MDBcIlxuICAgICAgICAvPlxuICAgICAgPC9kaXY+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGl2aWRlLWxpbmVcIj48L2Rpdj5cblxuICAgICAgPGtlbmRvLWdyaWRcbiAgICAgICAgW2RhdGFdPVwicGFnZSB8IGFzeW5jXCJcbiAgICAgICAgW3BhZ2VTaXplXT1cImdyaWRTdGF0ZS50YWtlXCJcbiAgICAgICAgW3NraXBdPVwiZ3JpZFN0YXRlLnNraXBcIlxuICAgICAgICBbc29ydF09XCJncmlkU3RhdGUuc29ydFwiXG4gICAgICAgIFtwYWdlYWJsZV09XCJ0cnVlXCJcbiAgICAgICAgW3NvcnRhYmxlXT1cInRydWVcIlxuICAgICAgICBbc3R5bGUubWF4SGVpZ2h0LnB4XT1cIjQ4MFwiXG4gICAgICAgIChyZW1vdmUpPVwicmVtb3ZlSGFuZGxlcigkZXZlbnQpXCJcbiAgICAgICAgKGRhdGFTdGF0ZUNoYW5nZSk9XCJkYXRhU3RhdGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgIFtsb2FkaW5nXT1cImxvYWRpbmdzID4gMFwiXG4gICAgICAgIChjZWxsQ2xpY2spPVwic2VsZWN0SXRlbSgkZXZlbnQpXCJcbiAgICAgICAgY3VsdHVyZVxuICAgICAgICBjbGFzcz1cInJvd3MtcG9pbnRhYmxlXCJcbiAgICAgICAga2VuZG9HcmlkU2VsZWN0Qnk9XCJpZFwiXG4gICAgICAgIFtzZWxlY3RlZEtleXNdPVwic2VsZWN0ZWRcIlxuICAgICAgICBbcm93Q2xhc3NdPVwiZ2V0Um93Q2xhc3NcIlxuICAgICAgPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkVG9vbGJhclRlbXBsYXRlPlxuICAgICAgICAgIDxleGNlbC1leHBvcnQtYnV0dG9uPjwvZXhjZWwtZXhwb3J0LWJ1dHRvbj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPGtlbmRvLWdyaWQtZXhjZWwgW2ZldGNoRGF0YV09XCJnZXRBbGxEYXRhXCI+PC9rZW5kby1ncmlkLWV4Y2VsPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbiB3aWR0aD1cIjY1XCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICpuZ0lmPVwiIWRhdGFJdGVtLnN1cHByZXNzRGVsZXRpb25cIlxuICAgICAgICAgICAgICBrZW5kb0dyaWRSZW1vdmVDb21tYW5kXG4gICAgICAgICAgICAgIHJlcXVpcmVQZXJtaXNzaW9uXG4gICAgICAgICAgICAgIHBlcm1pc3Npb25UeXBlPVwiRGVsZXRlXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGVtIGNsYXNzPVwiay1pY29uIGdseXBoaWNvbiBnbHlwaGljb24tdHJhc2hcIj48L2VtPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9rZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb2x1bW5cbiAgICAgICAgICAqbmdGb3I9XCJsZXQgZmllbGQgb2YgZ3JpZEZpZWxkc1wiXG4gICAgICAgICAgZmllbGQ9XCJ7eyBmaWVsZC5uYW1lIH19XCJcbiAgICAgICAgICB0aXRsZT1cInt7IGZpZWxkLmxhYmVsIHwgdHJhbnNsYXRlIH19XCJcbiAgICAgICAgICBbc29ydGFibGVdPVwiZmllbGQuc29ydGFibGUgIT09IGZhbHNlXCJcbiAgICAgICAgPlxuICAgICAgICA8L2tlbmRvLWdyaWQtY29sdW1uPlxuICAgICAgICA8a2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbiB3aWR0aD1cIjY1XCIgKm5nSWY9XCJjb21tYW5kcy5sZW5ndGggPiAwXCI+XG4gICAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZENlbGxUZW1wbGF0ZSBsZXQtZGF0YUl0ZW0+XG4gICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBjb21tYW5kIG9mIGNvbW1hbmRzXCJcbiAgICAgICAgICAgICAgKGNsaWNrKT1cImNvbW1hbmQuaGFuZGxlcihkYXRhSXRlbSlcIlxuICAgICAgICAgICAgICB0aXRsZT1cInt7IGNvbW1hbmQudGl0bGUgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgICAgICBjbGFzcz1cImstYnV0dG9uXCJcbiAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgPGVtXG4gICAgICAgICAgICAgICAgKm5nSWY9XCJjb21tYW5kLmljb25DbGFzc1wiXG4gICAgICAgICAgICAgICAgY2xhc3M9XCJ7eyBjb21tYW5kLmljb25DbGFzcyB9fVwiXG4gICAgICAgICAgICAgID48L2VtPlxuICAgICAgICAgICAgICB7eyBjb21tYW5kLm5hbWUgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIDwva2VuZG8tZ3JpZC1jb21tYW5kLWNvbHVtbj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvR3JpZE5vUmVjb3Jkc1RlbXBsYXRlPlxuICAgICAgICAgIHt7IFwiTWVzc2FnZXMuTm9SZWNvcmRzXCIgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPG5nLXRlbXBsYXRlIGtlbmRvUGFnZXJUZW1wbGF0ZT5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicGFnZXJcIj5cbiAgICAgICAgICAgIDxrZW5kby1ncmlkLXNwYWNlcj48L2tlbmRvLWdyaWQtc3BhY2VyPlxuICAgICAgICAgICAgPGtlbmRvLXBhZ2VyLXByZXYtYnV0dG9ucz48L2tlbmRvLXBhZ2VyLXByZXYtYnV0dG9ucz5cbiAgICAgICAgICAgIDxrZW5kby1wYWdlci1udW1lcmljLWJ1dHRvbnNcbiAgICAgICAgICAgICAgW2J1dHRvbkNvdW50XT1cInBhZ2VCdXR0b25zQ291bnRcIlxuICAgICAgICAgICAgPjwva2VuZG8tcGFnZXItbnVtZXJpYy1idXR0b25zPlxuICAgICAgICAgICAgPGtlbmRvLXBhZ2VyLW5leHQtYnV0dG9ucz48L2tlbmRvLXBhZ2VyLW5leHQtYnV0dG9ucz5cbiAgICAgICAgICAgIDxrZW5kby1wYWdlci1pbmZvPjwva2VuZG8tcGFnZXItaW5mbz5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwva2VuZG8tZ3JpZD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxyb3V0ZXItb3V0bGV0XG4gICAgKGFjdGl2YXRlKT1cIm9uQWN0aXZhdGUoJGV2ZW50KVwiXG4gICAgKGRlYWN0aXZhdGUpPVwib25EZWFjdGl2YXRlKCRldmVudClcIlxuICA+PC9yb3V0ZXItb3V0bGV0PlxuPC9kaXY+XG48Y29uZmlybS1kaWFsb2cgI2NvbmZpcm1EaWFsb2c+PC9jb25maXJtLWRpYWxvZz5cbiJdfQ==
@@ -29,10 +29,10 @@ export class UserListAdminComponent extends EntityListComponent {
29
29
  }
30
30
  }
31
31
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: UserListAdminComponent, deps: [{ token: i1.TranslateService }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i3.PartnerService }], target: i0.ɵɵFactoryTarget.Component }); }
32
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: UserListAdminComponent, selector: "lib-user-list-admin", providers: [PartnerService], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i5.DebounceDirective, selector: "[appDebounce]", inputs: ["debounceTime"], outputs: ["debounceKeyup"] }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i6.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "component", type: i6.GridSpacerComponent, selector: "kendo-grid-spacer, kendo-pager-spacer", inputs: ["width"] }, { kind: "directive", type: i6.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "directive", type: i6.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i6.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i6.FocusableDirective, selector: "[kendoGridFocusable], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridCancelCommand], [kendoGridSelectionCheckbox] ", inputs: ["kendoGridFocusable"] }, { kind: "component", type: i6.CommandColumnComponent, selector: "kendo-grid-command-column" }, { kind: "directive", type: i6.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i6.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i6.RemoveCommandDirective, selector: "[kendoGridRemoveCommand]" }, { kind: "component", type: i6.PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons" }, { kind: "component", type: i6.PagerNextButtonsComponent, selector: "kendo-pager-next-buttons" }, { kind: "component", type: i6.PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: ["buttonCount"] }, { kind: "component", type: i6.PagerInfoComponent, selector: "kendo-pager-info" }, { kind: "directive", type: i6.PagerTemplateDirective, selector: "[kendoPagerTemplate]" }, { kind: "component", type: i6.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"] }, { kind: "directive", type: i7.TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i9.ConfirmDialogComponent, selector: "confirm-dialog" }, { kind: "directive", type: i10.RequirePermissionDirective, selector: "[requirePermission]", inputs: ["permissionType", "permissionCategory"] }, { kind: "component", type: i11.ExcelExportButtonComponent, selector: "excel-export-button" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: UserListAdminComponent, selector: "lib-user-list-admin", providers: [PartnerService], usesInheritance: true, ngImport: i0, template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <div class=\"pager\">\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </div>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n", dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i5.DebounceDirective, selector: "[appDebounce]", inputs: ["debounceTime"], outputs: ["debounceKeyup"] }, { kind: "directive", type: i1.TranslateDirective, selector: "[translate],[ngx-translate]", inputs: ["translate", "translateParams"] }, { kind: "component", type: i6.GridComponent, selector: "kendo-grid", inputs: ["data", "pageSize", "height", "rowHeight", "detailRowHeight", "skip", "scrollable", "selectable", "sort", "size", "trackBy", "filter", "group", "virtualColumns", "filterable", "sortable", "pageable", "groupable", "rowReorderable", "navigable", "navigatable", "autoSize", "rowClass", "rowSticky", "rowSelected", "cellSelected", "resizable", "reorderable", "loading", "columnMenu", "hideHeader", "isDetailExpanded", "isGroupExpanded"], outputs: ["filterChange", "pageChange", "groupChange", "sortChange", "selectionChange", "rowReorder", "dataStateChange", "groupExpand", "groupCollapse", "detailExpand", "detailCollapse", "edit", "cancel", "save", "remove", "add", "cellClose", "cellClick", "pdfExport", "excelExport", "columnResize", "columnReorder", "columnVisibilityChange", "columnLockedChange", "columnStickyChange", "scrollBottom", "contentScroll"], exportAs: ["kendoGrid"] }, { kind: "directive", type: i6.ToolbarTemplateDirective, selector: "[kendoGridToolbarTemplate]", inputs: ["position"] }, { kind: "component", type: i6.GridSpacerComponent, selector: "kendo-grid-spacer, kendo-pager-spacer", inputs: ["width"] }, { kind: "directive", type: i6.SelectionDirective, selector: "[kendoGridSelectBy]" }, { kind: "directive", type: i6.GridToolbarFocusableDirective, selector: " [kendoGridToolbarFocusable], [kendoGridAddCommand], [kendoGridCancelCommand], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridExcelCommand], [kendoGridPDFCommand] " }, { kind: "component", type: i6.ColumnComponent, selector: "kendo-grid-column", inputs: ["field", "format", "sortable", "groupable", "editor", "filter", "filterable", "editable"] }, { kind: "directive", type: i6.FocusableDirective, selector: "[kendoGridFocusable], [kendoGridEditCommand], [kendoGridRemoveCommand], [kendoGridSaveCommand], [kendoGridCancelCommand], [kendoGridSelectionCheckbox] ", inputs: ["kendoGridFocusable"] }, { kind: "component", type: i6.CommandColumnComponent, selector: "kendo-grid-command-column" }, { kind: "directive", type: i6.CellTemplateDirective, selector: "[kendoGridCellTemplate]" }, { kind: "directive", type: i6.NoRecordsTemplateDirective, selector: "[kendoGridNoRecordsTemplate]" }, { kind: "component", type: i6.RemoveCommandDirective, selector: "[kendoGridRemoveCommand]" }, { kind: "component", type: i6.PagerPrevButtonsComponent, selector: "kendo-pager-prev-buttons" }, { kind: "component", type: i6.PagerNextButtonsComponent, selector: "kendo-pager-next-buttons" }, { kind: "component", type: i6.PagerNumericButtonsComponent, selector: "kendo-pager-numeric-buttons", inputs: ["buttonCount"] }, { kind: "component", type: i6.PagerInfoComponent, selector: "kendo-pager-info" }, { kind: "directive", type: i6.PagerTemplateDirective, selector: "[kendoPagerTemplate]" }, { kind: "component", type: i6.ExcelComponent, selector: "kendo-grid-excel", inputs: ["fileName", "filterable", "creator", "date", "forceProxy", "proxyURL", "fetchData", "paddingCellOptions", "headerPaddingCellOptions", "collapsible"] }, { kind: "directive", type: i7.TextBoxDirective, selector: "input[kendoTextBox]", inputs: ["value"] }, { kind: "directive", type: i8.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i8.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i8.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i9.ConfirmDialogComponent, selector: "confirm-dialog" }, { kind: "directive", type: i10.RequirePermissionDirective, selector: "[requirePermission]", inputs: ["permissionType", "permissionCategory"] }, { kind: "component", type: i11.ExcelExportButtonComponent, selector: "excel-export-button" }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
33
33
  }
34
34
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: UserListAdminComponent, decorators: [{
35
35
  type: Component,
36
- args: [{ selector: 'lib-user-list-admin', providers: [PartnerService], template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n" }]
36
+ args: [{ selector: 'lib-user-list-admin', providers: [PartnerService], template: "<div class=\"row\">\n <div class=\"col-md-4\">\n <header class=\"header-page-bg\"></header>\n <div class=\"panel search-panel hero-unit\">\n <div class=\"header-selection-field\">\n <label for=\"searchinput\" class=\"title-field\" translate=\"Search\"></label>\n <input\n kendoTextBox\n class=\"quick-filter input input-field\"\n title=\"\"\n id=\"searchinput\"\n type=\"text\"\n appDebounce\n (debounceKeyup)=\"onSearch($event.target.value)\"\n [ngModel]=\"searchTerm\"\n [debounceTime]=\"600\"\n />\n </div>\n <ng-content></ng-content>\n <div class=\"divide-line\"></div>\n\n <kendo-grid\n [data]=\"page | async\"\n [pageSize]=\"gridState.take\"\n [skip]=\"gridState.skip\"\n [sort]=\"gridState.sort\"\n [pageable]=\"true\"\n [sortable]=\"true\"\n [style.maxHeight.px]=\"480\"\n (remove)=\"removeHandler($event)\"\n (dataStateChange)=\"dataStateChange($event)\"\n [loading]=\"loadings > 0\"\n (cellClick)=\"selectItem($event)\"\n culture\n class=\"rows-pointable\"\n kendoGridSelectBy=\"id\"\n [selectedKeys]=\"selected\"\n [rowClass]=\"getRowClass\"\n >\n <ng-template kendoGridToolbarTemplate>\n <excel-export-button></excel-export-button>\n </ng-template>\n <kendo-grid-excel [fetchData]=\"getAllData\"></kendo-grid-excel>\n <kendo-grid-command-column width=\"65\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngIf=\"!dataItem.suppressDeletion\"\n kendoGridRemoveCommand\n requirePermission\n permissionType=\"Delete\"\n >\n <em class=\"k-icon glyphicon glyphicon-trash\"></em>\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <kendo-grid-column\n *ngFor=\"let field of gridFields\"\n field=\"{{ field.name }}\"\n title=\"{{ field.label | translate }}\"\n [sortable]=\"field.sortable !== false\"\n >\n </kendo-grid-column>\n <kendo-grid-command-column width=\"65\" *ngIf=\"commands.length > 0\">\n <ng-template kendoGridCellTemplate let-dataItem>\n <button\n *ngFor=\"let command of commands\"\n (click)=\"command.handler(dataItem)\"\n title=\"{{ command.title | translate }}\"\n class=\"k-button\"\n >\n <em\n *ngIf=\"command.iconClass\"\n class=\"{{ command.iconClass }}\"\n ></em>\n {{ command.name | translate }}\n </button>\n </ng-template>\n </kendo-grid-command-column>\n <ng-template kendoGridNoRecordsTemplate>\n {{ \"Messages.NoRecords\" | translate }}\n </ng-template>\n <ng-template kendoPagerTemplate>\n <div class=\"pager\">\n <kendo-grid-spacer></kendo-grid-spacer>\n <kendo-pager-prev-buttons></kendo-pager-prev-buttons>\n <kendo-pager-numeric-buttons\n [buttonCount]=\"pageButtonsCount\"\n ></kendo-pager-numeric-buttons>\n <kendo-pager-next-buttons></kendo-pager-next-buttons>\n <kendo-pager-info></kendo-pager-info>\n </div>\n </ng-template>\n </kendo-grid>\n </div>\n </div>\n <router-outlet\n (activate)=\"onActivate($event)\"\n (deactivate)=\"onDeactivate($event)\"\n ></router-outlet>\n</div>\n<confirm-dialog #confirmDialog></confirm-dialog>\n" }]
37
37
  }], ctorParameters: () => [{ type: i1.TranslateService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i3.PartnerService }] });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1saXN0LWFkbWluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvd2lkZ2V0cy9lbnRpdHktbGlzdC91c2VyLWxpc3QtYWRtaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1saXN0L2VudGl0eS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBS3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQU85RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsbUJBQW1CO0lBQzdELFlBQ0UsU0FBMkIsRUFDM0IsS0FBcUIsRUFDckIsTUFBYyxFQUNOLGNBQThCO1FBRXRDLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRnhCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUd4QyxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQTBDO1FBQzFELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNmLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBVSxFQUFFLEVBQUUsQ0FDbkMsSUFBSSxDQUFDLGNBQWM7aUJBQ2hCLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2lCQUNuQixTQUFTLENBQUMsQ0FBQyxPQUFtQixFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FDTCxDQUFDO1NBQ0g7SUFDSCxDQUFDOzhHQXJCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiw4Q0FGdEIsQ0FBQyxjQUFjLENBQUMsaURDWDdCLCtqSEFtR0E7OzJGRHRGYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UscUJBQXFCLGFBRXBCLENBQUMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmFtZWRNb2RlbCB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvbW9kZWxzL05hbWVkTW9kZWwnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL21vZGVscy9Vc2VyJztcbmltcG9ydCB7IFBhcnRuZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGFydG5lci5zZXJ2aWNlJztcbmltcG9ydCB7IEVudGl0eUxpc3RDb21wb25lbnQgfSBmcm9tICcuL2VudGl0eS1saXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi11c2VyLWxpc3QtYWRtaW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vZW50aXR5LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtQYXJ0bmVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJMaXN0QWRtaW5Db21wb25lbnQgZXh0ZW5kcyBFbnRpdHlMaXN0Q29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHBhcnRuZXJTZXJ2aWNlOiBQYXJ0bmVyU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIodHJhbnNsYXRlLCByb3V0ZSwgcm91dGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkFjdGl2YXRlKGNoaWxkOiB7IHNhdmVkOiBFdmVudEVtaXR0ZXI8TmFtZWRNb2RlbD4gfSkge1xuICAgIGlmIChjaGlsZC5zYXZlZCkge1xuICAgICAgY2hpbGQuc2F2ZWQuc3Vic2NyaWJlKChkYXRhOiBVc2VyKSA9PlxuICAgICAgICB0aGlzLnBhcnRuZXJTZXJ2aWNlXG4gICAgICAgICAgLmdldChkYXRhLnBhcnRuZXJJZClcbiAgICAgICAgICAuc3Vic2NyaWJlKChwYXJ0bmVyOiBOYW1lZE1vZGVsKSA9PiB7XG4gICAgICAgICAgICBkYXRhLnBhcnRuZXJOYW1lID0gcGFydG5lci5uYW1lO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkKGRhdGEpO1xuICAgICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XG4gICAgPGhlYWRlciBjbGFzcz1cImhlYWRlci1wYWdlLWJnXCI+PC9oZWFkZXI+XG4gICAgPGRpdiBjbGFzcz1cInBhbmVsIHNlYXJjaC1wYW5lbCBoZXJvLXVuaXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItc2VsZWN0aW9uLWZpZWxkXCI+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJzZWFyY2hpbnB1dFwiIGNsYXNzPVwidGl0bGUtZmllbGRcIiB0cmFuc2xhdGU9XCJTZWFyY2hcIj48L2xhYmVsPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBrZW5kb1RleHRCb3hcbiAgICAgICAgICBjbGFzcz1cInF1aWNrLWZpbHRlciBpbnB1dCBpbnB1dC1maWVsZFwiXG4gICAgICAgICAgdGl0bGU9XCJcIlxuICAgICAgICAgIGlkPVwic2VhcmNoaW5wdXRcIlxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBhcHBEZWJvdW5jZVxuICAgICAgICAgIChkZWJvdW5jZUtleXVwKT1cIm9uU2VhcmNoKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICBbZGVib3VuY2VUaW1lXT1cIjYwMFwiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGUtbGluZVwiPjwvZGl2PlxuXG4gICAgICA8a2VuZG8tZ3JpZFxuICAgICAgICBbZGF0YV09XCJwYWdlIHwgYXN5bmNcIlxuICAgICAgICBbcGFnZVNpemVdPVwiZ3JpZFN0YXRlLnRha2VcIlxuICAgICAgICBbc2tpcF09XCJncmlkU3RhdGUuc2tpcFwiXG4gICAgICAgIFtzb3J0XT1cImdyaWRTdGF0ZS5zb3J0XCJcbiAgICAgICAgW3BhZ2VhYmxlXT1cInRydWVcIlxuICAgICAgICBbc29ydGFibGVdPVwidHJ1ZVwiXG4gICAgICAgIFtzdHlsZS5tYXhIZWlnaHQucHhdPVwiNDgwXCJcbiAgICAgICAgKHJlbW92ZSk9XCJyZW1vdmVIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAoZGF0YVN0YXRlQ2hhbmdlKT1cImRhdGFTdGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ3MgPiAwXCJcbiAgICAgICAgKGNlbGxDbGljayk9XCJzZWxlY3RJdGVtKCRldmVudClcIlxuICAgICAgICBjdWx0dXJlXG4gICAgICAgIGNsYXNzPVwicm93cy1wb2ludGFibGVcIlxuICAgICAgICBrZW5kb0dyaWRTZWxlY3RCeT1cImlkXCJcbiAgICAgICAgW3NlbGVjdGVkS2V5c109XCJzZWxlY3RlZFwiXG4gICAgICAgIFtyb3dDbGFzc109XCJnZXRSb3dDbGFzc1wiXG4gICAgICA+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRUb29sYmFyVGVtcGxhdGU+XG4gICAgICAgICAgPGV4Y2VsLWV4cG9ydC1idXR0b24+PC9leGNlbC1leHBvcnQtYnV0dG9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8a2VuZG8tZ3JpZC1leGNlbCBbZmV0Y2hEYXRhXT1cImdldEFsbERhdGFcIj48L2tlbmRvLWdyaWQtZXhjZWw+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uIHdpZHRoPVwiNjVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgKm5nSWY9XCIhZGF0YUl0ZW0uc3VwcHJlc3NEZWxldGlvblwiXG4gICAgICAgICAgICAgIGtlbmRvR3JpZFJlbW92ZUNvbW1hbmRcbiAgICAgICAgICAgICAgcmVxdWlyZVBlcm1pc3Npb25cbiAgICAgICAgICAgICAgcGVybWlzc2lvblR5cGU9XCJEZWxldGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZW0gY2xhc3M9XCJrLWljb24gZ2x5cGhpY29uIGdseXBoaWNvbi10cmFzaFwiPjwvZW0+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2tlbmRvLWdyaWQtY29tbWFuZC1jb2x1bW4+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbHVtblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBncmlkRmllbGRzXCJcbiAgICAgICAgICBmaWVsZD1cInt7IGZpZWxkLm5hbWUgfX1cIlxuICAgICAgICAgIHRpdGxlPVwie3sgZmllbGQubGFiZWwgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgIFtzb3J0YWJsZV09XCJmaWVsZC5zb3J0YWJsZSAhPT0gZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uIHdpZHRoPVwiNjVcIiAqbmdJZj1cImNvbW1hbmRzLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbW1hbmQgb2YgY29tbWFuZHNcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY29tbWFuZC5oYW5kbGVyKGRhdGFJdGVtKVwiXG4gICAgICAgICAgICAgIHRpdGxlPVwie3sgY29tbWFuZC50aXRsZSB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiay1idXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZW1cbiAgICAgICAgICAgICAgICAqbmdJZj1cImNvbW1hbmQuaWNvbkNsYXNzXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInt7IGNvbW1hbmQuaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgPjwvZW0+XG4gICAgICAgICAgICAgIHt7IGNvbW1hbmQubmFtZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9rZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkTm9SZWNvcmRzVGVtcGxhdGU+XG4gICAgICAgICAge3sgXCJNZXNzYWdlcy5Ob1JlY29yZHNcIiB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9QYWdlclRlbXBsYXRlPlxuICAgICAgICAgIDxrZW5kby1ncmlkLXNwYWNlcj48L2tlbmRvLWdyaWQtc3BhY2VyPlxuICAgICAgICAgIDxrZW5kby1wYWdlci1wcmV2LWJ1dHRvbnM+PC9rZW5kby1wYWdlci1wcmV2LWJ1dHRvbnM+XG4gICAgICAgICAgPGtlbmRvLXBhZ2VyLW51bWVyaWMtYnV0dG9uc1xuICAgICAgICAgICAgW2J1dHRvbkNvdW50XT1cInBhZ2VCdXR0b25zQ291bnRcIlxuICAgICAgICAgID48L2tlbmRvLXBhZ2VyLW51bWVyaWMtYnV0dG9ucz5cbiAgICAgICAgICA8a2VuZG8tcGFnZXItbmV4dC1idXR0b25zPjwva2VuZG8tcGFnZXItbmV4dC1idXR0b25zPlxuICAgICAgICAgIDxrZW5kby1wYWdlci1pbmZvPjwva2VuZG8tcGFnZXItaW5mbz5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgIDwva2VuZG8tZ3JpZD5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG4gIDxyb3V0ZXItb3V0bGV0XG4gICAgKGFjdGl2YXRlKT1cIm9uQWN0aXZhdGUoJGV2ZW50KVwiXG4gICAgKGRlYWN0aXZhdGUpPVwib25EZWFjdGl2YXRlKCRldmVudClcIlxuICA+PC9yb3V0ZXItb3V0bGV0PlxuPC9kaXY+XG48Y29uZmlybS1kaWFsb2cgI2NvbmZpcm1EaWFsb2c+PC9jb25maXJtLWRpYWxvZz5cbiJdfQ==
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1saXN0LWFkbWluLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2tlbmRvL3NyYy9saWIvd2lkZ2V0cy9lbnRpdHktbGlzdC91c2VyLWxpc3QtYWRtaW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMva2VuZG8vc3JjL2xpYi93aWRnZXRzL2VudGl0eS1saXN0L2VudGl0eS1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBS3hELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNoRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQzs7Ozs7Ozs7Ozs7OztBQU85RCxNQUFNLE9BQU8sc0JBQXVCLFNBQVEsbUJBQW1CO0lBQzdELFlBQ0UsU0FBMkIsRUFDM0IsS0FBcUIsRUFDckIsTUFBYyxFQUNOLGNBQThCO1FBRXRDLEtBQUssQ0FBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRnhCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUd4QyxDQUFDO0lBRU0sVUFBVSxDQUFDLEtBQTBDO1FBQzFELElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtZQUNmLEtBQUssQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUMsSUFBVSxFQUFFLEVBQUUsQ0FDbkMsSUFBSSxDQUFDLGNBQWM7aUJBQ2hCLEdBQUcsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2lCQUNuQixTQUFTLENBQUMsQ0FBQyxPQUFtQixFQUFFLEVBQUU7Z0JBQ2pDLElBQUksQ0FBQyxXQUFXLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQztnQkFDaEMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN4QixDQUFDLENBQUMsQ0FDTCxDQUFDO1NBQ0g7SUFDSCxDQUFDOzhHQXJCVSxzQkFBc0I7a0dBQXRCLHNCQUFzQiw4Q0FGdEIsQ0FBQyxjQUFjLENBQUMsaURDWDdCLGdvSEFxR0E7OzJGRHhGYSxzQkFBc0I7a0JBTGxDLFNBQVM7K0JBQ0UscUJBQXFCLGFBRXBCLENBQUMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgTmFtZWRNb2RlbCB9IGZyb20gJy4uLy4uL2FuZ3VsYXIvbW9kZWxzL05hbWVkTW9kZWwnO1xuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uLy4uL21vZGVscy9Vc2VyJztcbmltcG9ydCB7IFBhcnRuZXJTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvcGFydG5lci5zZXJ2aWNlJztcbmltcG9ydCB7IEVudGl0eUxpc3RDb21wb25lbnQgfSBmcm9tICcuL2VudGl0eS1saXN0LmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2xpYi11c2VyLWxpc3QtYWRtaW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vZW50aXR5LWxpc3QuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFtQYXJ0bmVyU2VydmljZV0sXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJMaXN0QWRtaW5Db21wb25lbnQgZXh0ZW5kcyBFbnRpdHlMaXN0Q29tcG9uZW50IHtcbiAgY29uc3RydWN0b3IoXG4gICAgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHBhcnRuZXJTZXJ2aWNlOiBQYXJ0bmVyU2VydmljZSxcbiAgKSB7XG4gICAgc3VwZXIodHJhbnNsYXRlLCByb3V0ZSwgcm91dGVyKTtcbiAgfVxuXG4gIHB1YmxpYyBvbkFjdGl2YXRlKGNoaWxkOiB7IHNhdmVkOiBFdmVudEVtaXR0ZXI8TmFtZWRNb2RlbD4gfSkge1xuICAgIGlmIChjaGlsZC5zYXZlZCkge1xuICAgICAgY2hpbGQuc2F2ZWQuc3Vic2NyaWJlKChkYXRhOiBVc2VyKSA9PlxuICAgICAgICB0aGlzLnBhcnRuZXJTZXJ2aWNlXG4gICAgICAgICAgLmdldChkYXRhLnBhcnRuZXJJZClcbiAgICAgICAgICAuc3Vic2NyaWJlKChwYXJ0bmVyOiBOYW1lZE1vZGVsKSA9PiB7XG4gICAgICAgICAgICBkYXRhLnBhcnRuZXJOYW1lID0gcGFydG5lci5uYW1lO1xuICAgICAgICAgICAgdGhpcy51cGRhdGVHcmlkKGRhdGEpO1xuICAgICAgICAgIH0pLFxuICAgICAgKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJyb3dcIj5cbiAgPGRpdiBjbGFzcz1cImNvbC1tZC00XCI+XG4gICAgPGhlYWRlciBjbGFzcz1cImhlYWRlci1wYWdlLWJnXCI+PC9oZWFkZXI+XG4gICAgPGRpdiBjbGFzcz1cInBhbmVsIHNlYXJjaC1wYW5lbCBoZXJvLXVuaXRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItc2VsZWN0aW9uLWZpZWxkXCI+XG4gICAgICAgIDxsYWJlbCBmb3I9XCJzZWFyY2hpbnB1dFwiIGNsYXNzPVwidGl0bGUtZmllbGRcIiB0cmFuc2xhdGU9XCJTZWFyY2hcIj48L2xhYmVsPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICBrZW5kb1RleHRCb3hcbiAgICAgICAgICBjbGFzcz1cInF1aWNrLWZpbHRlciBpbnB1dCBpbnB1dC1maWVsZFwiXG4gICAgICAgICAgdGl0bGU9XCJcIlxuICAgICAgICAgIGlkPVwic2VhcmNoaW5wdXRcIlxuICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICBhcHBEZWJvdW5jZVxuICAgICAgICAgIChkZWJvdW5jZUtleXVwKT1cIm9uU2VhcmNoKCRldmVudC50YXJnZXQudmFsdWUpXCJcbiAgICAgICAgICBbbmdNb2RlbF09XCJzZWFyY2hUZXJtXCJcbiAgICAgICAgICBbZGVib3VuY2VUaW1lXT1cIjYwMFwiXG4gICAgICAgIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgIDxkaXYgY2xhc3M9XCJkaXZpZGUtbGluZVwiPjwvZGl2PlxuXG4gICAgICA8a2VuZG8tZ3JpZFxuICAgICAgICBbZGF0YV09XCJwYWdlIHwgYXN5bmNcIlxuICAgICAgICBbcGFnZVNpemVdPVwiZ3JpZFN0YXRlLnRha2VcIlxuICAgICAgICBbc2tpcF09XCJncmlkU3RhdGUuc2tpcFwiXG4gICAgICAgIFtzb3J0XT1cImdyaWRTdGF0ZS5zb3J0XCJcbiAgICAgICAgW3BhZ2VhYmxlXT1cInRydWVcIlxuICAgICAgICBbc29ydGFibGVdPVwidHJ1ZVwiXG4gICAgICAgIFtzdHlsZS5tYXhIZWlnaHQucHhdPVwiNDgwXCJcbiAgICAgICAgKHJlbW92ZSk9XCJyZW1vdmVIYW5kbGVyKCRldmVudClcIlxuICAgICAgICAoZGF0YVN0YXRlQ2hhbmdlKT1cImRhdGFTdGF0ZUNoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgW2xvYWRpbmddPVwibG9hZGluZ3MgPiAwXCJcbiAgICAgICAgKGNlbGxDbGljayk9XCJzZWxlY3RJdGVtKCRldmVudClcIlxuICAgICAgICBjdWx0dXJlXG4gICAgICAgIGNsYXNzPVwicm93cy1wb2ludGFibGVcIlxuICAgICAgICBrZW5kb0dyaWRTZWxlY3RCeT1cImlkXCJcbiAgICAgICAgW3NlbGVjdGVkS2V5c109XCJzZWxlY3RlZFwiXG4gICAgICAgIFtyb3dDbGFzc109XCJnZXRSb3dDbGFzc1wiXG4gICAgICA+XG4gICAgICAgIDxuZy10ZW1wbGF0ZSBrZW5kb0dyaWRUb29sYmFyVGVtcGxhdGU+XG4gICAgICAgICAgPGV4Y2VsLWV4cG9ydC1idXR0b24+PC9leGNlbC1leHBvcnQtYnV0dG9uPlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8a2VuZG8tZ3JpZC1leGNlbCBbZmV0Y2hEYXRhXT1cImdldEFsbERhdGFcIj48L2tlbmRvLWdyaWQtZXhjZWw+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uIHdpZHRoPVwiNjVcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgKm5nSWY9XCIhZGF0YUl0ZW0uc3VwcHJlc3NEZWxldGlvblwiXG4gICAgICAgICAgICAgIGtlbmRvR3JpZFJlbW92ZUNvbW1hbmRcbiAgICAgICAgICAgICAgcmVxdWlyZVBlcm1pc3Npb25cbiAgICAgICAgICAgICAgcGVybWlzc2lvblR5cGU9XCJEZWxldGVcIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZW0gY2xhc3M9XCJrLWljb24gZ2x5cGhpY29uIGdseXBoaWNvbi10cmFzaFwiPjwvZW0+XG4gICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8L2tlbmRvLWdyaWQtY29tbWFuZC1jb2x1bW4+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbHVtblxuICAgICAgICAgICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBncmlkRmllbGRzXCJcbiAgICAgICAgICBmaWVsZD1cInt7IGZpZWxkLm5hbWUgfX1cIlxuICAgICAgICAgIHRpdGxlPVwie3sgZmllbGQubGFiZWwgfCB0cmFuc2xhdGUgfX1cIlxuICAgICAgICAgIFtzb3J0YWJsZV09XCJmaWVsZC5zb3J0YWJsZSAhPT0gZmFsc2VcIlxuICAgICAgICA+XG4gICAgICAgIDwva2VuZG8tZ3JpZC1jb2x1bW4+XG4gICAgICAgIDxrZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uIHdpZHRoPVwiNjVcIiAqbmdJZj1cImNvbW1hbmRzLmxlbmd0aCA+IDBcIj5cbiAgICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkQ2VsbFRlbXBsYXRlIGxldC1kYXRhSXRlbT5cbiAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGNvbW1hbmQgb2YgY29tbWFuZHNcIlxuICAgICAgICAgICAgICAoY2xpY2spPVwiY29tbWFuZC5oYW5kbGVyKGRhdGFJdGVtKVwiXG4gICAgICAgICAgICAgIHRpdGxlPVwie3sgY29tbWFuZC50aXRsZSB8IHRyYW5zbGF0ZSB9fVwiXG4gICAgICAgICAgICAgIGNsYXNzPVwiay1idXR0b25cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICA8ZW1cbiAgICAgICAgICAgICAgICAqbmdJZj1cImNvbW1hbmQuaWNvbkNsYXNzXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInt7IGNvbW1hbmQuaWNvbkNsYXNzIH19XCJcbiAgICAgICAgICAgICAgPjwvZW0+XG4gICAgICAgICAgICAgIHt7IGNvbW1hbmQubmFtZSB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgPC9rZW5kby1ncmlkLWNvbW1hbmQtY29sdW1uPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9HcmlkTm9SZWNvcmRzVGVtcGxhdGU+XG4gICAgICAgICAge3sgXCJNZXNzYWdlcy5Ob1JlY29yZHNcIiB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICA8bmctdGVtcGxhdGUga2VuZG9QYWdlclRlbXBsYXRlPlxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJwYWdlclwiPlxuICAgICAgICAgICAgPGtlbmRvLWdyaWQtc3BhY2VyPjwva2VuZG8tZ3JpZC1zcGFjZXI+XG4gICAgICAgICAgICA8a2VuZG8tcGFnZXItcHJldi1idXR0b25zPjwva2VuZG8tcGFnZXItcHJldi1idXR0b25zPlxuICAgICAgICAgICAgPGtlbmRvLXBhZ2VyLW51bWVyaWMtYnV0dG9uc1xuICAgICAgICAgICAgICBbYnV0dG9uQ291bnRdPVwicGFnZUJ1dHRvbnNDb3VudFwiXG4gICAgICAgICAgICA+PC9rZW5kby1wYWdlci1udW1lcmljLWJ1dHRvbnM+XG4gICAgICAgICAgICA8a2VuZG8tcGFnZXItbmV4dC1idXR0b25zPjwva2VuZG8tcGFnZXItbmV4dC1idXR0b25zPlxuICAgICAgICAgICAgPGtlbmRvLXBhZ2VyLWluZm8+PC9rZW5kby1wYWdlci1pbmZvPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgPC9rZW5kby1ncmlkPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbiAgPHJvdXRlci1vdXRsZXRcbiAgICAoYWN0aXZhdGUpPVwib25BY3RpdmF0ZSgkZXZlbnQpXCJcbiAgICAoZGVhY3RpdmF0ZSk9XCJvbkRlYWN0aXZhdGUoJGV2ZW50KVwiXG4gID48L3JvdXRlci1vdXRsZXQ+XG48L2Rpdj5cbjxjb25maXJtLWRpYWxvZyAjY29uZmlybURpYWxvZz48L2NvbmZpcm0tZGlhbG9nPlxuIl19