@tots/table 15.0.35 → 15.0.37

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.
@@ -12,11 +12,17 @@ export class IconButtonColumnComponent extends TotsBaseColumnComponent {
12
12
  getIconName() {
13
13
  return this.column.extra.icon;
14
14
  }
15
+ getButtonColor() {
16
+ return this.column.extra.matColor;
17
+ }
18
+ getClasses() {
19
+ return this.column.extra.classes;
20
+ }
15
21
  }
16
22
  IconButtonColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
17
- IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
23
+ IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
18
24
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, decorators: [{
19
25
  type: Component,
20
- args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
26
+ args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
21
27
  }] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24tY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvdGFibGUvc3JjL2xpYi9jb2x1bW5zL2ljb24tYnV0dG9uLWNvbHVtbi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvaWNvbi1idXR0b24tY29sdW1uL2ljb24tYnV0dG9uLWNvbHVtbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7O0FBT3hFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx1QkFBdUI7SUFFcEUsV0FBVyxDQUFDLE1BQWU7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2RSxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7O3NIQVZVLHlCQUF5QjswR0FBekIseUJBQXlCLHNGQ1R0Qyx1SUFFUzsyRkRPSSx5QkFBeUI7a0JBTHJDLFNBQVM7K0JBQ0UseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb3RzVGFibGVIZWxwZXIgfSBmcm9tICcuLi8uLi9oZWxwZXJzL3RvdHMtdGFibGUtaGVscGVyJztcbmltcG9ydCB7IFRvdHNCYXNlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi4vdG90cy1iYXNlLWNvbHVtbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLWljb24tYnV0dG9uLWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEljb25CdXR0b25Db2x1bW5Db21wb25lbnQgZXh0ZW5kcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgY2xpY2tCdXR0b24oJGV2ZW50OiBVSUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5uZXh0KHsga2V5OiB0aGlzLmNvbHVtbi5leHRyYS5hY3Rpb24sIGl0ZW06IHRoaXMuaXRlbSB9KTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0SWNvbk5hbWUoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEuaWNvbjtcbiAgfVxufVxuIiwiPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW2NvbG9yXT1cIidwcmltYXJ5J1wiIChjbGljayk9XCJjbGlja0J1dHRvbigkZXZlbnQpXCI+XG4gICAgPG1hdC1pY29uPnt7Z2V0SWNvbk5hbWUoKX19PC9tYXQtaWNvbj5cbjwvYnV0dG9uPiJdfQ==
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi1idXR0b24tY29sdW1uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RvdHMvdGFibGUvc3JjL2xpYi9jb2x1bW5zL2ljb24tYnV0dG9uLWNvbHVtbi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbHVtbnMvaWNvbi1idXR0b24tY29sdW1uL2ljb24tYnV0dG9uLWNvbHVtbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7O0FBT3hFLE1BQU0sT0FBTyx5QkFBMEIsU0FBUSx1QkFBdUI7SUFFcEUsV0FBVyxDQUFDLE1BQWU7UUFDekIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUN2RSxNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7UUFDekIsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDO0lBQ2hDLENBQUM7SUFFRCxjQUFjO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUM7SUFDcEMsQ0FBQztJQUVELFVBQVU7UUFDUixPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQztJQUNuQyxDQUFDOztzSEFsQlUseUJBQXlCOzBHQUF6Qix5QkFBeUIsc0ZDUnRDLHVLQUVTOzJGRE1JLHlCQUF5QjtrQkFMckMsU0FBUzsrQkFDRSx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRvdHNCYXNlQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi4vdG90cy1iYXNlLWNvbHVtbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLWljb24tYnV0dG9uLWNvbHVtbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9pY29uLWJ1dHRvbi1jb2x1bW4uY29tcG9uZW50LmNzcyddXG59KVxuZXhwb3J0IGNsYXNzIEljb25CdXR0b25Db2x1bW5Db21wb25lbnQgZXh0ZW5kcyBUb3RzQmFzZUNvbHVtbkNvbXBvbmVudCB7XG5cbiAgY2xpY2tCdXR0b24oJGV2ZW50OiBVSUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5uZXh0KHsga2V5OiB0aGlzLmNvbHVtbi5leHRyYS5hY3Rpb24sIGl0ZW06IHRoaXMuaXRlbSB9KTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgcmV0dXJuIGZhbHNlO1xuICB9XG5cbiAgZ2V0SWNvbk5hbWUoKSA6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuY29sdW1uLmV4dHJhLmljb247XG4gIH1cblxuICBnZXRCdXR0b25Db2xvcigpIDogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5jb2x1bW4uZXh0cmEubWF0Q29sb3I7XG4gIH1cblxuICBnZXRDbGFzc2VzKCkgOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmNvbHVtbi5leHRyYS5jbGFzc2VzO1xuICB9XG59XG4iLCI8YnV0dG9uIG1hdC1pY29uLWJ1dHRvbiBbY29sb3JdPVwiZ2V0QnV0dG9uQ29sb3IoKVwiIFtjbGFzc109XCJnZXRDbGFzc2VzKClcIiAoY2xpY2spPVwiY2xpY2tCdXR0b24oJGV2ZW50KVwiPlxuICAgIDxtYXQtaWNvbj57e2dldEljb25OYW1lKCl9fTwvbWF0LWljb24+XG48L2J1dHRvbj4iXX0=
@@ -63,10 +63,10 @@ export class TotsTableComponent {
63
63
  }
64
64
  }
65
65
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
66
- 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i6.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
66
+ 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: i6.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
67
67
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
68
68
  type: Component,
69
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
69
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
70
70
  }], propDecorators: { config: [{
71
71
  type: Input
72
72
  }], pageIndex: [{
@@ -78,4 +78,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
78
78
  }], onAction: [{
79
79
  type: Output
80
80
  }] } });
