ngx-aur-mat-table 18.0.0 → 19.0.0

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.
Files changed (45) hide show
  1. package/fesm2022/ngx-aur-mat-table.mjs +36 -32
  2. package/fesm2022/ngx-aur-mat-table.mjs.map +1 -1
  3. package/package.json +9 -11
  4. package/esm2022/lib/components/column-value/column-view.component.mjs +0 -18
  5. package/esm2022/lib/components/icon-view/icon-view.component.mjs +0 -16
  6. package/esm2022/lib/data-property-getter-pipe/data-property-getter.pipe.mjs +0 -16
  7. package/esm2022/lib/directive/ngx-aur-table-search-prefix.directive.mjs +0 -14
  8. package/esm2022/lib/directive/ngx-aur-table-search-suffix.directive.mjs +0 -14
  9. package/esm2022/lib/directive/ngx-table-sub-footer-row.directive.mjs +0 -14
  10. package/esm2022/lib/drag-drop/aur-drag-drop-component.mjs +0 -2
  11. package/esm2022/lib/drag-drop/aur-drag-drop.manager.mjs +0 -90
  12. package/esm2022/lib/drag-drop/can-drop-manager.mjs +0 -29
  13. package/esm2022/lib/drag-drop/drag-drop-mapping-manager.mjs +0 -29
  14. package/esm2022/lib/drag-drop/drag-preview-manager.mjs +0 -39
  15. package/esm2022/lib/drag-drop/model/aur-drag-drop-mapping.mjs +0 -2
  16. package/esm2022/lib/drag-drop/model/aur-drag-preview-component.mjs +0 -2
  17. package/esm2022/lib/factories/ActionViewFactory.mjs +0 -38
  18. package/esm2022/lib/factories/DisplayColumnsFactory.mjs +0 -6
  19. package/esm2022/lib/factories/MatTableDataSourceFactory.mjs +0 -15
  20. package/esm2022/lib/factories/TableRowsFactory.mjs +0 -18
  21. package/esm2022/lib/filters/NgxAurFilters.mjs +0 -261
  22. package/esm2022/lib/model/ColumnConfig.mjs +0 -2
  23. package/esm2022/lib/model/EmptyValue.mjs +0 -29
  24. package/esm2022/lib/model/TableRow.mjs +0 -7
  25. package/esm2022/lib/model/TableViewFactory.mjs +0 -62
  26. package/esm2022/lib/ngx-aur-mat-table-filterable.mjs +0 -2
  27. package/esm2022/lib/ngx-aur-mat-table-public.mjs +0 -2
  28. package/esm2022/lib/ngx-aur-mat-table-refreshable.mjs +0 -2
  29. package/esm2022/lib/ngx-aur-mat-table-selection-model.mjs +0 -2
  30. package/esm2022/lib/ngx-aur-mat-table.component.mjs +0 -398
  31. package/esm2022/lib/ngx-aur-mat-table.module.mjs +0 -90
  32. package/esm2022/lib/providers/AbstractProvider.mjs +0 -9
  33. package/esm2022/lib/providers/DragDropProvider.mjs +0 -56
  34. package/esm2022/lib/providers/HeaderButtonProvider.mjs +0 -16
  35. package/esm2022/lib/providers/IndexProvider.mjs +0 -65
  36. package/esm2022/lib/providers/PaginationProvider.mjs +0 -27
  37. package/esm2022/lib/providers/RowActionProvider.mjs +0 -66
  38. package/esm2022/lib/providers/SelectionProvider.mjs +0 -80
  39. package/esm2022/lib/providers/TotalRowProvider.mjs +0 -43
  40. package/esm2022/lib/style-builder/style-builder.mjs +0 -115
  41. package/esm2022/lib/utils/ngx-aur-table-config.util.mjs +0 -15
  42. package/esm2022/lib/utils/ngx-aur-table-page-event.utils.mjs +0 -11
  43. package/esm2022/lib/utils/offset.util.mjs +0 -12
  44. package/esm2022/ngx-aur-mat-table.mjs +0 -5
  45. package/esm2022/public-api.mjs +0 -25
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Directive, Component, Input, Pipe, EventEmitter, ElementRef, ChangeDetectionStrategy, ContentChild, ViewChildren, ViewChild, Output, NgModule } from '@angular/core';
2
+ import { Directive, Input, Component, Pipe, EventEmitter, ElementRef, Output, ViewChild, ViewChildren, ContentChild, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
  import * as i8 from '@angular/material/sort';
4
4
  import { MatSort, MatSortModule } from '@angular/material/sort';
5
5
  import * as i3$1 from '@angular/material/table';
@@ -7,7 +7,7 @@ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
7
7
  import * as i4 from '@angular/material/paginator';
8
8
  import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
9
9
  import { SelectionModel } from '@angular/cdk/collections';
10
- import { trigger, state, style, transition, animate } from '@angular/animations';
10
+ import { trigger, state, transition, style, animate } from '@angular/animations';
11
11
  import { first, finalize } from 'rxjs';
12
12
  import * as i1 from '@angular/common';
13
13
  import { CommonModule } from '@angular/common';
@@ -515,13 +515,14 @@ class OffsetUtil {
515
515
 
516
516
  class NgxTableSubFooterRowDirective {
517
517
  constructor() { }
518
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxTableSubFooterRowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
519
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NgxTableSubFooterRowDirective, selector: "[ngxAurTableSubFooterRow]", ngImport: i0 }); }
518
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxTableSubFooterRowDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
519
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: NgxTableSubFooterRowDirective, isStandalone: false, selector: "[ngxAurTableSubFooterRow]", ngImport: i0 }); }
520
520
  }
521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxTableSubFooterRowDirective, decorators: [{
521
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxTableSubFooterRowDirective, decorators: [{
522
522
  type: Directive,
523
523
  args: [{
524
- selector: '[ngxAurTableSubFooterRow]'
524
+ selector: '[ngxAurTableSubFooterRow]',
525
+ standalone: false
525
526
  }]
526
527
  }], ctorParameters: () => [] });
527
528
 
@@ -778,23 +779,23 @@ class DragProviderDummy extends DragDropProvider {
778
779
  }
779
780
 
780
781
  class IconViewComponent {
781
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
782
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: IconViewComponent, selector: "lib-icon-view", inputs: { view: "view" }, ngImport: i0, template: "<div [ngClass]=\"{'circle': view?.wrapper}\"\r\n [style.background-color]=\"view?.wrapper?.color\">\r\n <mat-icon *ngIf=\"view && view?.display !== 'none'\"\r\n [matTooltip]=\"view?.tooltip?.toString() || ''\"\r\n [style.color]=\"view?.color\">\r\n {{ view?.name }}\r\n </mat-icon>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
782
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: IconViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
783
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: IconViewComponent, isStandalone: false, selector: "lib-icon-view", inputs: { view: "view" }, ngImport: i0, template: "<div [ngClass]=\"{'circle': view?.wrapper}\"\r\n [style.background-color]=\"view?.wrapper?.color\">\r\n <mat-icon *ngIf=\"view && view?.display !== 'none'\"\r\n [matTooltip]=\"view?.tooltip?.toString() || ''\"\r\n [style.color]=\"view?.color\">\r\n {{ view?.name }}\r\n </mat-icon>\r\n</div>\r\n", styles: [""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }] }); }
783
784
  }
784
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: IconViewComponent, decorators: [{
785
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: IconViewComponent, decorators: [{
785
786
  type: Component,
786
- args: [{ selector: 'lib-icon-view', template: "<div [ngClass]=\"{'circle': view?.wrapper}\"\r\n [style.background-color]=\"view?.wrapper?.color\">\r\n <mat-icon *ngIf=\"view && view?.display !== 'none'\"\r\n [matTooltip]=\"view?.tooltip?.toString() || ''\"\r\n [style.color]=\"view?.color\">\r\n {{ view?.name }}\r\n </mat-icon>\r\n</div>\r\n" }]
787
+ args: [{ selector: 'lib-icon-view', standalone: false, template: "<div [ngClass]=\"{'circle': view?.wrapper}\"\r\n [style.background-color]=\"view?.wrapper?.color\">\r\n <mat-icon *ngIf=\"view && view?.display !== 'none'\"\r\n [matTooltip]=\"view?.tooltip?.toString() || ''\"\r\n [style.color]=\"view?.color\">\r\n {{ view?.name }}\r\n </mat-icon>\r\n</div>\r\n" }]
787
788
  }], propDecorators: { view: [{
788
789
  type: Input
789
790
  }] } });
