ngx-aur-mat-table 0.0.36 → 0.0.38

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.
@@ -138,7 +138,7 @@
138
138
  configurable: true
139
139
  });
140
140
  NgxAurMatTableComponent.prototype.ngOnInit = function () {
141
- this.displayedColumns = this.tableConfig.map(function (tableColumn) { return tableColumn.text; });
141
+ this.displayedColumns = this.tableConfig.map(function (tableColumn) { return tableColumn.name; });
142
142
  if (this.rowActionable) {
143
143
  this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
144
144
  }
@@ -179,7 +179,7 @@
179
179
  return NgxAurMatTableComponent;
180
180
  }());
181
181
  NgxAurMatTableComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NgxAurMatTableComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
182
- NgxAurMatTableComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: i7.MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: i6.MatSort, descendants: true, static: true }], ngImport: i0__namespace, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.text\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.text\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.showText != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.text}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.showText != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1__namespace.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2__namespace.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3__namespace.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5__namespace.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6__namespace.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2__namespace.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2__namespace.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7__namespace.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.MatLabel, selector: "mat-label" }, { type: i9__namespace.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6__namespace.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2__namespace.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2__namespace.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2__namespace.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2__namespace.MatCellDef, selector: "[matCellDef]" }, { type: i2__namespace.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10__namespace.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2__namespace.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": DataPropertyGetterPipe } });
182
+ NgxAurMatTableComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: i7.MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: i6.MatSort, descendants: true, static: true }], ngImport: i0__namespace, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.name\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.name\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.text?.show != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.text?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.name}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.text?.show != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1__namespace.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2__namespace.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3__namespace.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4__namespace.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5__namespace.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6__namespace.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2__namespace.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2__namespace.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7__namespace.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8__namespace.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1__namespace.MatLabel, selector: "mat-label" }, { type: i9__namespace.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6__namespace.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2__namespace.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2__namespace.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2__namespace.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2__namespace.MatCellDef, selector: "[matCellDef]" }, { type: i2__namespace.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8__namespace.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10__namespace.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8__namespace.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2__namespace.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2__namespace.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": DataPropertyGetterPipe } });
183
183
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NgxAurMatTableComponent, decorators: [{
184
184
  type: i0.Component,
185
185
  args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-aur-mat-table.umd.js","sources":["../../../projects/ngx-aur-mat-table/src/lib/providers/SelectionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/providers/RowActionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/data-property-getter-pipe/data-property-getter.pipe.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.html","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.module.ts","../../../projects/ngx-aur-mat-table/src/lib/model/TableRow.ts","../../../projects/ngx-aur-mat-table/src/public-api.ts","../../../projects/ngx-aur-mat-table/src/ngx-aur-mat-table.ts"],"sourcesContent":["import {SelectionModel} from '@angular/cdk/collections';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {EventEmitter} from '@angular/core';\r\nimport {TableRow} from \"../model/TableRow\";\r\n\r\nexport interface SelectableContext {\r\n position?: 'start' | 'end';\r\n multiple?: boolean;\r\n}\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<TableRow<T>>;\r\n context: SelectableContext;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectableContext, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.context = ctx;\r\n this.selection = new SelectionModel<TableRow<T>>(ctx.multiple, []);\r\n this.tableDataSource = tableDataSource;\r\n this.initCheckboxColumn(columns);\r\n }\r\n\r\n initCheckboxColumn(columns: string[]) {\r\n if (this.context.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n\r\n bind(selected: EventEmitter<TableRow<T>[]>, onSelect: EventEmitter<TableRow<T>[]>, onDeselect: EventEmitter<TableRow<T>[]>) {\r\n this.selection.changed\r\n .subscribe(event => {\r\n if (event.added) {\r\n onSelect.emit(event.added);\r\n }\r\n if (event.removed) {\r\n onDeselect.emit(event.removed);\r\n }\r\n selected.emit(this.selection.selected);\r\n });\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.tableDataSource.data.forEach(row => this.selection.select(row));\r\n }\r\n\r\n isAllSelected(): boolean {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.tableDataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n}\r\n","export interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionContext {\r\n position?: 'start' | 'end';\r\n actions: ActionContext[];\r\n}\r\n\r\nexport interface ActionContext {\r\n icon: string;\r\n action: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionContext;\r\n\r\n constructor(ctx: RowActionContext, columns: string[]) {\r\n this.context = ctx;\r\n if (ctx.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dataPropertyGetter'\r\n})\r\nexport class DataPropertyGetterPipe implements PipeTransform {\r\n\r\n transform(object: any, keyName: string, ...args: unknown[]): unknown {\r\n return object[keyName];\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\nimport {TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectableContext, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionContext, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\n\n\n@Component({\n selector: 'aur-mat-table',\n templateUrl: './ngx-aur-mat-table.component.html',\n styleUrls: ['./ngx-aur-mat-table.component.scss']\n})\nexport class NgxAurMatTableComponent<T> implements OnInit, AfterViewInit {\n\n public tableDataSource = new MatTableDataSource<TableRow<T>>([]);\n public displayedColumns: string[] = [];\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n\n @Input() isPageable = false;\n @Input() isSortable = false;\n @Input() isFilterable = false;\n @Input() paginationSizes: number[] = [5, 10, 15];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionContext;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectableContext;\n @Output() selected = new EventEmitter<TableRow<T>[]>();\n @Output() onSelect = new EventEmitter<TableRow<T>[]>();\n @Output() onDeselect = new EventEmitter<TableRow<T>[]>();\n\n @Output() onRowClick = new EventEmitter<TableRow<T>>();\n\n @Input() tableConfig: TableConfig<any>[] = [];\n\n // this property needs to have a setter, to dynamically get changes from parent component\n @Input() set tableData(data: TableRow<T>[]) {\n this.setTableDataSource(data);\n }\n\n // @ts-ignore\n selectionProvider: SelectionProvider<T>;\n // @ts-ignore\n rowActionsProvider: RowActionProvider<T>;\n\n constructor() {\n }\n\n ngOnInit(): void {\n this.displayedColumns = this.tableConfig.map((tableColumn: TableConfig<any>) => tableColumn.text);\n if (this.rowActionable) {\n this.rowActionsProvider = new RowActionProvider<TableRow<T>>(this.rowActionable, this.displayedColumns);\n } else if (this.selectable) {\n this.selectionProvider = new SelectionProvider<T>(this.selectable, this.displayedColumns, this.tableDataSource);\n this.selectionProvider.bind(this.selected, this.onSelect, this.onDeselect);\n }\n }\n\n // we need this, in order to make pagination work with *ngIf\n ngAfterViewInit(): void {\n this.tableDataSource.paginator = this.matPaginator;\n }\n\n\n setTableDataSource(data: any) {\n this.tableDataSource = new MatTableDataSource<any>(data);\n this.tableDataSource.paginator = this.matPaginator;\n this.tableDataSource.sort = this.matSort;\n }\n\n applyFilter(event: Event) {\n const filterValue = (event.target as HTMLInputElement).value;\n this.tableDataSource.filter = filterValue.trim().toLowerCase();\n }\n\n sortTable(sortParameters: Sort) {\n // defining name of data property, to sort by, instead of column name\n // @ts-ignore\n sortParameters.active = this.tableConfig.find(column => column.name === sortParameters.active).dataKey;\n this.sort.emit(sortParameters);\n }\n\n emitRowAction(action: string, row: T, $event: MouseEvent) {\n $event.stopPropagation();\n this.onRowAction.emit({action, value: row});\n }\n\n masterToggle() {\n this.selectionProvider.masterToggle();\n }\n\n isAllSelected(): boolean {\n return this.selectionProvider.isAllSelected();\n }\n}\n","<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.text\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.text\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.showText != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.text}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.showText != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n","import {NgModule} from '@angular/core';\nimport {NgxAurMatTableComponent} from './ngx-aur-mat-table.component';\nimport {BrowserModule} from \"@angular/platform-browser\";\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTableModule} from \"@angular/material/table\";\nimport {MatPaginatorModule} from \"@angular/material/paginator\";\nimport {MatButtonModule} from \"@angular/material/button\";\nimport {MatInputModule} from \"@angular/material/input\";\nimport {MatSortModule} from \"@angular/material/sort\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {MatCheckboxModule} from \"@angular/material/checkbox\";\nimport {MatFormFieldModule} from \"@angular/material/form-field\";\nimport {DataPropertyGetterPipe} from \"./data-property-getter-pipe/data-property-getter.pipe\";\nimport {BrowserAnimationsModule} from \"@angular/platform-browser/animations\";\n\n\n@NgModule({\n declarations: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatInputModule,\n MatSortModule,\n MatTooltipModule,\n MatCheckboxModule,\n MatFormFieldModule\n ],\n exports: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ]\n})\nexport class NgxAurMatTableModule {\n}\n","export class TableRow<T> {\r\n constructor(public rowSrc: T) {\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-aur-mat-table\n */\n\nexport * from './lib/ngx-aur-mat-table.component';\nexport * from './lib/ngx-aur-mat-table.module';\nexport * from './lib/data-property-getter-pipe/data-property-getter.pipe';\nexport * from './lib/model/TableRow'\nexport * from './lib/model/TableConfig'\nexport * from './lib/model/TableConfig'\nexport * from './lib/providers/RowActionProvider'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["SelectionModel","i0","Pipe","MatTableDataSource","EventEmitter","MatPaginator","MatSort","i1","i2","i3","i4","i5","i6","i7","i8","i9","i10","i11.DataPropertyGetterPipe","Component","ViewChild","Input","Output","BrowserModule","BrowserAnimationsModule","MatIconModule","MatTableModule","MatPaginatorModule","MatButtonModule","MatInputModule","MatSortModule","MatTooltipModule","MatCheckboxModule","MatFormFieldModule","NgModule"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-aur-mat-table.umd.js","sources":["../../../projects/ngx-aur-mat-table/src/lib/providers/SelectionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/providers/RowActionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/data-property-getter-pipe/data-property-getter.pipe.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.html","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.module.ts","../../../projects/ngx-aur-mat-table/src/lib/model/TableRow.ts","../../../projects/ngx-aur-mat-table/src/public-api.ts","../../../projects/ngx-aur-mat-table/src/ngx-aur-mat-table.ts"],"sourcesContent":["import {SelectionModel} from '@angular/cdk/collections';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {EventEmitter} from '@angular/core';\r\nimport {TableRow} from \"../model/TableRow\";\r\n\r\nexport interface SelectableContext {\r\n position?: 'start' | 'end';\r\n multiple?: boolean;\r\n}\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<TableRow<T>>;\r\n context: SelectableContext;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectableContext, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.context = ctx;\r\n this.selection = new SelectionModel<TableRow<T>>(ctx.multiple, []);\r\n this.tableDataSource = tableDataSource;\r\n this.initCheckboxColumn(columns);\r\n }\r\n\r\n initCheckboxColumn(columns: string[]) {\r\n if (this.context.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n\r\n bind(selected: EventEmitter<TableRow<T>[]>, onSelect: EventEmitter<TableRow<T>[]>, onDeselect: EventEmitter<TableRow<T>[]>) {\r\n this.selection.changed\r\n .subscribe(event => {\r\n if (event.added) {\r\n onSelect.emit(event.added);\r\n }\r\n if (event.removed) {\r\n onDeselect.emit(event.removed);\r\n }\r\n selected.emit(this.selection.selected);\r\n });\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.tableDataSource.data.forEach(row => this.selection.select(row));\r\n }\r\n\r\n isAllSelected(): boolean {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.tableDataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n}\r\n","export interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionContext {\r\n position?: 'start' | 'end';\r\n actions: ActionContext[];\r\n}\r\n\r\nexport interface ActionContext {\r\n icon: string;\r\n action: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionContext;\r\n\r\n constructor(ctx: RowActionContext, columns: string[]) {\r\n this.context = ctx;\r\n if (ctx.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dataPropertyGetter'\r\n})\r\nexport class DataPropertyGetterPipe implements PipeTransform {\r\n\r\n transform(object: any, keyName: string, ...args: unknown[]): unknown {\r\n return object[keyName];\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\nimport {TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectableContext, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionContext, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\n\n\n@Component({\n selector: 'aur-mat-table',\n templateUrl: './ngx-aur-mat-table.component.html',\n styleUrls: ['./ngx-aur-mat-table.component.scss']\n})\nexport class NgxAurMatTableComponent<T> implements OnInit, AfterViewInit {\n\n public tableDataSource = new MatTableDataSource<TableRow<T>>([]);\n public displayedColumns: string[] = [];\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n\n @Input() isPageable = false;\n @Input() isSortable = false;\n @Input() isFilterable = false;\n @Input() paginationSizes: number[] = [5, 10, 15];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionContext;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectableContext;\n @Output() selected = new EventEmitter<TableRow<T>[]>();\n @Output() onSelect = new EventEmitter<TableRow<T>[]>();\n @Output() onDeselect = new EventEmitter<TableRow<T>[]>();\n\n @Output() onRowClick = new EventEmitter<TableRow<T>>();\n\n @Input() tableConfig: TableConfig<any>[] = [];\n\n // this property needs to have a setter, to dynamically get changes from parent component\n @Input() set tableData(data: TableRow<T>[]) {\n this.setTableDataSource(data);\n }\n\n // @ts-ignore\n selectionProvider: SelectionProvider<T>;\n // @ts-ignore\n rowActionsProvider: RowActionProvider<T>;\n\n constructor() {\n }\n\n ngOnInit(): void {\n this.displayedColumns = this.tableConfig.map((tableColumn: TableConfig<any>) => tableColumn.name);\n if (this.rowActionable) {\n this.rowActionsProvider = new RowActionProvider<TableRow<T>>(this.rowActionable, this.displayedColumns);\n } else if (this.selectable) {\n this.selectionProvider = new SelectionProvider<T>(this.selectable, this.displayedColumns, this.tableDataSource);\n this.selectionProvider.bind(this.selected, this.onSelect, this.onDeselect);\n }\n }\n\n // we need this, in order to make pagination work with *ngIf\n ngAfterViewInit(): void {\n this.tableDataSource.paginator = this.matPaginator;\n }\n\n\n setTableDataSource(data: any) {\n this.tableDataSource = new MatTableDataSource<any>(data);\n this.tableDataSource.paginator = this.matPaginator;\n this.tableDataSource.sort = this.matSort;\n }\n\n applyFilter(event: Event) {\n const filterValue = (event.target as HTMLInputElement).value;\n this.tableDataSource.filter = filterValue.trim().toLowerCase();\n }\n\n sortTable(sortParameters: Sort) {\n // defining name of data property, to sort by, instead of column name\n // @ts-ignore\n sortParameters.active = this.tableConfig.find(column => column.name === sortParameters.active).dataKey;\n this.sort.emit(sortParameters);\n }\n\n emitRowAction(action: string, row: T, $event: MouseEvent) {\n $event.stopPropagation();\n this.onRowAction.emit({action, value: row});\n }\n\n masterToggle() {\n this.selectionProvider.masterToggle();\n }\n\n isAllSelected(): boolean {\n return this.selectionProvider.isAllSelected();\n }\n}\n","<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.name\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.name\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.text?.show != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.text?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.name}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.text?.show != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n","import {NgModule} from '@angular/core';\nimport {NgxAurMatTableComponent} from './ngx-aur-mat-table.component';\nimport {BrowserModule} from \"@angular/platform-browser\";\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTableModule} from \"@angular/material/table\";\nimport {MatPaginatorModule} from \"@angular/material/paginator\";\nimport {MatButtonModule} from \"@angular/material/button\";\nimport {MatInputModule} from \"@angular/material/input\";\nimport {MatSortModule} from \"@angular/material/sort\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {MatCheckboxModule} from \"@angular/material/checkbox\";\nimport {MatFormFieldModule} from \"@angular/material/form-field\";\nimport {DataPropertyGetterPipe} from \"./data-property-getter-pipe/data-property-getter.pipe\";\nimport {BrowserAnimationsModule} from \"@angular/platform-browser/animations\";\n\n\n@NgModule({\n declarations: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatInputModule,\n MatSortModule,\n MatTooltipModule,\n MatCheckboxModule,\n MatFormFieldModule\n ],\n exports: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ]\n})\nexport class NgxAurMatTableModule {\n}\n","export class TableRow<T> {\r\n constructor(public rowSrc: T) {\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-aur-mat-table\n */\n\nexport * from './lib/ngx-aur-mat-table.component';\nexport * from './lib/ngx-aur-mat-table.module';\nexport * from './lib/data-property-getter-pipe/data-property-getter.pipe';\nexport * from './lib/model/TableRow'\nexport * from './lib/model/TableConfig'\nexport * from './lib/model/TableConfig'\nexport * from './lib/providers/RowActionProvider'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["SelectionModel","i0","Pipe","MatTableDataSource","EventEmitter","MatPaginator","MatSort","i1","i2","i3","i4","i5","i6","i7","i8","i9","i10","i11.DataPropertyGetterPipe","Component","ViewChild","Input","Output","BrowserModule","BrowserAnimationsModule","MatIconModule","MatTableModule","MatPaginatorModule","MatButtonModule","MatInputModule","MatSortModule","MatTooltipModule","MatCheckboxModule","MatFormFieldModule","NgModule"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL21vZGVsL1RhYmxlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFRhYmxlQ29uZmlnPFQ+IHtcclxuICAvKiogY29sdW1uIHRpdGxlIHRleHQgKi9cclxuICB0ZXh0OiBzdHJpbmc7XHJcblxyXG4gIC8qKiBjb2x1bW4ga2V5IGluIGRhdGEgc291cmNlICovXHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgc29ydD86IFNvcnRDb25maWc7XHJcbiAgaGVhZGVyQ29sdW1uPzogQ29sdW1uQ29uZmlnPHN0cmluZz47XHJcbiAgdmFsdWVDb2x1bW4/OiBDb2x1bW5Db25maWc8KHZhbHVlOiBUKSA9PiBzdHJpbmc+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEljb25Db25maWc8VD4ge1xyXG4gIC8qKiBpY29uIG5hbWUgKi9cclxuICBuYW1lOiBUO1xyXG5cclxuICAvKiogaWNvbiBjb2xvciBkZWZhdWx0IGJsYWNrICovXHJcbiAgY29sb3I/OiBUO1xyXG5cclxuICAvKiogaWNvbiB0b29sdGlwIGlmIG51bGwgZGlzYWJsZWQgKi9cclxuICB0b29sdGlwPzogVDtcclxuXHJcbiAgcG9zaXRpb24/OiAncmlnaHQnIHwgJ2xlZnQnO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIENvbHVtbkNvbmZpZzxUPiB7XHJcblxyXG4gIC8qKiBzZXR0aW5ncyBmb3IgaWNvbiBpbiBjb2x1bW4gKi9cclxuICBpY29uPzogSWNvbkNvbmZpZzxUPjtcclxuXHJcbiAgLyoqIHRvb2x0aXAgZm9yIGNvbHVtbiB0ZXh0ICovXHJcbiAgdG9vbHRpcD86IHN0cmluZztcclxuXHJcbiAgLyoqIHNob3cgdGV4dCBpbiB0aGUgY29sdW1uIGRlZmF1bHQgdHJ1ZSAqL1xyXG4gIHNob3dUZXh0PzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTb3J0Q29uZmlnIHtcclxuICBwb3NpdGlvbj86ICdyaWdodCcgfCAnbGVmdCc7XHJcbiAgZW5hYmxlPzogYm9vbGVhbjtcclxufVxyXG4iXX0=
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVDb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL21vZGVsL1RhYmxlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgaW50ZXJmYWNlIFRhYmxlQ29uZmlnPFQ+IHtcclxuICAvKiogY29sdW1uIHRpdGxlIHRleHQgKi9cclxuICBuYW1lOiBzdHJpbmc7XHJcblxyXG4gIC8qKiBjb2x1bW4ga2V5IGluIGRhdGEgc291cmNlICovXHJcbiAga2V5OiBzdHJpbmc7XHJcbiAgc29ydD86IFNvcnRDb25maWc7XHJcbiAgaGVhZGVyQ29sdW1uPzogQ29sdW1uQ29uZmlnPHN0cmluZz47XHJcbiAgdmFsdWVDb2x1bW4/OiBDb2x1bW5Db25maWc8KHZhbHVlOiBUKSA9PiBzdHJpbmc+O1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEljb25Db25maWc8VD4ge1xyXG4gIC8qKiBpY29uIG5hbWUgKi9cclxuICBuYW1lOiBUO1xyXG5cclxuICAvKiogaWNvbiBjb2xvciBkZWZhdWx0IGJsYWNrICovXHJcbiAgY29sb3I/OiBUO1xyXG5cclxuICAvKiogaWNvbiB0b29sdGlwIGlmIG51bGwgZGlzYWJsZWQgKi9cclxuICB0b29sdGlwPzogVDtcclxuXHJcbiAgcG9zaXRpb24/OiAncmlnaHQnIHwgJ2xlZnQnO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFRleHRDb25maWc8VD4ge1xyXG4gIC8qKiBkZWZhdWx0IHRydWUqL1xyXG4gIHNob3c/OiBib29sZWFuO1xyXG4gIC8qKiB0b29sdGlwICovXHJcbiAgdG9vbHRpcD86IFQ7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQ29sdW1uQ29uZmlnPFQ+IHtcclxuXHJcbiAgLyoqIHNldHRpbmdzIGZvciBpY29uIGluIGNvbHVtbiAqL1xyXG4gIGljb24/OiBJY29uQ29uZmlnPFQ+O1xyXG5cclxuICB0ZXh0PzogVGV4dENvbmZpZzxUPjtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTb3J0Q29uZmlnIHtcclxuICBwb3NpdGlvbj86ICdyaWdodCcgfCAnbGVmdCc7XHJcbiAgZW5hYmxlPzogYm9vbGVhbjtcclxufVxyXG4iXX0=
@@ -38,7 +38,7 @@ export class NgxAurMatTableComponent {
38
38
  this.setTableDataSource(data);
39
39
  }
40
40
  ngOnInit() {
41
- this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.text);
41
+ this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.name);
42
42
  if (this.rowActionable) {
43
43
  this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
44
44
  }
@@ -78,7 +78,7 @@ export class NgxAurMatTableComponent {
78
78
  }
79
79
  }
80
80
  NgxAurMatTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
81
- NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.text\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.text\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.showText != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.text}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.showText != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2.MatCellDef, selector: "[matCellDef]" }, { type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": i11.DataPropertyGetterPipe } });
81
+ NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.name\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.name\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.text?.show != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.text?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.name}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.text?.show != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2.MatCellDef, selector: "[matCellDef]" }, { type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": i11.DataPropertyGetterPipe } });
82
82
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
83
83
  type: Component,
84
84
  args: [{
@@ -123,4 +123,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
123
123
  }], tableData: [{
124
124
  type: Input
125
125
  }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWF1ci1tYXQtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RyxPQUFPLEVBQUMsT0FBTyxFQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pELE9BQU8sRUFBb0IsaUJBQWlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRixPQUFPLEVBQWdDLGlCQUFpQixFQUFDLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLHVCQUF1QjtJQXlDbEM7UUF2Q08sb0JBQWUsR0FBRyxJQUFJLGtCQUFrQixDQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQzFELHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQU05QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsb0JBQWUsR0FBYSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpDLFNBQUksR0FBdUIsSUFBSSxZ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YSxFQUFFLENBQUM7SUFDaEQsQ0FBQzs7cUhBekZVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLDhnQkFLdkIsWUFBWSwwRUFFWixPQUFPLDhEQ3RCcEIsbS9JQXdHQTs0RkR6RmEsdUJBQXVCO2tCQUxuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztpQkFDbEQ7MEVBTTJDLFlBQVk7c0JBQXJELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFFSixPQUFPO3NCQUExQyxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRXpCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFSSxJQUFJO3NCQUFiLE1BQU07Z0JBR0UsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUcsVUFBVTtzQkFBbkIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUdPLFNBQVM7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RhYmxlQ29uZmlnfSBmcm9tICcuL21vZGVsL1RhYmxlQ29uZmlnJztcbmltcG9ydCB7TWF0U29ydCwgU29ydH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQge01hdFRhYmxlRGF0YVNvdXJjZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHtNYXRQYWdpbmF0b3J9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQge1NlbGVjdGFibGVDb250ZXh0LCBTZWxlY3Rpb25Qcm92aWRlcn0gZnJvbSAnLi9wcm92aWRlcnMvU2VsZWN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IHtBY3Rpb25FdmVudCwgUm93QWN0aW9uQ29udGV4dCwgUm93QWN0aW9uUHJvdmlkZXJ9IGZyb20gJy4vcHJvdmlkZXJzL1Jvd0FjdGlvblByb3ZpZGVyJztcbmltcG9ydCB7VGFibGVSb3d9IGZyb20gXCIuL21vZGVsL1RhYmxlUm93XCI7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVyLW1hdC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmd4QXVyTWF0VGFibGVDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHB1YmxpYyB0YWJsZURhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPFRhYmxlUm93PFQ+PihbXSk7XG4gIHB1YmxpYyBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSA9IFtdO1xuICAvLyBAdHMtaWdub3JlXG4gIEBWaWV3Q2hpbGQoTWF0UGFnaW5hdG9yLCB7c3RhdGljOiBmYWxzZX0pIG1hdFBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuICAvLyBAdHMtaWdub3JlXG4gIEBWaWV3Q2hpbGQoTWF0U29ydCwge3N0YXRpYzogdHJ1ZX0pIG1hdFNvcnQ6IE1hdFNvcnQ7XG5cbiAgQElucHV0KCkgaXNQYWdlYWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBpc1NvcnRhYmxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRmlsdGVyYWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBwYWdpbmF0aW9uU2l6ZXM6IG51bWJlcltdID0gWzUsIDEwLCAxNV07XG4gIEBJbnB1dCgpIGRlZmF1bHRQYWdlU2l6ZSA9IHRoaXMucGFnaW5hdGlvblNpemVzWzFdO1xuXG4gIEBPdXRwdXQoKSBzb3J0OiBFdmVudEVtaXR0ZXI8U29ydD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBASW5wdXQoKSByb3dBY3Rpb25hYmxlOiBSb3dBY3Rpb25Db250ZXh0O1xuICBAT3V0cHV0KCkgb25Sb3dBY3Rpb246IEV2ZW50RW1pdHRlcjxBY3Rpb25FdmVudDxUPj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGlvbkV2ZW50PFQ+PigpO1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgQElucHV0KCkgc2VsZWN0YWJsZTogU2VsZWN0YWJsZUNvbnRleHQ7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD5bXT4oKTtcbiAgQE91dHB1dCgpIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZVJvdzxUPltdPigpO1xuICBAT3V0cHV0KCkgb25EZXNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD5bXT4oKTtcblxuICBAT3V0cHV0KCkgb25Sb3dDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD4+KCk7XG5cbiAgQElucHV0KCkgdGFibGVDb25maWc6IFRhYmxlQ29uZmlnPGFueT5bXSA9IFtdO1xuXG4gIC8vIHRoaXMgcHJvcGVydHkgbmVlZHMgdG8gaGF2ZSBhIHNldHRlciwgdG8gZHluYW1pY2FsbHkgZ2V0IGNoYW5nZXMgZnJvbSBwYXJlbnQgY29tcG9uZW50XG4gIEBJbnB1dCgpIHNldCB0YWJsZURhdGEoZGF0YTogVGFibGVSb3c8VD5bXSkge1xuICAgIHRoaXMuc2V0VGFibGVEYXRhU291cmNlKGRhdGEpO1xuICB9XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBzZWxlY3Rpb25Qcm92aWRlcjogU2VsZWN0aW9uUHJvdmlkZXI8VD47XG4gIC8vIEB0cy1pZ25vcmVcbiAgcm93QWN0aW9uc1Byb3ZpZGVyOiBSb3dBY3Rpb25Qcm92aWRlcjxUPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IHRoaXMudGFibGVDb25maWcubWFwKCh0YWJsZUNvbHVtbjogVGFibGVDb25maWc8YW55PikgPT4gdGFibGVDb2x1bW4udGV4dCk7XG4gICAgaWYgKHRoaXMucm93QWN0aW9uYWJsZSkge1xuICAgICAgdGhpcy5yb3dBY3Rpb25zUHJvdmlkZXIgPSBuZXcgUm93QWN0aW9uUHJvdmlkZXI8VGFibGVSb3c8VD4+KHRoaXMucm93QWN0aW9uYWJsZSwgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0YWJsZSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlciA9IG5ldyBTZWxlY3Rpb25Qcm92aWRlcjxUPih0aGlzLnNlbGVjdGFibGUsIHRoaXMuZGlzcGxheWVkQ29sdW1ucywgdGhpcy50YWJsZURhdGFTb3VyY2UpO1xuICAgICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlci5iaW5kKHRoaXMuc2VsZWN0ZWQsIHRoaXMub25TZWxlY3QsIHRoaXMub25EZXNlbGVjdCk7XG4gICAgfVxuICB9XG5cbiAgLy8gd2UgbmVlZCB0aGlzLCBpbiBvcmRlciB0byBtYWtlIHBhZ2luYXRpb24gd29yayB3aXRoICpuZ0lmXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLm1hdFBhZ2luYXRvcjtcbiAgfVxuXG5cbiAgc2V0VGFibGVEYXRhU291cmNlKGRhdGE6IGFueSkge1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KGRhdGEpO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLnBhZ2luYXRvciA9IHRoaXMubWF0UGFnaW5hdG9yO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLnNvcnQgPSB0aGlzLm1hdFNvcnQ7XG4gIH1cblxuICBhcHBseUZpbHRlcihldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBzb3J0VGFibGUoc29ydFBhcmFtZXRlcnM6IFNvcnQpIHtcbiAgICAvLyBkZWZpbmluZyBuYW1lIG9mIGRhdGEgcHJvcGVydHksIHRvIHNvcnQgYnksIGluc3RlYWQgb2YgY29sdW1uIG5hbWVcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgc29ydFBhcmFtZXRlcnMuYWN0aXZlID0gdGhpcy50YWJsZUNvbmZpZy5maW5kKGNvbHVtbiA9PiBjb2x1bW4ubmFtZSA9PT0gc29ydFBhcmFtZXRlcnMuYWN0aXZlKS5kYXRhS2V5O1xuICAgIHRoaXMuc29ydC5lbWl0KHNvcnRQYXJhbWV0ZXJzKTtcbiAgfVxuXG4gIGVtaXRSb3dBY3Rpb24oYWN0aW9uOiBzdHJpbmcsIHJvdzogVCwgJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub25Sb3dBY3Rpb24uZW1pdCh7YWN0aW9uLCB2YWx1ZTogcm93fSk7XG4gIH1cblxuICBtYXN0ZXJUb2dnbGUoKSB7XG4gICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlci5tYXN0ZXJUb2dnbGUoKTtcbiAgfVxuXG4gIGlzQWxsU2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIuaXNBbGxTZWxlY3RlZCgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIEZpbHRlciAtLT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNGaWx0ZXJhYmxlXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+RmlsdGVyPC9tYXQtbGFiZWw+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCAoa2V5dXApPVwiYXBwbHlGaWx0ZXIoJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwiZmlsdGVyXCI+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIFRhYmxlIC0tPlxyXG4gIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwidGFibGVEYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJzb3J0VGFibGUoJGV2ZW50KVwiPlxyXG5cclxuICAgIDwhLS0gICAgICAgIHNlbGVjdGlvbi1jb2x1bW4tLT5cclxuICAgIDxuZy1jb250YWluZXIgW21hdENvbHVtbkRlZl09XCJzZWxlY3Rpb25Qcm92aWRlci5DT0xVTU5fTkFNRVwiICpuZ0lmPVwic2VsZWN0aW9uUHJvdmlkZXJcIj5cclxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiJGV2ZW50ID8gbWFzdGVyVG9nZ2xlKCkgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvblByb3ZpZGVyLnNlbGVjdGlvbi5oYXNWYWx1ZSgpICYmIGlzQWxsU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiAhaXNBbGxTZWxlY3RlZCgpXCI+XHJcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24udG9nZ2xlKHJvdykgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvblByb3ZpZGVyLnNlbGVjdGlvbi5pc1NlbGVjdGVkKHJvdylcIj5cclxuICAgICAgICA8L21hdC1jaGVja2JveD5cclxuICAgICAgPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gYWN0aW9uIGNvbHVtbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyb3dBY3Rpb25zUHJvdmlkZXJcIiBbbWF0Q29sdW1uRGVmXT1cInJvd0FjdGlvbnNQcm92aWRlci5DT0xVTU5fTkFNRVwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPjwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJlbWl0Um93QWN0aW9uKGFjdGlvbi5hY3Rpb24sIGVsZW1lbnQsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiYWN0aW9uLnRvb2x0aXA/IGFjdGlvbi50b29sdGlwOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIHJvd0FjdGlvbmFibGUuYWN0aW9uc1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIFtzdHlsZS5jb2xvcl09XCJhY3Rpb24uY29sb3JcIj5cclxuICAgICAgICAgICAge3thY3Rpb24uaWNvbn19XHJcbiAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uQ29uZmlnIG9mIHRhYmxlQ29uZmlnXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW5Db25maWcudGV4dFwiPlxyXG5cclxuICAgICAgPCEtLSBpZiBzb3J0YWJsZSBjb2x1bW4gaGVhZGVyIC0tPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uQ29uZmlnLnNvcnQ/LmVuYWJsZTsgZWxzZSBub3RTb3J0YWJsZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgW21hdC1zb3J0LWhlYWRlcl09XCJjb2x1bW5Db25maWcudGV4dFwiXHJcbiAgICAgICAgICAgIFthcnJvd1Bvc2l0aW9uXT1cImNvbHVtbkNvbmZpZy5zb3J0Py5wb3NpdGlvbiA9PT0gJ3JpZ2h0JyA/ICdiZWZvcmUnIDogJ2FmdGVyJ1wiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclZhbHVlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwhLS0gZWxzZSBub3Qgc29ydGFibGUgLS0+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm90U29ydGFibGU+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZlxyXG4gICAgICAgICAgICBbY2xhc3MudGV4dC1yaWdodF09XCJjb2x1bW5Db25maWcuc29ydD8ucG9zaXRpb24gPT0gJ3JpZ2h0J1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclZhbHVlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDwhLS0gICAgICBoZWFkZXIgdmFsdWUtLT5cclxuICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJWYWx1ZT5cclxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uXCJcclxuICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uaWNvbj8udG9vbHRpcD8udG9TdHJpbmcoKSB8fCAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uPy5jb2xvclwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uPy5uYW1lfX1cclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uc2hvd1RleHQgIT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/LnRvb2x0aXA/LnRvU3RyaW5nKCkgfHwgJydcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7Y29sdW1uQ29uZmlnLnRleHR9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDwhLS0gY29sdW1uIGRhdGEgLS0+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XHJcblxyXG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvbj8udG9vbHRpcD8gY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29uPy50b29sdGlwIShlbGVtZW50KTogJydcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29uPy5jb2xvcj8gY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29uPy5jb2xvciEoZWxlbWVudCk6IG51bGxcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7Y29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29ufX1cclxuICAgICAgICA8L21hdC1pY29uPlxyXG5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uc2hvd1RleHQgIT0gZmFsc2VcIj5cclxuICAgICAgICAgIHt7ZWxlbWVudCB8IGRhdGFQcm9wZXJ0eUdldHRlcjogY29sdW1uQ29uZmlnLmtleX19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cclxuICAgIDx0ciBtYXQtcm93IChjbGljayk9XCJvblJvd0FjdGlvbi5lbWl0KHJvdylcIiAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogZGlzcGxheWVkQ29sdW1ucztcIj48L3RyPlxyXG4gIDwvdGFibGU+XHJcblxyXG4gIDwhLS0gUGFnaW5hdGlvbiAtLT5cclxuICA8bWF0LXBhZ2luYXRvciAqbmdJZj1cImlzUGFnZWFibGVcIlxyXG4gICAgICAgICAgICAgICAgIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnaW5hdGlvblNpemVzXCJcclxuICAgICAgICAgICAgICAgICBbcGFnZVNpemVdPVwiZGVmYXVsdFBhZ2VTaXplXCJcclxuICAgICAgICAgICAgICAgICBzaG93Rmlyc3RMYXN0QnV0dG9ucz5cclxuICA8L21hdC1wYWdpbmF0b3I+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
126
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWF1ci1tYXQtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RyxPQUFPLEVBQUMsT0FBTyxFQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pELE9BQU8sRUFBb0IsaUJBQWlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUNuRixPQUFPLEVBQWdDLGlCQUFpQixFQUFDLE1BQU0sK0JBQStCLENBQUM7Ozs7Ozs7Ozs7Ozs7QUFTL0YsTUFBTSxPQUFPLHVCQUF1QjtJQXlDbEM7UUF2Q08sb0JBQWUsR0FBRyxJQUFJLGtCQUFrQixDQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQzFELHFCQUFnQixHQUFhLEVBQUUsQ0FBQztRQU05QixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsaUJBQVksR0FBRyxLQUFLLENBQUM7UUFDckIsb0JBQWUsR0FBYSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEMsb0JBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpDLFNBQUksR0FBdUIsSUFBSSxZ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YSxFQUFFLENBQUM7SUFDaEQsQ0FBQzs7cUhBekZVLHVCQUF1Qjt5R0FBdkIsdUJBQXVCLDhnQkFLdkIsWUFBWSwwRUFFWixPQUFPLDhEQ3RCcEIsNGdKQXdHQTs0RkR6RmEsdUJBQXVCO2tCQUxuQyxTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxlQUFlO29CQUN6QixXQUFXLEVBQUUsb0NBQW9DO29CQUNqRCxTQUFTLEVBQUUsQ0FBQyxvQ0FBb0MsQ0FBQztpQkFDbEQ7MEVBTTJDLFlBQVk7c0JBQXJELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUMsTUFBTSxFQUFFLEtBQUssRUFBQztnQkFFSixPQUFPO3NCQUExQyxTQUFTO3VCQUFDLE9BQU8sRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUM7Z0JBRXpCLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFFSSxJQUFJO3NCQUFiLE1BQU07Z0JBR0UsYUFBYTtzQkFBckIsS0FBSztnQkFDSSxXQUFXO3NCQUFwQixNQUFNO2dCQUdFLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0ksUUFBUTtzQkFBakIsTUFBTTtnQkFDRyxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFVBQVU7c0JBQW5CLE1BQU07Z0JBRUcsVUFBVTtzQkFBbkIsTUFBTTtnQkFFRSxXQUFXO3NCQUFuQixLQUFLO2dCQUdPLFNBQVM7c0JBQXJCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0FmdGVyVmlld0luaXQsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25Jbml0LCBPdXRwdXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1RhYmxlQ29uZmlnfSBmcm9tICcuL21vZGVsL1RhYmxlQ29uZmlnJztcbmltcG9ydCB7TWF0U29ydCwgU29ydH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQge01hdFRhYmxlRGF0YVNvdXJjZX0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvdGFibGUnO1xuaW1wb3J0IHtNYXRQYWdpbmF0b3J9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQge1NlbGVjdGFibGVDb250ZXh0LCBTZWxlY3Rpb25Qcm92aWRlcn0gZnJvbSAnLi9wcm92aWRlcnMvU2VsZWN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IHtBY3Rpb25FdmVudCwgUm93QWN0aW9uQ29udGV4dCwgUm93QWN0aW9uUHJvdmlkZXJ9IGZyb20gJy4vcHJvdmlkZXJzL1Jvd0FjdGlvblByb3ZpZGVyJztcbmltcG9ydCB7VGFibGVSb3d9IGZyb20gXCIuL21vZGVsL1RhYmxlUm93XCI7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVyLW1hdC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTmd4QXVyTWF0VGFibGVDb21wb25lbnQ8VD4gaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuXG4gIHB1YmxpYyB0YWJsZURhdGFTb3VyY2UgPSBuZXcgTWF0VGFibGVEYXRhU291cmNlPFRhYmxlUm93PFQ+PihbXSk7XG4gIHB1YmxpYyBkaXNwbGF5ZWRDb2x1bW5zOiBzdHJpbmdbXSA9IFtdO1xuICAvLyBAdHMtaWdub3JlXG4gIEBWaWV3Q2hpbGQoTWF0UGFnaW5hdG9yLCB7c3RhdGljOiBmYWxzZX0pIG1hdFBhZ2luYXRvcjogTWF0UGFnaW5hdG9yO1xuICAvLyBAdHMtaWdub3JlXG4gIEBWaWV3Q2hpbGQoTWF0U29ydCwge3N0YXRpYzogdHJ1ZX0pIG1hdFNvcnQ6IE1hdFNvcnQ7XG5cbiAgQElucHV0KCkgaXNQYWdlYWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBpc1NvcnRhYmxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRmlsdGVyYWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBwYWdpbmF0aW9uU2l6ZXM6IG51bWJlcltdID0gWzUsIDEwLCAxNV07XG4gIEBJbnB1dCgpIGRlZmF1bHRQYWdlU2l6ZSA9IHRoaXMucGFnaW5hdGlvblNpemVzWzFdO1xuXG4gIEBPdXRwdXQoKSBzb3J0OiBFdmVudEVtaXR0ZXI8U29ydD4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBASW5wdXQoKSByb3dBY3Rpb25hYmxlOiBSb3dBY3Rpb25Db250ZXh0O1xuICBAT3V0cHV0KCkgb25Sb3dBY3Rpb246IEV2ZW50RW1pdHRlcjxBY3Rpb25FdmVudDxUPj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGlvbkV2ZW50PFQ+PigpO1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgQElucHV0KCkgc2VsZWN0YWJsZTogU2VsZWN0YWJsZUNvbnRleHQ7XG4gIEBPdXRwdXQoKSBzZWxlY3RlZCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD5bXT4oKTtcbiAgQE91dHB1dCgpIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUYWJsZVJvdzxUPltdPigpO1xuICBAT3V0cHV0KCkgb25EZXNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD5bXT4oKTtcblxuICBAT3V0cHV0KCkgb25Sb3dDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8VGFibGVSb3c8VD4+KCk7XG5cbiAgQElucHV0KCkgdGFibGVDb25maWc6IFRhYmxlQ29uZmlnPGFueT5bXSA9IFtdO1xuXG4gIC8vIHRoaXMgcHJvcGVydHkgbmVlZHMgdG8gaGF2ZSBhIHNldHRlciwgdG8gZHluYW1pY2FsbHkgZ2V0IGNoYW5nZXMgZnJvbSBwYXJlbnQgY29tcG9uZW50XG4gIEBJbnB1dCgpIHNldCB0YWJsZURhdGEoZGF0YTogVGFibGVSb3c8VD5bXSkge1xuICAgIHRoaXMuc2V0VGFibGVEYXRhU291cmNlKGRhdGEpO1xuICB9XG5cbiAgLy8gQHRzLWlnbm9yZVxuICBzZWxlY3Rpb25Qcm92aWRlcjogU2VsZWN0aW9uUHJvdmlkZXI8VD47XG4gIC8vIEB0cy1pZ25vcmVcbiAgcm93QWN0aW9uc1Byb3ZpZGVyOiBSb3dBY3Rpb25Qcm92aWRlcjxUPjtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheWVkQ29sdW1ucyA9IHRoaXMudGFibGVDb25maWcubWFwKCh0YWJsZUNvbHVtbjogVGFibGVDb25maWc8YW55PikgPT4gdGFibGVDb2x1bW4ubmFtZSk7XG4gICAgaWYgKHRoaXMucm93QWN0aW9uYWJsZSkge1xuICAgICAgdGhpcy5yb3dBY3Rpb25zUHJvdmlkZXIgPSBuZXcgUm93QWN0aW9uUHJvdmlkZXI8VGFibGVSb3c8VD4+KHRoaXMucm93QWN0aW9uYWJsZSwgdGhpcy5kaXNwbGF5ZWRDb2x1bW5zKTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuc2VsZWN0YWJsZSkge1xuICAgICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlciA9IG5ldyBTZWxlY3Rpb25Qcm92aWRlcjxUPih0aGlzLnNlbGVjdGFibGUsIHRoaXMuZGlzcGxheWVkQ29sdW1ucywgdGhpcy50YWJsZURhdGFTb3VyY2UpO1xuICAgICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlci5iaW5kKHRoaXMuc2VsZWN0ZWQsIHRoaXMub25TZWxlY3QsIHRoaXMub25EZXNlbGVjdCk7XG4gICAgfVxuICB9XG5cbiAgLy8gd2UgbmVlZCB0aGlzLCBpbiBvcmRlciB0byBtYWtlIHBhZ2luYXRpb24gd29yayB3aXRoICpuZ0lmXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLm1hdFBhZ2luYXRvcjtcbiAgfVxuXG5cbiAgc2V0VGFibGVEYXRhU291cmNlKGRhdGE6IGFueSkge1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxhbnk+KGRhdGEpO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLnBhZ2luYXRvciA9IHRoaXMubWF0UGFnaW5hdG9yO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLnNvcnQgPSB0aGlzLm1hdFNvcnQ7XG4gIH1cblxuICBhcHBseUZpbHRlcihldmVudDogRXZlbnQpIHtcbiAgICBjb25zdCBmaWx0ZXJWYWx1ZSA9IChldmVudC50YXJnZXQgYXMgSFRNTElucHV0RWxlbWVudCkudmFsdWU7XG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UuZmlsdGVyID0gZmlsdGVyVmFsdWUudHJpbSgpLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBzb3J0VGFibGUoc29ydFBhcmFtZXRlcnM6IFNvcnQpIHtcbiAgICAvLyBkZWZpbmluZyBuYW1lIG9mIGRhdGEgcHJvcGVydHksIHRvIHNvcnQgYnksIGluc3RlYWQgb2YgY29sdW1uIG5hbWVcbiAgICAvLyBAdHMtaWdub3JlXG4gICAgc29ydFBhcmFtZXRlcnMuYWN0aXZlID0gdGhpcy50YWJsZUNvbmZpZy5maW5kKGNvbHVtbiA9PiBjb2x1bW4ubmFtZSA9PT0gc29ydFBhcmFtZXRlcnMuYWN0aXZlKS5kYXRhS2V5O1xuICAgIHRoaXMuc29ydC5lbWl0KHNvcnRQYXJhbWV0ZXJzKTtcbiAgfVxuXG4gIGVtaXRSb3dBY3Rpb24oYWN0aW9uOiBzdHJpbmcsIHJvdzogVCwgJGV2ZW50OiBNb3VzZUV2ZW50KSB7XG4gICAgJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIHRoaXMub25Sb3dBY3Rpb24uZW1pdCh7YWN0aW9uLCB2YWx1ZTogcm93fSk7XG4gIH1cblxuICBtYXN0ZXJUb2dnbGUoKSB7XG4gICAgdGhpcy5zZWxlY3Rpb25Qcm92aWRlci5tYXN0ZXJUb2dnbGUoKTtcbiAgfVxuXG4gIGlzQWxsU2VsZWN0ZWQoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIuaXNBbGxTZWxlY3RlZCgpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIEZpbHRlciAtLT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNGaWx0ZXJhYmxlXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+RmlsdGVyPC9tYXQtbGFiZWw+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCAoa2V5dXApPVwiYXBwbHlGaWx0ZXIoJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwiZmlsdGVyXCI+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIFRhYmxlIC0tPlxyXG4gIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwidGFibGVEYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJzb3J0VGFibGUoJGV2ZW50KVwiPlxyXG5cclxuICAgIDwhLS0gICAgICAgIHNlbGVjdGlvbi1jb2x1bW4tLT5cclxuICAgIDxuZy1jb250YWluZXIgW21hdENvbHVtbkRlZl09XCJzZWxlY3Rpb25Qcm92aWRlci5DT0xVTU5fTkFNRVwiICpuZ0lmPVwic2VsZWN0aW9uUHJvdmlkZXJcIj5cclxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiJGV2ZW50ID8gbWFzdGVyVG9nZ2xlKCkgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvblByb3ZpZGVyLnNlbGVjdGlvbi5oYXNWYWx1ZSgpICYmIGlzQWxsU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiAhaXNBbGxTZWxlY3RlZCgpXCI+XHJcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24udG9nZ2xlKHJvdykgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvblByb3ZpZGVyLnNlbGVjdGlvbi5pc1NlbGVjdGVkKHJvdylcIj5cclxuICAgICAgICA8L21hdC1jaGVja2JveD5cclxuICAgICAgPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gYWN0aW9uIGNvbHVtbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyb3dBY3Rpb25zUHJvdmlkZXJcIiBbbWF0Q29sdW1uRGVmXT1cInJvd0FjdGlvbnNQcm92aWRlci5DT0xVTU5fTkFNRVwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPjwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJlbWl0Um93QWN0aW9uKGFjdGlvbi5hY3Rpb24sIGVsZW1lbnQsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiYWN0aW9uLnRvb2x0aXA/IGFjdGlvbi50b29sdGlwOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIHJvd0FjdGlvbmFibGUuYWN0aW9uc1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIFtzdHlsZS5jb2xvcl09XCJhY3Rpb24uY29sb3JcIj5cclxuICAgICAgICAgICAge3thY3Rpb24uaWNvbn19XHJcbiAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uQ29uZmlnIG9mIHRhYmxlQ29uZmlnXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW5Db25maWcubmFtZVwiPlxyXG5cclxuICAgICAgPCEtLSBpZiBzb3J0YWJsZSBjb2x1bW4gaGVhZGVyIC0tPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uQ29uZmlnLnNvcnQ/LmVuYWJsZTsgZWxzZSBub3RTb3J0YWJsZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgW21hdC1zb3J0LWhlYWRlcl09XCJjb2x1bW5Db25maWcubmFtZVwiXHJcbiAgICAgICAgICAgIFthcnJvd1Bvc2l0aW9uXT1cImNvbHVtbkNvbmZpZy5zb3J0Py5wb3NpdGlvbiA9PT0gJ3JpZ2h0JyA/ICdiZWZvcmUnIDogJ2FmdGVyJ1wiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclZhbHVlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgIDwhLS0gZWxzZSBub3Qgc29ydGFibGUgLS0+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjbm90U29ydGFibGU+XHJcbiAgICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZlxyXG4gICAgICAgICAgICBbY2xhc3MudGV4dC1yaWdodF09XCJjb2x1bW5Db25maWcuc29ydD8ucG9zaXRpb24gPT0gJ3JpZ2h0J1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclZhbHVlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDwhLS0gICAgICBoZWFkZXIgdmFsdWUtLT5cclxuICAgICAgPG5nLXRlbXBsYXRlICNoZWFkZXJWYWx1ZT5cclxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uXCJcclxuICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uaWNvbj8udG9vbHRpcD8udG9TdHJpbmcoKSB8fCAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uPy5jb2xvclwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uPy5uYW1lfX1cclxuICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8udGV4dD8uc2hvdyAhPSBmYWxzZVwiXHJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8udGV4dD8udG9vbHRpcD8udG9TdHJpbmcoKSB8fCAnJ1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tjb2x1bW5Db25maWcubmFtZX19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgPCEtLSBjb2x1bW4gZGF0YSAtLT5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cclxuXHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29uXCJcclxuICAgICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy5pY29uPy50b29sdGlwPyBjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/LnRvb2x0aXAhKGVsZW1lbnQpOiAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/LmNvbG9yPyBjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/LmNvbG9yIShlbGVtZW50KTogbnVsbFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/Lm5hbWUoZWxlbWVudCl9fVxyXG4gICAgICAgIDwvbWF0LWljb24+XHJcblxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy50ZXh0Py5zaG93ICE9IGZhbHNlXCI+XHJcbiAgICAgICAgICB7e2VsZW1lbnQgfCBkYXRhUHJvcGVydHlHZXR0ZXI6IGNvbHVtbkNvbmZpZy5rZXl9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDx0ciBtYXQtaGVhZGVyLXJvdyAqbWF0SGVhZGVyUm93RGVmPVwiZGlzcGxheWVkQ29sdW1uc1wiPjwvdHI+XHJcbiAgICA8dHIgbWF0LXJvdyAoY2xpY2spPVwib25Sb3dBY3Rpb24uZW1pdChyb3cpXCIgKm1hdFJvd0RlZj1cImxldCByb3c7IGNvbHVtbnM6IGRpc3BsYXllZENvbHVtbnM7XCI+PC90cj5cclxuICA8L3RhYmxlPlxyXG5cclxuICA8IS0tIFBhZ2luYXRpb24gLS0+XHJcbiAgPG1hdC1wYWdpbmF0b3IgKm5nSWY9XCJpc1BhZ2VhYmxlXCJcclxuICAgICAgICAgICAgICAgICBbcGFnZVNpemVPcHRpb25zXT1cInBhZ2luYXRpb25TaXplc1wiXHJcbiAgICAgICAgICAgICAgICAgW3BhZ2VTaXplXT1cImRlZmF1bHRQYWdlU2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgc2hvd0ZpcnN0TGFzdEJ1dHRvbnM+XHJcbiAgPC9tYXQtcGFnaW5hdG9yPlxyXG48L25nLWNvbnRhaW5lcj5cclxuIl19
@@ -112,7 +112,7 @@ class NgxAurMatTableComponent {
112
112
  this.setTableDataSource(data);
113
113
  }
114
114
  ngOnInit() {
115
- this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.text);
115
+ this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.name);
116
116
  if (this.rowActionable) {
117
117
  this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
118
118
  }
@@ -152,7 +152,7 @@ class NgxAurMatTableComponent {
152
152
  }
153
153
  }