81
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHcEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7OztBQU9uRSxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT1csV0FBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDL0IsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBRTdCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUN6RCxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFtQixDQUFDO1FBRWhELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO0tBbURwQztJQWpEQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWtCO1FBQzdCLElBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFDO1lBQUUsT0FBTztTQUFFO1FBQy9CLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsQ0FBQztRQUN0RCxNQUFNLENBQUMsS0FBSyxHQUFHLFdBQVcsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBZ0I7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLENBQUM7YUFDN0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzlFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBMEM7UUFDekQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQzs7K0dBOURVLGtCQUFrQjttR0FBbEIsa0JBQWtCLGlNQ2IvQixnbEVBNEJNOzJGRGZPLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOzhCQU1iLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtY29sdW1uJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlnID0gbmV3IFRvdHNUYWJsZUNvbmZpZygpO1xuICBASW5wdXQoKSBwYWdlSW5kZXg6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHBhZ2VTaXplOiBudW1iZXIgPSA1MDtcbiAgQElucHV0KCkgaGFzUGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgQE91dHB1dCgpIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUb3RzQWN0aW9uVGFibGU+KCk7XG4gIHByaXZhdGVBY3Rpb25zID0gbmV3IFN1YmplY3Q8VG90c0FjdGlvblRhYmxlPigpO1xuXG4gIGlzTG9hZGluZyA9IHRydWU7XG4gIGRhdGFJdGVtcz86IFRvdHNMaXN0UmVzcG9uc2U8YW55PjtcbiAgZGlzcGxheUNvbHVtbnM6IEFycmF5PFN0cmluZz4gPSBbXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgb25DbGlja09yZGVyKGNvbHVtbjogVG90c0NvbHVtbikge1xuICAgIGlmKCFjb2x1bW4uaGFzT3JkZXIpeyByZXR1cm47IH1cbiAgICBsZXQgb3JkZXJDb2x1bW4gPSBjb2x1bW4ub3JkZXI7XG4gICAgdGhpcy5jb25maWcuY29sdW1ucy5mb3JFYWNoKGMgPT4gYy5vcmRlciA9IHVuZGVmaW5lZCk7XG4gICAgY29sdW1uLm9yZGVyID0gb3JkZXJDb2x1bW4gPT0gJ2FzYycgPyAnZGVzYycgOiAnYXNjJztcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdjbGljay1vcmRlcicsIGl0ZW06IGNvbHVtbiB9KTtcbiAgfVxuXG4gIG9uQ2xpY2tSb3coaXRlbTogYW55KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnY2xpY2stcm93JywgaXRlbTogaXRlbSB9KTtcbiAgfVxuXG4gIG9uUGFnZUNoYW5nZShldmVudDogUGFnZUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAncGFnZS1jaGFuZ2UnLCBpdGVtOiBldmVudCB9KTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgbG9hZEl0ZW1zKCkge1xuICAgIHRoaXMuZGF0YUl0ZW1zID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICByZXR1cm4gdGhpcy5jb25maWcub2JzPy5waXBlKHRhcChyZXMgPT4gdGhpcy5kYXRhSXRlbXMgPSByZXMpKVxuICAgIC5waXBlKHRhcChyZXMgPT4gdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnbG9hZGVkLWl0ZW1zJywgaXRlbTogdW5kZWZpbmVkIH0pKSlcbiAgICAuc3Vic2NyaWJlKHJlcyA9PiB0aGlzLmlzTG9hZGluZyA9IGZhbHNlKTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5sb2FkQ29sdW1ucygpO1xuXG4gICAgdGhpcy5wcml2YXRlQWN0aW9ucy5zdWJzY3JpYmUoYWN0aW9uID0+IHtcbiAgICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICAgIH0pO1xuICB9XG5cbiAgbG9hZENvbHVtbnMoKSB7XG4gICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5pc19zaG93IHx8IGMuaXNfc2hvdyA9PSB1bmRlZmluZWQpLm1hcChjID0+IGMua2V5KTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFJdGVtcztcbiAgfVxuXG4gIHJlZnJlc2hEYXRhSXRlbXMobmV3RGF0YTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kYXRhSXRlbXMgPSBuZXdEYXRhO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1jb250YWluZXJcIj5cbiAgICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cImRhdGFJdGVtcyAhPSB1bmRlZmluZWQgPyBkYXRhSXRlbXMhLmRhdGEgOiBbXVwiPlxuICAgICAgICBcbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uIG9mIGNvbmZpZy5jb2x1bW5zXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW4ua2V5XCI+XG4gICAgICAgICAgICA8IS0tIFRILS0+XG4gICAgICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFtuZ0NsYXNzXT1cInsndG90cy10ci1oYXMtb3JkZXInOiBjb2x1bW4uaGFzT3JkZXJ9XCIgKGNsaWNrKT1cIm9uQ2xpY2tPcmRlcihjb2x1bW4pXCI+XG4gICAgICAgICAgICAgICAge3sgY29sdW1uLnRpdGxlIH19XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5oYXNPcmRlciAmJiBjb2x1bW4ub3JkZXIgPT0gdW5kZWZpbmVkXCI+PG1hdC1pY29uIHN0eWxlPVwiY29sb3I6IGdyYXlcIj51bmZvbGRfbW9yZTwvbWF0LWljb24+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5vcmRlciA9PSAnYXNjJ1wiPjxtYXQtaWNvbj5hcnJvd19kcm9wX3VwPC9tYXQtaWNvbj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uLm9yZGVyID09ICdkZXNjJ1wiPjxtYXQtaWNvbj5hcnJvd19kcm9wX2Rvd248L21hdC1pY29uPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgPC90aD5cbiAgICAgICAgICAgIDwhLS0gVEQgLS0+XG4gICAgICAgICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgaXRlbVwiIFtuZ1N0eWxlXT1cInsnd2lkdGgnOiBjb2x1bW4uZXh0cmE/LndpZHRoID8gY29sdW1uLmV4dHJhLndpZHRoIDogJ2F1dG8nfVwiPjx0b3RzLWJhc2UtcHJpbnQtY29sdW1uIFtjb2x1bW5dPVwiY29sdW1uXCIgW2l0ZW1dPVwiaXRlbVwiIFtvbkFjdGlvbl09XCJwcml2YXRlQWN0aW9uc1wiPjwvdG90cy1iYXNlLXByaW50LWNvbHVtbj48L3RkPlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cblxuICAgICAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXlDb2x1bW5zXCI+PC90cj5cbiAgICAgICAgPHRyIG1hdC1yb3cgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXlDb2x1bW5zO1wiIChjbGljayk9XCJvbkNsaWNrUm93KHJvdylcIiBbY2xhc3NdPVwicm93LmNsYXNzQ3VzdG9tXCIgW25nQ2xhc3NdPVwieyd0b3RzLWNlbGwtc2VsZWN0ZWQnOiByb3cuaXNTZWxlY3RlZH1cIj48L3RyPlxuICAgICAgICBcbiAgICAgICAgPCEtLSBSb3cgc2hvd24gd2hlbiB0aGVyZSBpcyBubyBtYXRjaGluZyBkYXRhLiAtLT5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0xvYWRpbmdcIj5cbiAgICAgICAgICAgIDx0ciBjbGFzcz1cInRvdHMtdGFibGUtbm90LWRhdGFcIiAqbWF0Tm9EYXRhUm93Pjx0ZCBjbGFzcz1cIm1hdC1jZWxsXCIgW2NvbFNwYW5dPVwiY29uZmlnLmNvbHVtbnMubGVuZ3RoXCI+Tm8gcmVzdWx0cyBmb3VuZCwgcGxlYXNlIHRyeSB3aXRoIG90aGVyIHNlYXJjaCB0ZXJtczwvdGQ+PC90cj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC90YWJsZT5cblxuICAgIDxkaXYgKm5nSWY9XCJpc0xvYWRpbmdcIiBjbGFzcz1cInRvdHMtdGFibGUtbG9hZGluZ1wiPjxtYXQtc3Bpbm5lciBbZGlhbWV0ZXJdPVwiNTBcIj48L21hdC1zcGlubmVyPjwvZGl2PlxuXG4gICAgPCEtLSBQYWdpbmF0b3IgLS0+XG4gICAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJkYXRhSXRlbXMgJiYgZGF0YUl0ZW1zLmRhdGEubGVuZ3RoID4gMCAmJiBoYXNQYWdpbmF0aW9uXCIgW3BhZ2VJbmRleF09XCJwYWdlSW5kZXgtMVwiIFtsZW5ndGhdPVwiZGF0YUl0ZW1zIS50b3RhbFwiIFtwYWdlU2l6ZV09XCJwYWdlU2l6ZVwiIFtwYWdlU2l6ZU9wdGlvbnNdPVwiWzUsIDEwLCAyNSwgNTAsIDEwMF1cIiAocGFnZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiPjwvbWF0LXBhZ2luYXRvcj5cbjwvZGl2PiJdfQ==
81
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHcEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7OztBQU9uRSxNQUFNLE9BQU8sa0JBQWtCO0lBTC9CO1FBT1csV0FBTSxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7UUFDL0IsY0FBUyxHQUFXLENBQUMsQ0FBQztRQUN0QixhQUFRLEdBQVcsRUFBRSxDQUFDO1FBQ3RCLGtCQUFhLEdBQVksSUFBSSxDQUFDO1FBRTdCLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUN6RCxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUFtQixDQUFDO1FBRWhELGNBQVMsR0FBRyxJQUFJLENBQUM7UUFFakIsbUJBQWMsR0FBa0IsRUFBRSxDQUFDO0tBbURwQztJQWpEQyxRQUFRO1FBQ04sSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1FBQ2xCLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsWUFBWSxDQUFDLE1BQWtCO1FBQzdCLElBQUcsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFDO1lBQUUsT0FBTztTQUFFO1FBQy9CLElBQUksV0FBVyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7UUFDL0IsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsQ0FBQztRQUN0RCxNQUFNLENBQUMsS0FBSyxHQUFHLFdBQVcsSUFBSSxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDO1FBQ3JELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsVUFBVSxDQUFDLElBQVM7UUFDbEIsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7SUFFRCxZQUFZLENBQUMsS0FBZ0I7UUFDM0IsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3hELElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxTQUFTLEdBQUcsU0FBUyxDQUFDO1FBQzNCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLENBQUM7YUFDN0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzlFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsT0FBMEM7UUFDekQsSUFBSSxDQUFDLFNBQVMsR0FBRyxPQUFPLENBQUM7SUFDM0IsQ0FBQzs7K0dBOURVLGtCQUFrQjttR0FBbEIsa0JBQWtCLGlNQ2IvQixtbUVBNEJNOzJGRGZPLGtCQUFrQjtrQkFMOUIsU0FBUzsrQkFDRSxZQUFZOzhCQU1iLE1BQU07c0JBQWQsS0FBSztnQkFDRyxTQUFTO3NCQUFqQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csYUFBYTtzQkFBckIsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUGFnZUV2ZW50IH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UgfSBmcm9tICdAdG90cy9jb3JlJztcbmltcG9ydCB7IFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVG90c0FjdGlvblRhYmxlIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1hY3Rpb24tdGFibGUnO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtY29sdW1uJztcbmltcG9ydCB7IFRvdHNUYWJsZUNvbmZpZyB9IGZyb20gJy4uLy4uL2VudGl0aWVzL3RvdHMtdGFibGUtY29uZmlnJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAndG90cy10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQElucHV0KCkgY29uZmlnID0gbmV3IFRvdHNUYWJsZUNvbmZpZygpO1xuICBASW5wdXQoKSBwYWdlSW5kZXg6IG51bWJlciA9IDA7XG4gIEBJbnB1dCgpIHBhZ2VTaXplOiBudW1iZXIgPSA1MDtcbiAgQElucHV0KCkgaGFzUGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgQE91dHB1dCgpIG9uQWN0aW9uID0gbmV3IEV2ZW50RW1pdHRlcjxUb3RzQWN0aW9uVGFibGU+KCk7XG4gIHByaXZhdGVBY3Rpb25zID0gbmV3IFN1YmplY3Q8VG90c0FjdGlvblRhYmxlPigpO1xuXG4gIGlzTG9hZGluZyA9IHRydWU7XG4gIGRhdGFJdGVtcz86IFRvdHNMaXN0UmVzcG9uc2U8YW55PjtcbiAgZGlzcGxheUNvbHVtbnM6IEFycmF5PFN0cmluZz4gPSBbXTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgb25DbGlja09yZGVyKGNvbHVtbjogVG90c0NvbHVtbikge1xuICAgIGlmKCFjb2x1bW4uaGFzT3JkZXIpeyByZXR1cm47IH1cbiAgICBsZXQgb3JkZXJDb2x1bW4gPSBjb2x1bW4ub3JkZXI7XG4gICAgdGhpcy5jb25maWcuY29sdW1ucy5mb3JFYWNoKGMgPT4gYy5vcmRlciA9IHVuZGVmaW5lZCk7XG4gICAgY29sdW1uLm9yZGVyID0gb3JkZXJDb2x1bW4gPT0gJ2FzYycgPyAnZGVzYycgOiAnYXNjJztcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdjbGljay1vcmRlcicsIGl0ZW06IGNvbHVtbiB9KTtcbiAgfVxuXG4gIG9uQ2xpY2tSb3coaXRlbTogYW55KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnY2xpY2stcm93JywgaXRlbTogaXRlbSB9KTtcbiAgfVxuXG4gIG9uUGFnZUNoYW5nZShldmVudDogUGFnZUV2ZW50KSB7XG4gICAgdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAncGFnZS1jaGFuZ2UnLCBpdGVtOiBldmVudCB9KTtcbiAgICB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgbG9hZEl0ZW1zKCkge1xuICAgIHRoaXMuZGF0YUl0ZW1zID0gdW5kZWZpbmVkO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICByZXR1cm4gdGhpcy5jb25maWcub2JzPy5waXBlKHRhcChyZXMgPT4gdGhpcy5kYXRhSXRlbXMgPSByZXMpKVxuICAgIC5waXBlKHRhcChyZXMgPT4gdGhpcy5vbkFjdGlvbi5lbWl0KHsga2V5OiAnbG9hZGVkLWl0ZW1zJywgaXRlbTogdW5kZWZpbmVkIH0pKSlcbiAgICAuc3Vic2NyaWJlKHJlcyA9PiB0aGlzLmlzTG9hZGluZyA9IGZhbHNlKTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5sb2FkQ29sdW1ucygpO1xuXG4gICAgdGhpcy5wcml2YXRlQWN0aW9ucy5zdWJzY3JpYmUoYWN0aW9uID0+IHtcbiAgICAgIHRoaXMub25BY3Rpb24uZW1pdChhY3Rpb24pO1xuICAgIH0pO1xuICB9XG5cbiAgbG9hZENvbHVtbnMoKSB7XG4gICAgdGhpcy5kaXNwbGF5Q29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnMuZmlsdGVyKGMgPT4gYy5pc19zaG93IHx8IGMuaXNfc2hvdyA9PSB1bmRlZmluZWQpLm1hcChjID0+IGMua2V5KTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLmRhdGFJdGVtcztcbiAgfVxuXG4gIHJlZnJlc2hEYXRhSXRlbXMobmV3RGF0YTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkKSB7XG4gICAgdGhpcy5kYXRhSXRlbXMgPSBuZXdEYXRhO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwidG90cy10YWJsZS1jb250YWluZXIge3tjb25maWcuY2xhc3Nlc319XCI+XG4gICAgPHRhYmxlIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhSXRlbXMgIT0gdW5kZWZpbmVkID8gZGF0YUl0ZW1zIS5kYXRhIDogW11cIj5cbiAgICAgICAgXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb25maWcuY29sdW1uc1wiIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uLmtleVwiPlxuICAgICAgICAgICAgPCEtLSBUSC0tPlxuICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBbbmdDbGFzc109XCJ7J3RvdHMtdHItaGFzLW9yZGVyJzogY29sdW1uLmhhc09yZGVyfVwiIChjbGljayk9XCJvbkNsaWNrT3JkZXIoY29sdW1uKVwiPlxuICAgICAgICAgICAgICAgIHt7IGNvbHVtbi50aXRsZSB9fVxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4uaGFzT3JkZXIgJiYgY29sdW1uLm9yZGVyID09IHVuZGVmaW5lZFwiPjxtYXQtaWNvbiBzdHlsZT1cImNvbG9yOiBncmF5XCI+dW5mb2xkX21vcmU8L21hdC1pY29uPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ub3JkZXIgPT0gJ2FzYydcIj48bWF0LWljb24+YXJyb3dfZHJvcF91cDwvbWF0LWljb24+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5vcmRlciA9PSAnZGVzYydcIj48bWF0LWljb24+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8IS0tIFREIC0tPlxuICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogY29sdW1uLmV4dHJhPy53aWR0aCA/IGNvbHVtbi5leHRyYS53aWR0aCA6ICdhdXRvJ31cIj48dG90cy1iYXNlLXByaW50LWNvbHVtbiBbY29sdW1uXT1cImNvbHVtblwiIFtpdGVtXT1cIml0ZW1cIiBbb25BY3Rpb25dPVwicHJpdmF0ZUFjdGlvbnNcIj48L3RvdHMtYmFzZS1wcmludC1jb2x1bW4+PC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5Q29sdW1uc1wiPjwvdHI+XG4gICAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5Q29sdW1ucztcIiAoY2xpY2spPVwib25DbGlja1Jvdyhyb3cpXCIgW2NsYXNzXT1cInJvdy5jbGFzc0N1c3RvbVwiIFtuZ0NsYXNzXT1cInsndG90cy1jZWxsLXNlbGVjdGVkJzogcm93LmlzU2VsZWN0ZWR9XCI+PC90cj5cbiAgICAgICAgXG4gICAgICAgIDwhLS0gUm93IHNob3duIHdoZW4gdGhlcmUgaXMgbm8gbWF0Y2hpbmcgZGF0YS4gLS0+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNMb2FkaW5nXCI+XG4gICAgICAgICAgICA8dHIgY2xhc3M9XCJ0b3RzLXRhYmxlLW5vdC1kYXRhXCIgKm1hdE5vRGF0YVJvdz48dGQgY2xhc3M9XCJtYXQtY2VsbFwiIFtjb2xTcGFuXT1cImNvbmZpZy5jb2x1bW5zLmxlbmd0aFwiPk5vIHJlc3VsdHMgZm91bmQsIHBsZWFzZSB0cnkgd2l0aCBvdGhlciBzZWFyY2ggdGVybXM8L3RkPjwvdHI+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvdGFibGU+XG5cbiAgICA8ZGl2ICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJ0b3RzLXRhYmxlLWxvYWRpbmdcIj48bWF0LXNwaW5uZXIgW2RpYW1ldGVyXT1cIjUwXCI+PC9tYXQtc3Bpbm5lcj48L2Rpdj5cblxuICAgIDwhLS0gUGFnaW5hdG9yIC0tPlxuICAgIDxtYXQtcGFnaW5hdG9yICpuZ0lmPVwiZGF0YUl0ZW1zICYmIGRhdGFJdGVtcy5kYXRhLmxlbmd0aCA+IDAgJiYgaGFzUGFnaW5hdGlvblwiIFtwYWdlSW5kZXhdPVwicGFnZUluZGV4LTFcIiBbbGVuZ3RoXT1cImRhdGFJdGVtcyEudG90YWxcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiBbcGFnZVNpemVPcHRpb25zXT1cIls1LCAxMCwgMjUsIDUwLCAxMDBdXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG48L2Rpdj4iXX0=
@@ -31,6 +31,7 @@ export class TotsTableApiComponent {
31
31
  this.configTable.id = this.config.id;
32
32
  this.configTable.columns = this.config.columns;
33
33
  this.configTable.obs = this.config.service.list(this.config.query);
34
+ this.configTable.classes = this.config.classes;
34
35
  }
