@tots/table 15.0.55 → 15.0.57

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.
@@ -5,6 +5,12 @@ import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  import * as i2 from "@angular/material/icon";
7
7
  export class UserColumnComponent extends TotsBaseColumnComponent {
8
+ onClick() {
9
+ if (!this.isClickable()) {
10
+ return;
11
+ }
12
+ this.onAction.next({ key: this.getClickEvent(), item: this.item });
13
+ }
8
14
  getFirstname() {
9
15
  if (this.column.extra?.field_firstname_key) {
10
16
  return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_firstname_key);
@@ -38,11 +44,23 @@ export class UserColumnComponent extends TotsBaseColumnComponent {
38
44
  }
39
45
  return false;
40
46
  }
47
+ isClickable() {
48
+ if (this.column.extra?.is_clickable) {
49
+ return true;
50
+ }
51
+ return false;
52
+ }
53
+ getClickEvent() {
54
+ if (this.column.extra?.click_event) {
55
+ return this.column.extra.click_event;
56
+ }
57
+ return 'click-column';
58
+ }
41
59
  }
42
60
  UserColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: UserColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
43
- UserColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: UserColumnComponent, selector: "tots-user-column", usesInheritance: true, ngImport: i0, template: "<div class=\"user-avatar-component\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
61
+ UserColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: UserColumnComponent, selector: "tots-user-column", usesInheritance: true, ngImport: i0, template: "<div class=\"user-avatar-component\" [ngClass]=\"{'box-clickable': isClickable()}\" (click)=\"onClick(); $event.stopPropagation();\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>\n", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}.box-clickable{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
44
62
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: UserColumnComponent, decorators: [{
45
63
  type: Component,
46
- args: [{ selector: 'tots-user-column', template: "<div class=\"user-avatar-component\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}\n"] }]
64
+ args: [{ selector: 'tots-user-column', template: "<div class=\"user-avatar-component\" [ngClass]=\"{'box-clickable': isClickable()}\" (click)=\"onClick(); $event.stopPropagation();\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>\n", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}.box-clickable{cursor:pointer}\n"] }]
47
65
  }] });
48
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvdXNlci1jb2x1bW4vdXNlci1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvdXNlci1jb2x1bW4vdXNlci1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7QUFPeEUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQUU5RCxZQUFZO1FBQ1YsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxtQkFBbUIsRUFBQztZQUN4QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDNUY7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBQztZQUN2QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDM0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFDO1lBQ3BDLE9BQU8sZUFBZSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDeEY7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBQztZQUN2QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDM0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsRUFBQztZQUNyQyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDekY7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7O2dIQTVDVSxtQkFBbUI7b0dBQW5CLG1CQUFtQiwrRUNUaEMsNGpCQVNNOzJGREFPLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvdHNUYWJsZUhlbHBlciB9IGZyb20gJy4uLy4uL2hlbHBlcnMvdG90cy10YWJsZS1oZWxwZXInO1xuaW1wb3J0IHsgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtdXNlci1jb2x1bW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91c2VyLWNvbHVtbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJDb2x1bW5Db21wb25lbnQgZXh0ZW5kcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgZ2V0Rmlyc3RuYW1lKCkge1xuICAgIGlmKHRoaXMuY29sdW1uLmV4dHJhPy5maWVsZF9maXJzdG5hbWVfa2V5KXtcbiAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5leHRyYS5maWVsZF9maXJzdG5hbWVfa2V5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBnZXRMYXN0bmFtZSgpIHtcbiAgICBpZih0aGlzLmNvbHVtbi5leHRyYT8uZmllbGRfbGFzdG5hbWVfa2V5KXtcbiAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5leHRyYS5maWVsZF9sYXN0bmFtZV9rZXkpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldEZ1bGxuYW1lKCkge1xuICAgIHJldHVybiB0aGlzLmdldEZpcnN0bmFtZSgpICsgJyAnICsgdGhpcy5nZXRMYXN0bmFtZSgpO1xuICB9XG5cbiAgZ2V0UGhvdG8oKSB7XG4gICAgaWYodGhpcy5jb2x1bW4uZXh0cmE/LmZpZWxkX3Bob3RvX2tleSl7XG4gICAgICByZXR1cm4gVG90c1RhYmxlSGVscGVyLmdldEl0ZW1WYWx1ZUJ5S2V5KHRoaXMuaXRlbSwgdGhpcy5jb2x1bW4uZXh0cmEuZmllbGRfcGhvdG9fa2V5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gJyc7XG4gIH1cblxuICBnZXRTdWJ0aXRsZSgpIHtcbiAgICBpZih0aGlzLmNvbHVtbi5leHRyYT8uZmllbGRfc3VidGl0bGVfa2V5KXtcbiAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5leHRyYS5maWVsZF9zdWJ0aXRsZV9rZXkpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGlzT25saW5lKCkge1xuICAgIGlmKHRoaXMuY29sdW1uLmV4dHJhPy5maWVsZF9vbmxpbmVfa2V5KXtcbiAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5leHRyYS5maWVsZF9vbmxpbmVfa2V5KTtcbiAgICB9XG5cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ1c2VyLWF2YXRhci1jb21wb25lbnRcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXZhdGFyXCIgKm5nSWY9XCJnZXRQaG90bygpICE9ICcnXCI+XG4gICAgICAgIDxpbWcgbWF0LWNhcmQtYXZhdGFyIFtzcmNdPVwiZ2V0UGhvdG8oKVwiIGFsdD1cInt7IGdldEZ1bGxuYW1lKCkgfX1cIiBjbGFzcz1cImNvdmVyLWltYWdlXCIgb25lcnJvcj1cInRoaXMuc3JjPScvYXNzZXRzL2ltZy91c2VyLWF2YXRhci1lbXB0eS5zdmcnO1wiPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJ0ZXh0c1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidXNlclwiPiB7eyBnZXRGdWxsbmFtZSgpIH19IDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYm9keS0yXCIgKm5nSWY9XCJnZXRTdWJ0aXRsZSgpICE9ICcnXCI+IHt7IGdldFN1YnRpdGxlKCkgfX0gPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImNoZWNrXCIgKm5nSWY9XCJjb2x1bW4uZXh0cmE/LmZpZWxkX2lzX29ubGluZSAmJiBpc09ubGluZSgpXCI+PG1hdC1pY29uPmNoZWNrPC9tYXQtaWNvbj48L2Rpdj5cbjwvZGl2PiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvdXNlci1jb2x1bW4vdXNlci1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvdXNlci1jb2x1bW4vdXNlci1jb2x1bW4uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDbEUsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sK0JBQStCLENBQUM7Ozs7QUFPeEUsTUFBTSxPQUFPLG1CQUFvQixTQUFRLHVCQUF1QjtJQUU5RCxPQUFPO1FBQ0wsSUFBRyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBQztZQUNyQixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFRCxZQUFZO1FBQ1YsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxtQkFBbUIsRUFBQztZQUN4QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUM7U0FDNUY7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBQztZQUN2QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDM0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxJQUFJLENBQUMsWUFBWSxFQUFFLEdBQUcsR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUN4RCxDQUFDO0lBRUQsUUFBUTtRQUNOLElBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsZUFBZSxFQUFDO1lBQ3BDLE9BQU8sZUFBZSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUM7U0FDeEY7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxrQkFBa0IsRUFBQztZQUN2QyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUM7U0FDM0Y7UUFFRCxPQUFPLEVBQUUsQ0FBQztJQUNaLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxnQkFBZ0IsRUFBQztZQUNyQyxPQUFPLGVBQWUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLENBQUM7U0FDekY7UUFFRCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxZQUFZLEVBQUM7WUFDakMsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUVELE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELGFBQWE7UUFDWCxJQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBQztZQUNoQyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQztTQUN0QztRQUVELE9BQU8sY0FBYyxDQUFDO0lBQ3hCLENBQUM7O2dIQXBFVSxtQkFBbUI7b0dBQW5CLG1CQUFtQiwrRUNUaEMsOHBCQVVBOzJGRERhLG1CQUFtQjtrQkFML0IsU0FBUzsrQkFDRSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvdHNUYWJsZUhlbHBlciB9IGZyb20gJy4uLy4uL2hlbHBlcnMvdG90cy10YWJsZS1oZWxwZXInO1xuaW1wb3J0IHsgVG90c0Jhc2VDb2x1bW5Db21wb25lbnQgfSBmcm9tICcuLi90b3RzLWJhc2UtY29sdW1uLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtdXNlci1jb2x1bW4nLFxuICB0ZW1wbGF0ZVVybDogJy4vdXNlci1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi91c2VyLWNvbHVtbi5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJDb2x1bW5Db21wb25lbnQgZXh0ZW5kcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgb25DbGljaygpIHtcbiAgICBpZighdGhpcy5pc0NsaWNrYWJsZSgpKXtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICB0aGlzLm9uQWN0aW9uLm5leHQoeyBrZXk6IHRoaXMuZ2V0Q2xpY2tFdmVudCgpLCBpdGVtOiB0aGlzLml0ZW0gfSk7XG4gIH1cblxuICBnZXRGaXJzdG5hbWUoKSB7XG4gICAgaWYodGhpcy5jb2x1bW4uZXh0cmE/LmZpZWxkX2ZpcnN0bmFtZV9rZXkpe1xuICAgICAgcmV0dXJuIFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleSh0aGlzLml0ZW0sIHRoaXMuY29sdW1uLmV4dHJhLmZpZWxkX2ZpcnN0bmFtZV9rZXkpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldExhc3RuYW1lKCkge1xuICAgIGlmKHRoaXMuY29sdW1uLmV4dHJhPy5maWVsZF9sYXN0bmFtZV9rZXkpe1xuICAgICAgcmV0dXJuIFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleSh0aGlzLml0ZW0sIHRoaXMuY29sdW1uLmV4dHJhLmZpZWxkX2xhc3RuYW1lX2tleSk7XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgZ2V0RnVsbG5hbWUoKSB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0Rmlyc3RuYW1lKCkgKyAnICcgKyB0aGlzLmdldExhc3RuYW1lKCk7XG4gIH1cblxuICBnZXRQaG90bygpIHtcbiAgICBpZih0aGlzLmNvbHVtbi5leHRyYT8uZmllbGRfcGhvdG9fa2V5KXtcbiAgICAgIHJldHVybiBUb3RzVGFibGVIZWxwZXIuZ2V0SXRlbVZhbHVlQnlLZXkodGhpcy5pdGVtLCB0aGlzLmNvbHVtbi5leHRyYS5maWVsZF9waG90b19rZXkpO1xuICAgIH1cblxuICAgIHJldHVybiAnJztcbiAgfVxuXG4gIGdldFN1YnRpdGxlKCkge1xuICAgIGlmKHRoaXMuY29sdW1uLmV4dHJhPy5maWVsZF9zdWJ0aXRsZV9rZXkpe1xuICAgICAgcmV0dXJuIFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleSh0aGlzLml0ZW0sIHRoaXMuY29sdW1uLmV4dHJhLmZpZWxkX3N1YnRpdGxlX2tleSk7XG4gICAgfVxuXG4gICAgcmV0dXJuICcnO1xuICB9XG5cbiAgaXNPbmxpbmUoKSB7XG4gICAgaWYodGhpcy5jb2x1bW4uZXh0cmE/LmZpZWxkX29ubGluZV9rZXkpe1xuICAgICAgcmV0dXJuIFRvdHNUYWJsZUhlbHBlci5nZXRJdGVtVmFsdWVCeUtleSh0aGlzLml0ZW0sIHRoaXMuY29sdW1uLmV4dHJhLmZpZWxkX29ubGluZV9rZXkpO1xuICAgIH1cblxuICAgIHJldHVybiBmYWxzZTtcbiAgfVxuXG4gIGlzQ2xpY2thYmxlKCkge1xuICAgIGlmKHRoaXMuY29sdW1uLmV4dHJhPy5pc19jbGlja2FibGUpe1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuXG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0Q2xpY2tFdmVudCgpIHtcbiAgICBpZih0aGlzLmNvbHVtbi5leHRyYT8uY2xpY2tfZXZlbnQpe1xuICAgICAgcmV0dXJuIHRoaXMuY29sdW1uLmV4dHJhLmNsaWNrX2V2ZW50O1xuICAgIH1cblxuICAgIHJldHVybiAnY2xpY2stY29sdW1uJztcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInVzZXItYXZhdGFyLWNvbXBvbmVudFwiIFtuZ0NsYXNzXT1cInsnYm94LWNsaWNrYWJsZSc6IGlzQ2xpY2thYmxlKCl9XCIgKGNsaWNrKT1cIm9uQ2xpY2soKTsgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1wiPlxuICAgIDxkaXYgY2xhc3M9XCJhdmF0YXJcIiAqbmdJZj1cImdldFBob3RvKCkgIT0gJydcIj5cbiAgICAgICAgPGltZyBtYXQtY2FyZC1hdmF0YXIgW3NyY109XCJnZXRQaG90bygpXCIgYWx0PVwie3sgZ2V0RnVsbG5hbWUoKSB9fVwiIGNsYXNzPVwiY292ZXItaW1hZ2VcIiBvbmVycm9yPVwidGhpcy5zcmM9Jy9hc3NldHMvaW1nL3VzZXItYXZhdGFyLWVtcHR5LnN2Zyc7XCI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInRleHRzXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ1c2VyXCI+IHt7IGdldEZ1bGxuYW1lKCkgfX0gPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJib2R5LTJcIiAqbmdJZj1cImdldFN1YnRpdGxlKCkgIT0gJydcIj4ge3sgZ2V0U3VidGl0bGUoKSB9fSA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiY2hlY2tcIiAqbmdJZj1cImNvbHVtbi5leHRyYT8uZmllbGRfaXNfb25saW5lICYmIGlzT25saW5lKClcIj48bWF0LWljb24+Y2hlY2s8L21hdC1pY29uPjwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -80,10 +80,10 @@ export class TotsTableComponent {
80
80
  }
