ngx-aur-mat-table 0.0.46 → 0.0.50
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/ngx-aur-mat-table.umd.js +59 -5
- package/bundles/ngx-aur-mat-table.umd.js.map +1 -1
- package/esm2015/lib/ngx-aur-mat-table.component.js +9 -6
- package/esm2015/lib/providers/RowActionProvider.js +1 -1
- package/esm2015/lib/providers/SelectionProvider.js +1 -1
- package/esm2015/lib/providers/TableViewConverter.js +47 -0
- package/esm2015/public-api.js +2 -4
- package/fesm2015/ngx-aur-mat-table.js +54 -5
- package/fesm2015/ngx-aur-mat-table.js.map +1 -1
- package/lib/ngx-aur-mat-table.component.d.ts +45 -0
- package/lib/providers/RowActionProvider.d.ts +13 -1
- package/lib/providers/SelectionProvider.d.ts +4 -1
- package/lib/providers/TableViewConverter.d.ts +9 -0
- package/package.json +1 -1
- package/public-api.d.ts +1 -3
- package/esm2015/lib/model/RowActionConfig.js +0 -2
- package/esm2015/lib/model/SelectionConfig.js +0 -2
- package/lib/model/RowActionConfig.d.ts +0 -13
- package/lib/model/SelectionConfig.d.ts +0 -4
|
@@ -91,6 +91,58 @@
|
|
|
91
91
|
return RowActionProvider;
|
|
92
92
|
}());
|
|
93
93
|
|
|
94
|
+
var TableViewConverter = /** @class */ (function () {
|
|
95
|
+
function TableViewConverter() {
|
|
96
|
+
}
|
|
97
|
+
TableViewConverter.toView = function (rows, tableConfig) {
|
|
98
|
+
var result = new Map();
|
|
99
|
+
tableConfig.forEach(function (c) {
|
|
100
|
+
if (c.valueColumn) {
|
|
101
|
+
result.set(c.key, c.valueColumn);
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
return this.toViewInternal(rows, result);
|
|
105
|
+
};
|
|
106
|
+
TableViewConverter.toViewInternal = function (rows, source) {
|
|
107
|
+
var _this = this;
|
|
108
|
+
return rows.map(function (row) { return _this.columnConfig(source, row.rowSrc); });
|
|
109
|
+
};
|
|
110
|
+
TableViewConverter.columnConfig = function (source, rowSrc) {
|
|
111
|
+
var _this = this;
|
|
112
|
+
var result = new Map();
|
|
113
|
+
source.forEach(function (source, key) {
|
|
114
|
+
var value = {
|
|
115
|
+
icon: _this.iconConfig(source.icon, rowSrc),
|
|
116
|
+
text: _this.textConfig(source.text, rowSrc)
|
|
117
|
+
};
|
|
118
|
+
result.set(key, value);
|
|
119
|
+
});
|
|
120
|
+
return result;
|
|
121
|
+
};
|
|
122
|
+
TableViewConverter.iconConfig = function (iconSource, rowSrc) {
|
|
123
|
+
if (!iconSource) {
|
|
124
|
+
return undefined;
|
|
125
|
+
}
|
|
126
|
+
return {
|
|
127
|
+
name: iconSource.name(rowSrc),
|
|
128
|
+
color: iconSource.color ? iconSource.color(rowSrc) : undefined,
|
|
129
|
+
tooltip: iconSource.tooltip ? iconSource.tooltip(rowSrc) : undefined,
|
|
130
|
+
position: iconSource.position,
|
|
131
|
+
};
|
|
132
|
+
};
|
|
133
|
+
TableViewConverter.textConfig = function (textSource, rowSrc) {
|
|
134
|
+
if (!textSource) {
|
|
135
|
+
return undefined;
|
|
136
|
+
}
|
|
137
|
+
return {
|
|
138
|
+
show: textSource.show,
|
|
139
|
+
tooltip: textSource.tooltip ? textSource.tooltip(rowSrc) : undefined,
|
|
140
|
+
color: textSource.color ? textSource.color(rowSrc) : undefined,
|
|
141
|
+
};
|
|
142
|
+
};
|
|
143
|
+
return TableViewConverter;
|
|
144
|
+
}());
|
|
145
|
+
|
|
94
146
|
var DataPropertyGetterPipe = /** @class */ (function () {
|
|
95
147
|
function DataPropertyGetterPipe() {
|
|
96
148
|
}
|
|
@@ -116,7 +168,7 @@
|
|
|
116
168
|
function NgxAurMatTableComponent() {
|
|
117
169
|
this.tableDataSource = new i2.MatTableDataSource([]);
|
|
118
170
|
this.displayedColumns = [];
|
|
119
|
-
this.
|
|
171
|
+
this.tableView = [];
|
|
120
172
|
this.isFilterable = false;
|
|
121
173
|
this.isPageable = false;
|
|
122
174
|
this.paginationSizes = [5, 10, 15, 25, 50];
|
|
@@ -138,6 +190,7 @@
|
|
|
138
190
|
configurable: true
|
|
139
191
|
});
|
|
140
192
|
NgxAurMatTableComponent.prototype.ngOnInit = function () {
|
|
193
|
+
this.tableView = TableViewConverter.toView(this.tableDataSource.data, this.tableConfig);
|
|
141
194
|
this.displayedColumns = this.tableConfig.map(function (tableColumn) { return tableColumn.name; });
|
|
142
195
|
if (this.rowActionable) {
|
|
143
196
|
this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
|
|
@@ -179,16 +232,19 @@
|
|
|
179
232
|
NgxAurMatTableComponent.prototype.castSrc = function (row) {
|
|
180
233
|
return row;
|
|
181
234
|
};
|
|
235
|
+
NgxAurMatTableComponent.prototype.getView = function (rowIndex, columnKey) {
|
|
236
|
+
return this.tableView[rowIndex].get(columnKey);
|
|
237
|
+
};
|
|
182
238
|
return NgxAurMatTableComponent;
|
|
183
239
|
}());
|
|
184
240
|
NgxAurMatTableComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NgxAurMatTableComponent, deps: [], target: i0__namespace.ɵɵFactoryTarget.Component });
|
|
185
|
-
NgxAurMatTableComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: {
|
|
241
|
+
NgxAurMatTableComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isFilterable: "isFilterable", isPageable: "isPageable", 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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef>\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 value \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043A\u043E\u043B\u043E\u043D\u043E\u043A \u043D\u0443\u0436\u043D\u043E \u0447\u0435\u0440\u0435\u0437 getView(rowIndex, columnConfig.key) \u0442\u0430\u043C \u043D\u0430\u0445\u043E\u0434\u044F\u0442\u0441\u044F \u0443\u0436\u0435\r\n \u043F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0434\u043B\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F-->\r\n <td mat-cell *matCellDef=\"let element; let rowIndex = index\">\r\n\r\n <mat-icon *ngIf=\"getView(rowIndex, columnConfig.key)?.icon\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.icon?.tooltip || ''\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.icon?.color || null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"getView(rowIndex, columnConfig.key)?.text?.show != false\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.text?.color || null\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.text?.tooltip || ''\"\r\n >\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 } });
|
|
186
242
|
i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NgxAurMatTableComponent, decorators: [{
|
|
187
243
|
type: i0.Component,
|
|
188
244
|
args: [{
|
|
189
245
|
selector: 'aur-mat-table',
|
|
190
246
|
templateUrl: './ngx-aur-mat-table.component.html',
|
|
191
|
-
styleUrls: ['./ngx-aur-mat-table.component.scss']
|
|
247
|
+
styleUrls: ['./ngx-aur-mat-table.component.scss'],
|
|
192
248
|
}]
|
|
193
249
|
}], ctorParameters: function () { return []; }, propDecorators: { matPaginator: [{
|
|
194
250
|
type: i0.ViewChild,
|
|
@@ -196,8 +252,6 @@
|
|
|
196
252
|
}], matSort: [{
|
|
197
253
|
type: i0.ViewChild,
|
|
198
254
|
args: [i6.MatSort, { static: true }]
|
|
199
|
-
}], isSortable: [{
|
|
200
|
-
type: i0.Input
|
|
201
255
|
}], isFilterable: [{
|
|
202
256
|
type: i0.Input
|
|
203
257
|
}], isPageable: [{
|
|
@@ -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\nimport {SelectionConfig} from \"../model/SelectionConfig\";\r\n\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<T>;\r\n config: SelectionConfig;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectionConfig, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.config = ctx;\r\n this.selection = new SelectionModel<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.config.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<T[]>, onSelect: EventEmitter<T[]>, onDeselect: EventEmitter<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.rowSrc));\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","import {RowActionConfig} from \"../model/RowActionConfig\";\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionConfig;\r\n\r\n constructor(ctx: RowActionConfig, 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 {SelectionProvider} from './providers/SelectionProvider';\nimport {RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\nimport {ActionEvent} from \"./model/RowActionConfig\";\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() isSortable = false;\n @Input() isFilterable = false;\n\n\n @Input() isPageable = false;\n @Input() paginationSizes: number[] = [5, 10, 15, 25, 50];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionConfig;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectionConfig;\n @Output() selected = new EventEmitter<T[]>();\n @Output() onSelect = new EventEmitter<T[]>();\n @Output() onDeselect = new EventEmitter<T[]>();\n\n @Output() onRowClick = new EventEmitter<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 castSrc(row: any): TableRow<T> {\n return row;\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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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 value -->\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 [style.color]=\"columnConfig.valueColumn?.text?.color? columnConfig.valueColumn?.text?.color!(element): null\"\r\n [matTooltip]=\"columnConfig.valueColumn?.text?.tooltip? columnConfig.valueColumn?.text?.tooltip!(element): ''\"\r\n >\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/RowActionConfig'\nexport * from './lib/model/SelectionConfig'\nexport * from './lib/providers/SelectionProvider'\nexport * from './lib/providers/RowActionProvider'\n\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,QAAA,iBAAA,kBAAA,YAAA;IAOE,IAAA,SAAA,iBAAA,CAAY,GAAoB,EAAE,OAAiB,EAAE,eAAgD,EAAA;IALrF,QAAA,IAAW,CAAA,WAAA,GAAG,aAAa,CAAC;IAM1C,QAAA,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;IAClB,QAAA,IAAI,CAAC,SAAS,GAAG,IAAIA,0BAAc,CAAI,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IACzD,QAAA,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACvC,QAAA,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;SAClC;QAED,iBAAkB,CAAA,SAAA,CAAA,kBAAA,GAAlB,UAAmB,OAAiB,EAAA;IAClC,QAAA,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,KAAK,OAAO,EAAE;IACpC,YAAA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACnC,SAAA;IAAM,aAAA;IACL,YAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAChC,SAAA;SACF,CAAA;IAED,IAAA,iBAAA,CAAA,SAAA,CAAA,IAAI,GAAJ,UAAK,QAA2B,EAAE,QAA2B,EAAE,UAA6B,EAAA;YAA5F,IAWC,KAAA,GAAA,IAAA,CAAA;YAVC,IAAI,CAAC,SAAS,CAAC,OAAO;iBACnB,SAAS,CAAC,UAAA,KAAK,EAAA;gBACd,IAAI,KAAK,CAAC,KAAK,EAAE;IACf,gBAAA,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC5B,aAAA;gBACD,IAAI,KAAK,CAAC,OAAO,EAAE;IACjB,gBAAA,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAChC,aAAA;gBACD,QAAQ,CAAC,IAAI,CAAC,KAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzC,SAAC,CAAC,CAAC;SACN,CAAA;IAED,IAAA,iBAAA,CAAA,SAAA,CAAA,YAAY,GAAZ,YAAA;YAAA,IAIC,KAAA,GAAA,IAAA,CAAA;IAHC,QAAA,IAAI,CAAC,aAAa,EAAE;IAClB,YAAA,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE;gBACtB,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,OAAO,CAAC,UAAA,GAAG,EAAA,EAAI,OAAA,KAAI,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA,EAAA,CAAC,CAAC;SAC/E,CAAA;IAED,IAAA,iBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;YACE,IAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC;YACnD,IAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;YACjD,OAAO,WAAW,KAAK,OAAO,CAAC;SAChC,CAAA;QACF,OAAA,iBAAA,CAAA;IAAA,CAAA,EAAA;;ACnDD,QAAA,iBAAA,kBAAA,YAAA;QAKI,SAAY,iBAAA,CAAA,GAAoB,EAAE,OAAiB,EAAA;IAH1C,QAAA,IAAW,CAAA,WAAA,GAAG,aAAa,CAAC;IAIjC,QAAA,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;IACnB,QAAA,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,EAAE;IAC1B,YAAA,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,SAAA;IAAM,aAAA;IACH,YAAA,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IAClC,SAAA;SACJ;QACJ,OAAA,iBAAA,CAAA;IAAA,CAAA,EAAA;;ACVD,QAAA,sBAAA,kBAAA,YAAA;IAAA,IAAA,SAAA,sBAAA,GAAA;;IAEE,IAAA,sBAAA,CAAA,SAAA,CAAA,SAAS,GAAT,UAAU,MAAW,EAAE,OAAe,EAAA;YAAE,IAAkB,IAAA,GAAA,EAAA,CAAA;iBAAlB,IAAkB,EAAA,GAAA,CAAA,EAAlB,EAAkB,GAAA,SAAA,CAAA,MAAA,EAAlB,EAAkB,EAAA,EAAA;gBAAlB,IAAkB,CAAA,EAAA,GAAA,CAAA,CAAA,GAAA,SAAA,CAAA,EAAA,CAAA,CAAA;;IACxD,QAAA,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC;SACxB,CAAA;;;8IAJU,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAC,aAAA,CAAA,eAAA,CAAA,IAAA,EAAA,CAAA,CAAA;4IAAtB,sBAAsB,EAAA,IAAA,EAAA,oBAAA,EAAA,CAAA,CAAA;sHAAtB,sBAAsB,EAAA,UAAA,EAAA,CAAA;sBAHlCC,OAAI;IAAC,YAAA,IAAA,EAAA,CAAA;IACJ,oBAAA,IAAI,EAAE,oBAAoB;qBAC3B,CAAA;;;ACYD,QAAA,uBAAA,kBAAA,YAAA;IA2CE,IAAA,SAAA,uBAAA,GAAA;YAzCO,IAAA,CAAA,eAAe,GAAG,IAAIC,qBAAkB,CAAc,EAAE,CAAC,CAAC;IAC1D,QAAA,IAAgB,CAAA,gBAAA,GAAa,EAAE,CAAC;IAM9B,QAAA,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;IACnB,QAAA,IAAY,CAAA,YAAA,GAAG,KAAK,CAAC;IAGrB,QAAA,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;IACnB,QAAA,IAAA,CAAA,eAAe,GAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;YAChD,IAAA,CAAA,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IAEzC,QAAA,IAAA,CAAA,IAAI,GAAuB,IAAIC,eAAY,EAAE,CAAC;IAI9C,QAAA,IAAA,CAAA,WAAW,GAAiC,IAAIA,eAAY,EAAkB,CAAC;IAI/E,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAIA,eAAY,EAAO,CAAC;IACnC,QAAA,IAAA,CAAA,QAAQ,GAAG,IAAIA,eAAY,EAAO,CAAC;IACnC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAIA,eAAY,EAAO,CAAC;IAErC,QAAA,IAAA,CAAA,UAAU,GAAG,IAAIA,eAAY,EAAK,CAAC;IAEpC,QAAA,IAAW,CAAA,WAAA,GAAuB,EAAE,CAAC;SAa7C;IAVD,IAAA,MAAA,CAAA,cAAA,CAAa,uBAAS,CAAA,SAAA,EAAA,WAAA,EAAA;;IAAtB,QAAA,GAAA,EAAA,UAAuB,IAAmB,EAAA;IACxC,YAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;aAC/B;;;IAAA,KAAA,CAAA,CAAA;IAUD,IAAA,uBAAA,CAAA,SAAA,CAAA,QAAQ,GAAR,YAAA;IACE,QAAA,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,UAAC,WAA6B,EAAA,EAAK,OAAA,WAAW,CAAC,IAAI,CAAhB,EAAgB,CAAC,CAAC;YAClG,IAAI,IAAI,CAAC,aAAa,EAAE;IACtB,YAAA,IAAI,CAAC,kBAAkB,GAAG,IAAI,iBAAiB,CAAc,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAC;IACzG,SAAA;iBAAM,IAAI,IAAI,CAAC,UAAU,EAAE;IAC1B,YAAA,IAAI,CAAC,iBAAiB,GAAG,IAAI,iBAAiB,CAAI,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;IAChH,YAAA,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC5E,SAAA;SACF,CAAA;;IAGD,IAAA,uBAAA,CAAA,SAAA,CAAA,eAAe,GAAf,YAAA;YACE,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;SACpD,CAAA;QAGD,uBAAkB,CAAA,SAAA,CAAA,kBAAA,GAAlB,UAAmB,IAAS,EAAA;YAC1B,IAAI,CAAC,eAAe,GAAG,IAAID,qBAAkB,CAAM,IAAI,CAAC,CAAC;YACzD,IAAI,CAAC,eAAe,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC;YACnD,IAAI,CAAC,eAAe,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC;SAC1C,CAAA;QAED,uBAAW,CAAA,SAAA,CAAA,WAAA,GAAX,UAAY,KAAY,EAAA;IACtB,QAAA,IAAM,WAAW,GAAI,KAAK,CAAC,MAA2B,CAAC,KAAK,CAAC;IAC7D,QAAA,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;SAChE,CAAA;QAED,uBAAS,CAAA,SAAA,CAAA,SAAA,GAAT,UAAU,cAAoB,EAAA;;;YAG5B,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,UAAA,MAAM,EAAA,EAAI,OAAA,MAAM,CAAC,IAAI,KAAK,cAAc,CAAC,MAAM,CAAA,EAAA,CAAC,CAAC,OAAO,CAAC;IACvG,QAAA,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;SAChC,CAAA;IAED,IAAA,uBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,UAAc,MAAc,EAAE,GAAM,EAAE,MAAkB,EAAA;YACtD,MAAM,CAAC,eAAe,EAAE,CAAC;IACzB,QAAA,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAC,MAAM,EAAA,MAAA,EAAE,KAAK,EAAE,GAAG,EAAC,CAAC,CAAC;SAC7C,CAAA;IAED,IAAA,uBAAA,CAAA,SAAA,CAAA,YAAY,GAAZ,YAAA;IACE,QAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;SACvC,CAAA;IAED,IAAA,uBAAA,CAAA,SAAA,CAAA,aAAa,GAAb,YAAA;IACE,QAAA,OAAO,IAAI,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;SAC/C,CAAA;QAED,uBAAO,CAAA,SAAA,CAAA,OAAA,GAAP,UAAQ,GAAQ,EAAA;IACd,QAAA,OAAO,GAAG,CAAC;SACZ,CAAA;;;+IA/FU,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAF,aAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;IAAvB,uBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,uBAAuB,EAKvB,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,EAAA,UAAA,EAAA,YAAA,EAAA,YAAA,EAAA,cAAA,EAAA,UAAA,EAAA,YAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,eAAA,EAAA,iBAAA,EAAA,aAAA,EAAA,eAAA,EAAA,UAAA,EAAA,YAAA,EAAA,WAAA,EAAA,aAAA,EAAA,SAAA,EAAA,WAAA,EAAA,EAAA,OAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,WAAA,EAAA,aAAA,EAAA,QAAA,EAAA,UAAA,EAAA,QAAA,EAAA,UAAA,EAAA,UAAA,EAAA,YAAA,EAAA,UAAA,EAAA,YAAA,EAAA,EAAA,WAAA,EAAA,CAAA,EAAA,YAAA,EAAA,cAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAAI,eAAY,EAEZ,WAAA,EAAA,IAAA,EAAA,EAAA,EAAA,YAAA,EAAA,SAAA,EAAA,KAAA,EAAA,IAAA,EAAA,SAAA,EAAAC,UAAO,yECvBpB,2zJA2GA,EAAA,MAAA,EAAA,CAAA,kHAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,YAAA,EAAA,YAAA,EAAA,oBAAA,EAAA,WAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,QAAA,EAAA,QAAA,EAAA,6BAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,WAAA,EAAA,QAAA,EAAA,cAAA,EAAA,MAAA,EAAA,CAAA,eAAA,EAAA,OAAA,EAAA,UAAA,EAAA,YAAA,EAAA,iBAAA,EAAA,IAAA,EAAA,eAAA,EAAA,MAAA,EAAA,UAAA,EAAA,SAAA,EAAA,UAAA,EAAA,eAAA,EAAA,kBAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,QAAA,EAAA,qBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,SAAA,EAAA,QAAA,EAAA,4LAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,WAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,aAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,eAAA,EAAA,uBAAA,EAAA,cAAA,EAAA,iBAAA,EAAA,OAAA,CAAA,EAAA,QAAA,EAAA,CAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAJ,aAAA,CAAA,YAAA,EAAA,QAAA,EAAA,oCAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,MAAA,EAAA,QAAA,EAAA,sBAAA,EAAA,QAAA,EAAA,CAAA,QAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAK,aAAA,CAAA,YAAA,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,cAAA,CAAA,EAAA,CAAA,EAAA,UAAA,EAAA,CAAA,EAAA,IAAA,EAAAC,aAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAP,aAAA,CAAA,QAAA,EAAA,QAAA,EAAA,WAAA,EAAA,EAAA,EAAA,IAAA,EAAAQ,aAAA,CAAA,QAAA,EAAA,QAAA,EAAA,yHAAA,EAAA,MAAA,EAAA,CAAA,IAAA,EAAA,UAAA,EAAA,UAAA,EAAA,MAAA,EAAA,OAAA,EAAA,UAAA,EAAA,aAAA,EAAA,mBAAA,EAAA,kBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAH,aAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,cAAA,EAAA,kBAAA,EAAA,qBAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,eAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAJ,aAAA,CAAA,YAAA,EAAA,QAAA,EAAA,gBAAA,EAAA,MAAA,EAAA,CAAA,QAAA,EAAA,cAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,aAAA,EAAA,QAAA,EAAA,sCAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,OAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,EAAA,EAAA,IAAA,EAAAM,aAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAE,cAAA,CAAA,UAAA,EAAA,QAAA,EAAA,cAAA,EAAA,QAAA,EAAA,CAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAF,aAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAN,aAAA,CAAA,eAAA,EAAA,QAAA,EAAA,mBAAA,EAAA,MAAA,EAAA,CAAA,iBAAA,EAAA,uBAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAAA,aAAA,CAAA,SAAA,EAAA,QAAA,EAAA,aAAA,EAAA,MAAA,EAAA,CAAA,kBAAA,EAAA,eAAA,CAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,oBAAA,EAAAS,sBAAA,EAAA,EAAA,CAAA,CAAA;sHD3Fa,uBAAuB,EAAA,UAAA,EAAA,CAAA;sBALnCC,YAAS;IAAC,YAAA,IAAA,EAAA,CAAA;IACT,oBAAA,QAAQ,EAAE,eAAe;IACzB,oBAAA,WAAW,EAAE,oCAAoC;wBACjD,SAAS,EAAE,CAAC,oCAAoC,CAAC;qBAClD,CAAA;8EAM2C,YAAY,EAAA,CAAA;0BAArDC,YAAS;oBAAC,IAAA,EAAA,CAAAd,eAAY,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC,CAAA;oBAEJ,OAAO,EAAA,CAAA;0BAA1Cc,YAAS;oBAAC,IAAA,EAAA,CAAAb,UAAO,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAA;oBAEzB,UAAU,EAAA,CAAA;0BAAlBc,QAAK;oBACG,YAAY,EAAA,CAAA;0BAApBA,QAAK;oBAGG,UAAU,EAAA,CAAA;0BAAlBA,QAAK;oBACG,eAAe,EAAA,CAAA;0BAAvBA,QAAK;oBACG,eAAe,EAAA,CAAA;0BAAvBA,QAAK;oBAEI,IAAI,EAAA,CAAA;0BAAbC,SAAM;oBAGE,aAAa,EAAA,CAAA;0BAArBD,QAAK;oBACI,WAAW,EAAA,CAAA;0BAApBC,SAAM;oBAGE,UAAU,EAAA,CAAA;0BAAlBD,QAAK;oBACI,QAAQ,EAAA,CAAA;0BAAjBC,SAAM;oBACG,QAAQ,EAAA,CAAA;0BAAjBA,SAAM;oBACG,UAAU,EAAA,CAAA;0BAAnBA,SAAM;oBAEG,UAAU,EAAA,CAAA;0BAAnBA,SAAM;oBAEE,WAAW,EAAA,CAAA;0BAAnBD,QAAK;oBAGO,SAAS,EAAA,CAAA;0BAArBA,QAAK;;;AEXR,QAAA,oBAAA,kBAAA,YAAA;IAAA,IAAA,SAAA,oBAAA,GAAA;;;;4IAAa,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAAnB,aAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;IAApB,oBAAA,CAAA,IAAA,GAAAA,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,oBAAoB,iBArB7B,uBAAuB;IACvB,QAAA,sBAAsB,aAGtBqB,6BAAa;YACbC,kCAAuB;YACvBC,gBAAa;YACbC,iBAAc;YACdC,qBAAkB;YAClBC,kBAAe;YACfC,iBAAc;YACdC,gBAAa;YACbC,oBAAgB;YAChBC,oBAAiB;IACjB,QAAAC,qBAAkB,aAGlB,uBAAuB;YACvB,sBAAsB,CAAA,EAAA,CAAA,CAAA;IAGb,oBAAA,CAAA,IAAA,GAAA/B,aAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,QAAA,EAAAA,aAAA,EAAA,IAAA,EAAA,oBAAoB,EAlBtB,OAAA,EAAA,CAAA;gBACPqB,6BAAa;gBACbC,kCAAuB;gBACvBC,gBAAa;gBACbC,iBAAc;gBACdC,qBAAkB;gBAClBC,kBAAe;gBACfC,iBAAc;gBACdC,gBAAa;gBACbC,oBAAgB;gBAChBC,oBAAiB;gBACjBC,qBAAkB;aACnB,CAAA,EAAA,CAAA,CAAA;sHAMU,oBAAoB,EAAA,UAAA,EAAA,CAAA;sBAvBhCC,WAAQ;IAAC,YAAA,IAAA,EAAA,CAAA;IACR,oBAAA,YAAY,EAAE;4BACZ,uBAAuB;4BACvB,sBAAsB;IACvB,qBAAA;IACD,oBAAA,OAAO,EAAE;4BACPX,6BAAa;4BACbC,kCAAuB;4BACvBC,gBAAa;4BACbC,iBAAc;4BACdC,qBAAkB;4BAClBC,kBAAe;4BACfC,iBAAc;4BACdC,gBAAa;4BACbC,oBAAgB;4BAChBC,oBAAiB;4BACjBC,qBAAkB;IACnB,qBAAA;IACD,oBAAA,OAAO,EAAE;4BACP,uBAAuB;4BACvB,sBAAsB;IACvB,qBAAA;qBACF,CAAA;;;ACtCD,QAAA,QAAA,kBAAA,YAAA;IACE,IAAA,SAAA,QAAA,CAAmB,MAAS,EAAA;IAAT,QAAA,IAAM,CAAA,MAAA,GAAN,MAAM,CAAG;SAC3B;QACF,OAAA,QAAA,CAAA;IAAA,CAAA,EAAA;;ICHD;;IAEG;;ICFH;;IAEG;;;;;;;;;;;;;;;"}
|
|
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/providers/TableViewConverter.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 SelectionConfig {\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<T>;\r\n config: SelectionConfig;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectionConfig, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.config = ctx;\r\n this.selection = new SelectionModel<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.config.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<T[]>, onSelect: EventEmitter<T[]>, onDeselect: EventEmitter<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.rowSrc));\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","import {IconConfig} from \"../model/TableConfig\";\r\n\r\nexport interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionConfig {\r\n position?: 'start' | 'end';\r\n actions: ActionConfig[];\r\n}\r\n\r\nexport interface ActionConfig {\r\n action: string;\r\n icon: IconConfig<string>;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionConfig;\r\n\r\n constructor(ctx: RowActionConfig, 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 {TableRow} from \"../model/TableRow\";\r\nimport {ColumnConfig, IconConfig, TableConfig, TextConfig} from \"../model/TableConfig\";\r\n\r\nexport class TableViewConverter {\r\n\r\n public static toView<T>(rows: TableRow<T>[], tableConfig: TableConfig<T>[]): Map<string, ColumnConfig<string>>[] {\r\n const result: Map<string, ColumnConfig<(value: T) => string>> = new Map();\r\n tableConfig.forEach(c => {\r\n if (c.valueColumn) {\r\n result.set(c.key, c.valueColumn)\r\n }\r\n })\r\n return this.toViewInternal(rows, result);\r\n }\r\n\r\n private static toViewInternal<T>(rows: TableRow<T>[], source: Map<string, ColumnConfig<(value: T) => string>>): Map<string, ColumnConfig<string>>[] {\r\n return rows.map(row => this.columnConfig(source, row.rowSrc));\r\n }\r\n\r\n private static columnConfig<T>(source: Map<string, ColumnConfig<(value: T) => string>>, rowSrc: T): Map<string, ColumnConfig<string>> {\r\n const result: Map<string, ColumnConfig<string>> = new Map();\r\n source.forEach((source, key) => {\r\n const value: ColumnConfig<string> = {\r\n icon: this.iconConfig(source.icon, rowSrc),\r\n text: this.textConfig(source.text, rowSrc)\r\n }\r\n result.set(key, value)\r\n });\r\n return result;\r\n }\r\n\r\n private static iconConfig<T>(iconSource: IconConfig<(value: T) => string> | undefined, rowSrc: T): IconConfig<string> | undefined {\r\n if (!iconSource) {\r\n return undefined;\r\n }\r\n return {\r\n name: iconSource.name(rowSrc),\r\n color: iconSource.color ? iconSource.color(rowSrc) : undefined,\r\n tooltip: iconSource.tooltip ? iconSource.tooltip(rowSrc) : undefined,\r\n position: iconSource.position,\r\n }\r\n }\r\n\r\n private static textConfig<T>(textSource: TextConfig<(value: T) => string> | undefined, rowSrc: T): TextConfig<string> | undefined {\r\n if (!textSource) {\r\n return undefined;\r\n }\r\n return {\r\n show: textSource.show,\r\n tooltip: textSource.tooltip ? textSource.tooltip(rowSrc) : undefined,\r\n color: textSource.color ? textSource.color(rowSrc) : undefined,\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 {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\nimport {ColumnConfig, TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectionConfig, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionConfig, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\nimport {TableViewConverter} from \"./providers/TableViewConverter\";\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\n public tableView: Map<string, ColumnConfig<string>>[] = [];\n\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n @Input() isFilterable = false;\n\n\n @Input() isPageable = false;\n @Input() paginationSizes: number[] = [5, 10, 15, 25, 50];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionConfig;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectionConfig;\n @Output() selected = new EventEmitter<T[]>();\n @Output() onSelect = new EventEmitter<T[]>();\n @Output() onDeselect = new EventEmitter<T[]>();\n\n @Output() onRowClick = new EventEmitter<T>();\n\n @Input() tableConfig: TableConfig<T>[] = [];\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.tableView = TableViewConverter.toView(this.tableDataSource.data, this.tableConfig)\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 castSrc(row: any): TableRow<T> {\n return row;\n }\n\n getView(rowIndex: number, columnKey: string) {\n return this.tableView[rowIndex].get(columnKey);\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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef>\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 value получать настройки колонок нужно через getView(rowIndex, columnConfig.key) там находятся уже\r\n подготовленные значения для использования-->\r\n <td mat-cell *matCellDef=\"let element; let rowIndex = index\">\r\n\r\n <mat-icon *ngIf=\"getView(rowIndex, columnConfig.key)?.icon\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.icon?.tooltip || ''\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.icon?.color || null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"getView(rowIndex, columnConfig.key)?.text?.show != false\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.text?.color || null\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.text?.tooltip || ''\"\r\n >\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/providers/RowActionProvider'\nexport * from './lib/providers/SelectionProvider'\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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"}
|
|
@@ -4,6 +4,7 @@ import { MatTableDataSource } from '@angular/material/table';
|
|
|
4
4
|
import { MatPaginator } from '@angular/material/paginator';
|
|
5
5
|
import { SelectionProvider } from './providers/SelectionProvider';
|
|
6
6
|
import { RowActionProvider } from './providers/RowActionProvider';
|
|
7
|
+
import { TableViewConverter } from "./providers/TableViewConverter";
|
|
7
8
|
import * as i0 from "@angular/core";
|
|
8
9
|
import * as i1 from "@angular/material/form-field";
|
|
9
10
|
import * as i2 from "@angular/material/table";
|
|
@@ -20,7 +21,7 @@ export class NgxAurMatTableComponent {
|
|
|
20
21
|
constructor() {
|
|
21
22
|
this.tableDataSource = new MatTableDataSource([]);
|
|
22
23
|
this.displayedColumns = [];
|
|
23
|
-
this.
|
|
24
|
+
this.tableView = [];
|
|
24
25
|
this.isFilterable = false;
|
|
25
26
|
this.isPageable = false;
|
|
26
27
|
this.paginationSizes = [5, 10, 15, 25, 50];
|
|
@@ -38,6 +39,7 @@ export class NgxAurMatTableComponent {
|
|
|
38
39
|
this.setTableDataSource(data);
|
|
39
40
|
}
|
|
40
41
|
ngOnInit() {
|
|
42
|
+
this.tableView = TableViewConverter.toView(this.tableDataSource.data, this.tableConfig);
|
|
41
43
|
this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.name);
|
|
42
44
|
if (this.rowActionable) {
|
|
43
45
|
this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
|
|
@@ -79,15 +81,18 @@ export class NgxAurMatTableComponent {
|
|
|
79
81
|
castSrc(row) {
|
|
80
82
|
return row;
|
|
81
83
|
}
|
|
84
|
+
getView(rowIndex, columnKey) {
|
|
85
|
+
return this.tableView[rowIndex].get(columnKey);
|
|
86
|
+
}
|
|
82
87
|
}
|
|
83
88
|
NgxAurMatTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
84
|
-
NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: {
|
|
89
|
+
NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isFilterable: "isFilterable", isPageable: "isPageable", 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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef>\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 value \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043A\u043E\u043B\u043E\u043D\u043E\u043A \u043D\u0443\u0436\u043D\u043E \u0447\u0435\u0440\u0435\u0437 getView(rowIndex, columnConfig.key) \u0442\u0430\u043C \u043D\u0430\u0445\u043E\u0434\u044F\u0442\u0441\u044F \u0443\u0436\u0435\r\n \u043F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0434\u043B\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F-->\r\n <td mat-cell *matCellDef=\"let element; let rowIndex = index\">\r\n\r\n <mat-icon *ngIf=\"getView(rowIndex, columnConfig.key)?.icon\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.icon?.tooltip || ''\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.icon?.color || null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"getView(rowIndex, columnConfig.key)?.text?.show != false\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.text?.color || null\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.text?.tooltip || ''\"\r\n >\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 } });
|
|
85
90
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
|
|
86
91
|
type: Component,
|
|
87
92
|
args: [{
|
|
88
93
|
selector: 'aur-mat-table',
|
|
89
94
|
templateUrl: './ngx-aur-mat-table.component.html',
|
|
90
|
-
styleUrls: ['./ngx-aur-mat-table.component.scss']
|
|
95
|
+
styleUrls: ['./ngx-aur-mat-table.component.scss'],
|
|
91
96
|
}]
|
|
92
97
|
}], ctorParameters: function () { return []; }, propDecorators: { matPaginator: [{
|
|
93
98
|
type: ViewChild,
|
|
@@ -95,8 +100,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
95
100
|
}], matSort: [{
|
|
96
101
|
type: ViewChild,
|
|
97
102
|
args: [MatSort, { static: true }]
|
|
98
|
-
}], isSortable: [{
|
|
99
|
-
type: Input
|
|
100
103
|
}], isFilterable: [{
|
|
101
104
|
type: Input
|
|
102
105
|
}], isPageable: [{
|
|
@@ -126,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
126
129
|
}], tableData: [{
|
|
127
130
|
type: Input
|
|
128
131
|
}] } });
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWF1ci1tYXQtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBZ0IsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUV2RyxPQUFPLEVBQUMsT0FBTyxFQUFPLE1BQU0sd0JBQXdCLENBQUM7QUFDckQsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0seUJBQXlCLENBQUM7QUFDM0QsT0FBTyxFQUFDLFlBQVksRUFBQyxNQUFNLDZCQUE2QixDQUFDO0FBQ3pELE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7Ozs7O0FBVWhFLE1BQU0sT0FBTyx1QkFBdUI7SUEyQ2xDO1FBekNPLG9CQUFlLEdBQUcsSUFBSSxrQkFBa0IsQ0FBYyxFQUFFLENBQUMsQ0FBQztRQUMxRCxxQkFBZ0IsR0FBYSxFQUFFLENBQUM7UUFNOUIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUNuQixpQkFBWSxHQUFHLEtBQUssQ0FBQztRQUdyQixlQUFVLEdBQUcsS0FBSyxDQUFDO1FBQ25CLG9CQUFlLEdBQWEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEQsb0JBQWUsR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRXpD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aUJBQWlCLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELE9BQU8sQ0FBQyxHQUFRO1FBQ2QsT0FBTyxHQUFHLENBQUM7SUFDYixDQUFDOztxSEEvRlUsdUJBQXVCO3lHQUF2Qix1QkFBdUIsOGdCQUt2QixZQUFZLDBFQUVaLE9BQU8sOERDdkJwQiwyekpBMkdBOzRGRDNGYSx1QkFBdUI7a0JBTG5DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGVBQWU7b0JBQ3pCLFdBQVcsRUFBRSxvQ0FBb0M7b0JBQ2pELFNBQVMsRUFBRSxDQUFDLG9DQUFvQyxDQUFDO2lCQUNsRDswRUFNMkMsWUFBWTtzQkFBckQsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQUVKLE9BQU87c0JBQTFDLFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQztnQkFFekIsVUFBVTtzQkFBbEIsS0FBSztnQkFDRyxZQUFZO3NCQUFwQixLQUFLO2dCQUdHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSztnQkFDRyxlQUFlO3NCQUF2QixLQUFLO2dCQUVJLElBQUk7c0JBQWIsTUFBTTtnQkFHRSxhQUFhO3NCQUFyQixLQUFLO2dCQUNJLFdBQVc7c0JBQXBCLE1BQU07Z0JBR0UsVUFBVTtzQkFBbEIsS0FBSztnQkFDSSxRQUFRO3NCQUFqQixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU07Z0JBQ0csVUFBVTtzQkFBbkIsTUFBTTtnQkFFRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR08sU0FBUztzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7VGFibGVDb25maWd9IGZyb20gJy4vbW9kZWwvVGFibGVDb25maWcnO1xuaW1wb3J0IHtNYXRTb3J0LCBTb3J0fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7TWF0VGFibGVEYXRhU291cmNlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQge01hdFBhZ2luYXRvcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7U2VsZWN0aW9uUHJvdmlkZXJ9IGZyb20gJy4vcHJvdmlkZXJzL1NlbGVjdGlvblByb3ZpZGVyJztcbmltcG9ydCB7Um93QWN0aW9uUHJvdmlkZXJ9IGZyb20gJy4vcHJvdmlkZXJzL1Jvd0FjdGlvblByb3ZpZGVyJztcbmltcG9ydCB7VGFibGVSb3d9IGZyb20gXCIuL21vZGVsL1RhYmxlUm93XCI7XG5pbXBvcnQge0FjdGlvbkV2ZW50fSBmcm9tIFwiLi9tb2RlbC9Sb3dBY3Rpb25Db25maWdcIjtcblxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXItbWF0LXRhYmxlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbmd4LWF1ci1tYXQtdGFibGUuY29tcG9uZW50LnNjc3MnXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hBdXJNYXRUYWJsZUNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHVibGljIHRhYmxlRGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8VGFibGVSb3c8VD4+KFtdKTtcbiAgcHVibGljIGRpc3BsYXllZENvbHVtbnM6IHN0cmluZ1tdID0gW107XG4gIC8vIEB0cy1pZ25vcmVcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IsIHtzdGF0aWM6IGZhbHNlfSkgbWF0UGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG4gIC8vIEB0cy1pZ25vcmVcbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7c3RhdGljOiB0cnVlfSkgbWF0U29ydDogTWF0U29ydDtcblxuICBASW5wdXQoKSBpc1NvcnRhYmxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIGlzRmlsdGVyYWJsZSA9IGZhbHNlO1xuXG5cbiAgQElucHV0KCkgaXNQYWdlYWJsZSA9IGZhbHNlO1xuICBASW5wdXQoKSBwYWdpbmF0aW9uU2l6ZXM6IG51bWJlcltdID0gWzUsIDEwLCAxNSwgMjUsIDUwXTtcbiAgQElucHV0KCkgZGVmYXVsdFBhZ2VTaXplID0gdGhpcy5wYWdpbmF0aW9uU2l6ZXNbMV07XG5cbiAgQE91dHB1dCgpIHNvcnQ6IEV2ZW50RW1pdHRlcjxTb3J0PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvLyBAdHMtaWdub3JlXG4gIEBJbnB1dCgpIHJvd0FjdGlvbmFibGU6IFJvd0FjdGlvbkNvbmZpZztcbiAgQE91dHB1dCgpIG9uUm93QWN0aW9uOiBFdmVudEVtaXR0ZXI8QWN0aW9uRXZlbnQ8VD4+ID0gbmV3IEV2ZW50RW1pdHRlcjxBY3Rpb25FdmVudDxUPj4oKTtcblxuICAvLyBAdHMtaWdub3JlXG4gIEBJbnB1dCgpIHNlbGVjdGFibGU6IFNlbGVjdGlvbkNvbmZpZztcbiAgQE91dHB1dCgpIHNlbGVjdGVkID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XG4gIEBPdXRwdXQoKSBvblNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8VFtdPigpO1xuICBAT3V0cHV0KCkgb25EZXNlbGVjdCA9IG5ldyBFdmVudEVtaXR0ZXI8VFtdPigpO1xuXG4gIEBPdXRwdXQoKSBvblJvd0NsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxUPigpO1xuXG4gIEBJbnB1dCgpIHRhYmxlQ29uZmlnOiBUYWJsZUNvbmZpZzxhbnk+W10gPSBbXTtcblxuICAvLyB0aGlzIHByb3BlcnR5IG5lZWRzIHRvIGhhdmUgYSBzZXR0ZXIsIHRvIGR5bmFtaWNhbGx5IGdldCBjaGFuZ2VzIGZyb20gcGFyZW50IGNvbXBvbmVudFxuICBASW5wdXQoKSBzZXQgdGFibGVEYXRhKGRhdGE6IFRhYmxlUm93PFQ+W10pIHtcbiAgICB0aGlzLnNldFRhYmxlRGF0YVNvdXJjZShkYXRhKTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgc2VsZWN0aW9uUHJvdmlkZXI6IFNlbGVjdGlvblByb3ZpZGVyPFQ+O1xuICAvLyBAdHMtaWdub3JlXG4gIHJvd0FjdGlvbnNQcm92aWRlcjogUm93QWN0aW9uUHJvdmlkZXI8VD47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSB0aGlzLnRhYmxlQ29uZmlnLm1hcCgodGFibGVDb2x1bW46IFRhYmxlQ29uZmlnPGFueT4pID0+IHRhYmxlQ29sdW1uLm5hbWUpO1xuICAgIGlmICh0aGlzLnJvd0FjdGlvbmFibGUpIHtcbiAgICAgIHRoaXMucm93QWN0aW9uc1Byb3ZpZGVyID0gbmV3IFJvd0FjdGlvblByb3ZpZGVyPFRhYmxlUm93PFQ+Pih0aGlzLnJvd0FjdGlvbmFibGUsIHRoaXMuZGlzcGxheWVkQ29sdW1ucyk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGFibGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIgPSBuZXcgU2VsZWN0aW9uUHJvdmlkZXI8VD4odGhpcy5zZWxlY3RhYmxlLCB0aGlzLmRpc3BsYXllZENvbHVtbnMsIHRoaXMudGFibGVEYXRhU291cmNlKTtcbiAgICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIuYmluZCh0aGlzLnNlbGVjdGVkLCB0aGlzLm9uU2VsZWN0LCB0aGlzLm9uRGVzZWxlY3QpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHdlIG5lZWQgdGhpcywgaW4gb3JkZXIgdG8gbWFrZSBwYWdpbmF0aW9uIHdvcmsgd2l0aCAqbmdJZlxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UucGFnaW5hdG9yID0gdGhpcy5tYXRQYWdpbmF0b3I7XG4gIH1cblxuXG4gIHNldFRhYmxlRGF0YVNvdXJjZShkYXRhOiBhbnkpIHtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8YW55PihkYXRhKTtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLm1hdFBhZ2luYXRvcjtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5zb3J0ID0gdGhpcy5tYXRTb3J0O1xuICB9XG5cbiAgYXBwbHlGaWx0ZXIoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLmZpbHRlciA9IGZpbHRlclZhbHVlLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgc29ydFRhYmxlKHNvcnRQYXJhbWV0ZXJzOiBTb3J0KSB7XG4gICAgLy8gZGVmaW5pbmcgbmFtZSBvZiBkYXRhIHByb3BlcnR5LCB0byBzb3J0IGJ5LCBpbnN0ZWFkIG9mIGNvbHVtbiBuYW1lXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHNvcnRQYXJhbWV0ZXJzLmFjdGl2ZSA9IHRoaXMudGFibGVDb25maWcuZmluZChjb2x1bW4gPT4gY29sdW1uLm5hbWUgPT09IHNvcnRQYXJhbWV0ZXJzLmFjdGl2ZSkuZGF0YUtleTtcbiAgICB0aGlzLnNvcnQuZW1pdChzb3J0UGFyYW1ldGVycyk7XG4gIH1cblxuICBlbWl0Um93QWN0aW9uKGFjdGlvbjogc3RyaW5nLCByb3c6IFQsICRldmVudDogTW91c2VFdmVudCkge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLm9uUm93QWN0aW9uLmVtaXQoe2FjdGlvbiwgdmFsdWU6IHJvd30pO1xuICB9XG5cbiAgbWFzdGVyVG9nZ2xlKCkge1xuICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIubWFzdGVyVG9nZ2xlKCk7XG4gIH1cblxuICBpc0FsbFNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGlvblByb3ZpZGVyLmlzQWxsU2VsZWN0ZWQoKTtcbiAgfVxuXG4gIGNhc3RTcmMocm93OiBhbnkpOiBUYWJsZVJvdzxUPiB7XG4gICAgcmV0dXJuIHJvdztcbiAgfVxufVxuIiwiPG5nLWNvbnRhaW5lcj5cclxuXHJcbiAgPCEtLSBGaWx0ZXIgLS0+XHJcbiAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRmlsdGVyYWJsZVwiPlxyXG4gICAgPG1hdC1mb3JtLWZpZWxkPlxyXG4gICAgICA8bWF0LWxhYmVsPkZpbHRlcjwvbWF0LWxhYmVsPlxyXG4gICAgICA8aW5wdXQgbWF0SW5wdXQgKGtleXVwKT1cImFwcGx5RmlsdGVyKCRldmVudClcIiBwbGFjZWhvbGRlcj1cImZpbHRlclwiPlxyXG4gICAgPC9tYXQtZm9ybS1maWVsZD5cclxuICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgPCEtLSBUYWJsZSAtLT5cclxuICA8dGFibGUgbWF0LXRhYmxlIFtkYXRhU291cmNlXT1cInRhYmxlRGF0YVNvdXJjZVwiIG1hdFNvcnQgKG1hdFNvcnRDaGFuZ2UpPVwic29ydFRhYmxlKCRldmVudClcIj5cclxuXHJcbiAgICA8IS0tICAgICAgICBzZWxlY3Rpb24tY29sdW1uLS0+XHJcbiAgICA8bmctY29udGFpbmVyIFttYXRDb2x1bW5EZWZdPVwic2VsZWN0aW9uUHJvdmlkZXIuQ09MVU1OX05BTUVcIiAqbmdJZj1cInNlbGVjdGlvblByb3ZpZGVyXCI+XHJcbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgPG1hdC1jaGVja2JveCAoY2hhbmdlKT1cIiRldmVudCA/IG1hc3RlclRvZ2dsZSgpIDogbnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiBpc0FsbFNlbGVjdGVkKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2luZGV0ZXJtaW5hdGVdPVwic2VsZWN0aW9uUHJvdmlkZXIuc2VsZWN0aW9uLmhhc1ZhbHVlKCkgJiYgIWlzQWxsU2VsZWN0ZWQoKVwiPlxyXG4gICAgICAgIDwvbWF0LWNoZWNrYm94PlxyXG4gICAgICA8L3RoPlxyXG4gICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgcm93XCI+XHJcbiAgICAgICAgPG1hdC1jaGVja2JveCAoY2xpY2spPVwiJGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpXCJcclxuICAgICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwiJGV2ZW50ID8gc2VsZWN0aW9uUHJvdmlkZXIuc2VsZWN0aW9uLnRvZ2dsZShjYXN0U3JjKHJvdykucm93U3JjKSA6IG51bGxcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgW2NoZWNrZWRdPVwic2VsZWN0aW9uUHJvdmlkZXIuc2VsZWN0aW9uLmlzU2VsZWN0ZWQoY2FzdFNyYyhyb3cpLnJvd1NyYylcIj5cclxuICAgICAgICA8L21hdC1jaGVja2JveD5cclxuICAgICAgPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDwhLS0gYWN0aW9uIGNvbHVtbiAtLT5cclxuICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJyb3dBY3Rpb25zUHJvdmlkZXJcIiBbbWF0Q29sdW1uRGVmXT1cInJvd0FjdGlvbnNQcm92aWRlci5DT0xVTU5fTkFNRVwiPlxyXG4gICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmPjwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCBlbGVtZW50XCI+XHJcbiAgICAgICAgPGJ1dHRvbiBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICAgICAgICAgIChjbGljayk9XCJlbWl0Um93QWN0aW9uKGFjdGlvbi5hY3Rpb24sIGVsZW1lbnQsICRldmVudClcIlxyXG4gICAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiYWN0aW9uLmljb24udG9vbHRpcCB8fCAnJ1wiXHJcbiAgICAgICAgICAgICAgICAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIHJvd0FjdGlvbmFibGUuYWN0aW9uc1wiPlxyXG4gICAgICAgICAgPG1hdC1pY29uIFtzdHlsZS5jb2xvcl09XCJhY3Rpb24uaWNvbi5jb2xvclwiPlxyXG4gICAgICAgICAgICB7e2FjdGlvbi5pY29uLm5hbWV9fVxyXG4gICAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2J1dHRvbj5cclxuICAgICAgPC90ZD5cclxuICAgIDwvbmctY29udGFpbmVyPlxyXG5cclxuICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGNvbHVtbkNvbmZpZyBvZiB0YWJsZUNvbmZpZ1wiIFttYXRDb2x1bW5EZWZdPVwiY29sdW1uQ29uZmlnLm5hbWVcIj5cclxuXHJcbiAgICAgIDwhLS0gaWYgc29ydGFibGUgY29sdW1uIGhlYWRlciAtLT5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImNvbHVtbkNvbmZpZy5zb3J0Py5lbmFibGU7IGVsc2Ugbm90U29ydGFibGVcIj5cclxuICAgICAgICA8dGggbWF0LWhlYWRlci1jZWxsICptYXRIZWFkZXJDZWxsRGVmIFttYXQtc29ydC1oZWFkZXJdPVwiY29sdW1uQ29uZmlnLm5hbWVcIlxyXG4gICAgICAgICAgICBbYXJyb3dQb3NpdGlvbl09XCJjb2x1bW5Db25maWcuc29ydD8ucG9zaXRpb24gPT09ICdyaWdodCcgPyAnYmVmb3JlJyA6ICdhZnRlcidcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJWYWx1ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8IS0tIGVsc2Ugbm90IHNvcnRhYmxlIC0tPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI25vdFNvcnRhYmxlPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWZcclxuICAgICAgICAgICAgW2NsYXNzLnRleHQtcmlnaHRdPVwiY29sdW1uQ29uZmlnLnNvcnQ/LnBvc2l0aW9uID09ICdyaWdodCdcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJoZWFkZXJWYWx1ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvdGg+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8IS0tICAgICAgaGVhZGVyIHZhbHVlLS0+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSAjaGVhZGVyVmFsdWU+XHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uaWNvblwiXHJcbiAgICAgICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/Lmljb24/LnRvb2x0aXA/LnRvU3RyaW5nKCkgfHwgJydcIlxyXG4gICAgICAgICAgICAgICAgICBbc3R5bGUuY29sb3JdPVwiY29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uaWNvbj8uY29sb3JcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7Y29sdW1uQ29uZmlnLmhlYWRlckNvbHVtbj8uaWNvbj8ubmFtZX19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuICAgICAgICA8c3BhbiAqbmdJZj1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/LnRleHQ/LnNob3cgIT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFttYXRUb29sdGlwXT1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/LnRleHQ/LnRvb2x0aXA/LnRvU3RyaW5nKCkgfHwgJydcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7Y29sdW1uQ29uZmlnLm5hbWV9fVxyXG4gICAgICAgIDwvc3Bhbj5cclxuICAgICAgPC9uZy10ZW1wbGF0ZT5cclxuXHJcbiAgICAgIDwhLS0gY29sdW1uIHZhbHVlIC0tPlxyXG4gICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudFwiPlxyXG5cclxuICAgICAgICA8bWF0LWljb24gKm5nSWY9XCJjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb25cIlxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/LnRvb2x0aXA/IGNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvbj8udG9vbHRpcCEoZWxlbWVudCk6ICcnXCJcclxuICAgICAgICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvbj8uY29sb3I/IGNvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvbj8uY29sb3IhKGVsZW1lbnQpOiBudWxsXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7e2NvbHVtbkNvbmZpZy52YWx1ZUNvbHVtbj8uaWNvbj8ubmFtZShlbGVtZW50KX19XHJcbiAgICAgICAgPC9tYXQtaWNvbj5cclxuXHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/LnRleHQ/LnNob3cgIT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/LnRleHQ/LmNvbG9yPyBjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/LnRleHQ/LmNvbG9yIShlbGVtZW50KTogbnVsbFwiXHJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiY29sdW1uQ29uZmlnLnZhbHVlQ29sdW1uPy50ZXh0Py50b29sdGlwPyBjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/LnRleHQ/LnRvb2x0aXAhKGVsZW1lbnQpOiAnJ1wiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tlbGVtZW50IHwgZGF0YVByb3BlcnR5R2V0dGVyOiBjb2x1bW5Db25maWcua2V5fX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvdGQ+XHJcbiAgICA8L25nLWNvbnRhaW5lcj5cclxuXHJcbiAgICA8dHIgbWF0LWhlYWRlci1yb3cgKm1hdEhlYWRlclJvd0RlZj1cImRpc3BsYXllZENvbHVtbnNcIj48L3RyPlxyXG4gICAgPHRyIG1hdC1yb3cgKGNsaWNrKT1cIm9uUm93QWN0aW9uLmVtaXQocm93KVwiICptYXRSb3dEZWY9XCJsZXQgcm93OyBjb2x1bW5zOiBkaXNwbGF5ZWRDb2x1bW5zO1wiPjwvdHI+XHJcbiAgPC90YWJsZT5cclxuXHJcbiAgPCEtLSBQYWdpbmF0aW9uIC0tPlxyXG4gIDxtYXQtcGFnaW5hdG9yICpuZ0lmPVwiaXNQYWdlYWJsZVwiXHJcbiAgICAgICAgICAgICAgICAgW3BhZ2VTaXplT3B0aW9uc109XCJwYWdpbmF0aW9uU2l6ZXNcIlxyXG4gICAgICAgICAgICAgICAgIFtwYWdlU2l6ZV09XCJkZWZhdWx0UGFnZVNpemVcIlxyXG4gICAgICAgICAgICAgICAgIHNob3dGaXJzdExhc3RCdXR0b25zPlxyXG4gIDwvbWF0LXBhZ2luYXRvcj5cclxuPC9uZy1jb250YWluZXI+XHJcbiJdfQ==
|
|
132
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWF1ci1tYXQtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFHTCxTQUFTLEVBQ1QsWUFBWSxFQUNaLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBQyxPQUFPLEVBQU8sTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sNkJBQTZCLENBQUM7QUFDekQsT0FBTyxFQUFrQixpQkFBaUIsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQ2pGLE9BQU8sRUFBK0IsaUJBQWlCLEVBQUMsTUFBTSwrQkFBK0IsQ0FBQztBQUU5RixPQUFPLEVBQUMsa0JBQWtCLEVBQUMsTUFBTSxnQ0FBZ0MsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVFsRSxNQUFNLE9BQU8sdUJBQXVCO0lBNENsQztRQTFDTyxvQkFBZSxHQUFHLElBQUksa0JBQWtCLENBQWMsRUFBRSxDQUFDLENBQUM7UUFDMUQscUJBQWdCLEdBQWEsRUFBRSxDQUFDO1FBRWhDLGNBQVMsR0FBd0MsRUFBRSxDQUFDO1FBTWxELGlCQUFZLEdBQUcsS0FBSyxDQUFDO1FBR3JCLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDbkIsb0JBQWUsR0FBYSxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNoRCxvQkFB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Q0csVUFBVTtzQkFBbkIsTUFBTTtnQkFFRyxVQUFVO3NCQUFuQixNQUFNO2dCQUVFLFdBQVc7c0JBQW5CLEtBQUs7Z0JBR08sU0FBUztzQkFBckIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIEFmdGVyVmlld0luaXQsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgT3V0cHV0LFxuICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0NvbHVtbkNvbmZpZywgVGFibGVDb25maWd9IGZyb20gJy4vbW9kZWwvVGFibGVDb25maWcnO1xuaW1wb3J0IHtNYXRTb3J0LCBTb3J0fSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zb3J0JztcbmltcG9ydCB7TWF0VGFibGVEYXRhU291cmNlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XG5pbXBvcnQge01hdFBhZ2luYXRvcn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvcGFnaW5hdG9yJztcbmltcG9ydCB7U2VsZWN0aW9uQ29uZmlnLCBTZWxlY3Rpb25Qcm92aWRlcn0gZnJvbSAnLi9wcm92aWRlcnMvU2VsZWN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IHtBY3Rpb25FdmVudCwgUm93QWN0aW9uQ29uZmlnLCBSb3dBY3Rpb25Qcm92aWRlcn0gZnJvbSAnLi9wcm92aWRlcnMvUm93QWN0aW9uUHJvdmlkZXInO1xuaW1wb3J0IHtUYWJsZVJvd30gZnJvbSBcIi4vbW9kZWwvVGFibGVSb3dcIjtcbmltcG9ydCB7VGFibGVWaWV3Q29udmVydGVyfSBmcm9tIFwiLi9wcm92aWRlcnMvVGFibGVWaWV3Q29udmVydGVyXCI7XG5cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVyLW1hdC10YWJsZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25neC1hdXItbWF0LXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIE5neEF1ck1hdFRhYmxlQ29tcG9uZW50PFQ+IGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0IHtcblxuICBwdWJsaWMgdGFibGVEYXRhU291cmNlID0gbmV3IE1hdFRhYmxlRGF0YVNvdXJjZTxUYWJsZVJvdzxUPj4oW10pO1xuICBwdWJsaWMgZGlzcGxheWVkQ29sdW1uczogc3RyaW5nW10gPSBbXTtcblxuICBwdWJsaWMgdGFibGVWaWV3OiBNYXA8c3RyaW5nLCBDb2x1bW5Db25maWc8c3RyaW5nPj5bXSA9IFtdO1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgQFZpZXdDaGlsZChNYXRQYWdpbmF0b3IsIHtzdGF0aWM6IGZhbHNlfSkgbWF0UGFnaW5hdG9yOiBNYXRQYWdpbmF0b3I7XG4gIC8vIEB0cy1pZ25vcmVcbiAgQFZpZXdDaGlsZChNYXRTb3J0LCB7c3RhdGljOiB0cnVlfSkgbWF0U29ydDogTWF0U29ydDtcbiAgQElucHV0KCkgaXNGaWx0ZXJhYmxlID0gZmFsc2U7XG5cblxuICBASW5wdXQoKSBpc1BhZ2VhYmxlID0gZmFsc2U7XG4gIEBJbnB1dCgpIHBhZ2luYXRpb25TaXplczogbnVtYmVyW10gPSBbNSwgMTAsIDE1LCAyNSwgNTBdO1xuICBASW5wdXQoKSBkZWZhdWx0UGFnZVNpemUgPSB0aGlzLnBhZ2luYXRpb25TaXplc1sxXTtcblxuICBAT3V0cHV0KCkgc29ydDogRXZlbnRFbWl0dGVyPFNvcnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgQElucHV0KCkgcm93QWN0aW9uYWJsZTogUm93QWN0aW9uQ29uZmlnO1xuICBAT3V0cHV0KCkgb25Sb3dBY3Rpb246IEV2ZW50RW1pdHRlcjxBY3Rpb25FdmVudDxUPj4gPSBuZXcgRXZlbnRFbWl0dGVyPEFjdGlvbkV2ZW50PFQ+PigpO1xuXG4gIC8vIEB0cy1pZ25vcmVcbiAgQElucHV0KCkgc2VsZWN0YWJsZTogU2VsZWN0aW9uQ29uZmlnO1xuICBAT3V0cHV0KCkgc2VsZWN0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPFRbXT4oKTtcbiAgQE91dHB1dCgpIG9uU2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XG4gIEBPdXRwdXQoKSBvbkRlc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxUW10+KCk7XG5cbiAgQE91dHB1dCgpIG9uUm93Q2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPFQ+KCk7XG5cbiAgQElucHV0KCkgdGFibGVDb25maWc6IFRhYmxlQ29uZmlnPFQ+W10gPSBbXTtcblxuICAvLyB0aGlzIHByb3BlcnR5IG5lZWRzIHRvIGhhdmUgYSBzZXR0ZXIsIHRvIGR5bmFtaWNhbGx5IGdldCBjaGFuZ2VzIGZyb20gcGFyZW50IGNvbXBvbmVudFxuICBASW5wdXQoKSBzZXQgdGFibGVEYXRhKGRhdGE6IFRhYmxlUm93PFQ+W10pIHtcbiAgICB0aGlzLnNldFRhYmxlRGF0YVNvdXJjZShkYXRhKTtcbiAgfVxuXG4gIC8vIEB0cy1pZ25vcmVcbiAgc2VsZWN0aW9uUHJvdmlkZXI6IFNlbGVjdGlvblByb3ZpZGVyPFQ+O1xuICAvLyBAdHMtaWdub3JlXG4gIHJvd0FjdGlvbnNQcm92aWRlcjogUm93QWN0aW9uUHJvdmlkZXI8VD47XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnRhYmxlVmlldyA9IFRhYmxlVmlld0NvbnZlcnRlci50b1ZpZXcodGhpcy50YWJsZURhdGFTb3VyY2UuZGF0YSwgdGhpcy50YWJsZUNvbmZpZylcbiAgICB0aGlzLmRpc3BsYXllZENvbHVtbnMgPSB0aGlzLnRhYmxlQ29uZmlnLm1hcCgodGFibGVDb2x1bW46IFRhYmxlQ29uZmlnPGFueT4pID0+IHRhYmxlQ29sdW1uLm5hbWUpO1xuICAgIGlmICh0aGlzLnJvd0FjdGlvbmFibGUpIHtcbiAgICAgIHRoaXMucm93QWN0aW9uc1Byb3ZpZGVyID0gbmV3IFJvd0FjdGlvblByb3ZpZGVyPFRhYmxlUm93PFQ+Pih0aGlzLnJvd0FjdGlvbmFibGUsIHRoaXMuZGlzcGxheWVkQ29sdW1ucyk7XG4gICAgfSBlbHNlIGlmICh0aGlzLnNlbGVjdGFibGUpIHtcbiAgICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIgPSBuZXcgU2VsZWN0aW9uUHJvdmlkZXI8VD4odGhpcy5zZWxlY3RhYmxlLCB0aGlzLmRpc3BsYXllZENvbHVtbnMsIHRoaXMudGFibGVEYXRhU291cmNlKTtcbiAgICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIuYmluZCh0aGlzLnNlbGVjdGVkLCB0aGlzLm9uU2VsZWN0LCB0aGlzLm9uRGVzZWxlY3QpO1xuICAgIH1cbiAgfVxuXG4gIC8vIHdlIG5lZWQgdGhpcywgaW4gb3JkZXIgdG8gbWFrZSBwYWdpbmF0aW9uIHdvcmsgd2l0aCAqbmdJZlxuICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgdGhpcy50YWJsZURhdGFTb3VyY2UucGFnaW5hdG9yID0gdGhpcy5tYXRQYWdpbmF0b3I7XG4gIH1cblxuXG4gIHNldFRhYmxlRGF0YVNvdXJjZShkYXRhOiBhbnkpIHtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZSA9IG5ldyBNYXRUYWJsZURhdGFTb3VyY2U8YW55PihkYXRhKTtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5wYWdpbmF0b3IgPSB0aGlzLm1hdFBhZ2luYXRvcjtcbiAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5zb3J0ID0gdGhpcy5tYXRTb3J0O1xuICB9XG5cbiAgYXBwbHlGaWx0ZXIoZXZlbnQ6IEV2ZW50KSB7XG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLnZhbHVlO1xuICAgIHRoaXMudGFibGVEYXRhU291cmNlLmZpbHRlciA9IGZpbHRlclZhbHVlLnRyaW0oKS50b0xvd2VyQ2FzZSgpO1xuICB9XG5cbiAgc29ydFRhYmxlKHNvcnRQYXJhbWV0ZXJzOiBTb3J0KSB7XG4gICAgLy8gZGVmaW5pbmcgbmFtZSBvZiBkYXRhIHByb3BlcnR5LCB0byBzb3J0IGJ5LCBpbnN0ZWFkIG9mIGNvbHVtbiBuYW1lXG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIHNvcnRQYXJhbWV0ZXJzLmFjdGl2ZSA9IHRoaXMudGFibGVDb25maWcuZmluZChjb2x1bW4gPT4gY29sdW1uLm5hbWUgPT09IHNvcnRQYXJhbWV0ZXJzLmFjdGl2ZSkuZGF0YUtleTtcbiAgICB0aGlzLnNvcnQuZW1pdChzb3J0UGFyYW1ldGVycyk7XG4gIH1cblxuICBlbWl0Um93QWN0aW9uKGFjdGlvbjogc3RyaW5nLCByb3c6IFQsICRldmVudDogTW91c2VFdmVudCkge1xuICAgICRldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICB0aGlzLm9uUm93QWN0aW9uLmVtaXQoe2FjdGlvbiwgdmFsdWU6IHJvd30pO1xuICB9XG5cbiAgbWFzdGVyVG9nZ2xlKCkge1xuICAgIHRoaXMuc2VsZWN0aW9uUHJvdmlkZXIubWFzdGVyVG9nZ2xlKCk7XG4gIH1cblxuICBpc0FsbFNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLnNlbGVjdGlvblByb3ZpZGVyLmlzQWxsU2VsZWN0ZWQoKTtcbiAgfVxuXG4gIGNhc3RTcmMocm93OiBhbnkpOiBUYWJsZVJvdzxUPiB7XG4gICAgcmV0dXJuIHJvdztcbiAgfVxuXG4gIGdldFZpZXcocm93SW5kZXg6IG51bWJlciwgY29sdW1uS2V5OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy50YWJsZVZpZXdbcm93SW5kZXhdLmdldChjb2x1bW5LZXkpO1xuICB9XG59XG4iLCI8bmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIEZpbHRlciAtLT5cclxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNGaWx0ZXJhYmxlXCI+XHJcbiAgICA8bWF0LWZvcm0tZmllbGQ+XHJcbiAgICAgIDxtYXQtbGFiZWw+RmlsdGVyPC9tYXQtbGFiZWw+XHJcbiAgICAgIDxpbnB1dCBtYXRJbnB1dCAoa2V5dXApPVwiYXBwbHlGaWx0ZXIoJGV2ZW50KVwiIHBsYWNlaG9sZGVyPVwiZmlsdGVyXCI+XHJcbiAgICA8L21hdC1mb3JtLWZpZWxkPlxyXG4gIDwvbmctY29udGFpbmVyPlxyXG5cclxuICA8IS0tIFRhYmxlIC0tPlxyXG4gIDx0YWJsZSBtYXQtdGFibGUgW2RhdGFTb3VyY2VdPVwidGFibGVEYXRhU291cmNlXCIgbWF0U29ydCAobWF0U29ydENoYW5nZSk9XCJzb3J0VGFibGUoJGV2ZW50KVwiPlxyXG5cclxuICAgIDwhLS0gICAgICAgIHNlbGVjdGlvbi1jb2x1bW4tLT5cclxuICAgIDxuZy1jb250YWluZXIgW21hdENvbHVtbkRlZl09XCJzZWxlY3Rpb25Qcm92aWRlci5DT0xVTU5fTkFNRVwiICpuZ0lmPVwic2VsZWN0aW9uUHJvdmlkZXJcIj5cclxuICAgICAgPHRoIG1hdC1oZWFkZXItY2VsbCAqbWF0SGVhZGVyQ2VsbERlZj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjaGFuZ2UpPVwiJGV2ZW50ID8gbWFzdGVyVG9nZ2xlKCkgOiBudWxsXCJcclxuICAgICAgICAgICAgICAgICAgICAgIFtjaGVja2VkXT1cInNlbGVjdGlvblByb3ZpZGVyLnNlbGVjdGlvbi5oYXNWYWx1ZSgpICYmIGlzQWxsU2VsZWN0ZWQoKVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbaW5kZXRlcm1pbmF0ZV09XCJzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24uaGFzVmFsdWUoKSAmJiAhaXNBbGxTZWxlY3RlZCgpXCI+XHJcbiAgICAgICAgPC9tYXQtY2hlY2tib3g+XHJcbiAgICAgIDwvdGg+XHJcbiAgICAgIDx0ZCBtYXQtY2VsbCAqbWF0Q2VsbERlZj1cImxldCByb3dcIj5cclxuICAgICAgICA8bWF0LWNoZWNrYm94IChjbGljayk9XCIkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKClcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgKGNoYW5nZSk9XCIkZXZlbnQgPyBzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24udG9nZ2xlKGNhc3RTcmMocm93KS5yb3dTcmMpIDogbnVsbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJzZWxlY3Rpb25Qcm92aWRlci5zZWxlY3Rpb24uaXNTZWxlY3RlZChjYXN0U3JjKHJvdykucm93U3JjKVwiPlxyXG4gICAgICAgIDwvbWF0LWNoZWNrYm94PlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPCEtLSBhY3Rpb24gY29sdW1uIC0tPlxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cInJvd0FjdGlvbnNQcm92aWRlclwiIFttYXRDb2x1bW5EZWZdPVwicm93QWN0aW9uc1Byb3ZpZGVyLkNPTFVNTl9OQU1FXCI+XHJcbiAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+PC90aD5cclxuICAgICAgPHRkIG1hdC1jZWxsICptYXRDZWxsRGVmPVwibGV0IGVsZW1lbnRcIj5cclxuICAgICAgICA8YnV0dG9uIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKGNsaWNrKT1cImVtaXRSb3dBY3Rpb24oYWN0aW9uLmFjdGlvbiwgZWxlbWVudCwgJGV2ZW50KVwiXHJcbiAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJhY3Rpb24uaWNvbi50b29sdGlwIHx8ICcnXCJcclxuICAgICAgICAgICAgICAgICpuZ0Zvcj1cImxldCBhY3Rpb24gb2Ygcm93QWN0aW9uYWJsZS5hY3Rpb25zXCI+XHJcbiAgICAgICAgICA8bWF0LWljb24gW3N0eWxlLmNvbG9yXT1cImFjdGlvbi5pY29uLmNvbG9yXCI+XHJcbiAgICAgICAgICAgIHt7YWN0aW9uLmljb24ubmFtZX19XHJcbiAgICAgICAgICA8L21hdC1pY29uPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgY29sdW1uQ29uZmlnIG9mIHRhYmxlQ29uZmlnXCIgW21hdENvbHVtbkRlZl09XCJjb2x1bW5Db25maWcubmFtZVwiPlxyXG5cclxuICAgICAgPCEtLSBpZiBzb3J0YWJsZSBjb2x1bW4gaGVhZGVyIC0tPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY29sdW1uQ29uZmlnLnNvcnQ/LmVuYWJsZTsgZWxzZSBub3RTb3J0YWJsZVwiPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWYgW21hdC1zb3J0LWhlYWRlcl09XCJjb2x1bW5Db25maWcubmFtZVwiXHJcbiAgICAgICAgICAgIFthcnJvd1Bvc2l0aW9uXT1cImNvbHVtbkNvbmZpZy5zb3J0Py5wb3NpdGlvbiA9PT0gJ3JpZ2h0JyA/ICdiZWZvcmUnIDogJ2FmdGVyJ1wiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImhlYWRlclZhbHVlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgPC90aD5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgICA8IS0tIGVsc2Ugbm90IHNvcnRhYmxlIC0tPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI25vdFNvcnRhYmxlPlxyXG4gICAgICAgIDx0aCBtYXQtaGVhZGVyLWNlbGwgKm1hdEhlYWRlckNlbGxEZWY+XHJcbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiaGVhZGVyVmFsdWVcIj48L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L3RoPlxyXG4gICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgPCEtLSAgICAgIGhlYWRlciB2YWx1ZS0tPlxyXG4gICAgICA8bmctdGVtcGxhdGUgI2hlYWRlclZhbHVlPlxyXG4gICAgICAgIDxtYXQtaWNvbiAqbmdJZj1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/Lmljb25cIlxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy5pY29uPy50b29sdGlwPy50b1N0cmluZygpIHx8ICcnXCJcclxuICAgICAgICAgICAgICAgICAgW3N0eWxlLmNvbG9yXT1cImNvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/Lmljb24/LmNvbG9yXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7e2NvbHVtbkNvbmZpZy5oZWFkZXJDb2x1bW4/Lmljb24/Lm5hbWV9fVxyXG4gICAgICAgIDwvbWF0LWljb24+XHJcbiAgICAgICAgPHNwYW4gKm5nSWY9XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy50ZXh0Py5zaG93ICE9IGZhbHNlXCJcclxuICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJjb2x1bW5Db25maWcuaGVhZGVyQ29sdW1uPy50ZXh0Py50b29sdGlwPy50b1N0cmluZygpIHx8ICcnXCJcclxuICAgICAgICA+XHJcbiAgICAgICAgICB7e2NvbHVtbkNvbmZpZy5uYW1lfX1cclxuICAgICAgICA8L3NwYW4+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgICA8IS0tIGNvbHVtbiB2YWx1ZSDQv9C+0LvRg9GH0LDRgtGMINC90LDRgdGC0YDQvtC50LrQuCDQutC+0LvQvtC90L7QuiDQvdGD0LbQvdC+INGH0LXRgNC10LcgZ2V0Vmlldyhyb3dJbmRleCwgY29sdW1uQ29uZmlnLmtleSkg0YLQsNC8INC90LDRhdC+0LTRj9GC0YHRjyDRg9C20LVcclxuICAgICAg0L/QvtC00LPQvtGC0L7QstC70LXQvdC90YvQtSDQt9C90LDRh9C10L3QuNGPINC00LvRjyDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjRjy0tPlxyXG4gICAgICA8dGQgbWF0LWNlbGwgKm1hdENlbGxEZWY9XCJsZXQgZWxlbWVudDsgbGV0IHJvd0luZGV4ID0gaW5kZXhcIj5cclxuXHJcbiAgICAgICAgPG1hdC1pY29uICpuZ0lmPVwiZ2V0Vmlldyhyb3dJbmRleCwgY29sdW1uQ29uZmlnLmtleSk/Lmljb25cIlxyXG4gICAgICAgICAgICAgICAgICBbbWF0VG9vbHRpcF09XCJnZXRWaWV3KHJvd0luZGV4LCBjb2x1bW5Db25maWcua2V5KSEuaWNvbj8udG9vbHRpcCB8fCAnJ1wiXHJcbiAgICAgICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJnZXRWaWV3KHJvd0luZGV4LCBjb2x1bW5Db25maWcua2V5KSEuaWNvbj8uY29sb3IgfHwgbnVsbFwiXHJcbiAgICAgICAgPlxyXG4gICAgICAgICAge3tjb2x1bW5Db25maWcudmFsdWVDb2x1bW4/Lmljb24/Lm5hbWUoZWxlbWVudCl9fVxyXG4gICAgICAgIDwvbWF0LWljb24+XHJcblxyXG4gICAgICAgIDxzcGFuICpuZ0lmPVwiZ2V0Vmlldyhyb3dJbmRleCwgY29sdW1uQ29uZmlnLmtleSk/LnRleHQ/LnNob3cgIT0gZmFsc2VcIlxyXG4gICAgICAgICAgICAgIFtzdHlsZS5jb2xvcl09XCJnZXRWaWV3KHJvd0luZGV4LCBjb2x1bW5Db25maWcua2V5KSEudGV4dD8uY29sb3IgfHwgbnVsbFwiXHJcbiAgICAgICAgICAgICAgW21hdFRvb2x0aXBdPVwiZ2V0Vmlldyhyb3dJbmRleCwgY29sdW1uQ29uZmlnLmtleSkhLnRleHQ/LnRvb2x0aXAgfHwgJydcIlxyXG4gICAgICAgID5cclxuICAgICAgICAgIHt7ZWxlbWVudCB8IGRhdGFQcm9wZXJ0eUdldHRlcjogY29sdW1uQ29uZmlnLmtleX19XHJcbiAgICAgICAgPC9zcGFuPlxyXG4gICAgICA8L3RkPlxyXG4gICAgPC9uZy1jb250YWluZXI+XHJcblxyXG4gICAgPHRyIG1hdC1oZWFkZXItcm93ICptYXRIZWFkZXJSb3dEZWY9XCJkaXNwbGF5ZWRDb2x1bW5zXCI+PC90cj5cclxuICAgIDx0ciBtYXQtcm93IChjbGljayk9XCJvblJvd0FjdGlvbi5lbWl0KHJvdylcIiAqbWF0Um93RGVmPVwibGV0IHJvdzsgY29sdW1uczogZGlzcGxheWVkQ29sdW1ucztcIj48L3RyPlxyXG4gIDwvdGFibGU+XHJcblxyXG4gIDwhLS0gUGFnaW5hdGlvbiAtLT5cclxuICA8bWF0LXBhZ2luYXRvciAqbmdJZj1cImlzUGFnZWFibGVcIlxyXG4gICAgICAgICAgICAgICAgIFtwYWdlU2l6ZU9wdGlvbnNdPVwicGFnaW5hdGlvblNpemVzXCJcclxuICAgICAgICAgICAgICAgICBbcGFnZVNpemVdPVwiZGVmYXVsdFBhZ2VTaXplXCJcclxuICAgICAgICAgICAgICAgICBzaG93Rmlyc3RMYXN0QnV0dG9ucz5cclxuICA8L21hdC1wYWdpbmF0b3I+XHJcbjwvbmctY29udGFpbmVyPlxyXG4iXX0=
|
|
@@ -10,4 +10,4 @@ export class RowActionProvider {
|
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm93QWN0aW9uUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL3Byb3ZpZGVycy9Sb3dBY3Rpb25Qcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsTUFBTSxPQUFPLGlCQUFpQjtJQUsxQixZQUFZLEdBQW9CLEVBQUUsT0FBaUI7UUFIMUMsZ0JBQVcsR0FBRyxhQUFhLENBQUM7UUFJakMsSUFBSSxDQUFDLE9BQU8sR0FBRyxHQUFHLENBQUM7UUFDbkIsSUFBSSxHQUFHLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRTtZQUMxQixPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNyQzthQUFNO1lBQ0gsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDbEM7SUFDTCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0ljb25Db25maWd9IGZyb20gXCIuLi9tb2RlbC9UYWJsZUNvbmZpZ1wiO1xyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25FdmVudDxUPiB7XHJcbiAgICBhY3Rpb246IHN0cmluZztcclxuICAgIHZhbHVlOiBUO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFJvd0FjdGlvbkNvbmZpZyB7XHJcbiAgICBwb3NpdGlvbj86ICdzdGFydCcgfCAnZW5kJztcclxuICAgIGFjdGlvbnM6IEFjdGlvbkNvbmZpZ1tdO1xyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIEFjdGlvbkNvbmZpZyB7XHJcbiAgICBhY3Rpb246IHN0cmluZztcclxuICAgIGljb246IEljb25Db25maWc8c3RyaW5nPjtcclxufVxyXG5cclxuZXhwb3J0IGNsYXNzIFJvd0FjdGlvblByb3ZpZGVyPFQ+IHtcclxuXHJcbiAgICByZWFkb25seSBDT0xVTU5fTkFNRSA9ICd0YmxfYWN0aW9ucyc7XHJcbiAgICBjb250ZXh0OiBSb3dBY3Rpb25Db25maWc7XHJcblxyXG4gICAgY29uc3RydWN0b3IoY3R4OiBSb3dBY3Rpb25Db25maWcsIGNvbHVtbnM6IHN0cmluZ1tdKSB7XHJcbiAgICAgICAgdGhpcy5jb250ZXh0ID0gY3R4O1xyXG4gICAgICAgIGlmIChjdHgucG9zaXRpb24gPT09ICdzdGFydCcpIHtcclxuICAgICAgICAgICAgY29sdW1ucy51bnNoaWZ0KHRoaXMuQ09MVU1OX05BTUUpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIGNvbHVtbnMucHVzaCh0aGlzLkNPTFVNTl9OQU1FKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
|
|
@@ -38,4 +38,4 @@ export class SelectionProvider {
|
|
|
38
38
|
return numSelected === numRows;
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VsZWN0aW9uUHJvdmlkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtYXVyLW1hdC10YWJsZS9zcmMvbGliL3Byb3ZpZGVycy9TZWxlY3Rpb25Qcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFVeEQsTUFBTSxPQUFPLGlCQUFpQjtJQU81QixZQUFZLEdBQW9CLEVBQUUsT0FBaUIsRUFBRSxlQUFnRDtRQUxyRixnQkFBVyxHQUFHLGFBQWEsQ0FBQztRQU0xQyxJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQztRQUNsQixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksY0FBYyxDQUFJLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDekQsSUFBSSxDQUFDLGVBQWUsR0FBRyxlQUFlLENBQUM7UUFDdkMsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFpQjtRQUNsQyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxLQUFLLE9BQU8sRUFBRTtZQUNwQyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUNuQzthQUFNO1lBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7U0FDaEM7SUFDSCxDQUFDO0lBRUQsSUFBSSxDQUFDLFFBQTJCLEVBQUUsUUFBMkIsRUFBRSxVQUE2QjtRQUMxRixJQUFJLENBQUMsU0FBUyxDQUFDLE9BQU87YUFDbkIsU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFO1lBQ2pCLElBQUksS0FBSyxDQUFDLEtBQUssRUFBRTtnQkFDZixRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQzthQUM1QjtZQUNELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRTtnQkFDakIsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDaEM7WUFDRCxRQUFRLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDekMsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQyxDQUFDO1lBQ3BCLElBQUksQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsYUFBYTtRQUNYLE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQztRQUNuRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDakQsT0FBTyxXQUFXLEtBQUssT0FBTyxDQUFDO0lBQ2pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U2VsZWN0aW9uTW9kZWx9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2xsZWN0aW9ucyc7XHJcbmltcG9ydCB7TWF0VGFibGVEYXRhU291cmNlfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC90YWJsZSc7XHJcbmltcG9ydCB7RXZlbnRFbWl0dGVyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtUYWJsZVJvd30gZnJvbSBcIi4uL21vZGVsL1RhYmxlUm93XCI7XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNlbGVjdGlvbkNvbmZpZyB7XHJcbiAgcG9zaXRpb24/OiAnc3RhcnQnIHwgJ2VuZCc7XHJcbiAgbXVsdGlwbGU/OiBib29sZWFuO1xyXG59XHJcblxyXG5leHBvcnQgY2xhc3MgU2VsZWN0aW9uUHJvdmlkZXI8VD4ge1xyXG5cclxuICBwdWJsaWMgcmVhZG9ubHkgQ09MVU1OX05BTUUgPSAndGJsX3NlbGVjdHMnO1xyXG4gIHNlbGVjdGlvbjogU2VsZWN0aW9uTW9kZWw8VD47XHJcbiAgY29uZmlnOiBTZWxlY3Rpb25Db25maWc7XHJcbiAgdGFibGVEYXRhU291cmNlOiBNYXRUYWJsZURhdGFTb3VyY2U8VGFibGVSb3c8VD4+O1xyXG5cclxuICBjb25zdHJ1Y3RvcihjdHg6IFNlbGVjdGlvbkNvbmZpZywgY29sdW1uczogc3RyaW5nW10sIHRhYmxlRGF0YVNvdXJjZTogTWF0VGFibGVEYXRhU291cmNlPFRhYmxlUm93PFQ+Pikge1xyXG4gICAgdGhpcy5jb25maWcgPSBjdHg7XHJcbiAgICB0aGlzLnNlbGVjdGlvbiA9IG5ldyBTZWxlY3Rpb25Nb2RlbDxUPihjdHgubXVsdGlwbGUsIFtdKTtcclxuICAgIHRoaXMudGFibGVEYXRhU291cmNlID0gdGFibGVEYXRhU291cmNlO1xyXG4gICAgdGhpcy5pbml0Q2hlY2tib3hDb2x1bW4oY29sdW1ucyk7XHJcbiAgfVxyXG5cclxuICBpbml0Q2hlY2tib3hDb2x1bW4oY29sdW1uczogc3RyaW5nW10pIHtcclxuICAgIGlmICh0aGlzLmNvbmZpZy5wb3NpdGlvbiA9PT0gJ3N0YXJ0Jykge1xyXG4gICAgICBjb2x1bW5zLnVuc2hpZnQodGhpcy5DT0xVTU5fTkFNRSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBjb2x1bW5zLnB1c2godGhpcy5DT0xVTU5fTkFNRSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBiaW5kKHNlbGVjdGVkOiBFdmVudEVtaXR0ZXI8VFtdPiwgb25TZWxlY3Q6IEV2ZW50RW1pdHRlcjxUW10+LCBvbkRlc2VsZWN0OiBFdmVudEVtaXR0ZXI8VFtdPikge1xyXG4gICAgdGhpcy5zZWxlY3Rpb24uY2hhbmdlZFxyXG4gICAgICAuc3Vic2NyaWJlKGV2ZW50ID0+IHtcclxuICAgICAgICBpZiAoZXZlbnQuYWRkZWQpIHtcclxuICAgICAgICAgIG9uU2VsZWN0LmVtaXQoZXZlbnQuYWRkZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoZXZlbnQucmVtb3ZlZCkge1xyXG4gICAgICAgICAgb25EZXNlbGVjdC5lbWl0KGV2ZW50LnJlbW92ZWQpO1xyXG4gICAgICAgIH1cclxuICAgICAgICBzZWxlY3RlZC5lbWl0KHRoaXMuc2VsZWN0aW9uLnNlbGVjdGVkKTtcclxuICAgICAgfSk7XHJcbiAgfVxyXG5cclxuICBtYXN0ZXJUb2dnbGUoKSB7XHJcbiAgICB0aGlzLmlzQWxsU2VsZWN0ZWQoKSA/XHJcbiAgICAgIHRoaXMuc2VsZWN0aW9uLmNsZWFyKCkgOlxyXG4gICAgICB0aGlzLnRhYmxlRGF0YVNvdXJjZS5kYXRhLmZvckVhY2gocm93ID0+IHRoaXMuc2VsZWN0aW9uLnNlbGVjdChyb3cucm93U3JjKSk7XHJcbiAgfVxyXG5cclxuICBpc0FsbFNlbGVjdGVkKCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgbnVtU2VsZWN0ZWQgPSB0aGlzLnNlbGVjdGlvbi5zZWxlY3RlZC5sZW5ndGg7XHJcbiAgICBjb25zdCBudW1Sb3dzID0gdGhpcy50YWJsZURhdGFTb3VyY2UuZGF0YS5sZW5ndGg7XHJcbiAgICByZXR1cm4gbnVtU2VsZWN0ZWQgPT09IG51bVJvd3M7XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
export class TableViewConverter {
|
|
2
|
+
static toView(rows, tableConfig) {
|
|
3
|
+
const result = new Map();
|
|
4
|
+
tableConfig.forEach(c => {
|
|
5
|
+
if (c.valueColumn) {
|
|
6
|
+
result.set(c.key, c.valueColumn);
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
return this.toViewInternal(rows, result);
|
|
10
|
+
}
|
|
11
|
+
static toViewInternal(rows, source) {
|
|
12
|
+
return rows.map(row => this.columnConfig(source, row.rowSrc));
|
|
13
|
+
}
|
|
14
|
+
static columnConfig(source, rowSrc) {
|
|
15
|
+
const result = new Map();
|
|
16
|
+
source.forEach((source, key) => {
|
|
17
|
+
const value = {
|
|
18
|
+
icon: this.iconConfig(source.icon, rowSrc),
|
|
19
|
+
text: this.textConfig(source.text, rowSrc)
|
|
20
|
+
};
|
|
21
|
+
result.set(key, value);
|
|
22
|
+
});
|
|
23
|
+
return result;
|
|
24
|
+
}
|
|
25
|
+
static iconConfig(iconSource, rowSrc) {
|
|
26
|
+
if (!iconSource) {
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
return {
|
|
30
|
+
name: iconSource.name(rowSrc),
|
|
31
|
+
color: iconSource.color ? iconSource.color(rowSrc) : undefined,
|
|
32
|
+
tooltip: iconSource.tooltip ? iconSource.tooltip(rowSrc) : undefined,
|
|
33
|
+
position: iconSource.position,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
static textConfig(textSource, rowSrc) {
|
|
37
|
+
if (!textSource) {
|
|
38
|
+
return undefined;
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
show: textSource.show,
|
|
42
|
+
tooltip: textSource.tooltip ? textSource.tooltip(rowSrc) : undefined,
|
|
43
|
+
color: textSource.color ? textSource.color(rowSrc) : undefined,
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGFibGVWaWV3Q29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9wcm92aWRlcnMvVGFibGVWaWV3Q29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE1BQU0sT0FBTyxrQkFBa0I7SUFFdEIsTUFBTSxDQUFDLE1BQU0sQ0FBSSxJQUFtQixFQUFFLFdBQTZCO1FBQ3hFLE1BQU0sTUFBTSxHQUFvRCxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzFFLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDdEIsSUFBSSxDQUFDLENBQUMsV0FBVyxFQUFFO2dCQUNqQixNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxDQUFBO2FBQ2pDO1FBQ0gsQ0FBQyxDQUFDLENBQUE7UUFDRixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFTyxNQUFNLENBQUMsY0FBYyxDQUFJLElBQW1CLEVBQUUsTUFBdUQ7UUFDM0csT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7SUFDaEUsQ0FBQztJQUVPLE1BQU0sQ0FBQyxZQUFZLENBQUksTUFBdUQsRUFBRSxNQUFTO1FBQy9GLE1BQU0sTUFBTSxHQUFzQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1FBQzVELE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDN0IsTUFBTSxLQUFLLEdBQXlCO2dCQUNsQyxJQUFJLEVBQUUsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQztnQkFDMUMsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxNQUFNLENBQUM7YUFDM0MsQ0FBQTtZQUNELE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFBO1FBQ3hCLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxNQUFNLENBQUM7SUFDaEIsQ0FBQztJQUVPLE1BQU0sQ0FBQyxVQUFVLENBQUksVUFBd0QsRUFBRSxNQUFTO1FBQzlGLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDZixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELE9BQU87WUFDTCxJQUFJLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUM7WUFDN0IsS0FBSyxFQUFFLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDOUQsT0FBTyxFQUFFLFVBQVUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDcEUsUUFBUSxFQUFFLFVBQVUsQ0FBQyxRQUFRO1NBQzlCLENBQUE7SUFDSCxDQUFDO0lBRU8sTUFBTSxDQUFDLFVBQVUsQ0FBSSxVQUF3RCxFQUFFLE1BQVM7UUFDOUYsSUFBSSxDQUFDLFVBQVUsRUFBRTtZQUNmLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTztZQUNMLElBQUksRUFBRSxVQUFVLENBQUMsSUFBSTtZQUNyQixPQUFPLEVBQUUsVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNwRSxLQUFLLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsVUFBVSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztTQUMvRCxDQUFBO0lBQ0gsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtUYWJsZVJvd30gZnJvbSBcIi4uL21vZGVsL1RhYmxlUm93XCI7XHJcbmltcG9ydCB7Q29sdW1uQ29uZmlnLCBJY29uQ29uZmlnLCBUYWJsZUNvbmZpZywgVGV4dENvbmZpZ30gZnJvbSBcIi4uL21vZGVsL1RhYmxlQ29uZmlnXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgVGFibGVWaWV3Q29udmVydGVyIHtcclxuXHJcbiAgcHVibGljIHN0YXRpYyB0b1ZpZXc8VD4ocm93czogVGFibGVSb3c8VD5bXSwgdGFibGVDb25maWc6IFRhYmxlQ29uZmlnPFQ+W10pOiBNYXA8c3RyaW5nLCBDb2x1bW5Db25maWc8c3RyaW5nPj5bXSB7XHJcbiAgICBjb25zdCByZXN1bHQ6IE1hcDxzdHJpbmcsIENvbHVtbkNvbmZpZzwodmFsdWU6IFQpID0+IHN0cmluZz4+ID0gbmV3IE1hcCgpO1xyXG4gICAgdGFibGVDb25maWcuZm9yRWFjaChjID0+IHtcclxuICAgICAgaWYgKGMudmFsdWVDb2x1bW4pIHtcclxuICAgICAgICByZXN1bHQuc2V0KGMua2V5LCBjLnZhbHVlQ29sdW1uKVxyXG4gICAgICB9XHJcbiAgICB9KVxyXG4gICAgcmV0dXJuIHRoaXMudG9WaWV3SW50ZXJuYWwocm93cywgcmVzdWx0KTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIHRvVmlld0ludGVybmFsPFQ+KHJvd3M6IFRhYmxlUm93PFQ+W10sIHNvdXJjZTogTWFwPHN0cmluZywgQ29sdW1uQ29uZmlnPCh2YWx1ZTogVCkgPT4gc3RyaW5nPj4pOiBNYXA8c3RyaW5nLCBDb2x1bW5Db25maWc8c3RyaW5nPj5bXSB7XHJcbiAgICByZXR1cm4gcm93cy5tYXAocm93ID0+IHRoaXMuY29sdW1uQ29uZmlnKHNvdXJjZSwgcm93LnJvd1NyYykpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgY29sdW1uQ29uZmlnPFQ+KHNvdXJjZTogTWFwPHN0cmluZywgQ29sdW1uQ29uZmlnPCh2YWx1ZTogVCkgPT4gc3RyaW5nPj4sIHJvd1NyYzogVCk6IE1hcDxzdHJpbmcsIENvbHVtbkNvbmZpZzxzdHJpbmc+PiB7XHJcbiAgICBjb25zdCByZXN1bHQ6IE1hcDxzdHJpbmcsIENvbHVtbkNvbmZpZzxzdHJpbmc+PiA9IG5ldyBNYXAoKTtcclxuICAgIHNvdXJjZS5mb3JFYWNoKChzb3VyY2UsIGtleSkgPT4ge1xyXG4gICAgICBjb25zdCB2YWx1ZTogQ29sdW1uQ29uZmlnPHN0cmluZz4gPSB7XHJcbiAgICAgICAgaWNvbjogdGhpcy5pY29uQ29uZmlnKHNvdXJjZS5pY29uLCByb3dTcmMpLFxyXG4gICAgICAgIHRleHQ6IHRoaXMudGV4dENvbmZpZyhzb3VyY2UudGV4dCwgcm93U3JjKVxyXG4gICAgICB9XHJcbiAgICAgIHJlc3VsdC5zZXQoa2V5LCB2YWx1ZSlcclxuICAgIH0pO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgc3RhdGljIGljb25Db25maWc8VD4oaWNvblNvdXJjZTogSWNvbkNvbmZpZzwodmFsdWU6IFQpID0+IHN0cmluZz4gfCB1bmRlZmluZWQsIHJvd1NyYzogVCk6IEljb25Db25maWc8c3RyaW5nPiB8IHVuZGVmaW5lZCB7XHJcbiAgICBpZiAoIWljb25Tb3VyY2UpIHtcclxuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgIG5hbWU6IGljb25Tb3VyY2UubmFtZShyb3dTcmMpLFxyXG4gICAgICBjb2xvcjogaWNvblNvdXJjZS5jb2xvciA/IGljb25Tb3VyY2UuY29sb3Iocm93U3JjKSA6IHVuZGVmaW5lZCxcclxuICAgICAgdG9vbHRpcDogaWNvblNvdXJjZS50b29sdGlwID8gaWNvblNvdXJjZS50b29sdGlwKHJvd1NyYykgOiB1bmRlZmluZWQsXHJcbiAgICAgIHBvc2l0aW9uOiBpY29uU291cmNlLnBvc2l0aW9uLFxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBzdGF0aWMgdGV4dENvbmZpZzxUPih0ZXh0U291cmNlOiBUZXh0Q29uZmlnPCh2YWx1ZTogVCkgPT4gc3RyaW5nPiB8IHVuZGVmaW5lZCwgcm93U3JjOiBUKTogVGV4dENvbmZpZzxzdHJpbmc+IHwgdW5kZWZpbmVkIHtcclxuICAgIGlmICghdGV4dFNvdXJjZSkge1xyXG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHtcclxuICAgICAgc2hvdzogdGV4dFNvdXJjZS5zaG93LFxyXG4gICAgICB0b29sdGlwOiB0ZXh0U291cmNlLnRvb2x0aXAgPyB0ZXh0U291cmNlLnRvb2x0aXAocm93U3JjKSA6IHVuZGVmaW5lZCxcclxuICAgICAgY29sb3I6IHRleHRTb3VyY2UuY29sb3IgPyB0ZXh0U291cmNlLmNvbG9yKHJvd1NyYykgOiB1bmRlZmluZWQsXHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
package/esm2015/public-api.js
CHANGED
|
@@ -6,8 +6,6 @@ export * from './lib/ngx-aur-mat-table.module';
|
|
|
6
6
|
export * from './lib/data-property-getter-pipe/data-property-getter.pipe';
|
|
7
7
|
export * from './lib/model/TableRow';
|
|
8
8
|
export * from './lib/model/TableConfig';
|
|
9
|
-
export * from './lib/model/RowActionConfig';
|
|
10
|
-
export * from './lib/model/SelectionConfig';
|
|
11
|
-
export * from './lib/providers/SelectionProvider';
|
|
12
9
|
export * from './lib/providers/RowActionProvider';
|
|
13
|
-
|
|
10
|
+
export * from './lib/providers/SelectionProvider';
|
|
11
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1hdXItbWF0LXRhYmxlL3NyYy9wdWJsaWMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkRBQTJELENBQUM7QUFDMUUsY0FBYyxzQkFBc0IsQ0FBQTtBQUNwQyxjQUFjLHlCQUF5QixDQUFBO0FBQ3ZDLGNBQWMsbUNBQW1DLENBQUE7QUFDakQsY0FBYyxtQ0FBbUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2Ygbmd4LWF1ci1tYXQtdGFibGVcbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtYXVyLW1hdC10YWJsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvbmd4LWF1ci1tYXQtdGFibGUubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RhdGEtcHJvcGVydHktZ2V0dGVyLXBpcGUvZGF0YS1wcm9wZXJ0eS1nZXR0ZXIucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9tb2RlbC9UYWJsZVJvdydcbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVsL1RhYmxlQ29uZmlnJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvdmlkZXJzL1Jvd0FjdGlvblByb3ZpZGVyJ1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcHJvdmlkZXJzL1NlbGVjdGlvblByb3ZpZGVyJ1xuIl19
|
|
@@ -76,6 +76,53 @@ class RowActionProvider {
|
|
|
76
76
|
}
|
|
77
77
|
}
|
|
78
78
|
|
|
79
|
+
class TableViewConverter {
|
|
80
|
+
static toView(rows, tableConfig) {
|
|
81
|
+
const result = new Map();
|
|
82
|
+
tableConfig.forEach(c => {
|
|
83
|
+
if (c.valueColumn) {
|
|
84
|
+
result.set(c.key, c.valueColumn);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
return this.toViewInternal(rows, result);
|
|
88
|
+
}
|
|
89
|
+
static toViewInternal(rows, source) {
|
|
90
|
+
return rows.map(row => this.columnConfig(source, row.rowSrc));
|
|
91
|
+
}
|
|
92
|
+
static columnConfig(source, rowSrc) {
|
|
93
|
+
const result = new Map();
|
|
94
|
+
source.forEach((source, key) => {
|
|
95
|
+
const value = {
|
|
96
|
+
icon: this.iconConfig(source.icon, rowSrc),
|
|
97
|
+
text: this.textConfig(source.text, rowSrc)
|
|
98
|
+
};
|
|
99
|
+
result.set(key, value);
|
|
100
|
+
});
|
|
101
|
+
return result;
|
|
102
|
+
}
|
|
103
|
+
static iconConfig(iconSource, rowSrc) {
|
|
104
|
+
if (!iconSource) {
|
|
105
|
+
return undefined;
|
|
106
|
+
}
|
|
107
|
+
return {
|
|
108
|
+
name: iconSource.name(rowSrc),
|
|
109
|
+
color: iconSource.color ? iconSource.color(rowSrc) : undefined,
|
|
110
|
+
tooltip: iconSource.tooltip ? iconSource.tooltip(rowSrc) : undefined,
|
|
111
|
+
position: iconSource.position,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
static textConfig(textSource, rowSrc) {
|
|
115
|
+
if (!textSource) {
|
|
116
|
+
return undefined;
|
|
117
|
+
}
|
|
118
|
+
return {
|
|
119
|
+
show: textSource.show,
|
|
120
|
+
tooltip: textSource.tooltip ? textSource.tooltip(rowSrc) : undefined,
|
|
121
|
+
color: textSource.color ? textSource.color(rowSrc) : undefined,
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
|
|
79
126
|
class DataPropertyGetterPipe {
|
|
80
127
|
transform(object, keyName, ...args) {
|
|
81
128
|
return object[keyName];
|
|
@@ -94,7 +141,7 @@ class NgxAurMatTableComponent {
|
|
|
94
141
|
constructor() {
|
|
95
142
|
this.tableDataSource = new MatTableDataSource([]);
|
|
96
143
|
this.displayedColumns = [];
|
|
97
|
-
this.
|
|
144
|
+
this.tableView = [];
|
|
98
145
|
this.isFilterable = false;
|
|
99
146
|
this.isPageable = false;
|
|
100
147
|
this.paginationSizes = [5, 10, 15, 25, 50];
|
|
@@ -112,6 +159,7 @@ class NgxAurMatTableComponent {
|
|
|
112
159
|
this.setTableDataSource(data);
|
|
113
160
|
}
|
|
114
161
|
ngOnInit() {
|
|
162
|
+
this.tableView = TableViewConverter.toView(this.tableDataSource.data, this.tableConfig);
|
|
115
163
|
this.displayedColumns = this.tableConfig.map((tableColumn) => tableColumn.name);
|
|
116
164
|
if (this.rowActionable) {
|
|
117
165
|
this.rowActionsProvider = new RowActionProvider(this.rowActionable, this.displayedColumns);
|
|
@@ -153,15 +201,18 @@ class NgxAurMatTableComponent {
|
|
|
153
201
|
castSrc(row) {
|
|
154
202
|
return row;
|
|
155
203
|
}
|
|
204
|
+
getView(rowIndex, columnKey) {
|
|
205
|
+
return this.tableView[rowIndex].get(columnKey);
|
|
206
|
+
}
|
|
156
207
|
}
|
|
157
208
|
NgxAurMatTableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
158
|
-
NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: {
|
|
209
|
+
NgxAurMatTableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { isFilterable: "isFilterable", isPageable: "isPageable", 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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef>\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 value \u043F\u043E\u043B\u0443\u0447\u0430\u0442\u044C \u043D\u0430\u0441\u0442\u0440\u043E\u0439\u043A\u0438 \u043A\u043E\u043B\u043E\u043D\u043E\u043A \u043D\u0443\u0436\u043D\u043E \u0447\u0435\u0440\u0435\u0437 getView(rowIndex, columnConfig.key) \u0442\u0430\u043C \u043D\u0430\u0445\u043E\u0434\u044F\u0442\u0441\u044F \u0443\u0436\u0435\r\n \u043F\u043E\u0434\u0433\u043E\u0442\u043E\u0432\u043B\u0435\u043D\u043D\u044B\u0435 \u0437\u043D\u0430\u0447\u0435\u043D\u0438\u044F \u0434\u043B\u044F \u0438\u0441\u043F\u043E\u043B\u044C\u0437\u043E\u0432\u0430\u043D\u0438\u044F-->\r\n <td mat-cell *matCellDef=\"let element; let rowIndex = index\">\r\n\r\n <mat-icon *ngIf=\"getView(rowIndex, columnConfig.key)?.icon\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.icon?.tooltip || ''\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.icon?.color || null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"getView(rowIndex, columnConfig.key)?.text?.show != false\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.text?.color || null\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.text?.tooltip || ''\"\r\n >\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 } });
|
|
159
210
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
|
|
160
211
|
type: Component,
|
|
161
212
|
args: [{
|
|
162
213
|
selector: 'aur-mat-table',
|
|
163
214
|
templateUrl: './ngx-aur-mat-table.component.html',
|
|
164
|
-
styleUrls: ['./ngx-aur-mat-table.component.scss']
|
|
215
|
+
styleUrls: ['./ngx-aur-mat-table.component.scss'],
|
|
165
216
|
}]
|
|
166
217
|
}], ctorParameters: function () { return []; }, propDecorators: { matPaginator: [{
|
|
167
218
|
type: ViewChild,
|
|
@@ -169,8 +220,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
169
220
|
}], matSort: [{
|
|
170
221
|
type: ViewChild,
|
|
171
222
|
args: [MatSort, { static: true }]
|
|
172
|
-
}], isSortable: [{
|
|
173
|
-
type: Input
|
|
174
223
|
}], isFilterable: [{
|
|
175
224
|
type: Input
|
|
176
225
|
}], isPageable: [{
|
|
@@ -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\nimport {SelectionConfig} from \"../model/SelectionConfig\";\r\n\r\n\r\nexport class SelectionProvider<T> {\r\n\r\n public readonly COLUMN_NAME = 'tbl_selects';\r\n selection: SelectionModel<T>;\r\n config: SelectionConfig;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectionConfig, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.config = ctx;\r\n this.selection = new SelectionModel<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.config.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<T[]>, onSelect: EventEmitter<T[]>, onDeselect: EventEmitter<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.rowSrc));\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","import {RowActionConfig} from \"../model/RowActionConfig\";\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionConfig;\r\n\r\n constructor(ctx: RowActionConfig, 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 {SelectionProvider} from './providers/SelectionProvider';\nimport {RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\nimport {ActionEvent} from \"./model/RowActionConfig\";\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() isSortable = false;\n @Input() isFilterable = false;\n\n\n @Input() isPageable = false;\n @Input() paginationSizes: number[] = [5, 10, 15, 25, 50];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionConfig;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectionConfig;\n @Output() selected = new EventEmitter<T[]>();\n @Output() onSelect = new EventEmitter<T[]>();\n @Output() onDeselect = new EventEmitter<T[]>();\n\n @Output() onRowClick = new EventEmitter<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 castSrc(row: any): TableRow<T> {\n return row;\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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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 value -->\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 [style.color]=\"columnConfig.valueColumn?.text?.color? columnConfig.valueColumn?.text?.color!(element): null\"\r\n [matTooltip]=\"columnConfig.valueColumn?.text?.tooltip? columnConfig.valueColumn?.text?.tooltip!(element): ''\"\r\n >\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/RowActionConfig'\nexport * from './lib/model/SelectionConfig'\nexport * from './lib/providers/SelectionProvider'\nexport * from './lib/providers/RowActionProvider'\n\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/providers/TableViewConverter.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 SelectionConfig {\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<T>;\r\n config: SelectionConfig;\r\n tableDataSource: MatTableDataSource<TableRow<T>>;\r\n\r\n constructor(ctx: SelectionConfig, columns: string[], tableDataSource: MatTableDataSource<TableRow<T>>) {\r\n this.config = ctx;\r\n this.selection = new SelectionModel<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.config.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<T[]>, onSelect: EventEmitter<T[]>, onDeselect: EventEmitter<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.rowSrc));\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","import {IconConfig} from \"../model/TableConfig\";\r\n\r\nexport interface ActionEvent<T> {\r\n action: string;\r\n value: T;\r\n}\r\n\r\nexport interface RowActionConfig {\r\n position?: 'start' | 'end';\r\n actions: ActionConfig[];\r\n}\r\n\r\nexport interface ActionConfig {\r\n action: string;\r\n icon: IconConfig<string>;\r\n}\r\n\r\nexport class RowActionProvider<T> {\r\n\r\n readonly COLUMN_NAME = 'tbl_actions';\r\n context: RowActionConfig;\r\n\r\n constructor(ctx: RowActionConfig, 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 {TableRow} from \"../model/TableRow\";\r\nimport {ColumnConfig, IconConfig, TableConfig, TextConfig} from \"../model/TableConfig\";\r\n\r\nexport class TableViewConverter {\r\n\r\n public static toView<T>(rows: TableRow<T>[], tableConfig: TableConfig<T>[]): Map<string, ColumnConfig<string>>[] {\r\n const result: Map<string, ColumnConfig<(value: T) => string>> = new Map();\r\n tableConfig.forEach(c => {\r\n if (c.valueColumn) {\r\n result.set(c.key, c.valueColumn)\r\n }\r\n })\r\n return this.toViewInternal(rows, result);\r\n }\r\n\r\n private static toViewInternal<T>(rows: TableRow<T>[], source: Map<string, ColumnConfig<(value: T) => string>>): Map<string, ColumnConfig<string>>[] {\r\n return rows.map(row => this.columnConfig(source, row.rowSrc));\r\n }\r\n\r\n private static columnConfig<T>(source: Map<string, ColumnConfig<(value: T) => string>>, rowSrc: T): Map<string, ColumnConfig<string>> {\r\n const result: Map<string, ColumnConfig<string>> = new Map();\r\n source.forEach((source, key) => {\r\n const value: ColumnConfig<string> = {\r\n icon: this.iconConfig(source.icon, rowSrc),\r\n text: this.textConfig(source.text, rowSrc)\r\n }\r\n result.set(key, value)\r\n });\r\n return result;\r\n }\r\n\r\n private static iconConfig<T>(iconSource: IconConfig<(value: T) => string> | undefined, rowSrc: T): IconConfig<string> | undefined {\r\n if (!iconSource) {\r\n return undefined;\r\n }\r\n return {\r\n name: iconSource.name(rowSrc),\r\n color: iconSource.color ? iconSource.color(rowSrc) : undefined,\r\n tooltip: iconSource.tooltip ? iconSource.tooltip(rowSrc) : undefined,\r\n position: iconSource.position,\r\n }\r\n }\r\n\r\n private static textConfig<T>(textSource: TextConfig<(value: T) => string> | undefined, rowSrc: T): TextConfig<string> | undefined {\r\n if (!textSource) {\r\n return undefined;\r\n }\r\n return {\r\n show: textSource.show,\r\n tooltip: textSource.tooltip ? textSource.tooltip(rowSrc) : undefined,\r\n color: textSource.color ? textSource.color(rowSrc) : undefined,\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 {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnInit,\n Output,\n ViewChild\n} from '@angular/core';\nimport {ColumnConfig, TableConfig} from './model/TableConfig';\nimport {MatSort, Sort} from '@angular/material/sort';\nimport {MatTableDataSource} from '@angular/material/table';\nimport {MatPaginator} from '@angular/material/paginator';\nimport {SelectionConfig, SelectionProvider} from './providers/SelectionProvider';\nimport {ActionEvent, RowActionConfig, RowActionProvider} from './providers/RowActionProvider';\nimport {TableRow} from \"./model/TableRow\";\nimport {TableViewConverter} from \"./providers/TableViewConverter\";\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\n public tableView: Map<string, ColumnConfig<string>>[] = [];\n\n // @ts-ignore\n @ViewChild(MatPaginator, {static: false}) matPaginator: MatPaginator;\n // @ts-ignore\n @ViewChild(MatSort, {static: true}) matSort: MatSort;\n @Input() isFilterable = false;\n\n\n @Input() isPageable = false;\n @Input() paginationSizes: number[] = [5, 10, 15, 25, 50];\n @Input() defaultPageSize = this.paginationSizes[1];\n\n @Output() sort: EventEmitter<Sort> = new EventEmitter();\n\n // @ts-ignore\n @Input() rowActionable: RowActionConfig;\n @Output() onRowAction: EventEmitter<ActionEvent<T>> = new EventEmitter<ActionEvent<T>>();\n\n // @ts-ignore\n @Input() selectable: SelectionConfig;\n @Output() selected = new EventEmitter<T[]>();\n @Output() onSelect = new EventEmitter<T[]>();\n @Output() onDeselect = new EventEmitter<T[]>();\n\n @Output() onRowClick = new EventEmitter<T>();\n\n @Input() tableConfig: TableConfig<T>[] = [];\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.tableView = TableViewConverter.toView(this.tableDataSource.data, this.tableConfig)\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 castSrc(row: any): TableRow<T> {\n return row;\n }\n\n getView(rowIndex: number, columnKey: string) {\n return this.tableView[rowIndex].get(columnKey);\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(castSrc(row).rowSrc) : null\"\r\n [checked]=\"selectionProvider.selection.isSelected(castSrc(row).rowSrc)\">\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.icon.tooltip || ''\"\r\n *ngFor=\"let action of rowActionable.actions\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{action.icon.name}}\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\r\n <!-- else not sortable -->\r\n <ng-template #notSortable>\r\n <th mat-header-cell *matHeaderCellDef>\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 value получать настройки колонок нужно через getView(rowIndex, columnConfig.key) там находятся уже\r\n подготовленные значения для использования-->\r\n <td mat-cell *matCellDef=\"let element; let rowIndex = index\">\r\n\r\n <mat-icon *ngIf=\"getView(rowIndex, columnConfig.key)?.icon\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.icon?.tooltip || ''\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.icon?.color || null\"\r\n >\r\n {{columnConfig.valueColumn?.icon?.name(element)}}\r\n </mat-icon>\r\n\r\n <span *ngIf=\"getView(rowIndex, columnConfig.key)?.text?.show != false\"\r\n [style.color]=\"getView(rowIndex, columnConfig.key)!.text?.color || null\"\r\n [matTooltip]=\"getView(rowIndex, columnConfig.key)!.text?.tooltip || ''\"\r\n >\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/providers/RowActionProvider'\nexport * from './lib/providers/SelectionProvider'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i11.DataPropertyGetterPipe"],"mappings":"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"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { AfterViewInit, EventEmitter, OnInit } from '@angular/core';
|
|
2
|
+
import { ColumnConfig, TableConfig } from './model/TableConfig';
|
|
3
|
+
import { MatSort, Sort } from '@angular/material/sort';
|
|
4
|
+
import { MatTableDataSource } from '@angular/material/table';
|
|
5
|
+
import { MatPaginator } from '@angular/material/paginator';
|
|
6
|
+
import { SelectionConfig, SelectionProvider } from './providers/SelectionProvider';
|
|
7
|
+
import { ActionEvent, RowActionConfig, RowActionProvider } from './providers/RowActionProvider';
|
|
8
|
+
import { TableRow } from "./model/TableRow";
|
|
9
|
+
import * as i0 from "@angular/core";
|
|
10
|
+
export declare class NgxAurMatTableComponent<T> implements OnInit, AfterViewInit {
|
|
11
|
+
tableDataSource: MatTableDataSource<TableRow<T>>;
|
|
12
|
+
displayedColumns: string[];
|
|
13
|
+
tableView: Map<string, ColumnConfig<string>>[];
|
|
14
|
+
matPaginator: MatPaginator;
|
|
15
|
+
matSort: MatSort;
|
|
16
|
+
isFilterable: boolean;
|
|
17
|
+
isPageable: boolean;
|
|
18
|
+
paginationSizes: number[];
|
|
19
|
+
defaultPageSize: number;
|
|
20
|
+
sort: EventEmitter<Sort>;
|
|
21
|
+
rowActionable: RowActionConfig;
|
|
22
|
+
onRowAction: EventEmitter<ActionEvent<T>>;
|
|
23
|
+
selectable: SelectionConfig;
|
|
24
|
+
selected: EventEmitter<T[]>;
|
|
25
|
+
onSelect: EventEmitter<T[]>;
|
|
26
|
+
onDeselect: EventEmitter<T[]>;
|
|
27
|
+
onRowClick: EventEmitter<T>;
|
|
28
|
+
tableConfig: TableConfig<T>[];
|
|
29
|
+
set tableData(data: TableRow<T>[]);
|
|
30
|
+
selectionProvider: SelectionProvider<T>;
|
|
31
|
+
rowActionsProvider: RowActionProvider<T>;
|
|
32
|
+
constructor();
|
|
33
|
+
ngOnInit(): void;
|
|
34
|
+
ngAfterViewInit(): void;
|
|
35
|
+
setTableDataSource(data: any): void;
|
|
36
|
+
applyFilter(event: Event): void;
|
|
37
|
+
sortTable(sortParameters: Sort): void;
|
|
38
|
+
emitRowAction(action: string, row: T, $event: MouseEvent): void;
|
|
39
|
+
masterToggle(): void;
|
|
40
|
+
isAllSelected(): boolean;
|
|
41
|
+
castSrc(row: any): TableRow<T>;
|
|
42
|
+
getView(rowIndex: number, columnKey: string): ColumnConfig<string> | undefined;
|
|
43
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<NgxAurMatTableComponent<any>, never>;
|
|
44
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<NgxAurMatTableComponent<any>, "aur-mat-table", never, { "isFilterable": "isFilterable"; "isPageable": "isPageable"; "paginationSizes": "paginationSizes"; "defaultPageSize": "defaultPageSize"; "rowActionable": "rowActionable"; "selectable": "selectable"; "tableConfig": "tableConfig"; "tableData": "tableData"; }, { "sort": "sort"; "onRowAction": "onRowAction"; "selected": "selected"; "onSelect": "onSelect"; "onDeselect": "onDeselect"; "onRowClick": "onRowClick"; }, never, never>;
|
|
45
|
+
}
|
|
@@ -1,4 +1,16 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { IconConfig } from "../model/TableConfig";
|
|
2
|
+
export interface ActionEvent<T> {
|
|
3
|
+
action: string;
|
|
4
|
+
value: T;
|
|
5
|
+
}
|
|
6
|
+
export interface RowActionConfig {
|
|
7
|
+
position?: 'start' | 'end';
|
|
8
|
+
actions: ActionConfig[];
|
|
9
|
+
}
|
|
10
|
+
export interface ActionConfig {
|
|
11
|
+
action: string;
|
|
12
|
+
icon: IconConfig<string>;
|
|
13
|
+
}
|
|
2
14
|
export declare class RowActionProvider<T> {
|
|
3
15
|
readonly COLUMN_NAME = "tbl_actions";
|
|
4
16
|
context: RowActionConfig;
|
|
@@ -2,7 +2,10 @@ import { SelectionModel } from '@angular/cdk/collections';
|
|
|
2
2
|
import { MatTableDataSource } from '@angular/material/table';
|
|
3
3
|
import { EventEmitter } from '@angular/core';
|
|
4
4
|
import { TableRow } from "../model/TableRow";
|
|
5
|
-
|
|
5
|
+
export interface SelectionConfig {
|
|
6
|
+
position?: 'start' | 'end';
|
|
7
|
+
multiple?: boolean;
|
|
8
|
+
}
|
|
6
9
|
export declare class SelectionProvider<T> {
|
|
7
10
|
readonly COLUMN_NAME = "tbl_selects";
|
|
8
11
|
selection: SelectionModel<T>;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { TableRow } from "../model/TableRow";
|
|
2
|
+
import { ColumnConfig, TableConfig } from "../model/TableConfig";
|
|
3
|
+
export declare class TableViewConverter {
|
|
4
|
+
static toView<T>(rows: TableRow<T>[], tableConfig: TableConfig<T>[]): Map<string, ColumnConfig<string>>[];
|
|
5
|
+
private static toViewInternal;
|
|
6
|
+
private static columnConfig;
|
|
7
|
+
private static iconConfig;
|
|
8
|
+
private static textConfig;
|
|
9
|
+
}
|
package/package.json
CHANGED
package/public-api.d.ts
CHANGED
|
@@ -3,7 +3,5 @@ export * from './lib/ngx-aur-mat-table.module';
|
|
|
3
3
|
export * from './lib/data-property-getter-pipe/data-property-getter.pipe';
|
|
4
4
|
export * from './lib/model/TableRow';
|
|
5
5
|
export * from './lib/model/TableConfig';
|
|
6
|
-
export * from './lib/model/RowActionConfig';
|
|
7
|
-
export * from './lib/model/SelectionConfig';
|
|
8
|
-
export * from './lib/providers/SelectionProvider';
|
|
9
6
|
export * from './lib/providers/RowActionProvider';
|
|
7
|
+
export * from './lib/providers/SelectionProvider';
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUm93QWN0aW9uQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9tb2RlbC9Sb3dBY3Rpb25Db25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SWNvbkNvbmZpZ30gZnJvbSBcIi4vVGFibGVDb25maWdcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgUm93QWN0aW9uQ29uZmlnIHtcclxuICAgIGFjdGlvbnM6IEFjdGlvbkNvbmZpZ1tdO1xyXG4gICAgcG9zaXRpb24/OiAnc3RhcnQnIHwgJ2VuZCc7XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgQWN0aW9uRXZlbnQ8VD4ge1xyXG4gICAgYWN0aW9uOiBzdHJpbmc7XHJcbiAgICB2YWx1ZTogVDtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBBY3Rpb25Db25maWcge1xyXG4gICAgYWN0aW9uOiBzdHJpbmc7XHJcbiAgICBpY29uOiBJY29uQ29uZmlnPHN0cmluZz47XHJcbn1cclxuIl19
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
export {};
|
|
2
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VsZWN0aW9uQ29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWF1ci1tYXQtdGFibGUvc3JjL2xpYi9tb2RlbC9TZWxlY3Rpb25Db25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBpbnRlcmZhY2UgU2VsZWN0aW9uQ29uZmlnIHtcclxuICBwb3NpdGlvbj86ICdzdGFydCcgfCAnZW5kJztcclxuICBtdWx0aXBsZT86IGJvb2xlYW47XHJcbn0iXX0=
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { IconConfig } from "./TableConfig";
|
|
2
|
-
export interface RowActionConfig {
|
|
3
|
-
actions: ActionConfig[];
|
|
4
|
-
position?: 'start' | 'end';
|
|
5
|
-
}
|
|
6
|
-
export interface ActionEvent<T> {
|
|
7
|
-
action: string;
|
|
8
|
-
value: T;
|
|
9
|
-
}
|
|
10
|
-
export interface ActionConfig {
|
|
11
|
-
action: string;
|
|
12
|
-
icon: IconConfig<string>;
|
|
13
|
-
}
|