@tots/table 15.0.12 → 15.0.14
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.
- package/esm2020/lib/components/tots-table/tots-table.component.mjs +9 -6
- package/fesm2015/tots-table.mjs +6 -3
- package/fesm2015/tots-table.mjs.map +1 -1
- package/fesm2020/tots-table.mjs +8 -5
- package/fesm2020/tots-table.mjs.map +1 -1
- package/lib/components/tots-table/tots-table.component.d.ts +1 -0
- package/package.json +1 -1
|
@@ -38,9 +38,9 @@ export class TotsTableComponent {
|
|
|
38
38
|
}
|
|
39
39
|
loadItems() {
|
|
40
40
|
this.isLoading = true;
|
|
41
|
-
this.config.obs?.
|
|
42
|
-
pipe(tap(res => this.
|
|
43
|
-
subscribe(res => this.isLoading = false);
|
|
41
|
+
this.config.obs?.pipe(tap(res => this.dataItems = res))
|
|
42
|
+
.pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))
|
|
43
|
+
.subscribe(res => this.isLoading = false);
|
|
44
44
|
}
|
|
45
45
|
loadConfig() {
|
|
46
46
|
this.loadColumns();
|
|
@@ -51,12 +51,15 @@ export class TotsTableComponent {
|
|
|
51
51
|
loadColumns() {
|
|
52
52
|
this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
|
|
53
53
|
}
|
|
54
|
+
getDataItems() {
|
|
55
|
+
return this.dataItems;
|
|
56
|
+
}
|
|
54
57
|
}
|
|
55
58
|
TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
56
|
-
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\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.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
59
|
+
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\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.BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
57
60
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
|
|
58
61
|
type: Component,
|
|
59
|
-
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\n"] }]
|
|
62
|
+
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\n"] }]
|
|
60
63
|
}], propDecorators: { config: [{
|
|
61
64
|
type: Input
|
|
62
65
|
}], pageIndex: [{
|
|
@@ -68,4 +71,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImpor
|
|
|
68
71
|
}], onAction: [{
|
|
69
72
|
type: Output
|
|
70
73
|
}] } });
|
|
71
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG90cy10YWJsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90b3RzL3RhYmxlL3NyYy9saWIvY29tcG9uZW50cy90b3RzLXRhYmxlL3RvdHMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdG90cy90YWJsZS9zcmMvbGliL2NvbXBvbmVudHMvdG90cy10YWJsZS90b3RzLXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBVSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFHL0UsT0FBTyxFQUFFLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHcEMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7O0FBT25FLE1BQU0sT0FBTyxrQkFBa0I7SUFML0I7UUFPVyxXQUFNLEdBQUcsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUMvQixjQUFTLEdBQVcsQ0FBQyxDQUFDO1FBQ3RCLGFBQVEsR0FBVyxFQUFFLENBQUM7UUFDdEIsa0JBQWEsR0FBWSxJQUFJLENBQUM7UUFFN0IsYUFBUSxHQUFHLElBQUksWUFBWSxFQUFtQixDQUFDO1FBQ3pELG1CQUFjLEdBQUcsSUFBSSxPQUFPLEVBQW1CLENBQUM7UUFFaEQsY0FBUyxHQUFHLElBQUksQ0FBQztRQUVqQixtQkFBYyxHQUFrQixFQUFFLENBQUM7S0E0Q3BDO0lBMUNDLFFBQVE7UUFDTixJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDbEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBa0I7UUFDN0IsSUFBRyxDQUFDLE1BQU0sQ0FBQyxRQUFRLEVBQUM7WUFBRSxPQUFPO1NBQUU7UUFDL0IsTUFBTSxDQUFDLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUM7UUFDdEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQzNELENBQUM7SUFFRCxVQUFVLENBQUMsSUFBUztRQUNsQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFlBQVksQ0FBQyxLQUFnQjtRQUMzQixJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDeEQsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsR0FBRyxDQUFDLENBQUM7YUFDdEQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDO2FBQzlFLFNBQVMsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELFVBQVU7UUFDUixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7UUFFbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0IsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsV0FBVztRQUNULElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLE9BQU8sSUFBSSxDQUFDLENBQUMsT0FBTyxJQUFJLFNBQVMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM3RyxDQUFDO0lBRUQsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDOzsrR0F2RFUsa0JBQWtCO21HQUFsQixrQkFBa0IsaU1DYi9CLGtuREF1Qk07MkZEVk8sa0JBQWtCO2tCQUw5QixTQUFTOytCQUNFLFlBQVk7OEJBTWIsTUFBTTtzQkFBZCxLQUFLO2dCQUNHLFNBQVM7c0JBQWpCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUVJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBQYWdlRXZlbnQgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wYWdpbmF0b3InO1xuaW1wb3J0IHsgVG90c0xpc3RSZXNwb25zZSB9IGZyb20gJ0B0b3RzL2NvcmUnO1xuaW1wb3J0IHsgU3ViamVjdCwgdGFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBUb3RzQWN0aW9uVGFibGUgfSBmcm9tICcuLi8uLi9lbnRpdGllcy90b3RzLWFjdGlvbi10YWJsZSc7XG5pbXBvcnQgeyBUb3RzQ29sdW1uIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy1jb2x1bW4nO1xuaW1wb3J0IHsgVG90c1RhYmxlQ29uZmlnIH0gZnJvbSAnLi4vLi4vZW50aXRpZXMvdG90cy10YWJsZS1jb25maWcnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd0b3RzLXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3RvdHMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b3RzLXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG90c1RhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBASW5wdXQoKSBjb25maWcgPSBuZXcgVG90c1RhYmxlQ29uZmlnKCk7XG4gIEBJbnB1dCgpIHBhZ2VJbmRleDogbnVtYmVyID0gMDtcbiAgQElucHV0KCkgcGFnZVNpemU6IG51bWJlciA9IDUwO1xuICBASW5wdXQoKSBoYXNQYWdpbmF0aW9uOiBib29sZWFuID0gdHJ1ZTtcblxuICBAT3V0cHV0KCkgb25BY3Rpb24gPSBuZXcgRXZlbnRFbWl0dGVyPFRvdHNBY3Rpb25UYWJsZT4oKTtcbiAgcHJpdmF0ZUFjdGlvbnMgPSBuZXcgU3ViamVjdDxUb3RzQWN0aW9uVGFibGU+KCk7XG5cbiAgaXNMb2FkaW5nID0gdHJ1ZTtcbiAgZGF0YUl0ZW1zPzogVG90c0xpc3RSZXNwb25zZTxhbnk+O1xuICBkaXNwbGF5Q29sdW1uczogQXJyYXk8U3RyaW5nPiA9IFtdO1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMubG9hZENvbmZpZygpO1xuICAgIHRoaXMubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBvbkNsaWNrT3JkZXIoY29sdW1uOiBUb3RzQ29sdW1uKSB7XG4gICAgaWYoIWNvbHVtbi5oYXNPcmRlcil7IHJldHVybjsgfVxuICAgIGNvbHVtbi5vcmRlciA9IGNvbHVtbi5vcmRlciA9PSAnYXNjJyA/ICdkZXNjJyA6ICdhc2MnO1xuICAgIHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2NsaWNrLW9yZGVyJywgaXRlbTogY29sdW1uIH0pO1xuICB9XG5cbiAgb25DbGlja1JvdyhpdGVtOiBhbnkpIHtcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdjbGljay1yb3cnLCBpdGVtOiBpdGVtIH0pO1xuICB9XG5cbiAgb25QYWdlQ2hhbmdlKGV2ZW50OiBQYWdlRXZlbnQpIHtcbiAgICB0aGlzLm9uQWN0aW9uLmVtaXQoeyBrZXk6ICdwYWdlLWNoYW5nZScsIGl0ZW06IGV2ZW50IH0pO1xuICAgIHRoaXMubG9hZEl0ZW1zKCk7XG4gIH1cblxuICBsb2FkSXRlbXMoKSB7XG4gICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xuICAgIHRoaXMuY29uZmlnLm9icz8ucGlwZSh0YXAocmVzID0+IHRoaXMuZGF0YUl0ZW1zID0gcmVzKSlcbiAgICAucGlwZSh0YXAocmVzID0+IHRoaXMub25BY3Rpb24uZW1pdCh7IGtleTogJ2xvYWRlZC1pdGVtcycsIGl0ZW06IHVuZGVmaW5lZCB9KSkpXG4gICAgLnN1YnNjcmliZShyZXMgPT4gdGhpcy5pc0xvYWRpbmcgPSBmYWxzZSk7XG4gIH1cblxuICBsb2FkQ29uZmlnKCkge1xuICAgIHRoaXMubG9hZENvbHVtbnMoKTtcblxuICAgIHRoaXMucHJpdmF0ZUFjdGlvbnMuc3Vic2NyaWJlKGFjdGlvbiA9PiB7XG4gICAgICB0aGlzLm9uQWN0aW9uLmVtaXQoYWN0aW9uKTtcbiAgICB9KTtcbiAgfVxuXG4gIGxvYWRDb2x1bW5zKCkge1xuICAgIHRoaXMuZGlzcGxheUNvbHVtbnMgPSB0aGlzLmNvbmZpZy5jb2x1bW5zLmZpbHRlcihjID0+IGMuaXNfc2hvdyB8fCBjLmlzX3Nob3cgPT0gdW5kZWZpbmVkKS5tYXAoYyA9PiBjLmtleSk7XG4gIH1cblxuICBnZXREYXRhSXRlbXMoKTogVG90c0xpc3RSZXNwb25zZTxhbnk+IHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5kYXRhSXRlbXM7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJ0b3RzLXRhYmxlLWNvbnRhaW5lclwiPlxuICAgIDx0YWJsZSAqbmdJZj1cImRhdGFJdGVtc1wiIG1hdC10YWJsZSBbZGF0YVNvdXJjZV09XCJkYXRhSXRlbXMhLmRhdGFcIj5cbiAgICAgICAgXG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbiBvZiBjb25maWcuY29sdW1uc1wiIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uLmtleVwiPlxuICAgICAgICAgICAgPCEtLSBUSC0tPlxuICAgICAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZiBbbmdDbGFzc109XCJ7J3RvdHMtdHItaGFzLW9yZGVyJzogY29sdW1uLmhhc09yZGVyfVwiIChjbGljayk9XCJvbkNsaWNrT3JkZXIoY29sdW1uKVwiPlxuICAgICAgICAgICAgICAgIHt7IGNvbHVtbi50aXRsZSB9fVxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJjb2x1bW4ub3JkZXIgPT0gJ2FzYydcIj48bWF0LWljb24+YXJyb3dfZHJvcF91cDwvbWF0LWljb24+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbi5vcmRlciA9PSAnZGVzYydcIj48bWF0LWljb24+YXJyb3dfZHJvcF9kb3duPC9tYXQtaWNvbj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgICA8IS0tIFREIC0tPlxuICAgICAgICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGl0ZW1cIiBbbmdTdHlsZV09XCJ7J3dpZHRoJzogY29sdW1uLmV4dHJhPy53aWR0aCA/IGNvbHVtbi5leHRyYS53aWR0aCA6ICdhdXRvJ31cIj48dG90cy1iYXNlLXByaW50LWNvbHVtbiBbY29sdW1uXT1cImNvbHVtblwiIFtpdGVtXT1cIml0ZW1cIiBbb25BY3Rpb25dPVwicHJpdmF0ZUFjdGlvbnNcIj48L3RvdHMtYmFzZS1wcmludC1jb2x1bW4+PC90ZD5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG5cbiAgICAgICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5Q29sdW1uc1wiPjwvdHI+XG4gICAgICAgIDx0ciBtYXQtcm93ICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5Q29sdW1ucztcIiAoY2xpY2spPVwib25DbGlja1Jvdyhyb3cpXCIgW25nQ2xhc3NdPVwieyd0b3RzLWNlbGwtc2VsZWN0ZWQnOiByb3cuaXNTZWxlY3RlZH1cIj48L3RyPlxuICAgICAgICBcbiAgICAgICAgPCEtLSBSb3cgc2hvd24gd2hlbiB0aGVyZSBpcyBubyBtYXRjaGluZyBkYXRhLiAtLT5cbiAgICAgICAgPHRyIGNsYXNzPVwibWF0LXJvd1wiICptYXROb0RhdGFSb3c+PHRkIGNsYXNzPVwibWF0LWNlbGxcIiBjb2xzcGFuPVwiMTAwXCI+Tm8gZGF0YSBtYXRjaGluZzwvdGQ+PC90cj5cbiAgICA8L3RhYmxlPlxuXG4gICAgPCEtLSBQYWdpbmF0b3IgLS0+XG4gICAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJkYXRhSXRlbXMgJiYgaGFzUGFnaW5hdGlvblwiIFtwYWdlSW5kZXhdPVwicGFnZUluZGV4LTFcIiBbbGVuZ3RoXT1cImRhdGFJdGVtcyEudG90YWxcIiBbcGFnZVNpemVdPVwicGFnZVNpemVcIiBbcGFnZVNpemVPcHRpb25zXT1cIls1LCAxMCwgMjUsIDUwLCAxMDBdXCIgKHBhZ2UpPVwib25QYWdlQ2hhbmdlKCRldmVudClcIj48L21hdC1wYWdpbmF0b3I+XG48L2Rpdj4iXX0=
|
package/fesm2015/tots-table.mjs
CHANGED
|
@@ -226,7 +226,7 @@ class TotsTableComponent {
|
|
|
226
226
|
loadItems() {
|
|
227
227
|
var _a;
|
|
228
228
|
this.isLoading = true;
|
|
229
|
-
(_a = this.config.obs) === null || _a === void 0 ? void 0 : _a.pipe(tap(res => this.dataItems = res)).subscribe(res => this.isLoading = false);
|
|
229
|
+
(_a = this.config.obs) === null || _a === void 0 ? void 0 : _a.pipe(tap(res => this.dataItems = res)).pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined }))).subscribe(res => this.isLoading = false);
|
|
230
230
|
}
|
|
231
231
|
loadConfig() {
|
|
232
232
|
this.loadColumns();
|
|
@@ -237,12 +237,15 @@ class TotsTableComponent {
|
|
|
237
237
|
loadColumns() {
|
|
238
238
|
this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
|
|
239
239
|
}
|
|
240
|
+
getDataItems() {
|
|
241
|
+
return this.dataItems;
|
|
242
|
+
}
|
|
240
243
|
}
|
|
241
244
|
TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
242
|
-
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\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: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
245
|
+
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\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: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
243
246
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
|
|
244
247
|
type: Component,
|
|
245
|
-
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\n"] }]
|
|
248
|
+
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\n"] }]
|
|
246
249
|
}], propDecorators: { config: [{
|
|
247
250
|
type: Input
|
|
248
251
|
}], pageIndex: [{
|
|
@@ -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/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)\">\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, 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 column.order = column.order == '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.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\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","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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 { 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\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 this.config.query.page = action.item.pageIndex;\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 loadItems() {\n this.tableComp.loadItems();\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';\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';\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 ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule\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';\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","i5.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/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)\">\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, 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 column.order = column.order == '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.isLoading = true;\n 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","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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 { 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\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 this.config.query.page = action.item.pageIndex;\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 loadItems() {\n this.tableComp.loadItems();\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';\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';\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 ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule\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';\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","i5.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
|
package/fesm2020/tots-table.mjs
CHANGED
|
@@ -225,9 +225,9 @@ class TotsTableComponent {
|
|
|
225
225
|
}
|
|
226
226
|
loadItems() {
|
|
227
227
|
this.isLoading = true;
|
|
228
|
-
this.config.obs?.
|
|
229
|
-
pipe(tap(res => this.
|
|
230
|
-
subscribe(res => this.isLoading = false);
|
|
228
|
+
this.config.obs?.pipe(tap(res => this.dataItems = res))
|
|
229
|
+
.pipe(tap(res => this.onAction.emit({ key: 'loaded-items', item: undefined })))
|
|
230
|
+
.subscribe(res => this.isLoading = false);
|
|
231
231
|
}
|
|
232
232
|
loadConfig() {
|
|
233
233
|
this.loadColumns();
|
|
@@ -238,12 +238,15 @@ class TotsTableComponent {
|
|
|
238
238
|
loadColumns() {
|
|
239
239
|
this.displayColumns = this.config.columns.filter(c => c.is_show || c.is_show == undefined).map(c => c.key);
|
|
240
240
|
}
|
|
241
|
+
getDataItems() {
|
|
242
|
+
return this.dataItems;
|
|
243
|
+
}
|
|
241
244
|
}
|
|
242
245
|
TotsTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
243
|
-
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\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: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
246
|
+
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 *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\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: BasePrintColumnComponent, selector: "tots-base-print-column", inputs: ["column", "item", "onAction"] }] });
|
|
244
247
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.3", ngImport: i0, type: TotsTableComponent, decorators: [{
|
|
245
248
|
type: Component,
|
|
246
|
-
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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}\n"] }]
|
|
249
|
+
args: [{ selector: 'tots-table', template: "<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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}\n"] }]
|
|
247
250
|
}], propDecorators: { config: [{
|
|
248
251
|
type: Input
|
|
249
252
|
}], pageIndex: [{
|
|
@@ -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/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)\">\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, 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 column.order = column.order == '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.isLoading = true;\n this.config.obs?.\n pipe(tap(res => this.dataItems = res)).\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","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && hasPagination\" [pageIndex]=\"pageIndex\" [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 { 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\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 this.config.query.page = action.item.pageIndex;\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 loadItems() {\n this.tableComp.loadItems();\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';\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';\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 ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule\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';\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","i5.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/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)\">\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, 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 column.order = column.order == '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.isLoading = true;\n 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","<div class=\"tots-table-container\">\n <table *ngIf=\"dataItems\" mat-table [dataSource]=\"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.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)\" [ngClass]=\"{'tots-cell-selected': row.isSelected}\"></tr>\n \n <!-- Row shown when there is no matching data. -->\n <tr class=\"mat-row\" *matNoDataRow><td class=\"mat-cell\" colspan=\"100\">No data matching</td></tr>\n </table>\n\n <!-- Paginator -->\n <mat-paginator *ngIf=\"dataItems && 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 { 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\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 this.config.query.page = action.item.pageIndex;\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 loadItems() {\n this.tableComp.loadItems();\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';\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';\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 ],\n imports: [\n CommonModule,\n // Angular Material\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatMenuModule,\n MatCheckboxModule\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';\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","i5.BasePrintColumnComponent","i1.TotsTableComponent"],"mappings":"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"}
|
|
@@ -23,6 +23,7 @@ export declare class TotsTableComponent implements OnInit {
|
|
|
23
23
|
loadItems(): void;
|
|
24
24
|
loadConfig(): void;
|
|
25
25
|
loadColumns(): void;
|
|
26
|
+
getDataItems(): TotsListResponse<any> | undefined;
|
|
26
27
|
static ɵfac: i0.ɵɵFactoryDeclaration<TotsTableComponent, never>;
|
|
27
28
|
static ɵcmp: i0.ɵɵComponentDeclaration<TotsTableComponent, "tots-table", never, { "config": "config"; "pageIndex": "pageIndex"; "pageSize": "pageSize"; "hasPagination": "hasPagination"; }, { "onAction": "onAction"; }, never, never, false, never>;
|
|
28
29
|
}
|