81
81
  }
82
82
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [{ token: TOTS_TABLE_DEFAULT_CONFIG }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
83
- TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i3.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i3.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction", "index"] }, { kind: "component", type: i7.LoadingAnimationRendererComponent, selector: "tots-loading-animation-renderer" }] });
83
+ TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i3.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i3.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: i6.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction", "index"] }, { kind: "component", type: i7.LoadingAnimationRendererComponent, selector: "tots-loading-animation-renderer" }] });
84
84
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
85
85
  type: Component,
86
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"] }]
86
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"] }]
87
87
  }], ctorParameters: function () { return [{ type: i8.TotsTableDefaultConfig, decorators: [{
88
88
  type: Inject,
89
89
  args: [TOTS_TABLE_DEFAULT_CONFIG]
@@ -100,4 +100,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
100
100
  }], onAction: [{
101
101
  type: Output
102
102
  }] } });
103
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxRyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlCQUF5QixFQUEwQixNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7Ozs7O0FBUTdHLE1BQU0sT0FBTyxrQkFBa0I7SUF1QjdCLFlBQzZDLHNCQUErQyxFQUNoRixjQUFpQztRQURBLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBeUI7UUFDaEYsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBdkJwQyxXQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUMvQixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFHN0IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ3pELG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQW1CLENBQUM7UUFHaEQsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO1FBRW5DLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLElB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O3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtY29sdW1uJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcbmltcG9ydCB7IFRPVFNfVEFCTEVfREVGQVVMVF9DT05GSUcsIFRvdHNUYWJsZURlZmF1bHRDb25maWcgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLXRhYmxlLWRlZmF1bHQtY29uZmlnJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQ29uZmlnKCk7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDUwO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgbWVzc2FnZU5vdEZvdW5kISA6IHN0cmluZztcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcbiAgcHJpdmF0ZUFjdGlvbnMgPSBuZXcgU3ViamVjdDxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgZGF0YUl0ZW1zPzogVG90c0xpc3RSZXNwb25zZTxhbnk+O1xuICBkaXNwbGF5Q29sdW1uczogQXJyYXk8U3RyaW5nPiA9IFtdO1xuXG4gIGlzTG9hZGluZyA9IHRydWU7XG4gIGZpcnN0TG9hZCA9IHRydWU7XG4gIG1hdENvbG9yIDogVGhlbWVQYWxldHRlO1xuXG4gIHVwcGVyUGFnaW5hdG9yIDogYm9vbGVhbjtcbiAgbG93ZXJQYWdpbmF0b3IgOiBib29sZWFuO1xuICB1cHBlclByb2dyZXNzQmFyIDogYm9vbGVhbjtcbiAgbG93ZXJQcm9ncmVzc0JhciA6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChUT1RTX1RBQkxFX0RFRkFVTFRfQ09ORklHKSBwcml2YXRlIHRvdHNUYWJsZURlZmF1bHRDb25maWcgOiBUb3RzVGFibGVEZWZhdWx0Q29uZmlnLFxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZWN0ZXRvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5tZXNzYWdlTm90Rm91bmQgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubWVzc2FnZU5vdEZvdW5kID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLm1lc3NhZ2VOb3RGb3VuZCA6IFwiTm8gcmVzdWx0cyBmb3VuZCwgcGxlYXNlIHRyeSB3aXRoIG90aGVyIHNlYXJjaCB0ZXJtc1wiO1xuICAgIHRoaXMubWF0Q29sb3IgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubWF0Q29sb3IgIT0gdW5kZWZpbmVkID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLm1hdENvbG9yIDogXCJwcmltYXJ5XCI7XG4gICAgdGhpcy51cHBlclBhZ2luYXRvciA9IHRoaXMudG90c1RhYmxlRGVmYXVsdENvbmZpZy51cHBlclBhZ2luYXRvciAhPSB1bmRlZmluZWQgPyB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcudXBwZXJQYWdpbmF0b3IgOiBmYWxzZTtcbiAgICB0aGlzLmxvd2VyUGFnaW5hdG9yID0gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLmxvd2VyUGFnaW5hdG9yICE9IHVuZGVmaW5lZCA/IHRoaXMudG90c1RhYmxlRGVmYXVsdENvbmZpZy5sb3dlclBhZ2luYXRvciA6IHRydWU7XG4gICAgdGhpcy51cHBlclByb2dyZXNzQmFyID0gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLnVwcGVyUHJvZ3Jlc3NCYXIgIT0gdW5kZWZpbmVkID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLnVwcGVyUHJvZ3Jlc3NCYXIgOiBmYWxzZTtcbiAgICB0aGlzLmxvd2VyUHJvZ3Jlc3NCYXIgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubG93ZXJQcm9ncmVzc0JhciAhPSB1bmRlZmluZWQgPyB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubG93ZXJQcm9ncmVzc0JhciA6IHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgb25DbGlja09yZGVyKGNvbHVtbjogVG90c0NvbHVtbikge1xuICAgIGlmKCFjb2x1bW4uaGFzT3JkZXIpeyByZXR1cm47IH1cbiAgICBsZXQgb3JkZXJDb2x1bW4gPSBjb2x1bW4ub3JkZXI7XG4gICAgdGhpcy5jb25maWcuY29sdW1ucy5mb3JFYWNoKGMgPT4gYy5vcmRlciA9IHVuZGVmaW5lZCk7XG4gICAgY29sdW1uLm9yZGVyID0gb3JkZXJDb2x1bW4gPT0gJ2FzYycgPyAnZGVzYycgOiAnYXNjJztcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdjbGljay1vcmRlcicsIGl0ZW06IGNvbHVtbiB9KTtcbiAgfVxuXG4gIG9uQ2xpY2tSb3coaXRlbTogYW55KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnY2xpY2stcm93JywgaXRlbTogaXRlbSB9KTtcbiAgfVxuXG4gIG9uUGFnZUNoYW5nZShldmVudDogUGFnZUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAncGFnZS1jaGFuZ2UnLCBpdGVtOiBldmVudCB9KTtcbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLm9icz8ucGlwZSh0YXAocmVzID0+IHRoaXMuZGF0YUl0ZW1zID0gcmVzKSlcbiAgICAucGlwZSh0YXAocmVzID0+IHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2xvYWRlZC1pdGVtcycsIGl0ZW06IHVuZGVmaW5lZCB9KSkpXG4gICAgLnN1YnNjcmliZSgoKT0+IHRoaXMuc3RvcExvYWRpbmcoKSk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BMb2FkaW5nKCkge1xuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5maXJzdExvYWQgPSBmYWxzZTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5sb2FkQ29sdW1ucygpO1xuXG4gICAgdGhpcy5wcml2YXRlQWN0aW9ucy5zdWJzY3JpYmUoYWN0aW9uID0+IHtcbiAgICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICAgIH0pO1xuICB9XG5cbiAgbG9hZENvbHVtbnMoKSB7XG4gICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5pc19zaG93IHx8IGMuaXNfc2hvdyA9PSB1bmRlZmluZWQpLm1hcChjID0+IGMua2V5KTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFJdGVtcztcbiAgfVxuXG4gIHJlZnJlc2hEYXRhSXRlbXMobmV3RGF0YTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kYXRhSXRlbXMgPSBuZXdEYXRhO1xuICB9XG5cbiAgZGV0ZWN0Q2hhbmdlcygpIHtcbiAgICB0aGlzLmNoYW5nZURlY3RldG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRvdHMtdGFibGUtY29udGFpbmVyIHt7Y29uZmlnLmNsYXNzZXN9fVwiPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHBhZ2luYXRvciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXBwZXJQYWdpbmF0b3IgJiYgZGF0YUl0ZW1zICYmIGRhdGFJdGVtcy5kYXRhLmxlbmd0aCA+IDAgJiYgaGFzUGFnaW5hdGlvblwiPlxuICAgICAgICA8bWF0LXBhZ2luYXRvciBbcGFnZUluZGV4XT1cInBhZ2VJbmRleC0xXCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHByb2dyZXNzIGJhciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXBwZXJQcm9ncmVzc0JhclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1iYXItbG9hZGluZyB1cHBlclwiPlxuICAgICAgICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgKm5nSWY9XCJpc0xvYWRpbmcgJiYgIWZpcnN0TG9hZFwiIFttb2RlXT1cIidpbmRldGVybWluYXRlJ1wiIFtjb2xvcl09XCJtYXRDb2xvclwiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhSXRlbXMgIT0gdW5kZWZpbmVkID8gZGF0YUl0ZW1zIS5kYXRhIDogW11cIj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29uZmlnLmNvbHVtbnNcIiBbbWF0Q29sdW1uRGVmXT1cImNvbHVtbi5rZXlcIiBbc3RpY2t5RW5kXT1cImNvbHVtbi5leHRyYT8uc3RpY2t5RW5kID8/IGZhbHNlXCI+XG4gICAgICAgICAgICA8IS0tIFRILS0+XG4gICAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtuZ0NsYXNzXT1cInsndG90cy10ci1oYXMtb3JkZXInOiBjb2x1bW4uaGFzT3JkZXJ9XCIgKGNsaWNrKT1cIm9uQ2xpY2tPcmRlcihjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAge3sgY29sdW1uLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInsnc29ydF9hY3RpdmUnOiBjb2x1bW4ub3JkZXIgPT0gJ2FzYyd9XCI+YXJyb3dfZHJvcF91cDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInsnc29ydF9hY3RpdmUnOiBjb2x1bW4ub3JkZXIgPT0gJ2Rlc2MnfVwiPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgPCEtLSBURCAtLT5cbiAgICAgICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtOyBsZXQgaW5kZXggPSBpbmRleDtcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogY29sdW1uLmV4dHJhPy53aWR0aCA/IGNvbHVtbi5leHRyYS53aWR0aCA6ICdhdXRvJ31cIj48dG90cy1iYXNlLXByaW50LWNvbHVtbiBbY29sdW1uXT1cImNvbHVtblwiIFtpdGVtXT1cIml0ZW1cIiBbaW5kZXhdPVwiaW5kZXhcIiBbb25BY3Rpb25dPVwicHJpdmF0ZUFjdGlvbnNcIj48L3RvdHMtYmFzZS1wcmludC1jb2x1bW4+PC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5Q29sdW1uc1wiPjwvdHI+XG4gICAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5Q29sdW1ucztcIiAoY2xpY2spPVwib25DbGlja1Jvdyhyb3cpXCIgW2NsYXNzXT1cInJvdy5jbGFzc0N1c3RvbVwiIFtuZ0NsYXNzXT1cInsndG90cy1jZWxsLXNlbGVjdGVkJzogcm93LmlzU2VsZWN0ZWR9XCI+PC90cj5cblxuICAgICAgICA8IS0tIFJvdyBzaG93biB3aGVuIHRoZXJlIGlzIG5vIG1hdGNoaW5nIGRhdGEuIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPHRyIGNsYXNzPVwidG90cy10YWJsZS1ub3QtZGF0YVwiICptYXROb0RhdGFSb3c+PHRkIGNsYXNzPVwibWF0LWNlbGxcIiBbY29sU3Bhbl09XCJjb25maWcuY29sdW1ucy5sZW5ndGhcIj57eyBtZXNzYWdlTm90Rm91bmQgfX08L3RkPjwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGFibGU+XG5cbiAgICA8IS0tICNyZWdpb24gRmlyc3QgbG9hZGluZyBhbmltYXRpb24gLS0+XG4gICAgPGRpdiAqbmdJZj1cImlzTG9hZGluZyAmJiBmaXJzdExvYWRcIiBjbGFzcz1cInRvdHMtdGFibGUtbG9hZGluZ1wiPlxuICAgICAgICA8dG90cy1sb2FkaW5nLWFuaW1hdGlvbi1yZW5kZXJlcj48L3RvdHMtbG9hZGluZy1hbmltYXRpb24tcmVuZGVyZXI+XG4gICAgPC9kaXY+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHByb2dyZXNzIGJhciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG93ZXJQcm9ncmVzc0JhclwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1iYXItbG9hZGluZyBsb3dlclwiPlxuICAgICAgICAgICAgPG1hdC1wcm9ncmVzcy1iYXIgKm5nSWY9XCJpc0xvYWRpbmcgJiYgIWZpcnN0TG9hZFwiIFttb2RlXT1cIidpbmRldGVybWluYXRlJ1wiIFtjb2xvcl09XCJtYXRDb2xvclwiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHBhZ2luYXRvciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG93ZXJQYWdpbmF0b3IgJiYgZGF0YUl0ZW1zICYmIGRhdGFJdGVtcy5kYXRhLmxlbmd0aCA+IDAgJiYgaGFzUGFnaW5hdGlvblwiPlxuICAgICAgICA8bWF0LXBhZ2luYXRvciBbcGFnZUluZGV4XT1cInBhZ2VJbmRleC0xXCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuPC9kaXY+XG4iXX0=
103
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBcUIsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUcxRyxPQUFPLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUdwQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFFLHlCQUF5QixFQUEwQixNQUFNLDBDQUEwQyxDQUFDOzs7Ozs7Ozs7O0FBUTdHLE1BQU0sT0FBTyxrQkFBa0I7SUF1QjdCLFlBQzZDLHNCQUErQyxFQUNoRixjQUFpQztRQURBLDJCQUFzQixHQUF0QixzQkFBc0IsQ0FBeUI7UUFDaEYsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBdkJwQyxXQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUMvQixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFHN0IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ3pELG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQW1CLENBQUM7UUFHaEQsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO1FBRW5DLGNBQVMsR0FBRyxJQUFJLENBQUM7UUFDakIsY0FBUyxHQUFHLElB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O3NCQUFkLEtBQUs7Z0JBQ0csU0FBUztzQkFBakIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtY29sdW1uJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcbmltcG9ydCB7IFRPVFNfVEFCTEVfREVGQVVMVF9DT05GSUcsIFRvdHNUYWJsZURlZmF1bHRDb25maWcgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLXRhYmxlLWRlZmF1bHQtY29uZmlnJztcbmltcG9ydCB7IFRoZW1lUGFsZXR0ZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQ29uZmlnKCk7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDUwO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgbWVzc2FnZU5vdEZvdW5kISA6IHN0cmluZztcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcbiAgcHJpdmF0ZUFjdGlvbnMgPSBuZXcgU3ViamVjdDxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgZGF0YUl0ZW1zPzogVG90c0xpc3RSZXNwb25zZTxhbnk+O1xuICBkaXNwbGF5Q29sdW1uczogQXJyYXk8U3RyaW5nPiA9IFtdO1xuXG4gIGlzTG9hZGluZyA9IHRydWU7XG4gIGZpcnN0TG9hZCA9IHRydWU7XG4gIG1hdENvbG9yIDogVGhlbWVQYWxldHRlO1xuXG4gIHVwcGVyUGFnaW5hdG9yIDogYm9vbGVhbjtcbiAgbG93ZXJQYWdpbmF0b3IgOiBib29sZWFuO1xuICB1cHBlclByb2dyZXNzQmFyIDogYm9vbGVhbjtcbiAgbG93ZXJQcm9ncmVzc0JhciA6IGJvb2xlYW47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChUT1RTX1RBQkxFX0RFRkFVTFRfQ09ORklHKSBwcml2YXRlIHRvdHNUYWJsZURlZmF1bHRDb25maWcgOiBUb3RzVGFibGVEZWZhdWx0Q29uZmlnLFxuICAgIHByb3RlY3RlZCBjaGFuZ2VEZWN0ZXRvcjogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7XG4gICAgdGhpcy5tZXNzYWdlTm90Rm91bmQgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubWVzc2FnZU5vdEZvdW5kID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLm1lc3NhZ2VOb3RGb3VuZCA6IFwiTm8gcmVzdWx0cyBmb3VuZCwgcGxlYXNlIHRyeSB3aXRoIG90aGVyIHNlYXJjaCB0ZXJtc1wiO1xuICAgIHRoaXMubWF0Q29sb3IgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubWF0Q29sb3IgIT0gdW5kZWZpbmVkID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLm1hdENvbG9yIDogXCJwcmltYXJ5XCI7XG4gICAgdGhpcy51cHBlclBhZ2luYXRvciA9IHRoaXMudG90c1RhYmxlRGVmYXVsdENvbmZpZy51cHBlclBhZ2luYXRvciAhPSB1bmRlZmluZWQgPyB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcudXBwZXJQYWdpbmF0b3IgOiBmYWxzZTtcbiAgICB0aGlzLmxvd2VyUGFnaW5hdG9yID0gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLmxvd2VyUGFnaW5hdG9yICE9IHVuZGVmaW5lZCA/IHRoaXMudG90c1RhYmxlRGVmYXVsdENvbmZpZy5sb3dlclBhZ2luYXRvciA6IHRydWU7XG4gICAgdGhpcy51cHBlclByb2dyZXNzQmFyID0gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLnVwcGVyUHJvZ3Jlc3NCYXIgIT0gdW5kZWZpbmVkID8gdGhpcy50b3RzVGFibGVEZWZhdWx0Q29uZmlnLnVwcGVyUHJvZ3Jlc3NCYXIgOiBmYWxzZTtcbiAgICB0aGlzLmxvd2VyUHJvZ3Jlc3NCYXIgPSB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubG93ZXJQcm9ncmVzc0JhciAhPSB1bmRlZmluZWQgPyB0aGlzLnRvdHNUYWJsZURlZmF1bHRDb25maWcubG93ZXJQcm9ncmVzc0JhciA6IHRydWU7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgb25DbGlja09yZGVyKGNvbHVtbjogVG90c0NvbHVtbikge1xuICAgIGlmKCFjb2x1bW4uaGFzT3JkZXIpeyByZXR1cm47IH1cbiAgICBsZXQgb3JkZXJDb2x1bW4gPSBjb2x1bW4ub3JkZXI7XG4gICAgdGhpcy5jb25maWcuY29sdW1ucy5mb3JFYWNoKGMgPT4gYy5vcmRlciA9IHVuZGVmaW5lZCk7XG4gICAgY29sdW1uLm9yZGVyID0gb3JkZXJDb2x1bW4gPT0gJ2FzYycgPyAnZGVzYycgOiAnYXNjJztcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdjbGljay1vcmRlcicsIGl0ZW06IGNvbHVtbiB9KTtcbiAgfVxuXG4gIG9uQ2xpY2tSb3coaXRlbTogYW55KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnY2xpY2stcm93JywgaXRlbTogaXRlbSB9KTtcbiAgfVxuXG4gIG9uUGFnZUNoYW5nZShldmVudDogUGFnZUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAncGFnZS1jaGFuZ2UnLCBpdGVtOiBldmVudCB9KTtcbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgcmV0dXJuIHRoaXMuY29uZmlnLm9icz8ucGlwZSh0YXAocmVzID0+IHRoaXMuZGF0YUl0ZW1zID0gcmVzKSlcbiAgICAucGlwZSh0YXAocmVzID0+IHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2xvYWRlZC1pdGVtcycsIGl0ZW06IHVuZGVmaW5lZCB9KSkpXG4gICAgLnN1YnNjcmliZSgoKT0+IHRoaXMuc3RvcExvYWRpbmcoKSk7XG4gIH1cblxuICBwcml2YXRlIHN0b3BMb2FkaW5nKCkge1xuICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgdGhpcy5maXJzdExvYWQgPSBmYWxzZTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5sb2FkQ29sdW1ucygpO1xuXG4gICAgdGhpcy5wcml2YXRlQWN0aW9ucy5zdWJzY3JpYmUoYWN0aW9uID0+IHtcbiAgICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICAgIH0pO1xuICB9XG5cbiAgbG9hZENvbHVtbnMoKSB7XG4gICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5pc19zaG93IHx8IGMuaXNfc2hvdyA9PSB1bmRlZmluZWQpLm1hcChjID0+IGMua2V5KTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFJdGVtcztcbiAgfVxuXG4gIHJlZnJlc2hEYXRhSXRlbXMobmV3RGF0YTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kYXRhSXRlbXMgPSBuZXdEYXRhO1xuICB9XG5cbiAgZGV0ZWN0Q2hhbmdlcygpIHtcbiAgICB0aGlzLmNoYW5nZURlY3RldG9yLmRldGVjdENoYW5nZXMoKTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cInRvdHMtdGFibGUtY29udGFpbmVyIHt7Y29uZmlnLmNsYXNzZXN9fVwiPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHBhZ2luYXRvciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXBwZXJQYWdpbmF0b3IgJiYgZGF0YUl0ZW1zICYmIGRhdGFJdGVtcy5kYXRhLmxlbmd0aCA+IDAgJiYgaGFzUGFnaW5hdGlvblwiPlxuICAgICAgICA8bWF0LXBhZ2luYXRvciBbcGFnZUluZGV4XT1cInBhZ2VJbmRleC0xXCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHByb2dyZXNzIGJhciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwidXBwZXJQcm9ncmVzc0JhciAmJiAhZmlyc3RMb2FkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b3RzLXRhYmxlLWJhci1sb2FkaW5nIHVwcGVyXCI+XG4gICAgICAgICAgICA8bWF0LXByb2dyZXNzLWJhciAqbmdJZj1cImlzTG9hZGluZ1wiIFttb2RlXT1cIidpbmRldGVybWluYXRlJ1wiIFtjb2xvcl09XCJtYXRDb2xvclwiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhSXRlbXMgIT0gdW5kZWZpbmVkID8gZGF0YUl0ZW1zIS5kYXRhIDogW11cIj5cblxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBjb2x1bW4gb2YgY29uZmlnLmNvbHVtbnNcIiBbbWF0Q29sdW1uRGVmXT1cImNvbHVtbi5rZXlcIiBbc3RpY2t5RW5kXT1cImNvbHVtbi5leHRyYT8uc3RpY2t5RW5kID8/IGZhbHNlXCI+XG4gICAgICAgICAgICA8IS0tIFRILS0+XG4gICAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtuZ0NsYXNzXT1cInsndG90cy10ci1oYXMtb3JkZXInOiBjb2x1bW4uaGFzT3JkZXJ9XCIgKGNsaWNrKT1cIm9uQ2xpY2tPcmRlcihjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAge3sgY29sdW1uLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInsnc29ydF9hY3RpdmUnOiBjb2x1bW4ub3JkZXIgPT0gJ2FzYyd9XCI+YXJyb3dfZHJvcF91cDwvbWF0LWljb24+XG4gICAgICAgICAgICAgICAgPG1hdC1pY29uIFtuZ0NsYXNzXT1cInsnc29ydF9hY3RpdmUnOiBjb2x1bW4ub3JkZXIgPT0gJ2Rlc2MnfVwiPmFycm93X2Ryb3BfZG93bjwvbWF0LWljb24+XG4gICAgICAgICAgICA8L3RoPlxuICAgICAgICAgICAgPCEtLSBURCAtLT5cbiAgICAgICAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBpdGVtOyBsZXQgaW5kZXggPSBpbmRleDtcIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogY29sdW1uLmV4dHJhPy53aWR0aCA/IGNvbHVtbi5leHRyYS53aWR0aCA6ICdhdXRvJ31cIj48dG90cy1iYXNlLXByaW50LWNvbHVtbiBbY29sdW1uXT1cImNvbHVtblwiIFtpdGVtXT1cIml0ZW1cIiBbaW5kZXhdPVwiaW5kZXhcIiBbb25BY3Rpb25dPVwicHJpdmF0ZUFjdGlvbnNcIj48L3RvdHMtYmFzZS1wcmludC1jb2x1bW4+PC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5Q29sdW1uc1wiPjwvdHI+XG4gICAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5Q29sdW1ucztcIiAoY2xpY2spPVwib25DbGlja1Jvdyhyb3cpXCIgW2NsYXNzXT1cInJvdy5jbGFzc0N1c3RvbVwiIFtuZ0NsYXNzXT1cInsndG90cy1jZWxsLXNlbGVjdGVkJzogcm93LmlzU2VsZWN0ZWR9XCI+PC90cj5cblxuICAgICAgICA8IS0tIFJvdyBzaG93biB3aGVuIHRoZXJlIGlzIG5vIG1hdGNoaW5nIGRhdGEuIC0tPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzTG9hZGluZ1wiPlxuICAgICAgICAgICAgPHRyIGNsYXNzPVwidG90cy10YWJsZS1ub3QtZGF0YVwiICptYXROb0RhdGFSb3c+PHRkIGNsYXNzPVwibWF0LWNlbGxcIiBbY29sU3Bhbl09XCJjb25maWcuY29sdW1ucy5sZW5ndGhcIj57eyBtZXNzYWdlTm90Rm91bmQgfX08L3RkPjwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGFibGU+XG5cbiAgICA8IS0tICNyZWdpb24gRmlyc3QgbG9hZGluZyBhbmltYXRpb24gLS0+XG4gICAgPGRpdiAqbmdJZj1cImlzTG9hZGluZyAmJiBmaXJzdExvYWRcIiBjbGFzcz1cInRvdHMtdGFibGUtbG9hZGluZ1wiPlxuICAgICAgICA8dG90cy1sb2FkaW5nLWFuaW1hdGlvbi1yZW5kZXJlcj48L3RvdHMtbG9hZGluZy1hbmltYXRpb24tcmVuZGVyZXI+XG4gICAgPC9kaXY+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHByb2dyZXNzIGJhciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG93ZXJQcm9ncmVzc0JhciAmJiAhZmlyc3RMb2FkXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJ0b3RzLXRhYmxlLWJhci1sb2FkaW5nIGxvd2VyXCI+XG4gICAgICAgICAgICA8bWF0LXByb2dyZXNzLWJhciAqbmdJZj1cImlzTG9hZGluZ1wiIFttb2RlXT1cIidpbmRldGVybWluYXRlJ1wiIFtjb2xvcl09XCJtYXRDb2xvclwiPjwvbWF0LXByb2dyZXNzLWJhcj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuXG4gICAgPCEtLSAjcmVnaW9uIExvd2VyIHBhZ2luYXRvciAtLT5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibG93ZXJQYWdpbmF0b3IgJiYgZGF0YUl0ZW1zICYmIGRhdGFJdGVtcy5kYXRhLmxlbmd0aCA+IDAgJiYgaGFzUGFnaW5hdGlvblwiPlxuICAgICAgICA8bWF0LXBhZ2luYXRvciBbcGFnZUluZGV4XT1cInBhZ2VJbmRleC0xXCIgW2xlbmd0aF09XCJkYXRhSXRlbXMhLnRvdGFsXCIgW3BhZ2VTaXplXT1cInBhZ2VTaXplXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG4gICAgPC9uZy1jb250YWluZXI+XG4gICAgPCEtLSAjZW5kcmVnaW9uIC0tPlxuPC9kaXY+XG4iXX0=
@@ -14,6 +14,8 @@ export class TotsTableLocalComponent {
14
14
  this.perPage = 50;
15
15
  }