35
36
  refreshQueryAndLoadItems() {
36
37
  this.configTable.obs = this.config.service.list(this.config.query);
@@ -63,4 +64,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
63
64
  }], onAction: [{
64
65
  type: Output
65
66
  }] } });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFRbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQVNXLFdBQU0sR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDbEMsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsaUNBQTRCLEdBQVksS0FBSyxDQUFDO1FBRTdDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUV6RCxnQkFBVyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7S0EwQ3JDO0lBeENDLFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUF1QjtRQUNuQyxJQUFHLE1BQU0sQ0FBQyxHQUFHLElBQUksYUFBYSxFQUFDO1lBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNsRCxJQUFHLElBQUksQ0FBQyw0QkFBNEIsRUFBQztnQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ2hEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7YUFDcEQ7WUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNwRTtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQXNDO1FBQzNDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUM3QixDQUFDOztrSEFuRFUscUJBQXFCO3NHQUFyQixxQkFBcUIsNlRDYmxDLCtNQUNBOzJGRFlhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTUYsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb3RzTGlzdFJlc3BvbnNlIH0gZnJvbSAnQHRvdHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb3RzQWN0aW9uVGFibGUgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZSc7XG5pbXBvcnQgeyBUb3RzVGFibGVBcGlDb25maWcgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLXRhYmxlLWFwaS1jb25maWcnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtdGFibGUtYXBpJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUtYXBpLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUb3RzVGFibGVBcGlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBcbiAgQFZpZXdDaGlsZCgndGFibGVDb21wJykgdGFibGVDb21wITogVG90c1RhYmxlQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIGNvbmZpZyA9IG5ldyBUb3RzVGFibGVBcGlDb25maWcoKTtcbiAgQElucHV0KCkgaGFzUGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGlzUGFnaW5hdGlvblN0YXJ0SW5kZXhJblplcm86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcblxuICBjb25maWdUYWJsZSA9IG5ldyBUb3RzVGFibGVDb25maWcoKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgfVxuXG4gIG9uVGFibGVBY3Rpb24oYWN0aW9uOiBUb3RzQWN0aW9uVGFibGUpIHtcbiAgICBpZihhY3Rpb24ua2V5ID09ICdwYWdlLWNoYW5nZScpe1xuICAgICAgdGhpcy5jb25maWcucXVlcnkucGVyX3BhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlU2l6ZTtcbiAgICAgIGlmKHRoaXMuaXNQYWdpbmF0aW9uU3RhcnRJbmRleEluWmVybyl7XG4gICAgICAgIHRoaXMuY29uZmlnLnF1ZXJ5LnBhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlSW5kZXg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbmZpZy5xdWVyeS5wYWdlID0gYWN0aW9uLml0ZW0ucGFnZUluZGV4ICsgMTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gdGhpcy5jb25maWcuc2VydmljZS5saXN0KHRoaXMuY29uZmlnLnF1ZXJ5KTtcbiAgICB9XG5cbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoYWN0aW9uKTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5jb25maWdUYWJsZS5pZCA9IHRoaXMuY29uZmlnLmlkO1xuICAgIHRoaXMuY29uZmlnVGFibGUuY29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnM7XG4gICAgdGhpcy5jb25maWdUYWJsZS5vYnMgPSB0aGlzLmNvbmZpZy5zZXJ2aWNlLmxpc3QodGhpcy5jb25maWcucXVlcnkpO1xuICB9XG5cbiAgcmVmcmVzaFF1ZXJ5QW5kTG9hZEl0ZW1zKCkge1xuICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gdGhpcy5jb25maWcuc2VydmljZS5saXN0KHRoaXMuY29uZmlnLnF1ZXJ5KTtcbiAgICByZXR1cm4gdGhpcy5sb2FkSXRlbXMoKTtcbiAgfVxuXG4gIGxvYWRJdGVtcygpIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZUNvbXAubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBnZXREYXRhSXRlbXMoKTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZUNvbXAuZ2V0RGF0YUl0ZW1zKCk7XG4gIH1cblxuICBzZXRPYnMob2JzOiBPYnNlcnZhYmxlPFRvdHNMaXN0UmVzcG9uc2U8YW55Pj4pIHtcbiAgICB0aGlzLmNvbmZpZ1RhYmxlLm9icyA9IG9icztcbiAgfVxufVxuIiwiPHRvdHMtdGFibGUgI3RhYmxlQ29tcCBbY29uZmlnXT1cImNvbmZpZ1RhYmxlXCIgW3BhZ2VJbmRleF09XCJjb25maWcucXVlcnkucGFnZVwiIFtwYWdlU2l6ZV09XCJjb25maWcucXVlcnkucGVyX3BhZ2VcIiAob25BY3Rpb24pPVwib25UYWJsZUFjdGlvbigkZXZlbnQpXCIgW2hhc1BhZ2luYXRpb25dPVwiaGFzUGFnaW5hdGlvblwiPjwvdG90cy10YWJsZT5cbiJdfQ==
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS1hcGkvdG90cy10YWJsZS1hcGkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJMUYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFRbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUxsQztRQVNXLFdBQU0sR0FBRyxJQUFJLGtCQUFrQixFQUFFLENBQUM7UUFDbEMsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFDOUIsaUNBQTRCLEdBQVksS0FBSyxDQUFDO1FBRTdDLGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBbUIsQ0FBQztRQUV6RCxnQkFBVyxHQUFHLElBQUksZUFBZSxFQUFFLENBQUM7S0EyQ3JDO0lBekNDLFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELGFBQWEsQ0FBQyxNQUF1QjtRQUNuQyxJQUFHLE1BQU0sQ0FBQyxHQUFHLElBQUksYUFBYSxFQUFDO1lBQzdCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQztZQUNsRCxJQUFHLElBQUksQ0FBQyw0QkFBNEIsRUFBQztnQkFDbkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDO2FBQ2hEO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxDQUFDLENBQUM7YUFDcEQ7WUFDRCxJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNwRTtRQUVELElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQzdCLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDckMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7UUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUM7SUFDakQsQ0FBQztJQUVELHdCQUF3QjtRQUN0QixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRSxPQUFPLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUMxQixDQUFDO0lBRUQsU0FBUztRQUNQLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEdBQXNDO1FBQzNDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxHQUFHLEdBQUcsQ0FBQztJQUM3QixDQUFDOztrSEFwRFUscUJBQXFCO3NHQUFyQixxQkFBcUIsNlRDYmxDLCtNQUNBOzJGRFlhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDRSxnQkFBZ0I7OEJBTUYsU0FBUztzQkFBaEMsU0FBUzt1QkFBQyxXQUFXO2dCQUViLE1BQU07c0JBQWQsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLDRCQUE0QjtzQkFBcEMsS0FBSztnQkFFSSxRQUFRO3NCQUFqQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb3RzTGlzdFJlc3BvbnNlIH0gZnJvbSAnQHRvdHMvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb3RzQWN0aW9uVGFibGUgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZSc7XG5pbXBvcnQgeyBUb3RzVGFibGVBcGlDb25maWcgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLXRhYmxlLWFwaS1jb25maWcnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcnO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29tcG9uZW50IH0gZnJvbSAnLi4vdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3RvdHMtdGFibGUtYXBpJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUtYXBpLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vdG90cy10YWJsZS1hcGkuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBUb3RzVGFibGVBcGlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBcbiAgQFZpZXdDaGlsZCgndGFibGVDb21wJykgdGFibGVDb21wITogVG90c1RhYmxlQ29tcG9uZW50O1xuXG4gIEBJbnB1dCgpIGNvbmZpZyA9IG5ldyBUb3RzVGFibGVBcGlDb25maWcoKTtcbiAgQElucHV0KCkgaGFzUGFnaW5hdGlvbjogYm9vbGVhbiA9IHRydWU7XG4gIEBJbnB1dCgpIGlzUGFnaW5hdGlvblN0YXJ0SW5kZXhJblplcm86IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcblxuICBjb25maWdUYWJsZSA9IG5ldyBUb3RzVGFibGVDb25maWcoKTtcblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmxvYWRDb25maWcoKTtcbiAgfVxuXG4gIG9uVGFibGVBY3Rpb24oYWN0aW9uOiBUb3RzQWN0aW9uVGFibGUpIHtcbiAgICBpZihhY3Rpb24ua2V5ID09ICdwYWdlLWNoYW5nZScpe1xuICAgICAgdGhpcy5jb25maWcucXVlcnkucGVyX3BhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlU2l6ZTtcbiAgICAgIGlmKHRoaXMuaXNQYWdpbmF0aW9uU3RhcnRJbmRleEluWmVybyl7XG4gICAgICAgIHRoaXMuY29uZmlnLnF1ZXJ5LnBhZ2UgPSBhY3Rpb24uaXRlbS5wYWdlSW5kZXg7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmNvbmZpZy5xdWVyeS5wYWdlID0gYWN0aW9uLml0ZW0ucGFnZUluZGV4ICsgMTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gdGhpcy5jb25maWcuc2VydmljZS5saXN0KHRoaXMuY29uZmlnLnF1ZXJ5KTtcbiAgICB9XG5cbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoYWN0aW9uKTtcbiAgfVxuXG4gIGxvYWRDb25maWcoKSB7XG4gICAgdGhpcy5jb25maWdUYWJsZS5pZCA9IHRoaXMuY29uZmlnLmlkO1xuICAgIHRoaXMuY29uZmlnVGFibGUuY29sdW1ucyA9IHRoaXMuY29uZmlnLmNvbHVtbnM7XG4gICAgdGhpcy5jb25maWdUYWJsZS5vYnMgPSB0aGlzLmNvbmZpZy5zZXJ2aWNlLmxpc3QodGhpcy5jb25maWcucXVlcnkpO1xuICAgIHRoaXMuY29uZmlnVGFibGUuY2xhc3NlcyA9IHRoaXMuY29uZmlnLmNsYXNzZXM7XG4gIH1cblxuICByZWZyZXNoUXVlcnlBbmRMb2FkSXRlbXMoKSB7XG4gICAgdGhpcy5jb25maWdUYWJsZS5vYnMgPSB0aGlzLmNvbmZpZy5zZXJ2aWNlLmxpc3QodGhpcy5jb25maWcucXVlcnkpO1xuICAgIHJldHVybiB0aGlzLmxvYWRJdGVtcygpO1xuICB9XG5cbiAgbG9hZEl0ZW1zKCkge1xuICAgIHJldHVybiB0aGlzLnRhYmxlQ29tcC5sb2FkSXRlbXMoKTtcbiAgfVxuXG4gIGdldERhdGFJdGVtcygpOiBUb3RzTGlzdFJlc3BvbnNlPGFueT4gfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLnRhYmxlQ29tcC5nZXREYXRhSXRlbXMoKTtcbiAgfVxuXG4gIHNldE9icyhvYnM6IE9ic2VydmFibGU8VG90c0xpc3RSZXNwb25zZTxhbnk+Pikge1xuICAgIHRoaXMuY29uZmlnVGFibGUub2JzID0gb2JzO1xuICB9XG59XG4iLCI8dG90cy10YWJsZSAjdGFibGVDb21wIFtjb25maWddPVwiY29uZmlnVGFibGVcIiBbcGFnZUluZGV4XT1cImNvbmZpZy5xdWVyeS5wYWdlXCIgW3BhZ2VTaXplXT1cImNvbmZpZy5xdWVyeS5wZXJfcGFnZVwiIChvbkFjdGlvbik9XCJvblRhYmxlQWN0aW9uKCRldmVudClcIiBbaGFzUGFnaW5hdGlvbl09XCJoYXNQYWdpbmF0aW9uXCI+PC90b3RzLXRhYmxlPlxuIl19
@@ -4,6 +4,7 @@ export class TotsTableApiConfig {
4
4
  this.id = '';
5
5
  this.columns = [];
6
6
  this.query = new TotsQuery();
7
+ this.classes = '';
7
8
  }