154
154
  NgxAurMatTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
155
- NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.text\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.text\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.showText != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.text}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.showText != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2.MatCellDef, selector: "[matCellDef]" }, { type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": DataPropertyGetterPipe } });
155
+ NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isPageable: "isPageable", isSortable: "isSortable", isFilterable: "isFilterable", paginationSizes: "paginationSizes", defaultPageSize: "defaultPageSize", rowActionable: "rowActionable", selectable: "selectable", tableConfig: "tableConfig", tableData: "tableData" }, outputs: { sort: "sort", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onRowClick: "onRowClick" }, viewQueries: [{ propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }], ngImport: i0, template: "<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.name\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.name\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.text?.show != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.text?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.name}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.text?.show != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n", styles: ["table{width:100%}th,td{padding:10px!important}mat-form-field{width:40%}.text-right{text-align:right!important}\n"], components: [{ type: i1.MatFormField, selector: "mat-form-field", inputs: ["color", "floatLabel", "appearance", "hideRequiredMarker", "hintLabel"], exportAs: ["matFormField"] }, { type: i2.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i4.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: i5.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i6.MatSortHeader, selector: "[mat-sort-header]", inputs: ["disabled", "arrowPosition", "sortActionDescription", "disableClear", "mat-sort-header", "start"], exportAs: ["matSortHeader"] }, { type: i2.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { type: i2.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { type: i7.MatPaginator, selector: "mat-paginator", inputs: ["disabled"], exportAs: ["matPaginator"] }], directives: [{ type: i8.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.MatLabel, selector: "mat-label" }, { type: i9.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["id", "disabled", "required", "type", "value", "readonly", "placeholder", "errorStateMatcher", "aria-describedby"], exportAs: ["matInput"] }, { type: i6.MatSort, selector: "[matSort]", inputs: ["matSortDisabled", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortActive"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { type: i2.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { type: i2.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { type: i2.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { type: i2.MatCellDef, selector: "[matCellDef]" }, { type: i2.MatCell, selector: "mat-cell, td[mat-cell]" }, { type: i8.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i10.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { type: i8.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { type: i2.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }], pipes: { "dataPropertyGetter": DataPropertyGetterPipe } });
156
156
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
157
157
  type: Component,
158
158
  args: [{
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-aur-mat-table.js","sources":["../../../projects/ngx-aur-mat-table/src/lib/providers/SelectionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/providers/RowActionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/data-property-getter-pipe/data-property-getter.pipe.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.html","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.module.ts","../../../projects/ngx-aur-mat-table/src/lib/model/TableRow.ts","../../../projects/ngx-aur-mat-table/src/public-api.ts","../../../projects/ngx-aur-mat-table/src/ngx-aur-mat-table.ts"],"sourcesContent":["import {SelectionModel} from '@angular/cdk/collections';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {EventEmitter} from '@angular/core';\r\nimport {TableRow} from \"../model/TableRow\";\r\n\r\nexport interface SelectableContext {\r\n position?: 'start' | 'end';\r\n multiple?: boolean;\r\n}\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<TableRow<T>>;\r\n context: SelectableContext;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectableContext, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.context = ctx;\r\n this.selection = new SelectionModel<TableRow<T>>(ctx.multiple, []);\r\n this.tableDataSource = tableDataSource;\r\n this.initCheckboxColumn(columns);\r\n }\r\n\r\n initCheckboxColumn(columns: string[]) {\r\n if (this.context.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n\r\n bind(selected: EventEmitter<TableRow<T>[]>, onSelect: EventEmitter<TableRow<T>[]>, onDeselect: EventEmitter<TableRow<T>[]>) {\r\n this.selection.changed\r\n .subscribe(event => {\r\n if (event.added) {\r\n onSelect.emit(event.added);\r\n }\r\n if (event.removed) {\r\n onDeselect.emit(event.removed);\r\n }\r\n selected.emit(this.selection.selected);\r\n });\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.tableDataSource.data.forEach(row => this.selection.select(row));\r\n }\r\n\r\n isAllSelected(): boolean {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.tableDataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n}\r\n","export interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionContext {\r\n position?: 'start' | 'end';\r\n actions: ActionContext[];\r\n}\r\n\r\nexport interface ActionContext {\r\n icon: string;\r\n action: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionContext;\r\n\r\n constructor(ctx: RowActionContext, columns: string[]) {\r\n this.context = ctx;\r\n if (ctx.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dataPropertyGetter'\r\n})\r\nexport class DataPropertyGetterPipe implements PipeTransform {\r\n\r\n transform(object: any, keyName: string, ...args: unknown[]): unknown {\r\n return object[keyName];\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\nimport {TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectableContext, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionContext, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\n\n\n@Component({\n selector: 'aur-mat-table',\n templateUrl: './ngx-aur-mat-table.component.html',\n styleUrls: ['./ngx-aur-mat-table.component.scss']\n})\nexport class NgxAurMatTableComponent<T> implements OnInit, AfterViewInit {\n\n public tableDataSource = new MatTableDataSource<TableRow<T>>([]);\n public displayedColumns: string[] = [];\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n\n @Input() isPageable = false;\n @Input() isSortable = false;\n @Input() isFilterable = false;\n @Input() paginationSizes: number[] = [5, 10, 15];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionContext;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectableContext;\n @Output() selected = new EventEmitter<TableRow<T>[]>();\n @Output() onSelect = new EventEmitter<TableRow<T>[]>();\n @Output() onDeselect = new EventEmitter<TableRow<T>[]>();\n\n @Output() onRowClick = new EventEmitter<TableRow<T>>();\n\n @Input() tableConfig: TableConfig<any>[] = [];\n\n // this property needs to have a setter, to dynamically get changes from parent component\n @Input() set tableData(data: TableRow<T>[]) {\n this.setTableDataSource(data);\n }\n\n // @ts-ignore\n selectionProvider: SelectionProvider<T>;\n // @ts-ignore\n rowActionsProvider: RowActionProvider<T>;\n\n constructor() {\n }\n\n ngOnInit(): void {\n this.displayedColumns = this.tableConfig.map((tableColumn: TableConfig<any>) => tableColumn.text);\n if (this.rowActionable) {\n this.rowActionsProvider = new RowActionProvider<TableRow<T>>(this.rowActionable, this.displayedColumns);\n } else if (this.selectable) {\n this.selectionProvider = new SelectionProvider<T>(this.selectable, this.displayedColumns, this.tableDataSource);\n this.selectionProvider.bind(this.selected, this.onSelect, this.onDeselect);\n }\n }\n\n // we need this, in order to make pagination work with *ngIf\n ngAfterViewInit(): void {\n this.tableDataSource.paginator = this.matPaginator;\n }\n\n\n setTableDataSource(data: any) {\n this.tableDataSource = new MatTableDataSource<any>(data);\n this.tableDataSource.paginator = this.matPaginator;\n this.tableDataSource.sort = this.matSort;\n }\n\n applyFilter(event: Event) {\n const filterValue = (event.target as HTMLInputElement).value;\n this.tableDataSource.filter = filterValue.trim().toLowerCase();\n }\n\n sortTable(sortParameters: Sort) {\n // defining name of data property, to sort by, instead of column name\n // @ts-ignore\n sortParameters.active = this.tableConfig.find(column => column.name === sortParameters.active).dataKey;\n this.sort.emit(sortParameters);\n }\n\n emitRowAction(action: string, row: T, $event: MouseEvent) {\n $event.stopPropagation();\n this.onRowAction.emit({action, value: row});\n }\n\n masterToggle() {\n this.selectionProvider.masterToggle();\n }\n\n isAllSelected(): boolean {\n return this.selectionProvider.isAllSelected();\n }\n}\n","<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.text\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.text\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.showText != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.text}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.showText != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n","import {NgModule} from '@angular/core';\nimport {NgxAurMatTableComponent} from './ngx-aur-mat-table.component';\nimport {BrowserModule} from \"@angular/platform-browser\";\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTableModule} from \"@angular/material/table\";\nimport {MatPaginatorModule} from \"@angular/material/paginator\";\nimport {MatButtonModule} from \"@angular/material/button\";\nimport {MatInputModule} from \"@angular/material/input\";\nimport {MatSortModule} from \"@angular/material/sort\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {MatCheckboxModule} from \"@angular/material/checkbox\";\nimport {MatFormFieldModule} from \"@angular/material/form-field\";\nimport {DataPropertyGetterPipe} from \"./data-property-getter-pipe/data-property-getter.pipe\";\nimport {BrowserAnimationsModule} from \"@angular/platform-browser/animations\";\n\n\n@NgModule({\n declarations: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatInputModule,\n MatSortModule,\n MatTooltipModule,\n MatCheckboxModule,\n MatFormFieldModule\n ],\n exports: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ]\n})\nexport class NgxAurMatTableModule {\n}\n","export class TableRow<T> {\r\n constructor(public rowSrc: T) {\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-aur-mat-table\n */\n\nexport * from './lib/ngx-aur-mat-table.component';\nexport * from './lib/ngx-aur-mat-table.module';\nexport * from './lib/data-property-getter-pipe/data-property-getter.pipe';\nexport * from './lib/model/TableRow'\nexport * from './lib/model/TableConfig'\nexport * from './lib/model/TableConfig'\nexport * from './lib/providers/RowActionProvider'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i11.DataPropertyGetterPipe"],"mappings":"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"}
1
+ {"version":3,"file":"ngx-aur-mat-table.js","sources":["../../../projects/ngx-aur-mat-table/src/lib/providers/SelectionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/providers/RowActionProvider.ts","../../../projects/ngx-aur-mat-table/src/lib/data-property-getter-pipe/data-property-getter.pipe.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.ts","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.component.html","../../../projects/ngx-aur-mat-table/src/lib/ngx-aur-mat-table.module.ts","../../../projects/ngx-aur-mat-table/src/lib/model/TableRow.ts","../../../projects/ngx-aur-mat-table/src/public-api.ts","../../../projects/ngx-aur-mat-table/src/ngx-aur-mat-table.ts"],"sourcesContent":["import {SelectionModel} from '@angular/cdk/collections';\r\nimport {MatTableDataSource} from '@angular/material/table';\r\nimport {EventEmitter} from '@angular/core';\r\nimport {TableRow} from \"../model/TableRow\";\r\n\r\nexport interface SelectableContext {\r\n position?: 'start' | 'end';\r\n multiple?: boolean;\r\n}\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<TableRow<T>>;\r\n context: SelectableContext;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectableContext, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.context = ctx;\r\n this.selection = new SelectionModel<TableRow<T>>(ctx.multiple, []);\r\n this.tableDataSource = tableDataSource;\r\n this.initCheckboxColumn(columns);\r\n }\r\n\r\n initCheckboxColumn(columns: string[]) {\r\n if (this.context.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n\r\n bind(selected: EventEmitter<TableRow<T>[]>, onSelect: EventEmitter<TableRow<T>[]>, onDeselect: EventEmitter<TableRow<T>[]>) {\r\n this.selection.changed\r\n .subscribe(event => {\r\n if (event.added) {\r\n onSelect.emit(event.added);\r\n }\r\n if (event.removed) {\r\n onDeselect.emit(event.removed);\r\n }\r\n selected.emit(this.selection.selected);\r\n });\r\n }\r\n\r\n masterToggle() {\r\n this.isAllSelected() ?\r\n this.selection.clear() :\r\n this.tableDataSource.data.forEach(row => this.selection.select(row));\r\n }\r\n\r\n isAllSelected(): boolean {\r\n const numSelected = this.selection.selected.length;\r\n const numRows = this.tableDataSource.data.length;\r\n return numSelected === numRows;\r\n }\r\n}\r\n","export interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionContext {\r\n position?: 'start' | 'end';\r\n actions: ActionContext[];\r\n}\r\n\r\nexport interface ActionContext {\r\n icon: string;\r\n action: string;\r\n color?: string;\r\n tooltip?: string;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionContext;\r\n\r\n constructor(ctx: RowActionContext, columns: string[]) {\r\n this.context = ctx;\r\n if (ctx.position === 'start') {\r\n columns.unshift(this.COLUMN_NAME);\r\n } else {\r\n columns.push(this.COLUMN_NAME);\r\n }\r\n }\r\n}\r\n","import {Pipe, PipeTransform} from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dataPropertyGetter'\r\n})\r\nexport class DataPropertyGetterPipe implements PipeTransform {\r\n\r\n transform(object: any, keyName: string, ...args: unknown[]): unknown {\r\n return object[keyName];\r\n }\r\n\r\n}\r\n","import {AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewChild} from '@angular/core';\nimport {TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectableContext, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionContext, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\n\n\n@Component({\n selector: 'aur-mat-table',\n templateUrl: './ngx-aur-mat-table.component.html',\n styleUrls: ['./ngx-aur-mat-table.component.scss']\n})\nexport class NgxAurMatTableComponent<T> implements OnInit, AfterViewInit {\n\n public tableDataSource = new MatTableDataSource<TableRow<T>>([]);\n public displayedColumns: string[] = [];\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n\n @Input() isPageable = false;\n @Input() isSortable = false;\n @Input() isFilterable = false;\n @Input() paginationSizes: number[] = [5, 10, 15];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionContext;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectableContext;\n @Output() selected = new EventEmitter<TableRow<T>[]>();\n @Output() onSelect = new EventEmitter<TableRow<T>[]>();\n @Output() onDeselect = new EventEmitter<TableRow<T>[]>();\n\n @Output() onRowClick = new EventEmitter<TableRow<T>>();\n\n @Input() tableConfig: TableConfig<any>[] = [];\n\n // this property needs to have a setter, to dynamically get changes from parent component\n @Input() set tableData(data: TableRow<T>[]) {\n this.setTableDataSource(data);\n }\n\n // @ts-ignore\n selectionProvider: SelectionProvider<T>;\n // @ts-ignore\n rowActionsProvider: RowActionProvider<T>;\n\n constructor() {\n }\n\n ngOnInit(): void {\n this.displayedColumns = this.tableConfig.map((tableColumn: TableConfig<any>) => tableColumn.name);\n if (this.rowActionable) {\n this.rowActionsProvider = new RowActionProvider<TableRow<T>>(this.rowActionable, this.displayedColumns);\n } else if (this.selectable) {\n this.selectionProvider = new SelectionProvider<T>(this.selectable, this.displayedColumns, this.tableDataSource);\n this.selectionProvider.bind(this.selected, this.onSelect, this.onDeselect);\n }\n }\n\n // we need this, in order to make pagination work with *ngIf\n ngAfterViewInit(): void {\n this.tableDataSource.paginator = this.matPaginator;\n }\n\n\n setTableDataSource(data: any) {\n this.tableDataSource = new MatTableDataSource<any>(data);\n this.tableDataSource.paginator = this.matPaginator;\n this.tableDataSource.sort = this.matSort;\n }\n\n applyFilter(event: Event) {\n const filterValue = (event.target as HTMLInputElement).value;\n this.tableDataSource.filter = filterValue.trim().toLowerCase();\n }\n\n sortTable(sortParameters: Sort) {\n // defining name of data property, to sort by, instead of column name\n // @ts-ignore\n sortParameters.active = this.tableConfig.find(column => column.name === sortParameters.active).dataKey;\n this.sort.emit(sortParameters);\n }\n\n emitRowAction(action: string, row: T, $event: MouseEvent) {\n $event.stopPropagation();\n this.onRowAction.emit({action, value: row});\n }\n\n masterToggle() {\n this.selectionProvider.masterToggle();\n }\n\n isAllSelected(): boolean {\n return this.selectionProvider.isAllSelected();\n }\n}\n","<ng-container>\r\n\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"isFilterable\">\r\n <mat-form-field>\r\n <mat-label>Filter</mat-label>\r\n <input matInput (keyup)=\"applyFilter($event)\" placeholder=\"filter\">\r\n </mat-form-field>\r\n </ng-container>\r\n\r\n <!-- Table -->\r\n <table mat-table [dataSource]=\"tableDataSource\" matSort (matSortChange)=\"sortTable($event)\">\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <mat-checkbox (change)=\"$event ? masterToggle() : null\"\r\n [checked]=\"selectionProvider.selection.hasValue() && isAllSelected()\"\r\n [indeterminate]=\"selectionProvider.selection.hasValue() && !isAllSelected()\">\r\n </mat-checkbox>\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\">\r\n <mat-checkbox (click)=\"$event.stopPropagation()\"\r\n (change)=\"$event ? selectionProvider.selection.toggle(row) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(row)\">\r\n </mat-checkbox>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element, $event)\"\r\n [matTooltip]=\"action.tooltip? action.tooltip: ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.color\">\r\n {{action.icon}}\r\n </mat-icon>\r\n </button>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngFor=\"let columnConfig of tableConfig\" [matColumnDef]=\"columnConfig.name\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort?.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.name\"\r\n [arrowPosition]=\"columnConfig.sort?.position === 'right' ? 'before' : 'after'\">\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-container>\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef\r\n [class.text-right]=\"columnConfig.sort?.position == 'right'\"\r\n >\r\n <ng-container *ngTemplateOutlet=\"headerValue\"></ng-container>\r\n </th>\r\n </ng-template>\r\n\r\n <!-- header value-->\r\n <ng-template #headerValue>\r\n <mat-icon *ngIf=\"columnConfig.headerColumn?.icon\"\r\n [matTooltip]=\"columnConfig.headerColumn?.icon?.tooltip?.toString() || ''\"\r\n [style.color]=\"columnConfig.headerColumn?.icon?.color\"\r\n >\r\n {{columnConfig.headerColumn?.icon?.name}}\r\n </mat-icon>\r\n <span *ngIf=\"columnConfig.headerColumn?.text?.show != false\"\r\n [matTooltip]=\"columnConfig.headerColumn?.text?.tooltip?.toString() || ''\"\r\n >\r\n {{columnConfig.name}}\r\n </span>\r\n </ng-template>\r\n\r\n <!-- column data -->\r\n <td mat-cell *matCellDef=\"let element\">\r\n\r\n <mat-icon *ngIf=\"columnConfig.valueColumn?.icon\"\r\n [matTooltip]=\"columnConfig.valueColumn?.icon?.tooltip? columnConfig.valueColumn?.icon?.tooltip!(element): ''\"\r\n [style.color]=\"columnConfig.valueColumn?.icon?.color? columnConfig.valueColumn?.icon?.color!(element): null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"columnConfig.valueColumn?.text?.show != false\">\r\n {{element | dataPropertyGetter: columnConfig.key}}\r\n </span>\r\n </td>\r\n </ng-container>\r\n\r\n <tr mat-header-row *matHeaderRowDef=\"displayedColumns\"></tr>\r\n <tr mat-row (click)=\"onRowAction.emit(row)\" *matRowDef=\"let row; columns: displayedColumns;\"></tr>\r\n </table>\r\n\r\n <!-- Pagination -->\r\n <mat-paginator *ngIf=\"isPageable\"\r\n [pageSizeOptions]=\"paginationSizes\"\r\n [pageSize]=\"defaultPageSize\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n</ng-container>\r\n","import {NgModule} from '@angular/core';\nimport {NgxAurMatTableComponent} from './ngx-aur-mat-table.component';\nimport {BrowserModule} from \"@angular/platform-browser\";\nimport {MatIconModule} from \"@angular/material/icon\";\nimport {MatTableModule} from \"@angular/material/table\";\nimport {MatPaginatorModule} from \"@angular/material/paginator\";\nimport {MatButtonModule} from \"@angular/material/button\";\nimport {MatInputModule} from \"@angular/material/input\";\nimport {MatSortModule} from \"@angular/material/sort\";\nimport {MatTooltipModule} from \"@angular/material/tooltip\";\nimport {MatCheckboxModule} from \"@angular/material/checkbox\";\nimport {MatFormFieldModule} from \"@angular/material/form-field\";\nimport {DataPropertyGetterPipe} from \"./data-property-getter-pipe/data-property-getter.pipe\";\nimport {BrowserAnimationsModule} from \"@angular/platform-browser/animations\";\n\n\n@NgModule({\n declarations: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ],\n imports: [\n BrowserModule,\n BrowserAnimationsModule,\n MatIconModule,\n MatTableModule,\n MatPaginatorModule,\n MatButtonModule,\n MatInputModule,\n MatSortModule,\n MatTooltipModule,\n MatCheckboxModule,\n MatFormFieldModule\n ],\n exports: [\n NgxAurMatTableComponent,\n DataPropertyGetterPipe\n ]\n})\nexport class NgxAurMatTableModule {\n}\n","export class TableRow<T> {\r\n constructor(public rowSrc: T) {\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-aur-mat-table\n */\n\nexport * from './lib/ngx-aur-mat-table.component';\nexport * from './lib/ngx-aur-mat-table.module';\nexport * from './lib/data-property-getter-pipe/data-property-getter.pipe';\nexport * from './lib/model/TableRow'\nexport * from './lib/model/TableConfig'\nexport * from './lib/model/TableConfig'\nexport * from './lib/providers/RowActionProvider'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i11.DataPropertyGetterPipe"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export interface TableConfig<T> {
2
2
  /** column title text */
3
- text: string;
3
+ name: string;
4
4
  /** column key in data source */
5
5
  key: string;
6
6
  sort?: SortConfig;
@@ -16,13 +16,16 @@ export interface IconConfig<T> {
16
16
  tooltip?: T;
17
17
  position?: 'right' | 'left';
18
18
  }
19
+ export interface TextConfig<T> {
20
+ /** default true*/
21
+ show?: boolean;
22
+ /** tooltip */
23
+ tooltip?: T;
24
+ }
19
25
  export interface ColumnConfig<T> {
20
26
  /** settings for icon in column */
21
27
  icon?: IconConfig<T>;
22
- /** tooltip for column text */
23
- tooltip?: string;
24
- /** show text in the column default true */
25
- showText?: boolean;
28
+ text?: TextConfig<T>;
26
29
  }
27
30
  export interface SortConfig {
28
31
  position?: 'right' | 'left';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-aur-mat-table",
3
- "version": "0.0.36",
3
+ "version": "0.0.38",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^12.0.0",
6
6
  "@angular/common": "^12.0.0",