16
16
  ngOnInit() {
17
+ this.orderKey = this.initialOrderKey;
18
+ this.orderType = this.initialOrderType;
17
19
  this.loadConfig();
18
20
  }
19
21
  onFilterItems() {
@@ -119,7 +121,7 @@ export class TotsTableLocalComponent {
119
121
  }
120
122
  }
121
123
  TotsTableLocalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableLocalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
122
- TotsTableLocalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableLocalComponent, selector: "tots-table-local", inputs: { configTable: "configTable", hasPagination: "hasPagination", isPaginationStartIndexInZero: "isPaginationStartIndexInZero" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: i1.TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] });
124
+ TotsTableLocalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableLocalComponent, selector: "tots-table-local", inputs: { configTable: "configTable", hasPagination: "hasPagination", isPaginationStartIndexInZero: "isPaginationStartIndexInZero", initialOrderKey: "initialOrderKey", initialOrderType: "initialOrderType" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: i1.TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] });
123
125
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableLocalComponent, decorators: [{
124
126
  type: Component,
125
127
  args: [{ selector: 'tots-table-local', template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n" }]
@@ -134,5 +136,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
134
136
  type: Input
135
137
  }], onAction: [{
136
138
  type: Output
139
+ }], initialOrderKey: [{
140
+ type: Input
141
+ }], initialOrderType: [{
142
+ type: Input
137
143
  }] } });