8
9
  }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGktY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2VudGl0aWVzL3RvdHMtdGFibGUtYXBpLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUc1RCxNQUFNLE9BQU8sa0JBQWtCO0lBQS9CO1FBQ0ksT0FBRSxHQUFZLEVBQUUsQ0FBQztRQUNqQixZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUVoQyxVQUFLLEdBQWMsSUFBSSxTQUFTLEVBQUUsQ0FBQztJQUN2QyxDQUFDO0NBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUb3RzQmFzZUh0dHBTZXJ2aWNlLCBUb3RzUXVlcnkgfSBmcm9tIFwiQHRvdHMvY29yZVwiO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gXCIuL3RvdHMtY29sdW1uXCI7XG5cbmV4cG9ydCBjbGFzcyBUb3RzVGFibGVBcGlDb25maWcge1xuICAgIGlkPzogc3RyaW5nID0gJyc7XG4gICAgY29sdW1uczogQXJyYXk8VG90c0NvbHVtbj4gPSBbXTtcbiAgICBzZXJ2aWNlITogVG90c0Jhc2VIdHRwU2VydmljZTxhbnk+O1xuICAgIHF1ZXJ5OiBUb3RzUXVlcnkgPSBuZXcgVG90c1F1ZXJ5KCk7XG59Il19
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1hcGktY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2VudGl0aWVzL3RvdHMtdGFibGUtYXBpLWNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQXVCLFNBQVMsRUFBRSxNQUFNLFlBQVksQ0FBQztBQUc1RCxNQUFNLE9BQU8sa0JBQWtCO0lBQS9CO1FBQ0ksT0FBRSxHQUFZLEVBQUUsQ0FBQztRQUNqQixZQUFPLEdBQXNCLEVBQUUsQ0FBQztRQUVoQyxVQUFLLEdBQWMsSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUNuQyxZQUFPLEdBQVksRUFBRSxDQUFDO0lBQzFCLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvdHNCYXNlSHR0cFNlcnZpY2UsIFRvdHNRdWVyeSB9IGZyb20gXCJAdG90cy9jb3JlXCI7XG5pbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSBcIi4vdG90cy1jb2x1bW5cIjtcblxuZXhwb3J0IGNsYXNzIFRvdHNUYWJsZUFwaUNvbmZpZyB7XG4gICAgaWQ/OiBzdHJpbmcgPSAnJztcbiAgICBjb2x1bW5zOiBBcnJheTxUb3RzQ29sdW1uPiA9IFtdO1xuICAgIHNlcnZpY2UhOiBUb3RzQmFzZUh0dHBTZXJ2aWNlPGFueT47XG4gICAgcXVlcnk6IFRvdHNRdWVyeSA9IG5ldyBUb3RzUXVlcnkoKTtcbiAgICBjbGFzc2VzPzogc3RyaW5nID0gJyc7XG59Il19
@@ -2,6 +2,7 @@ export class TotsTableConfig {
2
2
  constructor() {
3
3
  this.id = '';
4
4
  this.columns = [];
5
+ this.classes = '';
5
6
  }
6
7
  }
7
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDSSxPQUFFLEdBQVksRUFBRSxDQUFDO1FBQ2pCLFlBQU8sR0FBc0IsRUFBRSxDQUFDO0lBRXBDLENBQUM7Q0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFRvdHNMaXN0UmVzcG9uc2UsIFRvdHNRdWVyeSB9IGZyb20gXCJAdG90cy9jb3JlXCI7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IFRvdHNDb2x1bW4gfSBmcm9tIFwiLi90b3RzLWNvbHVtblwiO1xuXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlQ29uZmlnIHtcbiAgICBpZD86IHN0cmluZyA9ICcnO1xuICAgIGNvbHVtbnM6IEFycmF5PFRvdHNDb2x1bW4+ID0gW107XG4gICAgb2JzPzogT2JzZXJ2YWJsZTxUb3RzTGlzdFJlc3BvbnNlPGFueT4+O1xufSJdfQ==
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS1jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLGVBQWU7SUFBNUI7UUFDSSxPQUFFLEdBQVksRUFBRSxDQUFDO1FBQ2pCLFlBQU8sR0FBc0IsRUFBRSxDQUFDO1FBRWhDLFlBQU8sR0FBWSxFQUFFLENBQUM7SUFDMUIsQ0FBQztDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVG90c0xpc3RSZXNwb25zZSwgVG90c1F1ZXJ5IH0gZnJvbSBcIkB0b3RzL2NvcmVcIjtcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgVG90c0NvbHVtbiB9IGZyb20gXCIuL3RvdHMtY29sdW1uXCI7XG5cbmV4cG9ydCBjbGFzcyBUb3RzVGFibGVDb25maWcge1xuICAgIGlkPzogc3RyaW5nID0gJyc7XG4gICAgY29sdW1uczogQXJyYXk8VG90c0NvbHVtbj4gPSBbXTtcbiAgICBvYnM/OiBPYnNlcnZhYmxlPFRvdHNMaXN0UmVzcG9uc2U8YW55Pj47XG4gICAgY2xhc3Nlcz86IHN0cmluZyA9ICcnO1xufSJdfQ==
@@ -32,6 +32,7 @@ class TotsTableConfig {
32
32
  constructor() {
33
33
  this.id = '';
34
34
  this.columns = [];
35
+ this.classes = '';
35
36
  }
36
37
  }
37
38
 
@@ -46,6 +47,7 @@ class TotsTableApiConfig {
46
47
  this.id = '';
47
48
  this.columns = [];
48
49
  this.query = new TotsQuery();
50
+ this.classes = '';
49
51
  }
50
52
  }
51
53
 
@@ -148,12 +150,18 @@ class IconButtonColumnComponent extends TotsBaseColumnComponent {
148
150
  getIconName() {
149
151
  return this.column.extra.icon;
150
152
  }
153
+ getButtonColor() {
154
+ return this.column.extra.matColor;
155
+ }
156
+ getClasses() {
157
+ return this.column.extra.classes;
158
+ }
151
159
  }
152
160
  IconButtonColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
153
- IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
161
+ IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
154
162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, decorators: [{
155
163
  type: Component,
156
- args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
164
+ args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
157
165
  }] });
158
166
 
159
167
  class CheckboxColumnComponent extends TotsBaseColumnComponent {
@@ -405,10 +413,10 @@ class TotsTableComponent {
405
413
  }
406
414
  }
407
415
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
408
- 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
416
+ 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
409
417
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
410
418
  type: Component,