790
791
 
791
792
  class ColumnViewComponent {
792
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
793
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.14", type: ColumnViewComponent, selector: "lib-column-view", inputs: { config: "config", value: "value" }, ngImport: i0, template: "<div class=\"align-container\">\r\n\r\n <lib-icon-view [view]=\"config?.icon\">\r\n </lib-icon-view>\r\n\r\n <img *ngIf=\"config?.image?.src\"\r\n [src]=\"config?.image?.src\"\r\n [style.height]=\"config?.image?.height\"\r\n [style.width]=\"config?.image?.width\"\r\n alt=\"img\">\r\n\r\n <span *ngIf=\"config?.text?.show != false\"\r\n [matTooltip]=\"config?.text?.tooltip?.toString() || ''\">\r\n {{ value }}\r\n </span>\r\n</div>\r\n", styles: [".align-container{display:flex;align-items:center}span{margin-left:4px}.circle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: IconViewComponent, selector: "lib-icon-view", inputs: ["view"] }] }); }
793
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: ColumnViewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
794
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.2.17", type: ColumnViewComponent, isStandalone: false, selector: "lib-column-view", inputs: { config: "config", value: "value" }, ngImport: i0, template: "<div class=\"align-container\">\r\n\r\n <lib-icon-view [view]=\"config?.icon\">\r\n </lib-icon-view>\r\n\r\n <img *ngIf=\"config?.image?.src\"\r\n [src]=\"config?.image?.src\"\r\n [style.height]=\"config?.image?.height\"\r\n [style.width]=\"config?.image?.width\"\r\n alt=\"img\">\r\n\r\n <span *ngIf=\"config?.text?.show != false\"\r\n [matTooltip]=\"config?.text?.tooltip?.toString() || ''\">\r\n {{ value }}\r\n </span>\r\n</div>\r\n", styles: [".align-container{display:flex;align-items:center}span{margin-left:4px}.circle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: IconViewComponent, selector: "lib-icon-view", inputs: ["view"] }] }); }
794
795
  }
795
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: ColumnViewComponent, decorators: [{
796
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: ColumnViewComponent, decorators: [{
796
797
  type: Component,
797
- args: [{ selector: 'lib-column-view', template: "<div class=\"align-container\">\r\n\r\n <lib-icon-view [view]=\"config?.icon\">\r\n </lib-icon-view>\r\n\r\n <img *ngIf=\"config?.image?.src\"\r\n [src]=\"config?.image?.src\"\r\n [style.height]=\"config?.image?.height\"\r\n [style.width]=\"config?.image?.width\"\r\n alt=\"img\">\r\n\r\n <span *ngIf=\"config?.text?.show != false\"\r\n [matTooltip]=\"config?.text?.tooltip?.toString() || ''\">\r\n {{ value }}\r\n </span>\r\n</div>\r\n", styles: [".align-container{display:flex;align-items:center}span{margin-left:4px}.circle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%}\n"] }]
798
+ args: [{ selector: 'lib-column-view', standalone: false, template: "<div class=\"align-container\">\r\n\r\n <lib-icon-view [view]=\"config?.icon\">\r\n </lib-icon-view>\r\n\r\n <img *ngIf=\"config?.image?.src\"\r\n [src]=\"config?.image?.src\"\r\n [style.height]=\"config?.image?.height\"\r\n [style.width]=\"config?.image?.width\"\r\n alt=\"img\">\r\n\r\n <span *ngIf=\"config?.text?.show != false\"\r\n [matTooltip]=\"config?.text?.tooltip?.toString() || ''\">\r\n {{ value }}\r\n </span>\r\n</div>\r\n", styles: [".align-container{display:flex;align-items:center}span{margin-left:4px}.circle{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%}\n"] }]
798
799
  }], propDecorators: { config: [{
799
800
  type: Input
800
801
  }], value: [{
@@ -805,13 +806,14 @@ class DataPropertyGetterPipe {
805
806
  transform(object, keyName, ...args) {
806
807
  return object[keyName];
807
808
  }
808
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataPropertyGetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
809
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: DataPropertyGetterPipe, name: "dataPropertyGetter" }); }
809
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DataPropertyGetterPipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
810
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: DataPropertyGetterPipe, isStandalone: false, name: "dataPropertyGetter" }); }
810
811
  }
811
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: DataPropertyGetterPipe, decorators: [{
812
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: DataPropertyGetterPipe, decorators: [{
812
813
  type: Pipe,
813
814
  args: [{
814
- name: 'dataPropertyGetter'
815
+ name: 'dataPropertyGetter',
816
+ standalone: false
815
817
  }]
816
818
  }] });
817
819
 
@@ -1104,8 +1106,8 @@ class NgxAurMatTableComponent {
1104
1106
  onDragEnd($event, row) {
1105
1107
  this.dragDropProvider.manager.endDrag();
1106
1108
  }
1107
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableComponent, deps: [{ token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
1108
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.14", type: NgxAurMatTableComponent, selector: "aur-mat-table", inputs: { displayColumns: "displayColumns", extraHeaderCellTopTemplate: "extraHeaderCellTopTemplate", extraHeaderCellBottomTemplate: "extraHeaderCellBottomTemplate", tableConfig: "tableConfig", tableData: "tableData", extendedRowTemplate: "extendedRowTemplate", paginatorState: "paginatorState", isTableBodyHide: "isTableBodyHide", highlight: "highlight" }, outputs: { sort: "sort", pageChange: "pageChange", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onSelectedRowsAction: "onSelectedRowsAction", selectionModel: "selectionModel", onRowClick: "onRowClick", onFilter: "onFilter", columnOffsets: "columnOffsets", onHeaderButton: "onHeaderButton" }, queries: [{ propertyName: "subFooterRowTemplate", first: true, predicate: NgxTableSubFooterRowDirective, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "rows", predicate: ["rowLink"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: "<div class=\"aur-mat-table\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <ng-container>\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"tableConfig.filterCfg?.enable ?? false\">\r\n <div class=\"search-container\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchPrefix]\"></ng-content>\r\n </ng-container>\r\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{ tableConfig.filterCfg?.label }}</mat-label>\r\n <input matInput (keyup)=\"applySearchFilter($event)\"\r\n placeholder=\"{{tableConfig.filterCfg?.placeholder}}\"\r\n style=\"font-size: 18px;\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n </mat-form-field>\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchSuffix]\"></ng-content>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <div class=\"table-container\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <mat-icon *ngIf=\"headerButtonProvider.isEnabled\"\r\n class=\"table-settings-button\"\r\n [style.color]=\"headerButtonProvider.color\"\r\n [style.background-color]=\"headerButtonProvider.background\"\r\n (click)=\"onHeaderButton.emit($event)\">\r\n {{ headerButtonProvider.icon }}\r\n </mat-icon>\r\n\r\n <!-- Table -->\r\n <table #table mat-table matSort\r\n [multiTemplateDataRows]=\"extendedRowTemplate !== null\"\r\n [dataSource]=\"tableDataSource\"\r\n (matSortChange)=\"sortTable($event)\"\r\n [style.height]=\"tableConfig.tableView?.height\"\r\n [style.max-height]=\"tableConfig.tableView?.maxHeight\"\r\n [style.min-height]=\"tableConfig.tableView?.minHeight\"\r\n [ngClass]=\"{'hide-table-body': isTableBodyHide}\">\r\n\r\n\r\n <!-- drag-column-->\r\n <ng-container *ngIf=\"dragDropProvider.isEnabled && dragDropProvider.draggable\" [matColumnDef]=\"dragDropProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\" class=\"drag-column\">\r\n <lib-icon-view draggable=\"true\"\r\n class=\"drag-icon\"\r\n [view]=\"dragDropProvider.dragIconView\"\r\n (dragstart)=\"onDragStart($event, element)\"\r\n (dragend)=\"onDragEnd($event, element)\">\r\n </lib-icon-view>\r\n\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- index-column-->\r\n <ng-container *ngIf=\"indexProvider.isEnabled\" [matColumnDef]=\"indexProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n <lib-column-view [config]=\"indexProvider.headerView\">\r\n {{ indexProvider.name }}\r\n </lib-column-view>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\">\r\n {{ element.id + indexProvider.offset }}\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(indexProvider.COLUMN_NAME) || '' }}\r\n </td>\r\n </ng-container>\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider.isEnabled\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <div class=\"flex-container\">\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 <div\r\n *ngIf=\"tableConfig.selectionCfg?.showSelectedCount && selectionProvider.selection.hasValue()\">\r\n {{ selectionProvider.selection.selected.length }}\r\n <span\r\n *ngIf=\"tableConfig.selectionCfg?.showTotalCount !== false\">/{{ paginatorState?.length ? paginatorState?.length : tableDataSource.filteredData.length }}</span>\r\n </div>\r\n\r\n <div *ngIf=\"selectionProvider.selection.hasValue() && tableConfig?.selectionCfg?.actions\">\r\n <ng-container *ngFor=\"let action of tableConfig.selectionCfg!.actions\">\r\n <button mat-icon-button\r\n (click)=\"emitSelectedRowsAction(action.action, selectionProvider.selection.selected)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\"\r\n (click)=\"$event.stopPropagation(); selectionProvider.selection.toggle(castSrc(row).rowSrc)\">\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\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider.isEnabled\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\" (click)=\"$event.stopPropagation()\" style=\"cursor: default\">\r\n <ng-container *ngFor=\"let action of rowActionsProvider.actionView.get(element.id)\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element.rowSrc, $event)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </td>\r\n\r\n <ng-container *ngTemplateOutlet=\"footerCellTemplate; context: {$implicit: rowActionsProvider.COLUMN_NAME}\">\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- value-icon-->\r\n <ng-container *ngFor=\"let columnConfig of tableConfig.columnsCfg\" [matColumnDef]=\"columnConfig.key\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort && columnConfig.sort.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.key\"\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 <lib-column-view [config]=\"columnConfig.headerView\"\r\n [value]=\"columnConfig.name\">\r\n </lib-column-view>\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;\">\r\n <lib-column-view\r\n [config]=\"tableView[element.id]?.get(columnConfig.key)\"\r\n [value]=\"element | dataPropertyGetter: columnConfig.key\">\r\n </lib-column-view>\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnConfig.key) || '' }}\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- extra header top cell-->\r\n <ng-container *ngFor=\"let extraTopCell of _displayExtraHeaderTopCell; let index = index\"\r\n [matColumnDef]=\"extraTopCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellTopTemplate; context: {key: extraTopCell.replace(EXTRA_HEADER_CELL_TOP_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n\r\n <!-- extra header bottom cell-->\r\n <ng-container *ngFor=\"let extraBottomCell of _displayExtraHeaderBottomCell; let index = index\"\r\n [matColumnDef]=\"extraBottomCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellBottomTemplate; context: {key: extraBottomCell.replace(EXTRA_HEADER_CELL_BOTTOM_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n <!-- extra header top row-->\r\n <ng-container *ngIf=\"extraHeaderCellTopTemplate\">\r\n <tr mat-header-row *matHeaderRowDef=\"_displayExtraHeaderTopCell; sticky: this.tableConfig.stickyCfg?.header\"\r\n class=\"extra-header-top-row\">\r\n </tr>\r\n </ng-container>\r\n\r\n <!-- header row-->\r\n <tr mat-header-row *matHeaderRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n\r\n <!-- extra header bottom row -->\r\n <ng-container *ngIf=\"extraHeaderCellBottomTemplate\">\r\n <tr mat-header-row\r\n *matHeaderRowDef=\"_displayExtraHeaderBottomCell; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n </ng-container>\r\n\r\n <tr mat-row #rowLink\r\n (dragover)=\"onDragOver($event)\"\r\n (drop)=\"onDrop($event, row)\"\r\n *matRowDef=\"let row; columns: _displayColumns;\"\r\n (click)=\"rowClick(row)\"\r\n [ngClass]=\"{'pointer': tableConfig.clickCfg?.pointer || false, 'new-color': highlighted===row.rowSrc && tableConfig?.clickCfg?.highlightClicked?.color}\"\r\n [ngStyle]=\"{\r\n 'color': highlighted===row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.color : undefined,\r\n 'background-color': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.background : undefined,\r\n 'border': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.border : undefined\r\n }\">\r\n </tr>\r\n\r\n <!--expanded-row-->\r\n <ng-container matColumnDef=\"expandedRow\">\r\n <td mat-cell class=\"expanded-cell\" *matCellDef=\"let element\" [attr.colspan]=\"_displayColumns.length\"\r\n style=\"padding-right: 0!important;\">\r\n <div class=\"row-detail\"\r\n [@detailExpand]=\"element.rowSrc === highlighted ? expandedStateEnum.EXPANDED : expandedStateEnum.COLLAPSED\">\r\n <!-- lazy-load of details -->\r\n <ng-container *ngIf=\"element.rowSrc === highlighted\">\r\n <ng-container *ngTemplateOutlet=\"extendedRowTemplate; context: {$implicit: element}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"extendedRowTemplate\">\r\n <tr mat-row class=\"expanded-row\" *matRowDef=\"let row; columns: ['expandedRow']\"></tr>\r\n </ng-container>\r\n <!--expanded-row-->\r\n\r\n <ng-container *ngIf=\"totalRowProvider.isEnabled\">\r\n <tr mat-footer-row *matFooterRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.total\"\r\n [style]=\"totalRowProvider.style\"></tr>\r\n </ng-container>\r\n\r\n <!--sub-footer-row-->\r\n <ng-container matColumnDef=\"subFooterRow\">\r\n <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"_displayColumns.length\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSubFooterRow]\"></ng-content>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"subFooterRowTemplate\">\r\n <tr mat-footer-row *matFooterRowDef=\"['subFooterRow']; sticky: this.tableConfig.stickyCfg?.subFooter\"></tr>\r\n </ng-container>\r\n <!-- sub-footer-row END-->\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Pagination -->\r\n @if (this.paginationProvider.isEnabled) {\r\n <mat-paginator [ngClass]=\"{'hidePaginator': isTableBodyHide}\"\r\n [pageSizeOptions]=\"paginationProvider.sizes\"\r\n [pageSize]=\"paginationProvider.size\"\r\n [style]=\"tableConfig?.pageableCfg?.style\"\r\n [length]=\"paginatorState?.length\"\r\n [pageIndex]=\"paginatorState?.pageIndex\"\r\n (page)=\"pageChange.emit($event)\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n }\r\n</div>\r\n\r\n<ng-template #footerCellTemplate let-columnName>\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnName) || '' }}\r\n </td>\r\n</ng-template>\r\n", styles: [".aur-mat-table{display:flex;flex-direction:column}.aur-mat-table.bottom-pagination{height:100%}.aur-mat-table table{border-collapse:collapse}.aur-mat-table .table-container{position:relative}.aur-mat-table .table-container.bottom-pagination{flex-grow:1;overflow:auto}.aur-mat-table th,td{padding-right:4px!important;padding-left:4px!important}.aur-mat-table .new-color td.mat-mdc-cell,.aur-mat-table .new-color td.mat-mdc-footer-cell{color:inherit}.aur-mat-table mat-form-field{width:100%}.aur-mat-table .text-right{text-align:right!important}.aur-mat-table .pointer:hover{background-color:#f2f2f2;cursor:pointer}.aur-mat-table .flex-container{display:flex;align-items:center}.aur-mat-table .expanded-row{height:0}.aur-mat-table .expanded-row .expanded-cell{padding-right:0!important;padding-left:0!important}.aur-mat-table .row-detail{overflow:hidden;display:flex}.aur-mat-table .clear-bottom-border{border-bottom:none}.aur-mat-table .table-settings-button{position:absolute;right:4px;top:12px;cursor:pointer;border-radius:4px;padding-bottom:2px;padding-top:2px;z-index:9999999999}.mat-mdc-header-row th:last-child{padding-right:25px!important}.aur-mat-table .search-container{display:flex;gap:8px;align-items:center}.aur-mat-table .extra-header-top-row th{border-bottom:none}.aur-mat-table .drag-icon{cursor:grab}.hide-table-body tr:not(.mat-mdc-header-row){display:none!important}.hidePaginator{display:none}.aur-mat-table .drag-column{padding-left:8px;padding-right:8px;width:35px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i3$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3$1.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i3$1.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i3$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i3$1.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i3$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i8.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i8.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: ColumnViewComponent, selector: "lib-column-view", inputs: ["config", "value"] }, { kind: "component", type: IconViewComponent, selector: "lib-icon-view", inputs: ["view"] }, { kind: "pipe", type: DataPropertyGetterPipe, name: "dataPropertyGetter" }], animations: [
1109
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableComponent, deps: [{ token: i0.ViewContainerRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
1110
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: NgxAurMatTableComponent, isStandalone: false, selector: "aur-mat-table", inputs: { displayColumns: "displayColumns", extraHeaderCellTopTemplate: "extraHeaderCellTopTemplate", extraHeaderCellBottomTemplate: "extraHeaderCellBottomTemplate", tableConfig: "tableConfig", tableData: "tableData", extendedRowTemplate: "extendedRowTemplate", paginatorState: "paginatorState", isTableBodyHide: "isTableBodyHide", highlight: "highlight" }, outputs: { sort: "sort", pageChange: "pageChange", onRowAction: "onRowAction", selected: "selected", onSelect: "onSelect", onDeselect: "onDeselect", onSelectedRowsAction: "onSelectedRowsAction", selectionModel: "selectionModel", onRowClick: "onRowClick", onFilter: "onFilter", columnOffsets: "columnOffsets", onHeaderButton: "onHeaderButton" }, queries: [{ propertyName: "subFooterRowTemplate", first: true, predicate: NgxTableSubFooterRowDirective, descendants: true }], viewQueries: [{ propertyName: "table", first: true, predicate: ["table"], descendants: true, read: ElementRef }, { propertyName: "matPaginator", first: true, predicate: MatPaginator, descendants: true }, { propertyName: "matSort", first: true, predicate: MatSort, descendants: true, static: true }, { propertyName: "rows", predicate: ["rowLink"], descendants: true, read: ElementRef }], usesOnChanges: true, ngImport: i0, template: "<div class=\"aur-mat-table\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <ng-container>\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"tableConfig.filterCfg?.enable ?? false\">\r\n <div class=\"search-container\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchPrefix]\"></ng-content>\r\n </ng-container>\r\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{ tableConfig.filterCfg?.label }}</mat-label>\r\n <input matInput (keyup)=\"applySearchFilter($event)\"\r\n placeholder=\"{{tableConfig.filterCfg?.placeholder}}\"\r\n style=\"font-size: 18px;\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n </mat-form-field>\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchSuffix]\"></ng-content>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <div class=\"table-container\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <mat-icon *ngIf=\"headerButtonProvider.isEnabled\"\r\n class=\"table-settings-button\"\r\n [style.color]=\"headerButtonProvider.color\"\r\n [style.background-color]=\"headerButtonProvider.background\"\r\n (click)=\"onHeaderButton.emit($event)\">\r\n {{ headerButtonProvider.icon }}\r\n </mat-icon>\r\n\r\n <!-- Table -->\r\n <table #table mat-table matSort\r\n [multiTemplateDataRows]=\"extendedRowTemplate !== null\"\r\n [dataSource]=\"tableDataSource\"\r\n (matSortChange)=\"sortTable($event)\"\r\n [style.height]=\"tableConfig.tableView?.height\"\r\n [style.max-height]=\"tableConfig.tableView?.maxHeight\"\r\n [style.min-height]=\"tableConfig.tableView?.minHeight\"\r\n [ngClass]=\"{'hide-table-body': isTableBodyHide}\">\r\n\r\n\r\n <!-- drag-column-->\r\n <ng-container *ngIf=\"dragDropProvider.isEnabled && dragDropProvider.draggable\" [matColumnDef]=\"dragDropProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\" class=\"drag-column\">\r\n <lib-icon-view draggable=\"true\"\r\n class=\"drag-icon\"\r\n [view]=\"dragDropProvider.dragIconView\"\r\n (dragstart)=\"onDragStart($event, element)\"\r\n (dragend)=\"onDragEnd($event, element)\">\r\n </lib-icon-view>\r\n\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- index-column-->\r\n <ng-container *ngIf=\"indexProvider.isEnabled\" [matColumnDef]=\"indexProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n <lib-column-view [config]=\"indexProvider.headerView\">\r\n {{ indexProvider.name }}\r\n </lib-column-view>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\">\r\n {{ element.id + indexProvider.offset }}\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(indexProvider.COLUMN_NAME) || '' }}\r\n </td>\r\n </ng-container>\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider.isEnabled\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <div class=\"flex-container\">\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 <div\r\n *ngIf=\"tableConfig.selectionCfg?.showSelectedCount && selectionProvider.selection.hasValue()\">\r\n {{ selectionProvider.selection.selected.length }}\r\n <span\r\n *ngIf=\"tableConfig.selectionCfg?.showTotalCount !== false\">/{{ paginatorState?.length ? paginatorState?.length : tableDataSource.filteredData.length }}</span>\r\n </div>\r\n\r\n <div *ngIf=\"selectionProvider.selection.hasValue() && tableConfig?.selectionCfg?.actions\">\r\n <ng-container *ngFor=\"let action of tableConfig.selectionCfg!.actions\">\r\n <button mat-icon-button\r\n (click)=\"emitSelectedRowsAction(action.action, selectionProvider.selection.selected)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\"\r\n (click)=\"$event.stopPropagation(); selectionProvider.selection.toggle(castSrc(row).rowSrc)\">\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\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider.isEnabled\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\" (click)=\"$event.stopPropagation()\" style=\"cursor: default\">\r\n <ng-container *ngFor=\"let action of rowActionsProvider.actionView.get(element.id)\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element.rowSrc, $event)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </td>\r\n\r\n <ng-container *ngTemplateOutlet=\"footerCellTemplate; context: {$implicit: rowActionsProvider.COLUMN_NAME}\">\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- value-icon-->\r\n <ng-container *ngFor=\"let columnConfig of tableConfig.columnsCfg\" [matColumnDef]=\"columnConfig.key\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort && columnConfig.sort.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.key\"\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 <lib-column-view [config]=\"columnConfig.headerView\"\r\n [value]=\"columnConfig.name\">\r\n </lib-column-view>\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;\">\r\n <lib-column-view\r\n [config]=\"tableView[element.id]?.get(columnConfig.key)\"\r\n [value]=\"element | dataPropertyGetter: columnConfig.key\">\r\n </lib-column-view>\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnConfig.key) || '' }}\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- extra header top cell-->\r\n <ng-container *ngFor=\"let extraTopCell of _displayExtraHeaderTopCell; let index = index\"\r\n [matColumnDef]=\"extraTopCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellTopTemplate; context: {key: extraTopCell.replace(EXTRA_HEADER_CELL_TOP_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n\r\n <!-- extra header bottom cell-->\r\n <ng-container *ngFor=\"let extraBottomCell of _displayExtraHeaderBottomCell; let index = index\"\r\n [matColumnDef]=\"extraBottomCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellBottomTemplate; context: {key: extraBottomCell.replace(EXTRA_HEADER_CELL_BOTTOM_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n <!-- extra header top row-->\r\n <ng-container *ngIf=\"extraHeaderCellTopTemplate\">\r\n <tr mat-header-row *matHeaderRowDef=\"_displayExtraHeaderTopCell; sticky: this.tableConfig.stickyCfg?.header\"\r\n class=\"extra-header-top-row\">\r\n </tr>\r\n </ng-container>\r\n\r\n <!-- header row-->\r\n <tr mat-header-row *matHeaderRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n\r\n <!-- extra header bottom row -->\r\n <ng-container *ngIf=\"extraHeaderCellBottomTemplate\">\r\n <tr mat-header-row\r\n *matHeaderRowDef=\"_displayExtraHeaderBottomCell; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n </ng-container>\r\n\r\n <tr mat-row #rowLink\r\n (dragover)=\"onDragOver($event)\"\r\n (drop)=\"onDrop($event, row)\"\r\n *matRowDef=\"let row; columns: _displayColumns;\"\r\n (click)=\"rowClick(row)\"\r\n [ngClass]=\"{'pointer': tableConfig.clickCfg?.pointer || false, 'new-color': highlighted===row.rowSrc && tableConfig?.clickCfg?.highlightClicked?.color}\"\r\n [ngStyle]=\"{\r\n 'color': highlighted===row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.color : undefined,\r\n 'background-color': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.background : undefined,\r\n 'border': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.border : undefined\r\n }\">\r\n </tr>\r\n\r\n <!--expanded-row-->\r\n <ng-container matColumnDef=\"expandedRow\">\r\n <td mat-cell class=\"expanded-cell\" *matCellDef=\"let element\" [attr.colspan]=\"_displayColumns.length\"\r\n style=\"padding-right: 0!important;\">\r\n <div class=\"row-detail\"\r\n [@detailExpand]=\"element.rowSrc === highlighted ? expandedStateEnum.EXPANDED : expandedStateEnum.COLLAPSED\">\r\n <!-- lazy-load of details -->\r\n <ng-container *ngIf=\"element.rowSrc === highlighted\">\r\n <ng-container *ngTemplateOutlet=\"extendedRowTemplate; context: {$implicit: element}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"extendedRowTemplate\">\r\n <tr mat-row class=\"expanded-row\" *matRowDef=\"let row; columns: ['expandedRow']\"></tr>\r\n </ng-container>\r\n <!--expanded-row-->\r\n\r\n <ng-container *ngIf=\"totalRowProvider.isEnabled\">\r\n <tr mat-footer-row *matFooterRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.total\"\r\n [style]=\"totalRowProvider.style\"></tr>\r\n </ng-container>\r\n\r\n <!--sub-footer-row-->\r\n <ng-container matColumnDef=\"subFooterRow\">\r\n <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"_displayColumns.length\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSubFooterRow]\"></ng-content>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"subFooterRowTemplate\">\r\n <tr mat-footer-row *matFooterRowDef=\"['subFooterRow']; sticky: this.tableConfig.stickyCfg?.subFooter\"></tr>\r\n </ng-container>\r\n <!-- sub-footer-row END-->\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Pagination -->\r\n @if (this.paginationProvider.isEnabled) {\r\n <mat-paginator [ngClass]=\"{'hidePaginator': isTableBodyHide}\"\r\n [pageSizeOptions]=\"paginationProvider.sizes\"\r\n [pageSize]=\"paginationProvider.size\"\r\n [style]=\"tableConfig?.pageableCfg?.style\"\r\n [length]=\"paginatorState?.length\"\r\n [pageIndex]=\"paginatorState?.pageIndex\"\r\n (page)=\"pageChange.emit($event)\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n }\r\n</div>\r\n\r\n<ng-template #footerCellTemplate let-columnName>\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnName) || '' }}\r\n </td>\r\n</ng-template>\r\n", styles: [".aur-mat-table{display:flex;flex-direction:column}.aur-mat-table.bottom-pagination{height:100%}.aur-mat-table table{border-collapse:collapse}.aur-mat-table .table-container{position:relative}.aur-mat-table .table-container.bottom-pagination{flex-grow:1;overflow:auto}.aur-mat-table th,td{padding-right:4px!important;padding-left:4px!important}.aur-mat-table .new-color td.mat-mdc-cell,.aur-mat-table .new-color td.mat-mdc-footer-cell{color:inherit}.aur-mat-table mat-form-field{width:100%}.aur-mat-table .text-right{text-align:right!important}.aur-mat-table .pointer:hover{background-color:#f2f2f2;cursor:pointer}.aur-mat-table .flex-container{display:flex;align-items:center}.aur-mat-table .expanded-row{height:0}.aur-mat-table .expanded-row .expanded-cell{padding-right:0!important;padding-left:0!important}.aur-mat-table .row-detail{overflow:hidden;display:flex}.aur-mat-table .clear-bottom-border{border-bottom:none}.aur-mat-table .table-settings-button{position:absolute;right:4px;top:12px;cursor:pointer;border-radius:4px;padding-bottom:2px;padding-top:2px;z-index:9999999999}.mat-mdc-header-row th:last-child{padding-right:25px!important}.aur-mat-table .search-container{display:flex;gap:8px;align-items:center}.aur-mat-table .extra-header-top-row th{border-bottom:none}.aur-mat-table .drag-icon{cursor:grab}.hide-table-body tr:not(.mat-mdc-header-row){display:none!important}.hidePaginator{display:none}.aur-mat-table .drag-column{padding-left:8px;padding-right:8px;width:35px}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i3$1.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i3$1.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i3$1.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i3$1.MatColumnDef, selector: "[matColumnDef]", inputs: ["matColumnDef"] }, { kind: "directive", type: i3$1.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i3$1.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i3$1.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i3$1.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i3$1.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i3$1.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i3$1.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i3$1.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i3$1.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i3$1.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i4.MatPaginator, selector: "mat-paginator", inputs: ["color", "pageIndex", "length", "pageSize", "pageSizeOptions", "hidePageSize", "showFirstLastButtons", "selectConfig", "disabled"], outputs: ["page"], exportAs: ["matPaginator"] }, { kind: "component", type: i5.MatIconButton, selector: "button[mat-icon-button]", exportAs: ["matButton"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i7.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i7.MatLabel, selector: "mat-label" }, { kind: "directive", type: i7.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i8.MatSort, selector: "[matSort]", inputs: ["matSortActive", "matSortStart", "matSortDirection", "matSortDisableClear", "matSortDisabled"], outputs: ["matSortChange"], exportAs: ["matSort"] }, { kind: "component", type: i8.MatSortHeader, selector: "[mat-sort-header]", inputs: ["mat-sort-header", "arrowPosition", "start", "disabled", "sortActionDescription", "disableClear"], exportAs: ["matSortHeader"] }, { kind: "directive", type: i3.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipPosition", "matTooltipPositionAtOrigin", "matTooltipDisabled", "matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { kind: "component", type: i10.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "component", type: ColumnViewComponent, selector: "lib-column-view", inputs: ["config", "value"] }, { kind: "component", type: IconViewComponent, selector: "lib-icon-view", inputs: ["view"] }, { kind: "pipe", type: DataPropertyGetterPipe, name: "dataPropertyGetter" }], animations: [
1109
1111
  trigger('detailExpand', [
1110
1112
  state(ExpandState.COLLAPSED, style({ height: '0px', minHeight: '0' })),
1111
1113
  state(ExpandState.EXPANDED, style({ height: '*' })),
@@ -1113,7 +1115,7 @@ class NgxAurMatTableComponent {
1113
1115
  ]),
1114
1116
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
1115
1117
  }
1116
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
1118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableComponent, decorators: [{
1117
1119
  type: Component,
1118
1120
  args: [{ selector: 'aur-mat-table', changeDetection: ChangeDetectionStrategy.OnPush, animations: [
1119
1121
  trigger('detailExpand', [
@@ -1121,7 +1123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1121
1123
  state(ExpandState.EXPANDED, style({ height: '*' })),
1122
1124
  transition(`${ExpandState.EXPANDED} <=> ${ExpandState.COLLAPSED}`, animate('225ms cubic-bezier(0.4, 0.0, 0.2, 1)')),
1123
1125
  ]),
1124
- ], template: "<div class=\"aur-mat-table\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <ng-container>\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"tableConfig.filterCfg?.enable ?? false\">\r\n <div class=\"search-container\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchPrefix]\"></ng-content>\r\n </ng-container>\r\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{ tableConfig.filterCfg?.label }}</mat-label>\r\n <input matInput (keyup)=\"applySearchFilter($event)\"\r\n placeholder=\"{{tableConfig.filterCfg?.placeholder}}\"\r\n style=\"font-size: 18px;\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n </mat-form-field>\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchSuffix]\"></ng-content>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <div class=\"table-container\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <mat-icon *ngIf=\"headerButtonProvider.isEnabled\"\r\n class=\"table-settings-button\"\r\n [style.color]=\"headerButtonProvider.color\"\r\n [style.background-color]=\"headerButtonProvider.background\"\r\n (click)=\"onHeaderButton.emit($event)\">\r\n {{ headerButtonProvider.icon }}\r\n </mat-icon>\r\n\r\n <!-- Table -->\r\n <table #table mat-table matSort\r\n [multiTemplateDataRows]=\"extendedRowTemplate !== null\"\r\n [dataSource]=\"tableDataSource\"\r\n (matSortChange)=\"sortTable($event)\"\r\n [style.height]=\"tableConfig.tableView?.height\"\r\n [style.max-height]=\"tableConfig.tableView?.maxHeight\"\r\n [style.min-height]=\"tableConfig.tableView?.minHeight\"\r\n [ngClass]=\"{'hide-table-body': isTableBodyHide}\">\r\n\r\n\r\n <!-- drag-column-->\r\n <ng-container *ngIf=\"dragDropProvider.isEnabled && dragDropProvider.draggable\" [matColumnDef]=\"dragDropProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\" class=\"drag-column\">\r\n <lib-icon-view draggable=\"true\"\r\n class=\"drag-icon\"\r\n [view]=\"dragDropProvider.dragIconView\"\r\n (dragstart)=\"onDragStart($event, element)\"\r\n (dragend)=\"onDragEnd($event, element)\">\r\n </lib-icon-view>\r\n\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- index-column-->\r\n <ng-container *ngIf=\"indexProvider.isEnabled\" [matColumnDef]=\"indexProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n <lib-column-view [config]=\"indexProvider.headerView\">\r\n {{ indexProvider.name }}\r\n </lib-column-view>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\">\r\n {{ element.id + indexProvider.offset }}\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(indexProvider.COLUMN_NAME) || '' }}\r\n </td>\r\n </ng-container>\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider.isEnabled\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <div class=\"flex-container\">\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 <div\r\n *ngIf=\"tableConfig.selectionCfg?.showSelectedCount && selectionProvider.selection.hasValue()\">\r\n {{ selectionProvider.selection.selected.length }}\r\n <span\r\n *ngIf=\"tableConfig.selectionCfg?.showTotalCount !== false\">/{{ paginatorState?.length ? paginatorState?.length : tableDataSource.filteredData.length }}</span>\r\n </div>\r\n\r\n <div *ngIf=\"selectionProvider.selection.hasValue() && tableConfig?.selectionCfg?.actions\">\r\n <ng-container *ngFor=\"let action of tableConfig.selectionCfg!.actions\">\r\n <button mat-icon-button\r\n (click)=\"emitSelectedRowsAction(action.action, selectionProvider.selection.selected)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\"\r\n (click)=\"$event.stopPropagation(); selectionProvider.selection.toggle(castSrc(row).rowSrc)\">\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\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider.isEnabled\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\" (click)=\"$event.stopPropagation()\" style=\"cursor: default\">\r\n <ng-container *ngFor=\"let action of rowActionsProvider.actionView.get(element.id)\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element.rowSrc, $event)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </td>\r\n\r\n <ng-container *ngTemplateOutlet=\"footerCellTemplate; context: {$implicit: rowActionsProvider.COLUMN_NAME}\">\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- value-icon-->\r\n <ng-container *ngFor=\"let columnConfig of tableConfig.columnsCfg\" [matColumnDef]=\"columnConfig.key\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort && columnConfig.sort.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.key\"\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 <lib-column-view [config]=\"columnConfig.headerView\"\r\n [value]=\"columnConfig.name\">\r\n </lib-column-view>\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;\">\r\n <lib-column-view\r\n [config]=\"tableView[element.id]?.get(columnConfig.key)\"\r\n [value]=\"element | dataPropertyGetter: columnConfig.key\">\r\n </lib-column-view>\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnConfig.key) || '' }}\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- extra header top cell-->\r\n <ng-container *ngFor=\"let extraTopCell of _displayExtraHeaderTopCell; let index = index\"\r\n [matColumnDef]=\"extraTopCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellTopTemplate; context: {key: extraTopCell.replace(EXTRA_HEADER_CELL_TOP_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n\r\n <!-- extra header bottom cell-->\r\n <ng-container *ngFor=\"let extraBottomCell of _displayExtraHeaderBottomCell; let index = index\"\r\n [matColumnDef]=\"extraBottomCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellBottomTemplate; context: {key: extraBottomCell.replace(EXTRA_HEADER_CELL_BOTTOM_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n <!-- extra header top row-->\r\n <ng-container *ngIf=\"extraHeaderCellTopTemplate\">\r\n <tr mat-header-row *matHeaderRowDef=\"_displayExtraHeaderTopCell; sticky: this.tableConfig.stickyCfg?.header\"\r\n class=\"extra-header-top-row\">\r\n </tr>\r\n </ng-container>\r\n\r\n <!-- header row-->\r\n <tr mat-header-row *matHeaderRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n\r\n <!-- extra header bottom row -->\r\n <ng-container *ngIf=\"extraHeaderCellBottomTemplate\">\r\n <tr mat-header-row\r\n *matHeaderRowDef=\"_displayExtraHeaderBottomCell; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n </ng-container>\r\n\r\n <tr mat-row #rowLink\r\n (dragover)=\"onDragOver($event)\"\r\n (drop)=\"onDrop($event, row)\"\r\n *matRowDef=\"let row; columns: _displayColumns;\"\r\n (click)=\"rowClick(row)\"\r\n [ngClass]=\"{'pointer': tableConfig.clickCfg?.pointer || false, 'new-color': highlighted===row.rowSrc && tableConfig?.clickCfg?.highlightClicked?.color}\"\r\n [ngStyle]=\"{\r\n 'color': highlighted===row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.color : undefined,\r\n 'background-color': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.background : undefined,\r\n 'border': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.border : undefined\r\n }\">\r\n </tr>\r\n\r\n <!--expanded-row-->\r\n <ng-container matColumnDef=\"expandedRow\">\r\n <td mat-cell class=\"expanded-cell\" *matCellDef=\"let element\" [attr.colspan]=\"_displayColumns.length\"\r\n style=\"padding-right: 0!important;\">\r\n <div class=\"row-detail\"\r\n [@detailExpand]=\"element.rowSrc === highlighted ? expandedStateEnum.EXPANDED : expandedStateEnum.COLLAPSED\">\r\n <!-- lazy-load of details -->\r\n <ng-container *ngIf=\"element.rowSrc === highlighted\">\r\n <ng-container *ngTemplateOutlet=\"extendedRowTemplate; context: {$implicit: element}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"extendedRowTemplate\">\r\n <tr mat-row class=\"expanded-row\" *matRowDef=\"let row; columns: ['expandedRow']\"></tr>\r\n </ng-container>\r\n <!--expanded-row-->\r\n\r\n <ng-container *ngIf=\"totalRowProvider.isEnabled\">\r\n <tr mat-footer-row *matFooterRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.total\"\r\n [style]=\"totalRowProvider.style\"></tr>\r\n </ng-container>\r\n\r\n <!--sub-footer-row-->\r\n <ng-container matColumnDef=\"subFooterRow\">\r\n <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"_displayColumns.length\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSubFooterRow]\"></ng-content>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"subFooterRowTemplate\">\r\n <tr mat-footer-row *matFooterRowDef=\"['subFooterRow']; sticky: this.tableConfig.stickyCfg?.subFooter\"></tr>\r\n </ng-container>\r\n <!-- sub-footer-row END-->\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Pagination -->\r\n @if (this.paginationProvider.isEnabled) {\r\n <mat-paginator [ngClass]=\"{'hidePaginator': isTableBodyHide}\"\r\n [pageSizeOptions]=\"paginationProvider.sizes\"\r\n [pageSize]=\"paginationProvider.size\"\r\n [style]=\"tableConfig?.pageableCfg?.style\"\r\n [length]=\"paginatorState?.length\"\r\n [pageIndex]=\"paginatorState?.pageIndex\"\r\n (page)=\"pageChange.emit($event)\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n }\r\n</div>\r\n\r\n<ng-template #footerCellTemplate let-columnName>\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnName) || '' }}\r\n </td>\r\n</ng-template>\r\n", styles: [".aur-mat-table{display:flex;flex-direction:column}.aur-mat-table.bottom-pagination{height:100%}.aur-mat-table table{border-collapse:collapse}.aur-mat-table .table-container{position:relative}.aur-mat-table .table-container.bottom-pagination{flex-grow:1;overflow:auto}.aur-mat-table th,td{padding-right:4px!important;padding-left:4px!important}.aur-mat-table .new-color td.mat-mdc-cell,.aur-mat-table .new-color td.mat-mdc-footer-cell{color:inherit}.aur-mat-table mat-form-field{width:100%}.aur-mat-table .text-right{text-align:right!important}.aur-mat-table .pointer:hover{background-color:#f2f2f2;cursor:pointer}.aur-mat-table .flex-container{display:flex;align-items:center}.aur-mat-table .expanded-row{height:0}.aur-mat-table .expanded-row .expanded-cell{padding-right:0!important;padding-left:0!important}.aur-mat-table .row-detail{overflow:hidden;display:flex}.aur-mat-table .clear-bottom-border{border-bottom:none}.aur-mat-table .table-settings-button{position:absolute;right:4px;top:12px;cursor:pointer;border-radius:4px;padding-bottom:2px;padding-top:2px;z-index:9999999999}.mat-mdc-header-row th:last-child{padding-right:25px!important}.aur-mat-table .search-container{display:flex;gap:8px;align-items:center}.aur-mat-table .extra-header-top-row th{border-bottom:none}.aur-mat-table .drag-icon{cursor:grab}.hide-table-body tr:not(.mat-mdc-header-row){display:none!important}.hidePaginator{display:none}.aur-mat-table .drag-column{padding-left:8px;padding-right:8px;width:35px}\n"] }]
1126
+ ], standalone: false, template: "<div class=\"aur-mat-table\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <ng-container>\r\n <!-- Filter -->\r\n <ng-container *ngIf=\"tableConfig.filterCfg?.enable ?? false\">\r\n <div class=\"search-container\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchPrefix]\"></ng-content>\r\n </ng-container>\r\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\r\n <mat-label>{{ tableConfig.filterCfg?.label }}</mat-label>\r\n <input matInput (keyup)=\"applySearchFilter($event)\"\r\n placeholder=\"{{tableConfig.filterCfg?.placeholder}}\"\r\n style=\"font-size: 18px;\">\r\n <mat-icon matPrefix>search</mat-icon>\r\n </mat-form-field>\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSearchSuffix]\"></ng-content>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n <div class=\"table-container\"\r\n [ngClass]=\"{'bottom-pagination': paginationProvider.isEnabled && paginationProvider.position === 'bottom'}\">\r\n <mat-icon *ngIf=\"headerButtonProvider.isEnabled\"\r\n class=\"table-settings-button\"\r\n [style.color]=\"headerButtonProvider.color\"\r\n [style.background-color]=\"headerButtonProvider.background\"\r\n (click)=\"onHeaderButton.emit($event)\">\r\n {{ headerButtonProvider.icon }}\r\n </mat-icon>\r\n\r\n <!-- Table -->\r\n <table #table mat-table matSort\r\n [multiTemplateDataRows]=\"extendedRowTemplate !== null\"\r\n [dataSource]=\"tableDataSource\"\r\n (matSortChange)=\"sortTable($event)\"\r\n [style.height]=\"tableConfig.tableView?.height\"\r\n [style.max-height]=\"tableConfig.tableView?.maxHeight\"\r\n [style.min-height]=\"tableConfig.tableView?.minHeight\"\r\n [ngClass]=\"{'hide-table-body': isTableBodyHide}\">\r\n\r\n\r\n <!-- drag-column-->\r\n <ng-container *ngIf=\"dragDropProvider.isEnabled && dragDropProvider.draggable\" [matColumnDef]=\"dragDropProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\" class=\"drag-column\">\r\n <lib-icon-view draggable=\"true\"\r\n class=\"drag-icon\"\r\n [view]=\"dragDropProvider.dragIconView\"\r\n (dragstart)=\"onDragStart($event, element)\"\r\n (dragend)=\"onDragEnd($event, element)\">\r\n </lib-icon-view>\r\n\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- index-column-->\r\n <ng-container *ngIf=\"indexProvider.isEnabled\" [matColumnDef]=\"indexProvider.COLUMN_NAME\">\r\n\r\n <th mat-header-cell *matHeaderCellDef>\r\n <lib-column-view [config]=\"indexProvider.headerView\">\r\n {{ indexProvider.name }}\r\n </lib-column-view>\r\n </th>\r\n\r\n <td mat-cell *matCellDef=\"let element;\">\r\n {{ element.id + indexProvider.offset }}\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(indexProvider.COLUMN_NAME) || '' }}\r\n </td>\r\n </ng-container>\r\n\r\n <!-- selection-column-->\r\n <ng-container [matColumnDef]=\"selectionProvider.COLUMN_NAME\" *ngIf=\"selectionProvider.isEnabled\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <div class=\"flex-container\">\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 <div\r\n *ngIf=\"tableConfig.selectionCfg?.showSelectedCount && selectionProvider.selection.hasValue()\">\r\n {{ selectionProvider.selection.selected.length }}\r\n <span\r\n *ngIf=\"tableConfig.selectionCfg?.showTotalCount !== false\">/{{ paginatorState?.length ? paginatorState?.length : tableDataSource.filteredData.length }}</span>\r\n </div>\r\n\r\n <div *ngIf=\"selectionProvider.selection.hasValue() && tableConfig?.selectionCfg?.actions\">\r\n <ng-container *ngFor=\"let action of tableConfig.selectionCfg!.actions\">\r\n <button mat-icon-button\r\n (click)=\"emitSelectedRowsAction(action.action, selectionProvider.selection.selected)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </div>\r\n </div>\r\n\r\n </th>\r\n <td mat-cell *matCellDef=\"let row\"\r\n (click)=\"$event.stopPropagation(); selectionProvider.selection.toggle(castSrc(row).rowSrc)\">\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\r\n <td mat-footer-cell *matFooterCellDef>\r\n </td>\r\n </ng-container>\r\n\r\n <!-- action column -->\r\n <ng-container *ngIf=\"rowActionsProvider.isEnabled\" [matColumnDef]=\"rowActionsProvider.COLUMN_NAME\">\r\n <th mat-header-cell *matHeaderCellDef></th>\r\n <td mat-cell *matCellDef=\"let element\" (click)=\"$event.stopPropagation()\" style=\"cursor: default\">\r\n <ng-container *ngFor=\"let action of rowActionsProvider.actionView.get(element.id)\">\r\n <button mat-icon-button\r\n (click)=\"emitRowAction(action.action, element.rowSrc, $event)\"\r\n [matTooltip]=\"action.icon.tooltip || ''\"\r\n *ngIf=\"action.display !== 'none'\">\r\n <mat-icon [style.color]=\"action.icon.color\">\r\n {{ action.icon.name }}\r\n </mat-icon>\r\n </button>\r\n </ng-container>\r\n </td>\r\n\r\n <ng-container *ngTemplateOutlet=\"footerCellTemplate; context: {$implicit: rowActionsProvider.COLUMN_NAME}\">\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- value-icon-->\r\n <ng-container *ngFor=\"let columnConfig of tableConfig.columnsCfg\" [matColumnDef]=\"columnConfig.key\">\r\n\r\n <!-- if sortable column header -->\r\n <ng-container *ngIf=\"columnConfig.sort && columnConfig.sort.enable; else notSortable\">\r\n <th mat-header-cell *matHeaderCellDef [mat-sort-header]=\"columnConfig.key\"\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 <lib-column-view [config]=\"columnConfig.headerView\"\r\n [value]=\"columnConfig.name\">\r\n </lib-column-view>\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;\">\r\n <lib-column-view\r\n [config]=\"tableView[element.id]?.get(columnConfig.key)\"\r\n [value]=\"element | dataPropertyGetter: columnConfig.key\">\r\n </lib-column-view>\r\n </td>\r\n\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnConfig.key) || '' }}\r\n </td>\r\n\r\n </ng-container>\r\n\r\n <!-- extra header top cell-->\r\n <ng-container *ngFor=\"let extraTopCell of _displayExtraHeaderTopCell; let index = index\"\r\n [matColumnDef]=\"extraTopCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellTopTemplate; context: {key: extraTopCell.replace(EXTRA_HEADER_CELL_TOP_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n\r\n <!-- extra header bottom cell-->\r\n <ng-container *ngFor=\"let extraBottomCell of _displayExtraHeaderBottomCell; let index = index\"\r\n [matColumnDef]=\"extraBottomCell\">\r\n <th mat-header-cell *matHeaderCellDef>\r\n <ng-container\r\n *ngTemplateOutlet=\"extraHeaderCellBottomTemplate; context: {key: extraBottomCell.replace(EXTRA_HEADER_CELL_BOTTOM_SUFFIX, ''), index: index}\"></ng-container>\r\n </th>\r\n </ng-container>\r\n\r\n <!-- extra header top row-->\r\n <ng-container *ngIf=\"extraHeaderCellTopTemplate\">\r\n <tr mat-header-row *matHeaderRowDef=\"_displayExtraHeaderTopCell; sticky: this.tableConfig.stickyCfg?.header\"\r\n class=\"extra-header-top-row\">\r\n </tr>\r\n </ng-container>\r\n\r\n <!-- header row-->\r\n <tr mat-header-row *matHeaderRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n\r\n <!-- extra header bottom row -->\r\n <ng-container *ngIf=\"extraHeaderCellBottomTemplate\">\r\n <tr mat-header-row\r\n *matHeaderRowDef=\"_displayExtraHeaderBottomCell; sticky: this.tableConfig.stickyCfg?.header\">\r\n </tr>\r\n </ng-container>\r\n\r\n <tr mat-row #rowLink\r\n (dragover)=\"onDragOver($event)\"\r\n (drop)=\"onDrop($event, row)\"\r\n *matRowDef=\"let row; columns: _displayColumns;\"\r\n (click)=\"rowClick(row)\"\r\n [ngClass]=\"{'pointer': tableConfig.clickCfg?.pointer || false, 'new-color': highlighted===row.rowSrc && tableConfig?.clickCfg?.highlightClicked?.color}\"\r\n [ngStyle]=\"{\r\n 'color': highlighted===row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.color : undefined,\r\n 'background-color': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.background : undefined,\r\n 'border': highlighted === row.rowSrc? tableConfig?.clickCfg?.highlightClicked?.border : undefined\r\n }\">\r\n </tr>\r\n\r\n <!--expanded-row-->\r\n <ng-container matColumnDef=\"expandedRow\">\r\n <td mat-cell class=\"expanded-cell\" *matCellDef=\"let element\" [attr.colspan]=\"_displayColumns.length\"\r\n style=\"padding-right: 0!important;\">\r\n <div class=\"row-detail\"\r\n [@detailExpand]=\"element.rowSrc === highlighted ? expandedStateEnum.EXPANDED : expandedStateEnum.COLLAPSED\">\r\n <!-- lazy-load of details -->\r\n <ng-container *ngIf=\"element.rowSrc === highlighted\">\r\n <ng-container *ngTemplateOutlet=\"extendedRowTemplate; context: {$implicit: element}\"></ng-container>\r\n </ng-container>\r\n </div>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"extendedRowTemplate\">\r\n <tr mat-row class=\"expanded-row\" *matRowDef=\"let row; columns: ['expandedRow']\"></tr>\r\n </ng-container>\r\n <!--expanded-row-->\r\n\r\n <ng-container *ngIf=\"totalRowProvider.isEnabled\">\r\n <tr mat-footer-row *matFooterRowDef=\"_displayColumns; sticky: this.tableConfig.stickyCfg?.total\"\r\n [style]=\"totalRowProvider.style\"></tr>\r\n </ng-container>\r\n\r\n <!--sub-footer-row-->\r\n <ng-container matColumnDef=\"subFooterRow\">\r\n <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"_displayColumns.length\">\r\n <ng-container>\r\n <ng-content select=\"[ngxAurTableSubFooterRow]\"></ng-content>\r\n </ng-container>\r\n </td>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"subFooterRowTemplate\">\r\n <tr mat-footer-row *matFooterRowDef=\"['subFooterRow']; sticky: this.tableConfig.stickyCfg?.subFooter\"></tr>\r\n </ng-container>\r\n <!-- sub-footer-row END-->\r\n </table>\r\n </div>\r\n </ng-container>\r\n\r\n <!-- Pagination -->\r\n @if (this.paginationProvider.isEnabled) {\r\n <mat-paginator [ngClass]=\"{'hidePaginator': isTableBodyHide}\"\r\n [pageSizeOptions]=\"paginationProvider.sizes\"\r\n [pageSize]=\"paginationProvider.size\"\r\n [style]=\"tableConfig?.pageableCfg?.style\"\r\n [length]=\"paginatorState?.length\"\r\n [pageIndex]=\"paginatorState?.pageIndex\"\r\n (page)=\"pageChange.emit($event)\"\r\n showFirstLastButtons>\r\n </mat-paginator>\r\n }\r\n</div>\r\n\r\n<ng-template #footerCellTemplate let-columnName>\r\n <td mat-footer-cell *matFooterCellDef>\r\n {{ totalRowProvider.totals.get(columnName) || '' }}\r\n </td>\r\n</ng-template>\r\n", styles: [".aur-mat-table{display:flex;flex-direction:column}.aur-mat-table.bottom-pagination{height:100%}.aur-mat-table table{border-collapse:collapse}.aur-mat-table .table-container{position:relative}.aur-mat-table .table-container.bottom-pagination{flex-grow:1;overflow:auto}.aur-mat-table th,td{padding-right:4px!important;padding-left:4px!important}.aur-mat-table .new-color td.mat-mdc-cell,.aur-mat-table .new-color td.mat-mdc-footer-cell{color:inherit}.aur-mat-table mat-form-field{width:100%}.aur-mat-table .text-right{text-align:right!important}.aur-mat-table .pointer:hover{background-color:#f2f2f2;cursor:pointer}.aur-mat-table .flex-container{display:flex;align-items:center}.aur-mat-table .expanded-row{height:0}.aur-mat-table .expanded-row .expanded-cell{padding-right:0!important;padding-left:0!important}.aur-mat-table .row-detail{overflow:hidden;display:flex}.aur-mat-table .clear-bottom-border{border-bottom:none}.aur-mat-table .table-settings-button{position:absolute;right:4px;top:12px;cursor:pointer;border-radius:4px;padding-bottom:2px;padding-top:2px;z-index:9999999999}.mat-mdc-header-row th:last-child{padding-right:25px!important}.aur-mat-table .search-container{display:flex;gap:8px;align-items:center}.aur-mat-table .extra-header-top-row th{border-bottom:none}.aur-mat-table .drag-icon{cursor:grab}.hide-table-body tr:not(.mat-mdc-header-row){display:none!important}.hidePaginator{display:none}.aur-mat-table .drag-column{padding-left:8px;padding-right:8px;width:35px}\n"] }]
1125
1127
  }], ctorParameters: () => [{ type: i0.ViewContainerRef }, { type: i0.ChangeDetectorRef }], propDecorators: { displayColumns: [{
1126
1128
  type: Input
1127
1129
  }], subFooterRowTemplate: [{
@@ -1183,31 +1185,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImpo
1183
1185
 
1184
1186
  class NgxAurTableSearchPrefixDirective {
1185
1187
  constructor() { }
1186
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurTableSearchPrefixDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1187
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NgxAurTableSearchPrefixDirective, selector: "[ngxAurTableSearchPrefix]", ngImport: i0 }); }
1188
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurTableSearchPrefixDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1189
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: NgxAurTableSearchPrefixDirective, isStandalone: false, selector: "[ngxAurTableSearchPrefix]", ngImport: i0 }); }
1188
1190
  }