138
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1sb2NhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlLWxvY2FsL3RvdHMtdGFibGUtbG9jYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1sb2NhbC90b3RzLXRhYmxlLWxvY2FsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRzlFLE9BQU8sRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVN2QyxNQUFNLE9BQU8sdUJBQXVCO0lBTHBDO1FBU1csZ0JBQVcsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDekMsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsaUNBQTRCLEdBQVksS0FBSyxDQUFDO1FBRTdDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUd6RCxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUNqQixZQUFPLEdBQVcsRUFBRSxDQUFDO0tBMkh0QjtJQXRIQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO0lBQ3BCLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBRyxJQUFJLENBQUMsU0FBUyxJQUFJLFNBQVMsRUFBQztZQUM3QixPQUFPO1NBQ1I7UUFFRCxJQUFJLEtBQUssR0FBRyxDQUFDLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FB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QUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csNEJBQTRCO3NCQUFwQyxLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb3RzVGFibGVMb2NhbENvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtbG9jYWwtY29uZmlnJztcbmltcG9ydCB7IFRvdHNBY3Rpb25UYWJsZSB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtYWN0aW9uLXRhYmxlJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1jb2x1bW4nO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLXRhYmxlLWxvY2FsJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUtbG9jYWwuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLWxvY2FsLmNvbXBvbmVudC5jc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUb3RzVGFibGVMb2NhbENvbXBvbmVudCB7XG5cbiAgQFZpZXdDaGlsZCgndGFibGVDb21wJykgdGFibGVDb21wITogVG90c1RhYmxlQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIGNvbmZpZ1RhYmxlID0gbmV3IFRvdHNUYWJsZUxvY2FsQ29uZmlnKCk7XG4gIEBJbnB1dCgpIGhhc1BhZ2luYXRpb246IGJvb2xlYW4gPSB0cnVlO1xuICBASW5wdXQoKSBpc1BhZ2luYXRpb25TdGFydEluZGV4SW5aZXJvOiBib29sZWFuID0gZmFsc2U7XG5cbiAgQE91dHB1dCgpIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgZGF0YUl0ZW1zPzogQXJyYXk8YW55PjtcbiAgZGF0YVRvdGFscyA9IDA7XG4gIHBhZ2U6IG51bWJlciA9IDE7XG4gIHBlclBhZ2U6IG51bWJlciA9IDUwO1xuICBvcmRlcktleT86IHN0cmluZztcbiAgb3JkZXJUeXBlPzogc3RyaW5nO1xuICBzZWFyY2hRdWVyeT86IHN0cmluZztcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgfVxuXG4gIG9uRmlsdGVySXRlbXMoKSB7XG4gICAgaWYodGhpcy5kYXRhSXRlbXMgPT0gdW5kZWZpbmVkKXtcbiAgICAgIHJldHVybjtcbiAgICB9XG5cbiAgICBsZXQgaXRlbXMgPSBbLi4udGhpcy5kYXRhSXRlbXNdO1xuXG4gICAgaWYodGhpcy5vcmRlcktleSAhPSB1bmRlZmluZWQpe1xuICAgICAgaWYodGhpcy5vcmRlclR5cGUgPT0gJ2FzYycpe1xuICAgICAgICBpdGVtcyA9IGl0ZW1zLnNvcnQoKGEsYikgPT4gKGFbdGhpcy5vcmRlcktleSFdID4gYlt0aGlzLm9yZGVyS2V5IV0pID8gMSA6ICgoYlt0aGlzLm9yZGVyS2V5IV0gPiBhW3RoaXMub3JkZXJLZXkhXSkgPyAtMSA6IDApKVxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgaXRlbXMgPSBpdGVtcy5zb3J0KChhLGIpID0+IChhW3RoaXMub3JkZXJLZXkhXSA8IGJbdGhpcy5vcmRlcktleSFdKSA/IDEgOiAoKGJbdGhpcy5vcmRlcktleSFdIDwgYVt0aGlzLm9yZGVyS2V5IV0pID8gLTEgOiAwKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBBcGxpY2FyIGJ1c3F1ZWRhXG4gICAgaWYodGhpcy5zZWFyY2hRdWVyeSAhPSB1bmRlZmluZWQgJiYgdGhpcy5zZWFyY2hRdWVyeSAhPSAnJyl7XG4gICAgICBpdGVtcyA9IGl0ZW1zLmZpbHRlcihpdGVtID0+IHtcbiAgICAgICAgbGV0IGlzTWF0Y2ggPSBmYWxzZTtcbiAgICAgICAgdGhpcy5jb25maWdUYWJsZS5zZWFyY2hLZXlzLmZvckVhY2goa2V5ID0+IHtcbiAgICAgICAgICBpZihpdGVtW2tleV0gIT0gdW5kZWZpbmVkICYmIGl0ZW1ba2V5XS50b1N0cmluZygpLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5zZWFyY2hRdWVyeSEudG9Mb3dlckNhc2UoKSkpe1xuICAgICAgICAgICAgaXNNYXRjaCA9IHRydWU7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgICAgcmV0dXJuIGlzTWF0Y2g7XG4gICAgICB9KTtcbiAgICAgIHRoaXMuZGF0YVRvdGFscyA9IGl0ZW1zLmxlbmd0aDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5kYXRhVG90YWxzID0gdGhpcy5kYXRhSXRlbXMhLmxlbmd0aDtcbiAgICB9XG5cbiAgICBsZXQgc3RhcnRJbmRleCA9ICh0aGlzLnBhZ2UgLSAxKSAqIHRoaXMucGVyUGFnZTtcbiAgICBsZXQgZW5kSW5kZXggPSBzdGFydEluZGV4ICsgdGhpcy5wZXJQYWdlO1xuICAgIHRoaXMuc2V0RGF0YUl0ZW1zKHRoaXMuZ2VuZXJhdGVMaXN0UmVzcG9uc2UoaXRlbXMuc2xpY2Uoc3RhcnRJbmRleCwgZW5kSW5kZXgpKSk7XG4gIH1cblxuICBvblBhZ2luYXRpb24oYWN0aW9uOiBUb3RzQWN0aW9uVGFibGUpIHtcbiAgICB0aGlzLnBlclBhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlU2l6ZTtcbiAgICBpZih0aGlzLmlzUGFnaW5hdGlvblN0YXJ0SW5kZXhJblplcm8pe1xuICAgICAgdGhpcy5wYWdlID0gYWN0aW9uLml0ZW0ucGFnZUluZGV4O1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnBhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlSW5kZXggKyAxO1xuICAgIH1cbiAgICB0aGlzLm9uRmlsdGVySXRlbXMoKTtcbiAgfVxuXG4gIG9uT3JkZXIoY29sdW1uOiBUb3RzQ29sdW1uKSB7XG4gICAgdGhpcy5vcmRlclR5cGUgPSBjb2x1bW4ub3JkZXI7XG4gICAgdGhpcy5vcmRlcktleSA9IGNvbHVtbi5maWVsZF9rZXkgYXMgc3RyaW5nO1xuICAgIHRoaXMub25GaWx0ZXJJdGVtcygpO1xuICB9XG5cbiAgb25UYWJsZUFjdGlvbihhY3Rpb246IFRvdHNBY3Rpb25UYWJsZSkge1xuICAgIGlmKGFjdGlvbi5rZXkgPT0gJ3BhZ2UtY2hhbmdlJyl7XG4gICAgICB0aGlzLm9uUGFnaW5hdGlvbihhY3Rpb24pO1xuICAgIH0gZWxzZSBpZihhY3Rpb24ua2V5ID09ICdjbGljay1vcmRlcicpe1xuICAgICAgdGhpcy5vbk9yZGVyKGFjdGlvbi5pdGVtKTtcbiAgICB9XG5cbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoYWN0aW9uKTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgaWYodGhpcy5jb25maWdUYWJsZS5vYnMgPT0gdW5kZWZpbmVkKXtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgdGhpcy5zZXRPYnModGhpcy5jb25maWdUYWJsZS5vYnMpO1xuICB9XG5cbiAgcmVmcmVzaFF1ZXJ5QW5kTG9hZEl0ZW1zKCkge1xuICAgIHJldHVybiB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgbG9hZEl0ZW1zKCkge1xuICAgIHJldHVybiB0aGlzLnRhYmxlQ29tcC5sb2FkSXRlbXMoKTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnRhYmxlQ29tcC5nZXREYXRhSXRlbXMoKTtcbiAgfVxuXG4gIHNldERhdGFJdGVtcyhpdGVtczogVG90c0xpc3RSZXNwb25zZTxhbnk+KSB7XG4gICAgdGhpcy50YWJsZUNvbXAucmVmcmVzaERhdGFJdGVtcyhpdGVtcyk7XG4gIH1cblxuICBzZXRPYnMob2JzOiBPYnNlcnZhYmxlPFRvdHNMaXN0UmVzcG9uc2U8YW55Pj4pIHtcbiAgICB0aGlzLmNvbmZpZ1RhYmxlLm9icyA9IG9icy5waXBlKHRhcChyZXMgPT4gdGhpcy5kYXRhSXRlbXMgPSByZXMuZGF0YSkpO1xuICB9XG5cbiAgb25TZWFyY2gocXVlcnk6IHN0cmluZykge1xuICAgIHRoaXMucGFnZSA9IDE7XG4gICAgdGhpcy5zZWFyY2hRdWVyeSA9IHF1ZXJ5O1xuICAgIHRoaXMub25GaWx0ZXJJdGVtcygpO1xuICB9XG5cbiAgZ2VuZXJhdGVMaXN0UmVzcG9uc2UoaXRlbXM6IEFycmF5PGFueT4pOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4ge1xuICAgIC8vIGNhbGN1bGFyIGxhIGl1bHRpbWEgcGFnaW5hXG4gICAgbGV0IGxhc3RQYWdlID0gTWF0aC5jZWlsKHRoaXMuZGF0YVRvdGFscyAvIHRoaXMucGVyUGFnZSk7XG5cbiAgICByZXR1cm4ge1xuICAgICAgY3VycmVudF9wYWdlOiB0aGlzLnBhZ2UsXG4gICAgICBmaXJzdF9wYWdlX3VybDogJycsXG4gICAgICBmcm9tOiAnJyxcbiAgICAgIGxhc3RfcGFnZTogbGFzdFBhZ2UsXG4gICAgICBsYXN0X3BhZ2VfdXJsOiAnJyxcbiAgICAgIG5leHRfcGFnZV91cmw6ICcnLFxuICAgICAgcGF0aDogJycsXG4gICAgICBwZXJfcGFnZTogdGhpcy5wZXJQYWdlLFxuICAgICAgcHJldl9wYWdlX3VybDogJycsXG4gICAgICB0bzogJycsXG4gICAgICB0b3RhbDogdGhpcy5kYXRhVG90YWxzLFxuICAgICAgZGF0YTogaXRlbXNcbiAgICB9O1xuICB9XG59XG4iLCI8dG90cy10YWJsZSAjdGFibGVDb21wIFtjb25maWddPVwiY29uZmlnVGFibGVcIiBbcGFnZUluZGV4XT1cInBhZ2VcIiBbcGFnZVNpemVdPVwicGVyUGFnZVwiIChvbkFjdGlvbik9XCJvblRhYmxlQWN0aW9uKCRldmVudClcIiBbaGFzUGFnaW5hdGlvbl09XCJoYXNQYWdpbmF0aW9uXCI+PC90b3RzLXRhYmxlPlxuIl19
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1sb2NhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlLWxvY2FsL3RvdHMtdGFibGUtbG9jYWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1sb2NhbC90b3RzLXRhYmxlLWxvY2FsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdDQUF3QyxDQUFDO0FBRzlFLE9BQU8sRUFBYyxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7OztBQVN2QyxNQUFNLE9BQU8sdUJBQXVCO0lBTHBDO1FBU1csZ0JBQVcsR0FBRyxJQUFJLG9CQUFvQixFQUFFLENBQUM7UUFDekMsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsaUNBQTRCLEdBQVksS0FBSyxDQUFDO1FBRTdDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUd6RCxlQUFVLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsU0FBSSxHQUFXLENBQUMsQ0FBQztRQUNqQixZQUFPLEdBQVcsRUFBRSxDQUFDO0tBbUl0QjtJQXpIQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDO1FBRXZDLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztJQUNwQixDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxTQUFTLEVBQUM7WUFDN0IsT0FBTztTQUNSO1FBRUQsSUFBSSxLQUFLLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUVoQyxJQUFHLElBQUksQ0FBQyxRQUFRLElBQUksU0FBUyxFQUFDO1lBQzVCLElBQUcsSUFBSSxDQUFDLFNBQVMsSUFBSSxLQUFLLEVBQUM7Z0JBQ3pCLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQzlIO2lCQUFNO2dCQUNMLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFBO2FBQzlIO1NBQ0Y7UUFFRCxtQkFBbUI7UUFDbkIsSUFBRyxJQUFJLENBQUMsV0FBVyxJQUFJLFNBQVMsSUFB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WWEsdUJBQXVCO2tCQUxuQyxTQUFTOytCQUNFLGtCQUFrQjs4QkFNSixTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVc7Z0JBRWIsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNO2dCQU9FLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZ0JBQWdCO3NCQUF4QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG90c1RhYmxlTG9jYWxDb25maWcgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLXRhYmxlLWxvY2FsLWNvbmZpZyc7XG5pbXBvcnQgeyBUb3RzQWN0aW9uVGFibGUgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZSc7XG5pbXBvcnQgeyBUb3RzTGlzdFJlc3BvbnNlIH0gZnJvbSAnQHRvdHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCB0YXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbXBvbmVudCB9IGZyb20gJy4uL3RvdHMtdGFibGUvdG90cy10YWJsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtY29sdW1uJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZS1sb2NhbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi90b3RzLXRhYmxlLWxvY2FsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS1sb2NhbC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlTG9jYWxDb21wb25lbnQge1xuXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlQ29tcCcpIHRhYmxlQ29tcCE6IFRvdHNUYWJsZUNvbXBvbmVudDtcblxuICBASW5wdXQoKSBjb25maWdUYWJsZSA9IG5ldyBUb3RzVGFibGVMb2NhbENvbmZpZygpO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcbiAgQElucHV0KCkgaXNQYWdpbmF0aW9uU3RhcnRJbmRleEluWmVybzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIEBPdXRwdXQoKSBvbkFjdGlvbiA9IG5ldyBFdmVudEVtaXR0ZXI8VG90c0FjdGlvblRhYmxlPigpO1xuXG4gIGRhdGFJdGVtcz86IEFycmF5PGFueT47XG4gIGRhdGFUb3RhbHMgPSAwO1xuICBwYWdlOiBudW1iZXIgPSAxO1xuICBwZXJQYWdlOiBudW1iZXIgPSA1MDtcbiAgXG4gIEBJbnB1dCgpIGluaXRpYWxPcmRlcktleT8gOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGluaXRpYWxPcmRlclR5cGU/IDogXCJhc2NcInxcImRlc2NcIjtcblxuICBwcml2YXRlIG9yZGVyS2V5Pzogc3RyaW5nO1xuICBwcml2YXRlIG9yZGVyVHlwZT86IFwiYXNjXCJ8XCJkZXNjXCI7XG5cbiAgc2VhcmNoUXVlcnk/OiBzdHJpbmc7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5vcmRlcktleSA9IHRoaXMuaW5pdGlhbE9yZGVyS2V5O1xuICAgIHRoaXMub3JkZXJUeXBlID0gdGhpcy5pbml0aWFsT3JkZXJUeXBlO1xuICAgIFxuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICB9XG5cbiAgb25GaWx0ZXJJdGVtcygpIHtcbiAgICBpZih0aGlzLmRhdGFJdGVtcyA9PSB1bmRlZmluZWQpe1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGxldCBpdGVtcyA9IFsuLi50aGlzLmRhdGFJdGVtc107XG5cbiAgICBpZih0aGlzLm9yZGVyS2V5ICE9IHVuZGVmaW5lZCl7XG4gICAgICBpZih0aGlzLm9yZGVyVHlwZSA9PSAnYXNjJyl7XG4gICAgICAgIGl0ZW1zID0gaXRlbXMuc29ydCgoYSxiKSA9PiAoYVt0aGlzLm9yZGVyS2V5IV0gPiBiW3RoaXMub3JkZXJLZXkhXSkgPyAxIDogKChiW3RoaXMub3JkZXJLZXkhXSA+IGFbdGhpcy5vcmRlcktleSFdKSA/IC0xIDogMCkpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBpdGVtcyA9IGl0ZW1zLnNvcnQoKGEsYikgPT4gKGFbdGhpcy5vcmRlcktleSFdIDwgYlt0aGlzLm9yZGVyS2V5IV0pID8gMSA6ICgoYlt0aGlzLm9yZGVyS2V5IV0gPCBhW3RoaXMub3JkZXJLZXkhXSkgPyAtMSA6IDApKVxuICAgICAgfVxuICAgIH1cblxuICAgIC8vIEFwbGljYXIgYnVzcXVlZGFcbiAgICBpZih0aGlzLnNlYXJjaFF1ZXJ5ICE9IHVuZGVmaW5lZCAmJiB0aGlzLnNlYXJjaFF1ZXJ5ICE9ICcnKXtcbiAgICAgIGl0ZW1zID0gaXRlbXMuZmlsdGVyKGl0ZW0gPT4ge1xuICAgICAgICBsZXQgaXNNYXRjaCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmNvbmZpZ1RhYmxlLnNlYXJjaEtleXMuZm9yRWFjaChrZXkgPT4ge1xuICAgICAgICAgIGlmKGl0ZW1ba2V5XSAhPSB1bmRlZmluZWQgJiYgaXRlbVtrZXldLnRvU3RyaW5nKCkudG9Mb3dlckNhc2UoKS5pbmNsdWRlcyh0aGlzLnNlYXJjaFF1ZXJ5IS50b0xvd2VyQ2FzZSgpKSl7XG4gICAgICAgICAgICBpc01hdGNoID0gdHJ1ZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gaXNNYXRjaDtcbiAgICAgIH0pO1xuICAgICAgdGhpcy5kYXRhVG90YWxzID0gaXRlbXMubGVuZ3RoO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmRhdGFUb3RhbHMgPSB0aGlzLmRhdGFJdGVtcyEubGVuZ3RoO1xuICAgIH1cblxuICAgIGxldCBzdGFydEluZGV4ID0gKHRoaXMucGFnZSAtIDEpICogdGhpcy5wZXJQYWdlO1xuICAgIGxldCBlbmRJbmRleCA9IHN0YXJ0SW5kZXggKyB0aGlzLnBlclBhZ2U7XG4gICAgdGhpcy5zZXREYXRhSXRlbXModGhpcy5nZW5lcmF0ZUxpc3RSZXNwb25zZShpdGVtcy5zbGljZShzdGFydEluZGV4LCBlbmRJbmRleCkpKTtcbiAgfVxuXG4gIG9uUGFnaW5hdGlvbihhY3Rpb246IFRvdHNBY3Rpb25UYWJsZSkge1xuICAgIHRoaXMucGVyUGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VTaXplO1xuICAgIGlmKHRoaXMuaXNQYWdpbmF0aW9uU3RhcnRJbmRleEluWmVybyl7XG4gICAgICB0aGlzLnBhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlSW5kZXg7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucGFnZSA9IGFjdGlvbi5pdGVtLnBhZ2VJbmRleCArIDE7XG4gICAgfVxuICAgIHRoaXMub25GaWx0ZXJJdGVtcygpO1xuICB9XG5cbiAgb25PcmRlcihjb2x1bW46IFRvdHNDb2x1bW4pIHtcbiAgICB0aGlzLm9yZGVyVHlwZSA9IGNvbHVtbi5vcmRlcjtcbiAgICB0aGlzLm9yZGVyS2V5ID0gY29sdW1uLmZpZWxkX2tleSBhcyBzdHJpbmc7XG4gICAgdGhpcy5vbkZpbHRlckl0ZW1zKCk7XG4gIH1cblxuICBvblRhYmxlQWN0aW9uKGFjdGlvbjogVG90c0FjdGlvblRhYmxlKSB7XG4gICAgaWYoYWN0aW9uLmtleSA9PSAncGFnZS1jaGFuZ2UnKXtcbiAgICAgIHRoaXMub25QYWdpbmF0aW9uKGFjdGlvbik7XG4gICAgfSBlbHNlIGlmKGFjdGlvbi5rZXkgPT0gJ2NsaWNrLW9yZGVyJyl7XG4gICAgICB0aGlzLm9uT3JkZXIoYWN0aW9uLml0ZW0pO1xuICAgIH1cblxuICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICB9XG5cbiAgbG9hZENvbmZpZygpIHtcbiAgICBpZih0aGlzLmNvbmZpZ1RhYmxlLm9icyA9PSB1bmRlZmluZWQpe1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICB0aGlzLnNldE9icyh0aGlzLmNvbmZpZ1RhYmxlLm9icyk7XG4gIH1cblxuICByZWZyZXNoUXVlcnlBbmRMb2FkSXRlbXMoKSB7XG4gICAgcmV0dXJuIHRoaXMubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBsb2FkSXRlbXMoKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVDb21wLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgZ2V0RGF0YUl0ZW1zKCk6IFRvdHNMaXN0UmVzcG9uc2U8YW55PiB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMudGFibGVDb21wLmdldERhdGFJdGVtcygpO1xuICB9XG5cbiAgc2V0RGF0YUl0ZW1zKGl0ZW1zOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4pIHtcbiAgICB0aGlzLnRhYmxlQ29tcC5yZWZyZXNoRGF0YUl0ZW1zKGl0ZW1zKTtcbiAgfVxuXG4gIHNldE9icyhvYnM6IE9ic2VydmFibGU8VG90c0xpc3RSZXNwb25zZTxhbnk+Pikge1xuICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gb2JzLnBpcGUodGFwKHJlcyA9PiB0aGlzLmRhdGFJdGVtcyA9IHJlcy5kYXRhKSk7XG4gIH1cblxuICBvblNlYXJjaChxdWVyeTogc3RyaW5nKSB7XG4gICAgdGhpcy5wYWdlID0gMTtcbiAgICB0aGlzLnNlYXJjaFF1ZXJ5ID0gcXVlcnk7XG4gICAgdGhpcy5vbkZpbHRlckl0ZW1zKCk7XG4gIH1cblxuICBnZW5lcmF0ZUxpc3RSZXNwb25zZShpdGVtczogQXJyYXk8YW55Pik6IFRvdHNMaXN0UmVzcG9uc2U8YW55PiB7XG4gICAgLy8gY2FsY3VsYXIgbGEgaXVsdGltYSBwYWdpbmFcbiAgICBsZXQgbGFzdFBhZ2UgPSBNYXRoLmNlaWwodGhpcy5kYXRhVG90YWxzIC8gdGhpcy5wZXJQYWdlKTtcblxuICAgIHJldHVybiB7XG4gICAgICBjdXJyZW50X3BhZ2U6IHRoaXMucGFnZSxcbiAgICAgIGZpcnN0X3BhZ2VfdXJsOiAnJyxcbiAgICAgIGZyb206ICcnLFxuICAgICAgbGFzdF9wYWdlOiBsYXN0UGFnZSxcbiAgICAgIGxhc3RfcGFnZV91cmw6ICcnLFxuICAgICAgbmV4dF9wYWdlX3VybDogJycsXG4gICAgICBwYXRoOiAnJyxcbiAgICAgIHBlcl9wYWdlOiB0aGlzLnBlclBhZ2UsXG4gICAgICBwcmV2X3BhZ2VfdXJsOiAnJyxcbiAgICAgIHRvOiAnJyxcbiAgICAgIHRvdGFsOiB0aGlzLmRhdGFUb3RhbHMsXG4gICAgICBkYXRhOiBpdGVtc1xuICAgIH07XG4gIH1cbn1cbiIsIjx0b3RzLXRhYmxlICN0YWJsZUNvbXAgW2NvbmZpZ109XCJjb25maWdUYWJsZVwiIFtwYWdlSW5kZXhdPVwicGFnZVwiIFtwYWdlU2l6ZV09XCJwZXJQYWdlXCIgKG9uQWN0aW9uKT1cIm9uVGFibGVBY3Rpb24oJGV2ZW50KVwiIFtoYXNQYWdpbmF0aW9uXT1cImhhc1BhZ2luYXRpb25cIj48L3RvdHMtdGFibGU+XG4iXX0=
@@ -229,6 +229,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
229
229
  }] });