411
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
419
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
412
420
  }], propDecorators: { config: [{
413
421
  type: Input
414
422
  }], pageIndex: [{
@@ -449,6 +457,7 @@ class TotsTableApiComponent {
449
457
  this.configTable.id = this.config.id;
450
458
  this.configTable.columns = this.config.columns;
451
459
  this.configTable.obs = this.config.service.list(this.config.query);
460
+ this.configTable.classes = this.config.classes;
452
461
  }
453
462
  refreshQueryAndLoadItems() {
454
463
  this.configTable.obs = this.config.service.list(this.config.query);
@@ -1 +1 @@
1
- {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.ts","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.html","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.ts","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.html","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.ts","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.html","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.ts","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.html","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.ts","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.html","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.ts","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.html","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n\n hasOrder?: boolean = false;\n order?: 'asc'|'desc';\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\" class=\"{{button.class}}\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-boolean-column',\n templateUrl: './boolean-column.component.html',\n styleUrls: ['./boolean-column.component.css']\n})\nexport class BooleanColumnComponent extends TotsBaseColumnComponent {\n\n}","<ng-container *ngIf=\"getItemValue() == true||getItemValue() == 1; else textNo\">YES</ng-container>\n<ng-template #textNo>NO</ng-template>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-two-string-column',\n templateUrl: './two-string-column.component.html',\n styleUrls: ['./two-string-column.component.css']\n})\nexport class TwoStringColumnComponent extends TotsBaseColumnComponent {\n\n getSubtitleValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n}\n","<div class=\"first-line\"><strong>{{getItemValue()}}</strong></div>\n<div class=\"second-line\">{{getSubtitleValue()}}</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-icon-button-column',\n templateUrl: './icon-button-column.component.html',\n styleUrls: ['./icon-button-column.component.css']\n})\nexport class IconButtonColumnComponent extends TotsBaseColumnComponent {\n\n clickButton($event: UIEvent) {\n this.onAction.next({ key: this.column.extra.action, item: this.item });\n $event.stopPropagation();\n return false;\n }\n\n getIconName(): any {\n return this.column.extra.icon;\n }\n}\n","<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'tots-checkbox-column',\n templateUrl: './checkbox-column.component.html',\n styleUrls: ['./checkbox-column.component.css']\n})\nexport class CheckboxColumnComponent extends TotsBaseColumnComponent {\n\n onChange(event: MatCheckboxChange) {\n let key = 'select-item';\n if(!event.checked){\n key = 'unselect-item';\n }\n this.onAction.next({ key: key, item: this.item });\n }\n}\n","<div class=\"tots-checkbox-column\">\n <mat-checkbox (change)=\"onChange($event)\" (click)=\"$event.stopPropagation();\"></mat-checkbox>\n</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-option-column',\n templateUrl: './option-column.component.html',\n styleUrls: ['./option-column.component.css']\n})\nexport class OptionColumnComponent extends TotsBaseColumnComponent {\n\n override getItemValue(): any {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value){\n return item[this.column.extra.field_print_key];\n }\n }\n return '';\n }\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-user-column',\n templateUrl: './user-column.component.html',\n styleUrls: ['./user-column.component.scss']\n})\nexport class UserColumnComponent extends TotsBaseColumnComponent {\n\n getFirstname() {\n if(this.column.extra?.field_firstname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_firstname_key);\n }\n\n return '';\n }\n\n getLastname() {\n if(this.column.extra?.field_lastname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_lastname_key);\n }\n\n return '';\n }\n\n getFullname() {\n return this.getFirstname() + ' ' + this.getLastname();\n }\n\n getPhoto() {\n if(this.column.extra?.field_photo_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_photo_key);\n }\n\n return '';\n }\n\n getSubtitle() {\n if(this.column.extra?.field_subtitle_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n\n return '';\n }\n\n isOnline() {\n if(this.column.extra?.field_online_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_online_key);\n }\n\n return false;\n }\n}\n","<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>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-currency-column',\n templateUrl: './currency-column.component.html',\n styleUrls: ['./currency-column.component.css']\n})\nexport class CurrencyColumnComponent extends TotsBaseColumnComponent {\n\n}\n","<span [ngClass]=\"{'tots-currency-column-positive': getItemValue() > 0, 'tots-currency-column-negative': getItemValue() < 0}\">{{getItemValue()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-column',\n templateUrl: './status-column.component.html',\n styleUrls: ['./status-column.component.css']\n})\nexport class StatusColumnComponent extends OptionColumnComponent {\n\n getBackgroundColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['background_color'] != undefined){\n return item['background_color'];\n }\n }\n return '';\n }\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-column\" [ngStyle]=\"{'background-color': getBackgroundColor(), 'color': getFontColor()}\">{{getItemValue()}}</span>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-column',\n templateUrl: './balance-currency-column.component.html',\n styleUrls: ['./balance-currency-column.component.css']\n})\nexport class BalanceCurrencyColumnComponent extends TotsBaseColumnComponent {\n\n getBalance() {\n return this.getDebit() - this.getCredit();\n }\n\n getDebit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_debit);\n }\n\n getCredit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_credit);\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">{{getBalance()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-icon-column',\n templateUrl: './status-icon-column.component.html',\n styleUrls: ['./status-icon-column.component.css']\n})\nexport class StatusIconColumnComponent extends OptionColumnComponent {\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-icon-column\" [ngStyle]=\"{'color': getFontColor()}\"><mat-icon>{{getItemValue()}}</mat-icon></span>","import { Component } from '@angular/core';\nimport { BalanceCurrencyColumnComponent } from '../balance-currency-column/balance-currency-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-icon-column',\n templateUrl: './balance-currency-icon-column.component.html',\n styleUrls: ['./balance-currency-icon-column.component.css']\n})\nexport class BalanceCurrencyIconColumnComponent extends BalanceCurrencyColumnComponent {\n\n getIconPositive(): any {\n return this.column.extra.icon_positive\n }\n\n getIconNegative(): any {\n return this.column.extra.icon_negative;\n }\n\n getIconNeutral(): any {\n return this.column.extra.icon_neutral;\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">\n <mat-icon *ngIf=\"getBalance() > 0\">{{getIconPositive()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() < 0\">{{getIconNegative()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() == 0\">{{getIconNeutral()}}</mat-icon>\n</span>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickOrder(column: TotsColumn) {\n if(!column.hasOrder){ return; }\n let orderColumn = column.order;\n this.config.columns.forEach(c => c.order = undefined);\n column.order = orderColumn == 'asc' ? 'desc' : 'asc';\n this.onAction.emit({ key: 'click-order', item: column });\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.dataItems = undefined;\n this.isLoading = true;\n return this.config.obs?.pipe(tap(res => this.dataItems = res))\n .pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))\n .subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.dataItems;\n }\n\n refreshDataItems(newData: TotsListResponse<any> | undefined) {\n this.dataItems = newData;\n }\n}\n","<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { TotsListResponse } from '@tots/core';\nimport { Observable } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\nimport { TotsTableComponent } from '../tots-table/tots-table.component';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @ViewChild('tableComp') tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n @Input() isPaginationStartIndexInZero: boolean = false;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n if(this.isPaginationStartIndexInZero){\n this.config.query.page = action.item.pageIndex;\n } else {\n this.config.query.page = action.item.pageIndex + 1;\n }\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n refreshQueryAndLoadItems() {\n this.configTable.obs = this.config.service.list(this.config.query);\n return this.loadItems();\n }\n\n loadItems() {\n return this.tableComp.loadItems();\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.tableComp.getDataItems();\n }\n\n setObs(obs: Observable<TotsListResponse<any>>) {\n this.configTable.obs = obs;\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\nimport { BooleanColumnComponent } from './columns/boolean-column/boolean-column.component';\nimport { TwoStringColumnComponent } from './columns/two-string-column/two-string-column.component';\nimport { IconButtonColumnComponent } from './columns/icon-button-column/icon-button-column.component';\nimport { CheckboxColumnComponent } from './columns/checkbox-column/checkbox-column.component';\nimport { OptionColumnComponent } from './columns/option-column/option-column.component';\nimport { UserColumnComponent } from './columns/user-column/user-column.component';\nimport { CurrencyColumnComponent } from './columns/currency-column/currency-column.component';\nimport { StatusColumnComponent } from './columns/status-column/status-column.component';\nimport { BalanceCurrencyColumnComponent } from './columns/balance-currency-column/balance-currency-column.component';\nimport { StatusIconColumnComponent } from './columns/status-icon-column/status-icon-column.component';\nimport { BalanceCurrencyIconColumnComponent } from './columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent,\n BooleanColumnComponent,\n TwoStringColumnComponent,\n IconButtonColumnComponent,\n CheckboxColumnComponent,\n OptionColumnComponent,\n UserColumnComponent,\n CurrencyColumnComponent,\n StatusColumnComponent,\n BalanceCurrencyColumnComponent,\n StatusIconColumnComponent,\n BalanceCurrencyIconColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule,\n MatProgressSpinnerModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\nexport * from './lib/columns/boolean-column/boolean-column.component';\nexport * from './lib/columns/two-string-column/two-string-column.component';\nexport * from './lib/columns/icon-button-column/icon-button-column.component';\nexport * from './lib/columns/checkbox-column/checkbox-column.component';\nexport * from './lib/columns/option-column/option-column.component';\nexport * from './lib/columns/user-column/user-column.component';\nexport * from './lib/columns/currency-column/currency-column.component';\nexport * from './lib/columns/status-column/status-column.component';\nexport * from './lib/columns/balance-currency-column/balance-currency-column.component';\nexport * from './lib/columns/status-icon-column/status-icon-column.component';\nexport * from './lib/columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i4","i6.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
1
+ {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.ts","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.html","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.ts","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.html","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.ts","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.html","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.ts","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.html","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.ts","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.html","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.ts","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.html","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n\n hasOrder?: boolean = false;\n order?: 'asc'|'desc';\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n classes?: string = '';\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n classes?: string = '';\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\" class=\"{{button.class}}\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-boolean-column',\n templateUrl: './boolean-column.component.html',\n styleUrls: ['./boolean-column.component.css']\n})\nexport class BooleanColumnComponent extends TotsBaseColumnComponent {\n\n}","<ng-container *ngIf=\"getItemValue() == true||getItemValue() == 1; else textNo\">YES</ng-container>\n<ng-template #textNo>NO</ng-template>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-two-string-column',\n templateUrl: './two-string-column.component.html',\n styleUrls: ['./two-string-column.component.css']\n})\nexport class TwoStringColumnComponent extends TotsBaseColumnComponent {\n\n getSubtitleValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n}\n","<div class=\"first-line\"><strong>{{getItemValue()}}</strong></div>\n<div class=\"second-line\">{{getSubtitleValue()}}</div>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-icon-button-column',\n templateUrl: './icon-button-column.component.html',\n styleUrls: ['./icon-button-column.component.css']\n})\nexport class IconButtonColumnComponent extends TotsBaseColumnComponent {\n\n clickButton($event: UIEvent) {\n this.onAction.next({ key: this.column.extra.action, item: this.item });\n $event.stopPropagation();\n return false;\n }\n\n getIconName() : string {\n return this.column.extra.icon;\n }\n\n getButtonColor() : string {\n return this.column.extra.matColor;\n }\n\n getClasses() : string {\n return this.column.extra.classes;\n }\n}\n","<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'tots-checkbox-column',\n templateUrl: './checkbox-column.component.html',\n styleUrls: ['./checkbox-column.component.css']\n})\nexport class CheckboxColumnComponent extends TotsBaseColumnComponent {\n\n onChange(event: MatCheckboxChange) {\n let key = 'select-item';\n if(!event.checked){\n key = 'unselect-item';\n }\n this.onAction.next({ key: key, item: this.item });\n }\n}\n","<div class=\"tots-checkbox-column\">\n <mat-checkbox (change)=\"onChange($event)\" (click)=\"$event.stopPropagation();\"></mat-checkbox>\n</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-option-column',\n templateUrl: './option-column.component.html',\n styleUrls: ['./option-column.component.css']\n})\nexport class OptionColumnComponent extends TotsBaseColumnComponent {\n\n override getItemValue(): any {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value){\n return item[this.column.extra.field_print_key];\n }\n }\n return '';\n }\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-user-column',\n templateUrl: './user-column.component.html',\n styleUrls: ['./user-column.component.scss']\n})\nexport class UserColumnComponent extends TotsBaseColumnComponent {\n\n getFirstname() {\n if(this.column.extra?.field_firstname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_firstname_key);\n }\n\n return '';\n }\n\n getLastname() {\n if(this.column.extra?.field_lastname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_lastname_key);\n }\n\n return '';\n }\n\n getFullname() {\n return this.getFirstname() + ' ' + this.getLastname();\n }\n\n getPhoto() {\n if(this.column.extra?.field_photo_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_photo_key);\n }\n\n return '';\n }\n\n getSubtitle() {\n if(this.column.extra?.field_subtitle_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n\n return '';\n }\n\n isOnline() {\n if(this.column.extra?.field_online_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_online_key);\n }\n\n return false;\n }\n}\n","<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>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-currency-column',\n templateUrl: './currency-column.component.html',\n styleUrls: ['./currency-column.component.css']\n})\nexport class CurrencyColumnComponent extends TotsBaseColumnComponent {\n\n}\n","<span [ngClass]=\"{'tots-currency-column-positive': getItemValue() > 0, 'tots-currency-column-negative': getItemValue() < 0}\">{{getItemValue()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-column',\n templateUrl: './status-column.component.html',\n styleUrls: ['./status-column.component.css']\n})\nexport class StatusColumnComponent extends OptionColumnComponent {\n\n getBackgroundColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['background_color'] != undefined){\n return item['background_color'];\n }\n }\n return '';\n }\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-column\" [ngStyle]=\"{'background-color': getBackgroundColor(), 'color': getFontColor()}\">{{getItemValue()}}</span>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-column',\n templateUrl: './balance-currency-column.component.html',\n styleUrls: ['./balance-currency-column.component.css']\n})\nexport class BalanceCurrencyColumnComponent extends TotsBaseColumnComponent {\n\n getBalance() {\n return this.getDebit() - this.getCredit();\n }\n\n getDebit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_debit);\n }\n\n getCredit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_credit);\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">{{getBalance()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-icon-column',\n templateUrl: './status-icon-column.component.html',\n styleUrls: ['./status-icon-column.component.css']\n})\nexport class StatusIconColumnComponent extends OptionColumnComponent {\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-icon-column\" [ngStyle]=\"{'color': getFontColor()}\"><mat-icon>{{getItemValue()}}</mat-icon></span>","import { Component } from '@angular/core';\nimport { BalanceCurrencyColumnComponent } from '../balance-currency-column/balance-currency-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-icon-column',\n templateUrl: './balance-currency-icon-column.component.html',\n styleUrls: ['./balance-currency-icon-column.component.css']\n})\nexport class BalanceCurrencyIconColumnComponent extends BalanceCurrencyColumnComponent {\n\n getIconPositive(): any {\n return this.column.extra.icon_positive\n }\n\n getIconNegative(): any {\n return this.column.extra.icon_negative;\n }\n\n getIconNeutral(): any {\n return this.column.extra.icon_neutral;\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">\n <mat-icon *ngIf=\"getBalance() > 0\">{{getIconPositive()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() < 0\">{{getIconNegative()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() == 0\">{{getIconNeutral()}}</mat-icon>\n</span>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickOrder(column: TotsColumn) {\n if(!column.hasOrder){ return; }\n let orderColumn = column.order;\n this.config.columns.forEach(c => c.order = undefined);\n column.order = orderColumn == 'asc' ? 'desc' : 'asc';\n this.onAction.emit({ key: 'click-order', item: column });\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.dataItems = undefined;\n this.isLoading = true;\n return this.config.obs?.pipe(tap(res => this.dataItems = res))\n .pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))\n .subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.dataItems;\n }\n\n refreshDataItems(newData: TotsListResponse<any> | undefined) {\n this.dataItems = newData;\n }\n}\n","<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { TotsListResponse } from '@tots/core';\nimport { Observable } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\nimport { TotsTableComponent } from '../tots-table/tots-table.component';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @ViewChild('tableComp') tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n @Input() isPaginationStartIndexInZero: boolean = false;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n if(this.isPaginationStartIndexInZero){\n this.config.query.page = action.item.pageIndex;\n } else {\n this.config.query.page = action.item.pageIndex + 1;\n }\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n this.configTable.classes = this.config.classes;\n }\n\n refreshQueryAndLoadItems() {\n this.configTable.obs = this.config.service.list(this.config.query);\n return this.loadItems();\n }\n\n loadItems() {\n return this.tableComp.loadItems();\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.tableComp.getDataItems();\n }\n\n setObs(obs: Observable<TotsListResponse<any>>) {\n this.configTable.obs = obs;\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\nimport { BooleanColumnComponent } from './columns/boolean-column/boolean-column.component';\nimport { TwoStringColumnComponent } from './columns/two-string-column/two-string-column.component';\nimport { IconButtonColumnComponent } from './columns/icon-button-column/icon-button-column.component';\nimport { CheckboxColumnComponent } from './columns/checkbox-column/checkbox-column.component';\nimport { OptionColumnComponent } from './columns/option-column/option-column.component';\nimport { UserColumnComponent } from './columns/user-column/user-column.component';\nimport { CurrencyColumnComponent } from './columns/currency-column/currency-column.component';\nimport { StatusColumnComponent } from './columns/status-column/status-column.component';\nimport { BalanceCurrencyColumnComponent } from './columns/balance-currency-column/balance-currency-column.component';\nimport { StatusIconColumnComponent } from './columns/status-icon-column/status-icon-column.component';\nimport { BalanceCurrencyIconColumnComponent } from './columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent,\n BooleanColumnComponent,\n TwoStringColumnComponent,\n IconButtonColumnComponent,\n CheckboxColumnComponent,\n OptionColumnComponent,\n UserColumnComponent,\n CurrencyColumnComponent,\n StatusColumnComponent,\n BalanceCurrencyColumnComponent,\n StatusIconColumnComponent,\n BalanceCurrencyIconColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule,\n MatProgressSpinnerModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\nexport * from './lib/columns/boolean-column/boolean-column.component';\nexport * from './lib/columns/two-string-column/two-string-column.component';\nexport * from './lib/columns/icon-button-column/icon-button-column.component';\nexport * from './lib/columns/checkbox-column/checkbox-column.component';\nexport * from './lib/columns/option-column/option-column.component';\nexport * from './lib/columns/user-column/user-column.component';\nexport * from './lib/columns/currency-column/currency-column.component';\nexport * from './lib/columns/status-column/status-column.component';\nexport * from './lib/columns/balance-currency-column/balance-currency-column.component';\nexport * from './lib/columns/status-icon-column/status-icon-column.component';\nexport * from './lib/columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i4","i6.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
@@ -32,6 +32,7 @@ class TotsTableConfig {
32
32
  constructor() {
33
33
  this.id = '';
34
34
  this.columns = [];
35
+ this.classes = '';
35
36
  }
36
37
  }
37
38
 
@@ -46,6 +47,7 @@ class TotsTableApiConfig {
46
47
  this.id = '';
47
48
  this.columns = [];
48
49
  this.query = new TotsQuery();
50
+ this.classes = '';
49
51
  }
50
52
  }
51
53
 
@@ -148,12 +150,18 @@ class IconButtonColumnComponent extends TotsBaseColumnComponent {
148
150
  getIconName() {
149
151
  return this.column.extra.icon;
150
152
  }
153
+ getButtonColor() {
154
+ return this.column.extra.matColor;
155
+ }
156
+ getClasses() {
157
+ return this.column.extra.classes;
158
+ }
151
159
  }
152
160
  IconButtonColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
153
- IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
161
+ IconButtonColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.3", type: IconButtonColumnComponent, selector: "tots-icon-button-column", usesInheritance: true, ngImport: i0, template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>", styles: [""], dependencies: [{ kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] });
154
162
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: IconButtonColumnComponent, decorators: [{
155
163
  type: Component,
156
- args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
164
+ args: [{ selector: 'tots-icon-button-column', template: "<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>" }]
157
165
  }] });
158
166
 
159
167
  class CheckboxColumnComponent extends TotsBaseColumnComponent {
@@ -401,10 +409,10 @@ class TotsTableComponent {
401
409
  }
402
410
  }
403
411
  TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
404
- 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
412
+ 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" }, outputs: { onAction: "onAction" }, ngImport: i0, template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.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.MatProgressSpinner, selector: "mat-progress-spinner, mat-spinner", inputs: ["color", "mode", "value", "diameter", "strokeWidth"], exportAs: ["matProgressSpinner"] }, { kind: "component", type: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
405
413
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
406
414
  type: Component,
407
- args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
415
+ args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>", styles: [".tots-tr-has-order{cursor:pointer}.tots-table-loading{display:flex;justify-content:center;text-align:center}.tots-table-not-data{font-size:large;text-align:center}.tots-table-not-data td{padding:24px}\n"] }]
408
416
  }], propDecorators: { config: [{
409
417
  type: Input
410
418
  }], pageIndex: [{
@@ -445,6 +453,7 @@ class TotsTableApiComponent {
445
453
  this.configTable.id = this.config.id;
446
454
  this.configTable.columns = this.config.columns;
447
455
  this.configTable.obs = this.config.service.list(this.config.query);
456
+ this.configTable.classes = this.config.classes;
448
457
  }
449
458
  refreshQueryAndLoadItems() {
450
459
  this.configTable.obs = this.config.service.list(this.config.query);
@@ -1 +1 @@
1
- {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.ts","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.html","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.ts","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.html","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.ts","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.html","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.ts","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.html","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.ts","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.html","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.ts","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.html","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n\n hasOrder?: boolean = false;\n order?: 'asc'|'desc';\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\" class=\"{{button.class}}\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-boolean-column',\n templateUrl: './boolean-column.component.html',\n styleUrls: ['./boolean-column.component.css']\n})\nexport class BooleanColumnComponent extends TotsBaseColumnComponent {\n\n}","<ng-container *ngIf=\"getItemValue() == true||getItemValue() == 1; else textNo\">YES</ng-container>\n<ng-template #textNo>NO</ng-template>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-two-string-column',\n templateUrl: './two-string-column.component.html',\n styleUrls: ['./two-string-column.component.css']\n})\nexport class TwoStringColumnComponent extends TotsBaseColumnComponent {\n\n getSubtitleValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n}\n","<div class=\"first-line\"><strong>{{getItemValue()}}</strong></div>\n<div class=\"second-line\">{{getSubtitleValue()}}</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-icon-button-column',\n templateUrl: './icon-button-column.component.html',\n styleUrls: ['./icon-button-column.component.css']\n})\nexport class IconButtonColumnComponent extends TotsBaseColumnComponent {\n\n clickButton($event: UIEvent) {\n this.onAction.next({ key: this.column.extra.action, item: this.item });\n $event.stopPropagation();\n return false;\n }\n\n getIconName(): any {\n return this.column.extra.icon;\n }\n}\n","<button mat-icon-button [color]=\"'primary'\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'tots-checkbox-column',\n templateUrl: './checkbox-column.component.html',\n styleUrls: ['./checkbox-column.component.css']\n})\nexport class CheckboxColumnComponent extends TotsBaseColumnComponent {\n\n onChange(event: MatCheckboxChange) {\n let key = 'select-item';\n if(!event.checked){\n key = 'unselect-item';\n }\n this.onAction.next({ key: key, item: this.item });\n }\n}\n","<div class=\"tots-checkbox-column\">\n <mat-checkbox (change)=\"onChange($event)\" (click)=\"$event.stopPropagation();\"></mat-checkbox>\n</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-option-column',\n templateUrl: './option-column.component.html',\n styleUrls: ['./option-column.component.css']\n})\nexport class OptionColumnComponent extends TotsBaseColumnComponent {\n\n override getItemValue(): any {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value){\n return item[this.column.extra.field_print_key];\n }\n }\n return '';\n }\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-user-column',\n templateUrl: './user-column.component.html',\n styleUrls: ['./user-column.component.scss']\n})\nexport class UserColumnComponent extends TotsBaseColumnComponent {\n\n getFirstname() {\n if(this.column.extra?.field_firstname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_firstname_key);\n }\n\n return '';\n }\n\n getLastname() {\n if(this.column.extra?.field_lastname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_lastname_key);\n }\n\n return '';\n }\n\n getFullname() {\n return this.getFirstname() + ' ' + this.getLastname();\n }\n\n getPhoto() {\n if(this.column.extra?.field_photo_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_photo_key);\n }\n\n return '';\n }\n\n getSubtitle() {\n if(this.column.extra?.field_subtitle_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n\n return '';\n }\n\n isOnline() {\n if(this.column.extra?.field_online_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_online_key);\n }\n\n return false;\n }\n}\n","<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>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-currency-column',\n templateUrl: './currency-column.component.html',\n styleUrls: ['./currency-column.component.css']\n})\nexport class CurrencyColumnComponent extends TotsBaseColumnComponent {\n\n}\n","<span [ngClass]=\"{'tots-currency-column-positive': getItemValue() > 0, 'tots-currency-column-negative': getItemValue() < 0}\">{{getItemValue()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-column',\n templateUrl: './status-column.component.html',\n styleUrls: ['./status-column.component.css']\n})\nexport class StatusColumnComponent extends OptionColumnComponent {\n\n getBackgroundColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['background_color'] != undefined){\n return item['background_color'];\n }\n }\n return '';\n }\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-column\" [ngStyle]=\"{'background-color': getBackgroundColor(), 'color': getFontColor()}\">{{getItemValue()}}</span>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-column',\n templateUrl: './balance-currency-column.component.html',\n styleUrls: ['./balance-currency-column.component.css']\n})\nexport class BalanceCurrencyColumnComponent extends TotsBaseColumnComponent {\n\n getBalance() {\n return this.getDebit() - this.getCredit();\n }\n\n getDebit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_debit);\n }\n\n getCredit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_credit);\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">{{getBalance()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-icon-column',\n templateUrl: './status-icon-column.component.html',\n styleUrls: ['./status-icon-column.component.css']\n})\nexport class StatusIconColumnComponent extends OptionColumnComponent {\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-icon-column\" [ngStyle]=\"{'color': getFontColor()}\"><mat-icon>{{getItemValue()}}</mat-icon></span>","import { Component } from '@angular/core';\nimport { BalanceCurrencyColumnComponent } from '../balance-currency-column/balance-currency-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-icon-column',\n templateUrl: './balance-currency-icon-column.component.html',\n styleUrls: ['./balance-currency-icon-column.component.css']\n})\nexport class BalanceCurrencyIconColumnComponent extends BalanceCurrencyColumnComponent {\n\n getIconPositive(): any {\n return this.column.extra.icon_positive\n }\n\n getIconNegative(): any {\n return this.column.extra.icon_negative;\n }\n\n getIconNeutral(): any {\n return this.column.extra.icon_neutral;\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">\n <mat-icon *ngIf=\"getBalance() > 0\">{{getIconPositive()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() < 0\">{{getIconNegative()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() == 0\">{{getIconNeutral()}}</mat-icon>\n</span>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickOrder(column: TotsColumn) {\n if(!column.hasOrder){ return; }\n let orderColumn = column.order;\n this.config.columns.forEach(c => c.order = undefined);\n column.order = orderColumn == 'asc' ? 'desc' : 'asc';\n this.onAction.emit({ key: 'click-order', item: column });\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.dataItems = undefined;\n this.isLoading = true;\n return this.config.obs?.pipe(tap(res => this.dataItems = res))\n .pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))\n .subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.dataItems;\n }\n\n refreshDataItems(newData: TotsListResponse<any> | undefined) {\n this.dataItems = newData;\n }\n}\n","<div class=\"tots-table-container\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { TotsListResponse } from '@tots/core';\nimport { Observable } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\nimport { TotsTableComponent } from '../tots-table/tots-table.component';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @ViewChild('tableComp') tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n @Input() isPaginationStartIndexInZero: boolean = false;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n if(this.isPaginationStartIndexInZero){\n this.config.query.page = action.item.pageIndex;\n } else {\n this.config.query.page = action.item.pageIndex + 1;\n }\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n refreshQueryAndLoadItems() {\n this.configTable.obs = this.config.service.list(this.config.query);\n return this.loadItems();\n }\n\n loadItems() {\n return this.tableComp.loadItems();\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.tableComp.getDataItems();\n }\n\n setObs(obs: Observable<TotsListResponse<any>>) {\n this.configTable.obs = obs;\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\nimport { BooleanColumnComponent } from './columns/boolean-column/boolean-column.component';\nimport { TwoStringColumnComponent } from './columns/two-string-column/two-string-column.component';\nimport { IconButtonColumnComponent } from './columns/icon-button-column/icon-button-column.component';\nimport { CheckboxColumnComponent } from './columns/checkbox-column/checkbox-column.component';\nimport { OptionColumnComponent } from './columns/option-column/option-column.component';\nimport { UserColumnComponent } from './columns/user-column/user-column.component';\nimport { CurrencyColumnComponent } from './columns/currency-column/currency-column.component';\nimport { StatusColumnComponent } from './columns/status-column/status-column.component';\nimport { BalanceCurrencyColumnComponent } from './columns/balance-currency-column/balance-currency-column.component';\nimport { StatusIconColumnComponent } from './columns/status-icon-column/status-icon-column.component';\nimport { BalanceCurrencyIconColumnComponent } from './columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent,\n BooleanColumnComponent,\n TwoStringColumnComponent,\n IconButtonColumnComponent,\n CheckboxColumnComponent,\n OptionColumnComponent,\n UserColumnComponent,\n CurrencyColumnComponent,\n StatusColumnComponent,\n BalanceCurrencyColumnComponent,\n StatusIconColumnComponent,\n BalanceCurrencyIconColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule,\n MatProgressSpinnerModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\nexport * from './lib/columns/boolean-column/boolean-column.component';\nexport * from './lib/columns/two-string-column/two-string-column.component';\nexport * from './lib/columns/icon-button-column/icon-button-column.component';\nexport * from './lib/columns/checkbox-column/checkbox-column.component';\nexport * from './lib/columns/option-column/option-column.component';\nexport * from './lib/columns/user-column/user-column.component';\nexport * from './lib/columns/currency-column/currency-column.component';\nexport * from './lib/columns/status-column/status-column.component';\nexport * from './lib/columns/balance-currency-column/balance-currency-column.component';\nexport * from './lib/columns/status-icon-column/status-icon-column.component';\nexport * from './lib/columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i4","i6.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
1
+ {"version":3,"file":"tots-table.mjs","sources":["../../../../projects/tots/table/src/lib/entities/tots-column.ts","../../../../projects/tots/table/src/lib/entities/tots-table-config.ts","../../../../projects/tots/table/src/lib/entities/tots-action-table.ts","../../../../projects/tots/table/src/lib/entities/tots-table-api-config.ts","../../../../projects/tots/table/src/lib/helpers/tots-table-helper.ts","../../../../projects/tots/table/src/lib/columns/tots-base-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.ts","../../../../projects/tots/table/src/lib/columns/string-column/string-column.component.html","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.ts","../../../../projects/tots/table/src/lib/columns/more-menu-column/more-menu-column.component.html","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.ts","../../../../projects/tots/table/src/lib/columns/boolean-column/boolean-column.component.html","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.ts","../../../../projects/tots/table/src/lib/columns/two-string-column/two-string-column.component.html","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.ts","../../../../projects/tots/table/src/lib/columns/icon-button-column/icon-button-column.component.html","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.ts","../../../../projects/tots/table/src/lib/columns/checkbox-column/checkbox-column.component.html","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.ts","../../../../projects/tots/table/src/lib/columns/option-column/option-column.component.html","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.ts","../../../../projects/tots/table/src/lib/columns/user-column/user-column.component.html","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/currency-column/currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-column/status-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-column/balance-currency-column.component.html","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/status-icon-column/status-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.ts","../../../../projects/tots/table/src/lib/columns/balance-currency-icon-column/balance-currency-icon-column.component.html","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.ts","../../../../projects/tots/table/src/lib/columns/base-print-column/base-print-column.component.html","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.ts","../../../../projects/tots/table/src/lib/components/tots-table/tots-table.component.html","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.ts","../../../../projects/tots/table/src/lib/components/tots-table-api/tots-table-api.component.html","../../../../projects/tots/table/src/lib/table.module.ts","../../../../projects/tots/table/src/public-api.ts","../../../../projects/tots/table/src/tots-table.ts"],"sourcesContent":["export class TotsColumn {\n key: string = '';\n title: string = '';\n field_key?: string|Array<string>;\n component: any;\n extra?: any;\n is_show?: boolean = true;\n\n hasOrder?: boolean = false;\n order?: 'asc'|'desc';\n}","import { TotsListResponse, TotsQuery } from \"@tots/core\";\nimport { Observable } from \"rxjs\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n obs?: Observable<TotsListResponse<any>>;\n classes?: string = '';\n}","export class TotsActionTable {\n key: string = '';\n item?: any;\n}","import { TotsBaseHttpService, TotsQuery } from \"@tots/core\";\nimport { TotsColumn } from \"./tots-column\";\n\nexport class TotsTableApiConfig {\n id?: string = '';\n columns: Array<TotsColumn> = [];\n service!: TotsBaseHttpService<any>;\n query: TotsQuery = new TotsQuery();\n classes?: string = '';\n}","export class TotsTableHelper {\n /**\n * Obtiene el valor de un objeto a traves de la KEY\n * @param item \n * @param key \n * @returns \n */\n static getItemValueByKey(item: any, key: string|Array<string>|undefined): any {\n if(key == undefined||item == undefined){\n return '';\n }\n \n if (typeof key == 'string' && item[key] != undefined) {\n return item[key];\n }\n \n let valueFinal = item;\n for (const keyObj of key!) {\n if(valueFinal[keyObj] == undefined){\n return '';\n }\n valueFinal = valueFinal[keyObj];\n }\n return valueFinal;\n }\n}","import { Component, EventEmitter, Input, OnInit } from \"@angular/core\";\nimport { Subject } from \"rxjs\";\nimport { TotsActionTable } from \"../entities/tots-action-table\";\nimport { TotsColumn } from \"../entities/tots-column\";\nimport { TotsTableHelper } from \"../helpers/tots-table-helper\";\n\n@Component({\n selector: 'tots-base-column',\n template: ''\n})\nexport class TotsBaseColumnComponent{\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n getItemValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n }\n}\n","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-string-column',\n templateUrl: './string-column.component.html',\n styleUrls: ['./string-column.component.css']\n})\nexport class StringColumnComponent extends TotsBaseColumnComponent {\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-more-menu-column',\n templateUrl: './more-menu-column.component.html',\n styleUrls: ['./more-menu-column.component.scss']\n})\nexport class MoreMenuColumnComponent extends TotsBaseColumnComponent {\n\n clickButton(itemAction: any, $event: UIEvent) {\n this.onAction.next({ key: itemAction.key, item: this.item });\n $event.preventDefault();\n return false;\n }\n}\n","<button mat-icon-button [matMenuTriggerFor]=\"actions\" (click)=\"$event.stopPropagation()\"><mat-icon>more_vert</mat-icon></button>\n<mat-menu #actions=\"matMenu\">\n <button mat-menu-item *ngFor=\"let button of column.extra?.actions\" (click)=\"clickButton(button, $event)\" class=\"{{button.class}}\">\n <mat-icon *ngIf=\"button.icon\">{{ button.icon }}</mat-icon> {{ button.title }}\n </button>\n</mat-menu>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-boolean-column',\n templateUrl: './boolean-column.component.html',\n styleUrls: ['./boolean-column.component.css']\n})\nexport class BooleanColumnComponent extends TotsBaseColumnComponent {\n\n}","<ng-container *ngIf=\"getItemValue() == true||getItemValue() == 1; else textNo\">YES</ng-container>\n<ng-template #textNo>NO</ng-template>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-two-string-column',\n templateUrl: './two-string-column.component.html',\n styleUrls: ['./two-string-column.component.css']\n})\nexport class TwoStringColumnComponent extends TotsBaseColumnComponent {\n\n getSubtitleValue(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n}\n","<div class=\"first-line\"><strong>{{getItemValue()}}</strong></div>\n<div class=\"second-line\">{{getSubtitleValue()}}</div>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-icon-button-column',\n templateUrl: './icon-button-column.component.html',\n styleUrls: ['./icon-button-column.component.css']\n})\nexport class IconButtonColumnComponent extends TotsBaseColumnComponent {\n\n clickButton($event: UIEvent) {\n this.onAction.next({ key: this.column.extra.action, item: this.item });\n $event.stopPropagation();\n return false;\n }\n\n getIconName() : string {\n return this.column.extra.icon;\n }\n\n getButtonColor() : string {\n return this.column.extra.matColor;\n }\n\n getClasses() : string {\n return this.column.extra.classes;\n }\n}\n","<button mat-icon-button [color]=\"getButtonColor()\" [class]=\"getClasses()\" (click)=\"clickButton($event)\">\n <mat-icon>{{getIconName()}}</mat-icon>\n</button>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\n\n@Component({\n selector: 'tots-checkbox-column',\n templateUrl: './checkbox-column.component.html',\n styleUrls: ['./checkbox-column.component.css']\n})\nexport class CheckboxColumnComponent extends TotsBaseColumnComponent {\n\n onChange(event: MatCheckboxChange) {\n let key = 'select-item';\n if(!event.checked){\n key = 'unselect-item';\n }\n this.onAction.next({ key: key, item: this.item });\n }\n}\n","<div class=\"tots-checkbox-column\">\n <mat-checkbox (change)=\"onChange($event)\" (click)=\"$event.stopPropagation();\"></mat-checkbox>\n</div>","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-option-column',\n templateUrl: './option-column.component.html',\n styleUrls: ['./option-column.component.css']\n})\nexport class OptionColumnComponent extends TotsBaseColumnComponent {\n\n override getItemValue(): any {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value){\n return item[this.column.extra.field_print_key];\n }\n }\n return '';\n }\n\n}\n","{{getItemValue()}}","import { Component } from '@angular/core';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-user-column',\n templateUrl: './user-column.component.html',\n styleUrls: ['./user-column.component.scss']\n})\nexport class UserColumnComponent extends TotsBaseColumnComponent {\n\n getFirstname() {\n if(this.column.extra?.field_firstname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_firstname_key);\n }\n\n return '';\n }\n\n getLastname() {\n if(this.column.extra?.field_lastname_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_lastname_key);\n }\n\n return '';\n }\n\n getFullname() {\n return this.getFirstname() + ' ' + this.getLastname();\n }\n\n getPhoto() {\n if(this.column.extra?.field_photo_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_photo_key);\n }\n\n return '';\n }\n\n getSubtitle() {\n if(this.column.extra?.field_subtitle_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_subtitle_key);\n }\n\n return '';\n }\n\n isOnline() {\n if(this.column.extra?.field_online_key){\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_online_key);\n }\n\n return false;\n }\n}\n","<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>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\n\n@Component({\n selector: 'tots-currency-column',\n templateUrl: './currency-column.component.html',\n styleUrls: ['./currency-column.component.css']\n})\nexport class CurrencyColumnComponent extends TotsBaseColumnComponent {\n\n}\n","<span [ngClass]=\"{'tots-currency-column-positive': getItemValue() > 0, 'tots-currency-column-negative': getItemValue() < 0}\">{{getItemValue()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-column',\n templateUrl: './status-column.component.html',\n styleUrls: ['./status-column.component.css']\n})\nexport class StatusColumnComponent extends OptionColumnComponent {\n\n getBackgroundColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['background_color'] != undefined){\n return item['background_color'];\n }\n }\n return '';\n }\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-column\" [ngStyle]=\"{'background-color': getBackgroundColor(), 'color': getFontColor()}\">{{getItemValue()}}</span>","import { Component } from '@angular/core';\nimport { TotsBaseColumnComponent } from '../tots-base-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-column',\n templateUrl: './balance-currency-column.component.html',\n styleUrls: ['./balance-currency-column.component.css']\n})\nexport class BalanceCurrencyColumnComponent extends TotsBaseColumnComponent {\n\n getBalance() {\n return this.getDebit() - this.getCredit();\n }\n\n getDebit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_debit);\n }\n\n getCredit(): any {\n return TotsTableHelper.getItemValueByKey(this.item, this.column.extra.field_key_credit);\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">{{getBalance()|currency}}</span>","import { Component } from '@angular/core';\nimport { OptionColumnComponent } from '../option-column/option-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-status-icon-column',\n templateUrl: './status-icon-column.component.html',\n styleUrls: ['./status-icon-column.component.css']\n})\nexport class StatusIconColumnComponent extends OptionColumnComponent {\n\n getFontColor(): string {\n let value = TotsTableHelper.getItemValueByKey(this.item, this.column.field_key);\n for (const item of this.column.extra.options) {\n if(item[this.column.extra.field_rel_key] == value && item['font_color'] != undefined){\n return item['font_color'];\n }\n }\n return '';\n }\n}\n","<span class=\"tots-status-icon-column\" [ngStyle]=\"{'color': getFontColor()}\"><mat-icon>{{getItemValue()}}</mat-icon></span>","import { Component } from '@angular/core';\nimport { BalanceCurrencyColumnComponent } from '../balance-currency-column/balance-currency-column.component';\nimport { TotsTableHelper } from '../../helpers/tots-table-helper';\n\n@Component({\n selector: 'tots-balance-currency-icon-column',\n templateUrl: './balance-currency-icon-column.component.html',\n styleUrls: ['./balance-currency-icon-column.component.css']\n})\nexport class BalanceCurrencyIconColumnComponent extends BalanceCurrencyColumnComponent {\n\n getIconPositive(): any {\n return this.column.extra.icon_positive\n }\n\n getIconNegative(): any {\n return this.column.extra.icon_negative;\n }\n\n getIconNeutral(): any {\n return this.column.extra.icon_neutral;\n }\n}\n","<span [ngClass]=\"{'tots-balance-column-positive': getBalance() > 0, 'tots-balance-column-negative': getBalance() < 0}\">\n <mat-icon *ngIf=\"getBalance() > 0\">{{getIconPositive()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() < 0\">{{getIconNegative()}}</mat-icon>\n <mat-icon *ngIf=\"getBalance() == 0\">{{getIconNeutral()}}</mat-icon>\n</span>","import { Component, Input, ViewContainerRef } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\n\n@Component({\n selector: 'tots-base-print-column',\n templateUrl: './base-print-column.component.html',\n styleUrls: ['./base-print-column.component.css']\n})\nexport class BasePrintColumnComponent {\n\n @Input() column!: TotsColumn;\n @Input() item: any;\n @Input() onAction!: Subject<TotsActionTable>;\n\n constructor(\n protected viewContainerRef: ViewContainerRef\n ) { }\n\n ngOnInit(): void {\n const view = this.viewContainerRef.createComponent(this.column.component);\n (<any>view.instance).column = this.column;\n (<any>view.instance).item = this.item;\n (<any>view.instance).onAction = this.onAction;\n }\n}\n","<div #contentColumn></div>","import { Component, EventEmitter, Input, OnInit, Output } from '@angular/core';\nimport { PageEvent } from '@angular/material/paginator';\nimport { TotsListResponse } from '@tots/core';\nimport { Subject, tap } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsColumn } from '../../entities/tots-column';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\n\n@Component({\n selector: 'tots-table',\n templateUrl: './tots-table.component.html',\n styleUrls: ['./tots-table.component.scss']\n})\nexport class TotsTableComponent implements OnInit {\n\n @Input() config = new TotsTableConfig();\n @Input() pageIndex: number = 0;\n @Input() pageSize: number = 50;\n @Input() hasPagination: boolean = true;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n privateActions = new Subject<TotsActionTable>();\n\n isLoading = true;\n dataItems?: TotsListResponse<any>;\n displayColumns: Array<String> = [];\n\n ngOnInit(): void {\n this.loadConfig();\n this.loadItems();\n }\n\n onClickOrder(column: TotsColumn) {\n if(!column.hasOrder){ return; }\n let orderColumn = column.order;\n this.config.columns.forEach(c => c.order = undefined);\n column.order = orderColumn == 'asc' ? 'desc' : 'asc';\n this.onAction.emit({ key: 'click-order', item: column });\n }\n\n onClickRow(item: any) {\n this.onAction.emit({ key: 'click-row', item: item });\n }\n\n onPageChange(event: PageEvent) {\n this.onAction.emit({ key: 'page-change', item: event });\n this.loadItems();\n }\n\n loadItems() {\n this.dataItems = undefined;\n this.isLoading = true;\n return this.config.obs?.pipe(tap(res => this.dataItems = res))\n .pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))\n .subscribe(res => this.isLoading = false);\n }\n\n loadConfig() {\n this.loadColumns();\n\n this.privateActions.subscribe(action => {\n this.onAction.emit(action);\n });\n }\n\n loadColumns() {\n this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.dataItems;\n }\n\n refreshDataItems(newData: TotsListResponse<any> | undefined) {\n this.dataItems = newData;\n }\n}\n","<div class=\"tots-table-container {{config.classes}}\">\n <table mat-table [dataSource]=\"dataItems != undefined ? dataItems!.data : []\">\n \n <ng-container *ngFor=\"let column of config.columns\" [matColumnDef]=\"column.key\">\n <!-- TH-->\n <th mat-header-cell *matHeaderCellDef [ngClass]=\"{'tots-tr-has-order': column.hasOrder}\" (click)=\"onClickOrder(column)\">\n {{ column.title }}\n <ng-container *ngIf=\"column.hasOrder && column.order == undefined\"><mat-icon style=\"color: gray\">unfold_more</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'asc'\"><mat-icon>arrow_drop_up</mat-icon></ng-container>\n <ng-container *ngIf=\"column.order == 'desc'\"><mat-icon>arrow_drop_down</mat-icon></ng-container>\n </th>\n <!-- TD -->\n <td mat-cell *matCellDef=\"let item\" [ngStyle]=\"{'width': column.extra?.width ? column.extra.width : 'auto'}\"><tots-base-print-column [column]=\"column\" [item]=\"item\" [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\">No results found, please try with other search terms</td></tr>\n </ng-container>\n </table>\n\n <div *ngIf=\"isLoading\" class=\"tots-table-loading\"><mat-spinner [diameter]=\"50\"></mat-spinner></div>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && dataItems.data.length > 0 && hasPagination\" [pageIndex]=\"pageIndex-1\" [length]=\"dataItems!.total\" [pageSize]=\"pageSize\" [pageSizeOptions]=\"[5, 10, 25, 50, 100]\" (page)=\"onPageChange($event)\"></mat-paginator>\n</div>","import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\nimport { TotsListResponse } from '@tots/core';\nimport { Observable } from 'rxjs';\nimport { TotsActionTable } from '../../entities/tots-action-table';\nimport { TotsTableApiConfig } from '../../entities/tots-table-api-config';\nimport { TotsTableConfig } from '../../entities/tots-table-config';\nimport { TotsTableComponent } from '../tots-table/tots-table.component';\n\n@Component({\n selector: 'tots-table-api',\n templateUrl: './tots-table-api.component.html',\n styleUrls: ['./tots-table-api.component.scss']\n})\nexport class TotsTableApiComponent implements OnInit {\n \n @ViewChild('tableComp') tableComp!: TotsTableComponent;\n\n @Input() config = new TotsTableApiConfig();\n @Input() hasPagination: boolean = true;\n @Input() isPaginationStartIndexInZero: boolean = false;\n\n @Output() onAction = new EventEmitter<TotsActionTable>();\n\n configTable = new TotsTableConfig();\n\n ngOnInit(): void {\n this.loadConfig();\n }\n\n onTableAction(action: TotsActionTable) {\n if(action.key == 'page-change'){\n this.config.query.per_page = action.item.pageSize;\n if(this.isPaginationStartIndexInZero){\n this.config.query.page = action.item.pageIndex;\n } else {\n this.config.query.page = action.item.pageIndex + 1;\n }\n this.configTable.obs = this.config.service.list(this.config.query);\n }\n\n this.onAction.emit(action);\n }\n\n loadConfig() {\n this.configTable.id = this.config.id;\n this.configTable.columns = this.config.columns;\n this.configTable.obs = this.config.service.list(this.config.query);\n this.configTable.classes = this.config.classes;\n }\n\n refreshQueryAndLoadItems() {\n this.configTable.obs = this.config.service.list(this.config.query);\n return this.loadItems();\n }\n\n loadItems() {\n return this.tableComp.loadItems();\n }\n\n getDataItems(): TotsListResponse<any> | undefined {\n return this.tableComp.getDataItems();\n }\n\n setObs(obs: Observable<TotsListResponse<any>>) {\n this.configTable.obs = obs;\n }\n}\n","<tots-table #tableComp [config]=\"configTable\" [pageIndex]=\"config.query.page\" [pageSize]=\"config.query.per_page\" (onAction)=\"onTableAction($event)\" [hasPagination]=\"hasPagination\"></tots-table>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n/** Angular Material */\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatTableModule } from '@angular/material/table';\nimport { MatPaginatorModule } from '@angular/material/paginator';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\n\n/** Components */\nimport { TotsTableComponent } from './components/tots-table/tots-table.component';\nimport { TotsTableApiComponent } from './components/tots-table-api/tots-table-api.component';\n\n/** Columns */\nimport { BasePrintColumnComponent } from './columns/base-print-column/base-print-column.component';\nimport { StringColumnComponent } from './columns/string-column/string-column.component';\nimport { MoreMenuColumnComponent } from './columns/more-menu-column/more-menu-column.component';\nimport { BooleanColumnComponent } from './columns/boolean-column/boolean-column.component';\nimport { TwoStringColumnComponent } from './columns/two-string-column/two-string-column.component';\nimport { IconButtonColumnComponent } from './columns/icon-button-column/icon-button-column.component';\nimport { CheckboxColumnComponent } from './columns/checkbox-column/checkbox-column.component';\nimport { OptionColumnComponent } from './columns/option-column/option-column.component';\nimport { UserColumnComponent } from './columns/user-column/user-column.component';\nimport { CurrencyColumnComponent } from './columns/currency-column/currency-column.component';\nimport { StatusColumnComponent } from './columns/status-column/status-column.component';\nimport { BalanceCurrencyColumnComponent } from './columns/balance-currency-column/balance-currency-column.component';\nimport { StatusIconColumnComponent } from './columns/status-icon-column/status-icon-column.component';\nimport { BalanceCurrencyIconColumnComponent } from './columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n\n\n@NgModule({\n declarations: [\n TotsTableComponent,\n BasePrintColumnComponent,\n StringColumnComponent,\n TotsTableApiComponent,\n MoreMenuColumnComponent,\n BooleanColumnComponent,\n TwoStringColumnComponent,\n IconButtonColumnComponent,\n CheckboxColumnComponent,\n OptionColumnComponent,\n UserColumnComponent,\n CurrencyColumnComponent,\n StatusColumnComponent,\n BalanceCurrencyColumnComponent,\n StatusIconColumnComponent,\n BalanceCurrencyIconColumnComponent\n ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule,\n MatProgressSpinnerModule\n ],\n exports: [\n TotsTableComponent,\n TotsTableApiComponent\n ]\n})\nexport class TotsTableModule { }\n","/*\n * Public API Surface of table\n */\n\n/**\n * Entities\n */\nexport * from './lib/entities/tots-column';\nexport * from './lib/entities/tots-table-config';\nexport * from './lib/entities/tots-action-table';\nexport * from './lib/entities/tots-table-api-config';\n\n/**\n * Helpers\n */\nexport * from './lib/helpers/tots-table-helper';\n\n/**\n * Columns\n */\nexport * from './lib/columns/tots-base-column.component';\nexport * from './lib/columns/string-column/string-column.component';\nexport * from './lib/columns/more-menu-column/more-menu-column.component';\nexport * from './lib/columns/boolean-column/boolean-column.component';\nexport * from './lib/columns/two-string-column/two-string-column.component';\nexport * from './lib/columns/icon-button-column/icon-button-column.component';\nexport * from './lib/columns/checkbox-column/checkbox-column.component';\nexport * from './lib/columns/option-column/option-column.component';\nexport * from './lib/columns/user-column/user-column.component';\nexport * from './lib/columns/currency-column/currency-column.component';\nexport * from './lib/columns/status-column/status-column.component';\nexport * from './lib/columns/balance-currency-column/balance-currency-column.component';\nexport * from './lib/columns/status-icon-column/status-icon-column.component';\nexport * from './lib/columns/balance-currency-icon-column/balance-currency-icon-column.component';\n\n/**\n * Components\n */\nexport * from './lib/components/tots-table/tots-table.component';\nexport * from './lib/components/tots-table-api/tots-table-api.component';\n\n/**\n * Modules\n */\nexport * from './lib/table.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3","i4","i6.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
@@ -2,7 +2,9 @@ import { TotsBaseColumnComponent } from '../tots-base-column.component';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class IconButtonColumnComponent extends TotsBaseColumnComponent {
4
4
  clickButton($event: UIEvent): boolean;
5
- getIconName(): any;
5
+ getIconName(): string;
6
+ getButtonColor(): string;
7
+ getClasses(): string;
6
8
  static ɵfac: i0.ɵɵFactoryDeclaration<IconButtonColumnComponent, never>;
7
9
  static ɵcmp: i0.ɵɵComponentDeclaration<IconButtonColumnComponent, "tots-icon-button-column", never, {}, {}, never, never, false, never>;
8
10
  }
@@ -5,4 +5,5 @@ export declare class TotsTableApiConfig {
5
5
  columns: Array<TotsColumn>;
6
6
  service: TotsBaseHttpService<any>;
7
7
  query: TotsQuery;
8
+ classes?: string;
8
9
  }
@@ -5,4 +5,5 @@ export declare class TotsTableConfig {
5
5
  id?: string;
6
6
  columns: Array<TotsColumn>;
7
7
  obs?: Observable<TotsListResponse<any>>;
8
+ classes?: string;
8
9
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tots/table",
3
- "version": "15.0.35",
3
+ "version": "15.0.37",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^15.0.0",
6
6
  "@angular/core": "^15.0.0",