1189
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurTableSearchPrefixDirective, decorators: [{
1191
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurTableSearchPrefixDirective, decorators: [{
1190
1192
  type: Directive,
1191
1193
  args: [{
1192
1194
  selector: '[ngxAurTableSearchPrefix]',
1195
+ standalone: false
1193
1196
  }]
1194
1197
  }], ctorParameters: () => [] });
1195
1198
 
1196
1199
  class NgxAurTableSearchSuffixDirective {
1197
1200
  constructor() { }
1198
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurTableSearchSuffixDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1199
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.14", type: NgxAurTableSearchSuffixDirective, selector: "[ngxAurTableSearchSuffix]", ngImport: i0 }); }
1201
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurTableSearchSuffixDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
1202
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "19.2.17", type: NgxAurTableSearchSuffixDirective, isStandalone: false, selector: "[ngxAurTableSearchSuffix]", ngImport: i0 }); }
1200
1203
  }
1201
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurTableSearchSuffixDirective, decorators: [{
1204
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurTableSearchSuffixDirective, decorators: [{
1202
1205
  type: Directive,
1203
1206
  args: [{
1204
1207
  selector: '[ngxAurTableSearchSuffix]',
1208
+ standalone: false
1205
1209
  }]
1206
1210
  }], ctorParameters: () => [] });
1207
1211
 
1208
1212
  class NgxAurMatTableModule {
1209
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1210
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableModule, declarations: [NgxAurMatTableComponent,
1213
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
1214
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableModule, declarations: [NgxAurMatTableComponent,
1211
1215
  DataPropertyGetterPipe,
1212
1216
  ColumnViewComponent,
1213
1217
  IconViewComponent,
@@ -1228,7 +1232,7 @@ class NgxAurMatTableModule {
1228
1232
  NgxTableSubFooterRowDirective,
1229
1233
  NgxAurTableSearchPrefixDirective,
1230
1234
  NgxAurTableSearchSuffixDirective] }); }
1231
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableModule, imports: [CommonModule,
1235
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableModule, imports: [CommonModule,
1232
1236
  MatIconModule,
1233
1237
  MatTableModule,
1234
1238
  MatPaginatorModule,
@@ -1240,7 +1244,7 @@ class NgxAurMatTableModule {
1240
1244
  MatFormFieldModule,
1241
1245
  DragDropModule] }); }
1242
1246
  }
1243
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxAurMatTableModule, decorators: [{
1247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: NgxAurMatTableModule, decorators: [{
1244
1248
  type: NgModule,
1245
1249
  args: [{
1246
1250
  declarations: [