230
230
 
231
231
  class UserColumnComponent extends TotsBaseColumnComponent {
232
+ onClick() {
233
+ if (!this.isClickable()) {
234
+ return;
235
+ }
236
+ this.onAction.next({ key: this.getClickEvent(), item: this.item });
237
+ }
232
238
  getFirstname() {
233
239
  var _a;
234
240
  if ((_a = this.column.extra) === null || _a === void 0 ? void 0 : _a.field_firstname_key) {
@@ -267,12 +273,26 @@ class UserColumnComponent extends TotsBaseColumnComponent {
267
273
  }
268
274
  return false;
269
275
  }
276
+ isClickable() {
277
+ var _a;
278
+ if ((_a = this.column.extra) === null || _a === void 0 ? void 0 : _a.is_clickable) {
279
+ return true;
280
+ }
281
+ return false;
282
+ }
283
+ getClickEvent() {
284
+ var _a;
285
+ if ((_a = this.column.extra) === null || _a === void 0 ? void 0 : _a.click_event) {
286
+ return this.column.extra.click_event;
287
+ }
288
+ return 'click-column';
289
+ }
270
290
  }
271
291
  UserColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: UserColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
272
- UserColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: UserColumnComponent, selector: "tots-user-column", usesInheritance: true, ngImport: i0, template: "<div class=\"user-avatar-component\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
292
+ UserColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: UserColumnComponent, selector: "tots-user-column", usesInheritance: true, ngImport: i0, template: "<div class=\"user-avatar-component\" [ngClass]=\"{'box-clickable': isClickable()}\" (click)=\"onClick(); $event.stopPropagation();\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>\n", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}.box-clickable{cursor:pointer}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] });
273
293
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: UserColumnComponent, decorators: [{
274
294
  type: Component,
275
- args: [{ selector: 'tots-user-column', template: "<div class=\"user-avatar-component\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}\n"] }]
295
+ args: [{ selector: 'tots-user-column', template: "<div class=\"user-avatar-component\" [ngClass]=\"{'box-clickable': isClickable()}\" (click)=\"onClick(); $event.stopPropagation();\">\n <div class=\"avatar\" *ngIf=\"getPhoto() != ''\">\n <img mat-card-avatar [src]=\"getPhoto()\" alt=\"{{ getFullname() }}\" class=\"cover-image\" onerror=\"this.src='/assets/img/user-avatar-empty.svg';\">\n </div>\n <div class=\"texts\">\n <div class=\"user\"> {{ getFullname() }} </div>\n <div class=\"body-2\" *ngIf=\"getSubtitle() != ''\"> {{ getSubtitle() }} </div>\n </div>\n <div class=\"check\" *ngIf=\"column.extra?.field_is_online && isOnline()\"><mat-icon>check</mat-icon></div>\n</div>\n", styles: [".user-avatar-component{display:flex;align-items:center;position:relative}.user-avatar-component .avatar{width:40px;min-width:40px;height:40px;min-height:40px;border-radius:40px;overflow:hidden;margin-right:16px}.user-avatar-component .avatar img{width:40px;min-width:40px;height:40px;min-height:40px}.user-avatar-component .texts .user{font-size:1.1em}.user-avatar-component .texts .body-2{color:#636363;font-size:.9em}.user-avatar-component .check{position:absolute;border:2px solid white;border-radius:200px;top:0;left:0;color:#24b524;background-color:#d7ffa3;width:1em;height:1em;display:flex;align-items:center;justify-content:center}.user-avatar-component .check mat-icon{line-height:1em;font-size:1em;width:1em;height:1em}.box-clickable{cursor:pointer}\n"] }]
276
296
  }] });
277
297
 
278
298
  class CurrencyColumnComponent extends TotsBaseColumnComponent {
@@ -522,10 +542,10 @@ class TotsTableComponent {
522
542
  }
523
543
  }
524
544
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [{ token: TOTS_TABLE_DEFAULT_CONFIG }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
525
- TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i3$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i3$1.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i4$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction", "index"] }, { kind: "component", type: LoadingAnimationRendererComponent, selector: "tots-loading-animation-renderer" }] });
545
+ TotsTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableComponent, selector: "tots-table", inputs: { config: "config", pageIndex: "pageIndex", pageSize: "pageSize", hasPagination: "hasPagination", messageNotFound: "messageNotFound" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i3$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i3$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "directive", type: i3$1.MatNoDataRow, selector: "ng-template[matNoDataRow]" }, { kind: "component", type: i4$1.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction", "index"] }, { kind: "component", type: LoadingAnimationRendererComponent, selector: "tots-loading-animation-renderer" }] });
526
546
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
527
547
  type: Component,
528
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading && !firstLoad\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"] }]
548
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"upperPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"upperProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading upper\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n\n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\" [stickyEnd]=\"column.extra?.stickyEnd ?? false\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'asc'}\">arrow_drop_up</mat-icon>\n <mat-icon [ngClass]=\"{'sort_active': column.order == 'desc'}\">arrow_drop_down</mat-icon>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item; let index = index;\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [index]=\"index\" [onAction]=\"privateActions\"></tots-base-print-column></td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"displayColumns\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: displayColumns;\" (click)=\"onClickRow(row)\" [class]=\"row.classCustom\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n\n <!-- Row shown when there is no matching data. -->\n <ng-container *ngIf=\"!isLoading\">\n <tr class=\"tots-table-not-data\" *matNoDataRow><td class=\"mat-cell\" [colSpan]=\"config.columns.length\">{{ messageNotFound }}</td></tr>\n </ng-container>\n </table>\n\n <!-- #region First loading animation -->\n <div *ngIf=\"isLoading && firstLoad\" class=\"tots-table-loading\">\n <tots-loading-animation-renderer></tots-loading-animation-renderer>\n </div>\n <!-- #endregion -->\n\n <!-- #region Lower progress bar -->\n <ng-container *ngIf=\"lowerProgressBar && !firstLoad\">\n <div class=\"tots-table-bar-loading lower\">\n <mat-progress-bar *ngIf=\"isLoading\" [mode]=\"'indeterminate'\" [color]=\"matColor\"></mat-progress-bar>\n </div>\n </ng-container>\n <!-- #endregion -->\n\n <!-- #region Lower paginator -->\n <ng-container *ngIf=\"lowerPaginator && dataItems && dataItems.data.length > 0 && hasPagination\">\n <mat-paginator [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" (page)=\"onPageChange($event)\"></mat-paginator>\n </ng-container>\n <!-- #endregion -->\n</div>\n", styles: [".tots-table-container .mat-mdc-header-cell{position:relative}.tots-table-container .mat-mdc-header-cell mat-icon{display:none}.tots-table-container .tots-tr-has-order{cursor:pointer}.tots-table-container .tots-tr-has-order:hover mat-icon{opacity:.5}.tots-table-container .tots-tr-has-order mat-icon{display:inline;opacity:.3;position:absolute}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(1){top:12px}.tots-table-container .tots-tr-has-order mat-icon:nth-of-type(2){top:20px}.tots-table-container .tots-tr-has-order .sort_active{opacity:1!important}.tots-table-container .tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-container .tots-table-bar-loading{height:4px}.tots-table-container .tots-table-not-data{font-size:large;text-align:center}.tots-table-container .tots-table-not-data td{padding:24px}\n"] }]
529
549
  }], ctorParameters: function () {
530
550
  return [{ type: TotsTableDefaultConfig, decorators: [{
531
551
  type: Inject,
@@ -618,6 +638,8 @@ class TotsTableLocalComponent {
618
638
  this.perPage = 50;
619
639
  }
620
640
  ngOnInit() {
641
+ this.orderKey = this.initialOrderKey;
642
+ this.orderType = this.initialOrderType;
621
643
  this.loadConfig();
622
644
  }
623
645
  onFilterItems() {
@@ -723,7 +745,7 @@ class TotsTableLocalComponent {
723
745
  }
724
746
  }
725
747
  TotsTableLocalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableLocalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
726
- TotsTableLocalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableLocalComponent, selector: "tots-table-local", inputs: { configTable: "configTable", hasPagination: "hasPagination", isPaginationStartIndexInZero: "isPaginationStartIndexInZero" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] });
748
+ TotsTableLocalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: TotsTableLocalComponent, selector: "tots-table-local", inputs: { configTable: "configTable", hasPagination: "hasPagination", isPaginationStartIndexInZero: "isPaginationStartIndexInZero", initialOrderKey: "initialOrderKey", initialOrderType: "initialOrderType" }, outputs: { onAction: "onAction" }, viewQueries: [{ propertyName: "tableComp", first: true, predicate: ["tableComp"], descendants: true }], ngImport: i0, template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n", styles: [""], dependencies: [{ kind: "component", type: TotsTableComponent, selector: "tots-table", inputs: ["config", "pageIndex", "pageSize", "hasPagination", "messageNotFound"], outputs: ["onAction"] }] });
727
749
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableLocalComponent, decorators: [{
728
750
  type: Component,
729
751
  args: [{ selector: 'tots-table-local', template: "<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"page\" [pageSize]=\"perPage\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n" }]
@@ -738,6 +760,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
738
760
  type: Input
739
761
  }], onAction: [{
740
762
  type: Output
763
+ }], initialOrderKey: [{
764
+ type: Input
765
+ }], initialOrderType: [{
766
+ type: Input
741
767
  }] } });
742
768
 
743
769
  class TotsTableModule {